
/*---------------------------------------------------------------------
General
-----------------------------------------------------------------------*/
*::-moz-selection { background: var(--primary, #00A0E8); color: var(--text-inverse, #ffffff); text-shadow: none; }
::-moz-selection { background: var(--primary, #00A0E8); color: var(--text-inverse, #ffffff); text-shadow: none; }
::selection { background: var(--primary, #00A0E8); color: var(--text-inverse, #ffffff); text-shadow: none; }
body { font-family: 'Poppins', sans-serif; font-weight: 400; font-style: normal; font-size: 14px; line-height: 1.8; padding: 0; margin: 0; color: var(--text-secondary, #a09e9e); background: var(--bg-page, #eff7f8); }
a, .btn { -webkit-transition: all 0.5s ease-out 0s; -moz-transition: all 0.5s ease-out 0s; -ms-transition: all 0.5s ease-out 0s; -o-transition: all 0.5s ease-out 0s; transition: all 0.5s ease-out 0s; }
a, button, input, btn { outline: medium none; }
a { color: var(--primary, #00A0E8); }
.uppercase { text-transform: uppercase; }
h1, h2, h3, h4, h5, h6 {font-weight: 400; margin: 0px; line-height: 1.5; color: var(--text-primary, #3f414d); }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: inherit; }
label { font-weight: normal; }
h1 { font-size: 3.052em; }
h2 { font-size: 2.300em; }
h3 { font-size: 1.953em; }
h4 { font-size: 1.400em; }
h5 { font-size: 1.200em; }
h6 { font-size: 1.0em; }

/*----------------------------------------------
Input
------------------------------------------------*/
label { color: var(--text-primary, #313949); }
.form-control { height: 45px; line-height: 45px; background: var(--surface-input, #ffffff); border: 1px solid var(--border-default, #dcdcdc); font-size: 14px; color: var(--text-secondary, #4b5563); border-radius: 10px; }
.form-control::placeholder { color: var(--text-placeholder, #9ca3af); }
.form-control:focus { color: var(--text-primary, #313949); background: var(--surface-input, #ffffff); border-color: var(--primary, #00A0E8); box-shadow: 0 0 0 3px var(--color-focus-ring, rgba(0,160,232,0.15)); }

/* Definition Lists */
dl dd { margin-bottom: 15px; }
dl dd:last-child { margin-bottom: 0px; }
th { }

/*----------------------------------------------
loading
------------------------------------------------*/
#loading { background: var(--surface-base, #fff) url(../images/loader.gif) no-repeat scroll center center; height: 100%; width: 100%; background-size: 10%; position: fixed; margin-top: 0px; top: 0px; left: 0px; bottom: 0px; overflow: hidden; right: 0px; z-index: 999999; }
#loading-center { width: 100%; height: 100%; position: relative; }
.loader { width: 3em; height: 3em; margin: auto; left: 0; right: 0; top: 0; bottom: 0; position: absolute; }
@-webkit-keyframes rotate {
  0% { -webkit-transform: rotateX(-37.5deg) rotateY(45deg); transform: rotateX(-37.5deg) rotateY(45deg); }
  50% { -webkit-transform: rotateX(-37.5deg) rotateY(405deg); transform: rotateX(-37.5deg) rotateY(405deg); }
  100% { -webkit-transform: rotateX(-37.5deg) rotateY(405deg); transform: rotateX(-37.5deg) rotateY(405deg); }
}
@keyframes rotate {
  0% { -webkit-transform: rotateX(-37.5deg) rotateY(45deg); transform: rotateX(-37.5deg) rotateY(45deg); }
  50% { -webkit-transform: rotateX(-37.5deg) rotateY(405deg); transform: rotateX(-37.5deg) rotateY(405deg); }
  100% { -webkit-transform: rotateX(-37.5deg) rotateY(405deg); transform: rotateX(-37.5deg) rotateY(405deg); }
}
.cube, .cube * { position: absolute; width: 71px; height: 71px; left: 0; right: 0; top: 0; bottom: 0; }
.sides { -webkit-animation: rotate 3s ease infinite; animation: rotate 3s ease infinite; -webkit-animation-delay: .8s; animation-delay: .8s; -webkit-transform-style: preserve-3d; transform-style: preserve-3d; -webkit-transform: rotateX(-37.5deg) rotateY(45deg); transform: rotateX(-37.5deg) rotateY(45deg); }
.cube .sides * { box-sizing: border-box; background-color: rgba(130, 122, 243, 0.8); border: 5px solid var(--border-default, #eaeaea); }
.cube .sides .top { -webkit-animation: top-animation 3s ease infinite; animation: top-animation 3s ease infinite; -webkit-animation-delay: 0ms; animation-delay: 0ms; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes top-animation {
  0% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(35px); transform: rotateX(90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(35px); transform: rotateX(90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
}
@keyframes top-animation {
  0% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(35px); transform: rotateX(90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(35px); transform: rotateX(90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateX(90deg) translateZ(90px); transform: rotateX(90deg) translateZ(90px); }
}
.cube .sides .bottom { -webkit-animation: bottom-animation 3s ease infinite; animation: bottom-animation 3s ease infinite; -webkit-animation-delay: 0ms; animation-delay: 0ms; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes bottom-animation {
  0% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(35px); transform: rotateX(-90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(35px); transform: rotateX(-90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
}
@keyframes bottom-animation {
  0% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(35px); transform: rotateX(-90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(35px); transform: rotateX(-90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateX(-90deg) translateZ(90px); transform: rotateX(-90deg) translateZ(90px); }
}
.cube .sides .front { -webkit-animation: front-animation 3s ease infinite; animation: front-animation 3s ease infinite; -webkit-animation-delay: 100ms; animation-delay: 100ms; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes front-animation {
  0% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(35px); transform: rotateY(0deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(35px); transform: rotateY(0deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
}
@keyframes front-animation {
  0% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(35px); transform: rotateY(0deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(35px); transform: rotateY(0deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(0deg) translateZ(90px); transform: rotateY(0deg) translateZ(90px); }
}
.cube .sides .back { -webkit-animation: back-animation 3s ease infinite; animation: back-animation 3s ease infinite; -webkit-animation-delay: 100ms; animation-delay: 100ms; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes back-animation {
  0% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(35px); transform: rotateY(-180deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(35px); transform: rotateY(-180deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
}
@keyframes back-animation {
  0% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(35px); transform: rotateY(-180deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(35px); transform: rotateY(-180deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(-180deg) translateZ(90px); transform: rotateY(-180deg) translateZ(90px); }
}
.cube .sides .left { -webkit-animation: left-animation 3s ease infinite; animation: left-animation 3s ease infinite; -webkit-animation-delay: 100ms; animation-delay: 100ms; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes left-animation {
  0% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(35px); transform: rotateY(-90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(35px); transform: rotateY(-90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
}
@keyframes left-animation {
  0% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(35px); transform: rotateY(-90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(35px); transform: rotateY(-90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(-90deg) translateZ(90px); transform: rotateY(-90deg) translateZ(90px); }
}
.cube .sides .right { -webkit-animation: right-animation 3s ease infinite; animation: right-animation 3s ease infinite; -webkit-animation-delay: 100ms; animation-delay: 100ms; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; }
@-webkit-keyframes right-animation {
  0% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(35px); transform: rotateY(90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(35px); transform: rotateY(90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
}
@keyframes right-animation {
  0% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
  20% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(35px); transform: rotateY(90deg) translateZ(35px); }
  70% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(35px); transform: rotateY(90deg) translateZ(35px); }
  90% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
  100% { opacity: 1; -webkit-transform: rotateY(90deg) translateZ(90px); transform: rotateY(90deg) translateZ(90px); }
}
.right-sidebar-mini { top: 0; z-index: 100; position: fixed; width: 350px; right: 0; transform: translateX(calc(111% + -2em)); transition: all 0.5s ease; }
.right-sidebar-mini .side-right-icon { display: none; }
.right-sidebar-toggle { position: absolute; margin-left: -44px; background: var(--surface-base, #fff); padding: 15px; display: inline; top: 15%; z-index: 99; border-radius: 30px 0px 0px 30px; box-shadow: -10px 5px 20px rgba(0, 0, 0, 0.19); cursor: pointer; }
.right-sidebar-panel { background-color: var(--surface-base, #fff); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); height: 100vh; padding: 15px; overflow-y: scroll; }
.right-sidebar { transform: translateX(calc(10% + -1em)); }
.right-sidebar .side-left-icon { display: none; }
.right-sidebar .side-right-icon { display: block; }

/*----------------------------------------------
Background Color
------------------------------------------------*/
.bg-primary, .badge-primary { color: var(--text-inverse, #ffffff); background: var(--primary, #00A0E8) !important; }
.bg-secondary, .badge-secondary { color: var(--text-inverse, #ffffff); background: rgba(120, 125, 118, 1); background: -moz-linear-gradient(left, rgba(120, 125, 118, 1) 0%, rgba(171, 171, 171, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(120, 125, 118, 1)), color-stop(100%, rgba(171, 171, 171, 1))); background: -webkit-linear-gradient(left, rgba(120, 125, 118, 1) 0%, rgba(171, 171, 171, 1) 100%); background: -o-linear-gradient(left, rgba(120, 125, 118, 1) 0%, rgba(171, 171, 171, 1) 100%); background: -ms-linear-gradient(left, rgba(120, 125, 118, 1) 0%, rgba(171, 171, 171, 1) 100%); background: linear-gradient(to right, rgba(120, 125, 118, 1) 0%, rgba(171, 171, 171, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#787d76', endColorstr='#ababab', GradientType=1); }
.bg-success, .badge-success { color: var(--text-inverse, #ffffff); background: rgba(49, 192, 44, 1); background: -moz-linear-gradient(left, rgba(49, 192, 44, 1) 0%, rgba(87, 222, 83, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(49, 192, 44, 1)), color-stop(100%, rgba(87, 222, 83, 1))); background: -webkit-linear-gradient(left, rgba(49, 192, 44, 1) 0%, rgba(87, 222, 83, 1) 100%); background: -o-linear-gradient(left, rgba(49, 192, 44, 1) 0%, rgba(87, 222, 83, 1) 100%); background: -ms-linear-gradient(left, rgba(49, 192, 44, 1) 0%, rgba(87, 222, 83, 1) 100%); background: linear-gradient(to right, rgba(49, 192, 44, 1) 0%, rgba(87, 222, 83, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#31c02c', endColorstr='#57de53', GradientType=1); }
.bg-danger, .badge-danger { color: var(--text-inverse, #ffffff); background: rgba(216, 74, 69, 1); background: -moz-linear-gradient(left, rgba(216, 74, 69, 1) 0%, rgba(242, 99, 97, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(216, 74, 69, 1)), color-stop(100%, rgba(242, 99, 97, 1))); background: -webkit-linear-gradient(left, rgba(216, 74, 69, 1) 0%, rgba(242, 99, 97, 1) 100%); background: -o-linear-gradient(left, rgba(216, 74, 69, 1) 0%, rgba(242, 99, 97, 1) 100%); background: -ms-linear-gradient(left, rgba(216, 74, 69, 1) 0%, rgba(242, 99, 97, 1) 100%); background: linear-gradient(to right, rgba(216, 74, 69, 1) 0%, rgba(242, 99, 97, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d84a45', endColorstr='#f26361', GradientType=1); }
.bg-warning, .badge-warning { color: var(--text-inverse, #ffffff); background: rgba(252, 158, 91, 1); background: -moz-linear-gradient(left, rgba(252, 158, 91, 1) 0%, rgba(255, 182, 126, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(252, 158, 91, 1)), color-stop(100%, rgba(255, 182, 126, 1))); background: -webkit-linear-gradient(left, rgba(252, 158, 91, 1) 0%, rgba(255, 182, 126, 1) 100%); background: -o-linear-gradient(left, rgba(252, 158, 91, 1) 0%, rgba(255, 182, 126, 1) 100%); background: -ms-linear-gradient(left, rgba(252, 158, 91, 1) 0%, rgba(255, 182, 126, 1) 100%); background: linear-gradient(to right, rgba(252, 158, 91, 1) 0%, rgba(255, 182, 126, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fc9e5b', endColorstr='#ffb67e', GradientType=1); }
.bg-info, .badge-info { color: var(--text-inverse, #ffffff); background: rgba(2, 209, 255, 1); background: -moz-linear-gradient(left, rgba(2, 209, 255, 1) 0%, rgba(97, 226, 252, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(2, 209, 255, 1)), color-stop(100%, rgba(97, 226, 252, 1))); background: -webkit-linear-gradient(left, rgba(2, 209, 255, 1) 0%, rgba(97, 226, 252, 1) 100%); background: -o-linear-gradient(left, rgba(2, 209, 255, 1) 0%, rgba(97, 226, 252, 1) 100%); background: -ms-linear-gradient(left, rgba(2, 209, 255, 1) 0%, rgba(97, 226, 252, 1) 100%); background: linear-gradient(to right, rgba(2, 209, 255, 1) 0%, rgba(97, 226, 252, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#02d1ff', endColorstr='#61e2fc', GradientType=1); }
.bg-light, .badge-light { background: rgba(233, 238, 244, 1); background: -moz-linear-gradient(left, rgba(233, 238, 244, 1) 0%, rgba(238, 245, 253, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(233, 238, 244, 1)), color-stop(100%, rgba(238, 245, 253, 1))); background: -webkit-linear-gradient(left, rgba(233, 238, 244, 1) 0%, rgba(238, 245, 253, 1) 100%); background: -o-linear-gradient(left, rgba(233, 238, 244, 1) 0%, rgba(238, 245, 253, 1) 100%); background: -ms-linear-gradient(left, rgba(233, 238, 244, 1) 0%, rgba(238, 245, 253, 1) 100%); background: linear-gradient(to right, rgba(233, 238, 244, 1) 0%, rgba(238, 245, 253, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e9eef4', endColorstr='#eef5fd', GradientType=1); }
.bg-dark, .badge-dark { background: rgba(55, 73, 73, 1); background: -moz-linear-gradient(left, rgba(55, 73, 73, 1) 0%, rgba(69, 93, 93, 1) 100%); background: -webkit-gradient(left top, right top, color-stop(0%, rgba(55, 73, 73, 1)), color-stop(100%, rgba(69, 93, 93, 1))); background: -webkit-linear-gradient(left, rgba(55, 73, 73, 1) 0%, rgba(69, 93, 93, 1) 100%); background: -o-linear-gradient(left, rgba(55, 73, 73, 1) 0%, rgba(69, 93, 93, 1) 100%); background: -ms-linear-gradient(left, rgba(55, 73, 73, 1) 0%, rgba(69, 93, 93, 1) 100%); background: linear-gradient(to right, rgba(55, 73, 73, 1) 0%, rgba(69, 93, 93, 1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#374949', endColorstr='#455d5d', GradientType=1); }

/*----------------------------------------------
Background Color Opacity
------------------------------------------------*/
.iq-bg-primary { background: var(--primary-tint, #e6f6fd); color: var(--primary, #00A0E8); }
.iq-bg-secondary { background: var(--iq-bg-secondary, #f1f2f1); color: var(--iq-text-secondary, #777D74); }
.iq-bg-success { background: var(--state-success-bg, #e5fae5); color: var(--state-success-text, #00ca00); }
.iq-bg-danger { background: var(--state-error-bg, #fcecec); color: var(--state-error-text, #e64141); }
.iq-bg-warning { background: var(--state-warning-bg, #fae9dd); color: var(--state-warning-text, #ffb177); }
.iq-bg-info { background: var(--state-info-bg, #e5faff); color: var(--state-info-text, #00d0ff); }
.iq-bg-dark { background: var(--iq-bg-dark, #ebecec); color: var(--iq-text-dark, #374948); }

/*--------------*/
.iq-bg-primary-hover:hover { background: var(--primary-tint, #e6f6fd); }
.iq-bg-primary-secondary-hover:hover { background: var(--iq-bg-secondary, #f1f2f1); }
.iq-bg-primary-success-hover:hover { background: var(--state-success-bg, #eefff2); }
.iq-bg-primary-danger-hover:hover { background: var(--state-error-bg, #fff5f4); }
.iq-bg-primary-warning-hover:hover { background: var(--state-warning-bg, #fffcf3); }
.iq-bg-primary-info-hover:hover { background: var(--state-info-bg, #e5fafc); }
.iq-bg-primary-dark-hover:hover { background: var(--iq-bg-dark, #f0efef); }

/*----------------------------------------------
Text Color
------------------------------------------------*/
.text-primary { color: var(--primary, #00A0E8) !important; }
.text-secondary { color: var(--text-tertiary, #a09e9e) !important; }
.text-success { color: var(--color-success, #27b345) !important; }
.text-danger { color: var(--color-danger, #f14336) !important; }
.text-warning { color: var(--color-warning, #fbc647) !important; }
.text-info { color: var(--color-info, #6ce6f4) !important; }
.text-light { color: var(--gray-100, #E9EDF4) !important; }
.text-dark { color: var(--text-primary, #3f414d) !important; }
.text-white { color: var(--gray-0, #ffffff) !important; }

/*----------------------------------------------
Line Height
------------------------------------------------*/
.line-height { line-height: normal; }
.line-height-2 { line-height: 2; }
.line-height-4 { line-height: 40px; }
.line-height-6 { line-height: 60px; }

/*----------------------------------------------
Font Size
------------------------------------------------*/
.font-size-12 { font-size: 12px; }
.font-size-14 { font-size: 14px; }
.font-size-16 { font-size: 16px; }
.font-size-18 { font-size: 18px; }
.font-size-32 { font-size: 32px; }
.font-size-40 { font-size: 40px; }

/*----------------------------------------------
Avatar Size
------------------------------------------------*/
.avatar-35 { height: 35px; width: 35px; line-height: 35px; font-size: 0.5rem; }
.avatar-30 { height: 30px; width: 30px; line-height: 30px; font-size: 0.4rem; }
.avatar-40 { height: 40px; width: 40px; line-height: 40px; font-size: 0.6rem; }
.avatar-45 { height: 45px; width: 45px; line-height: 45px; font-size: 0.8rem; }
.avatar-50 { height: 50px; width: 50px; line-height: 50px; font-size: 1rem; }
.avatar-60 { height: 60px; width: 60px; line-height: 60px; font-size: 1.2rem; }
.avatar-70 { height: 70px; width: 70px; line-height: 70px; font-size: 1.4rem; }
.avatar-80 { height: 80px; width: 80px; line-height: 80px; font-size: 1.6rem; }
.avatar-90 { height: 90px; width: 90px; line-height: 90px; font-size: 1.6rem; }
.avatar-100 { height: 100px; width: 100px; line-height: 100px; font-size: 1.6rem; }
.avatar-110 { height: 110px; width: 110px; line-height: 110px; font-size: 1.6rem; }
.avatar-120 { height: 120px; width: 120px; line-height: 120px; font-size: 1.6rem; }
.avatar-130 { height: 130px; width: 130px; line-height: 130px; font-size: 1.6rem; }

/*----------------------------------------------
Margin Bottom
------------------------------------------------*/
.iq-mb-3 { margin-bottom: 30px; }

/*----------------------------------------------
Card
------------------------------------------------*/
.iq-card { background: var(--surface-base, #ffffff); border-radius: var(--card-radius, 16px); margin-bottom: 30px; border: var(--card-border, none); box-shadow: var(--shadow-sm); }
.iq-card .iq-card { box-shadow: none; border: 1px solid var(--border-default, #dcdcdc); }
.iq-card .iq-card .iq-card-header { border: none; }
.iq-card-body { padding: 20px; color: var(--text-secondary, #4b5563); }
.iq-card .iq-card-header { padding: 0 20px; min-height: 60px; align-items: center; border-bottom: 1px solid var(--border-default, #dcdcdc); border-radius: var(--card-radius, 16px) var(--card-radius, 16px) 0 0; background: var(--surface-raised, #f1f3f5); }
.iq-card .iq-card-header .iq-header-title { display: inline-block; align-self: center; }
.iq-card .iq-card-header .iq-header-title .card-title { margin-bottom: 0; color: var(--text-primary, #313949); }
.iq-card-header-toolbar .nav-item a { color: var(--text-primary, #313949); padding: 4px 12px; font-size: 14px;}
.iq-card-header-toolbar .dropdown-toggle i { font-size: 22px; line-height: normal; color: var(--text-primary, #313949); }
.iq-card-header-toolbar .dropdown-toggle::after { display: none; }

/*--------------*/
.nav-pills .nav-item a { color: var(--text-primary, #393c52); }
.nav-pills .nav-link.active, .nav-pills .show>.nav-link { color: var(--primary, #00A0E8); background: var(--primary-tint, #e6f6fd); }
.nav-pills .nav-link:hover { color: var(--primary, #00A0E8); }

/*--------------*/
.nav-tabs { border-bottom: 2px solid var(--border-default, #f2edff); margin-bottom: 15px; }
.nav-tabs .nav-item { margin-bottom: -2px; }
.nav-tabs .nav-item a { color: var(--text-primary, #393c52); border: none; border-bottom: 2px solid transparent; }
.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active { border-bottom: 2px solid var(--primary, #00A0E8); color: var(--primary, #00A0E8); }
.page-item.disabled .page-link { border-color: var(--primary, #00A0E8); }
.page-link { color: var(--primary, #00A0E8); border-color: var(--primary, #00A0E8); }
.page-item.active .page-link { background-color: var(--primary, #00A0E8); border-color: var(--primary, #00A0E8); }
.page-link:hover { color: var(--primary, #00A0E8); border-color: var(--primary, #00A0E8); }

/*---------------------------------------------------------------------
Background overlay color
-----------------------------------------------------------------------*/
.parallax { background-size: cover; -webkit-background-size: cover; -moz-background-size: cover; -ms-background-size: cover; position: relative; z-index: 0; background-origin: initial; background-position: center center; background-repeat: no-repeat; background-attachment: fixed; }

/* Background Gradient BLACK */
.bg-over-black-10:before { background: rgba(5, 8, 9, 0.1); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-20:before { background: rgba(5, 8, 9, 0.2); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-30:before { background: rgba(5, 8, 9, 0.3); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-40:before { background: rgba(5, 8, 9, 0.4); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-50:before { background: rgba(5, 8, 9, 0.5); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-60:before { background: rgba(5, 8, 9, 0.6); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-70:before { background: rgba(5, 8, 9, 0.7); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-80:before { background: rgba(5, 8, 9, 0.8); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-85:before { background: rgba(5, 8, 9, 0.85); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }
.bg-over-black-90:before { background: rgba(5, 8, 9, 0.9); content: ""; height: 100%; left: 0; position: absolute; top: 0; width: 100%; z-index: 0; }

/*----------------------------------------------
Buttons
------------------------------------------------*/
.btn { font-size: 14px; font-family: 'Poppins', sans-serif; }
.btn.focus, .btn:focus { box-shadow: none; }
.btn i { margin-right: 5px; }
.iq-sign-btn { display: inline-block; text-align: center; border: 1px solid transparent; padding: .375rem 1rem; border-radius: 25px; color: #ffffff; }
.iq-sign-btn:hover, .iq-sign-btn:focus { color: #ffffff; background: var(--primary-dark, #0092d4) !important; }

/*-- 淡色系按鈕統一風格（品牌規範）--*/
/* 共用：圓角 + 過渡 + 去 Bootstrap 陰影（保留 focus ring） */
.btn { border-radius: 10px; transition: background 0.15s, border-color 0.15s, color 0.15s; }
.btn:not(:focus) { box-shadow: none; }
.btn:focus { box-shadow: 0 0 0 3px var(--color-focus-ring, rgba(0,160,232,0.3)); }

/* 共用 disabled 狀態 */
.btn:disabled, .btn.disabled { color: var(--disabled-text, #9ca3af); background: var(--disabled-bg, #f1f3f5); border-color: var(--disabled-border, #dcdcdc); opacity: 1; }

/* Primary — 淡藍（每區塊最多 1 顆） */
.btn-primary { color: var(--btn-primary-text, #0077ad); background: var(--btn-primary-bg, rgba(0,160,232,0.12)); border: 1px solid var(--btn-primary-border, rgba(0,160,232,0.28)); }
.btn-primary:hover, .btn-primary:focus { color: var(--btn-primary-text, #0077ad); background: var(--btn-primary-bg-hover, rgba(0,160,232,0.20)); border-color: var(--btn-primary-border, rgba(0,160,232,0.28)); }
.btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle { color: var(--btn-primary-text, #0077ad); background: var(--btn-primary-bg-hover, rgba(0,160,232,0.20)); }

/* Secondary — 中性（取消、返回） */
.btn-secondary { color: var(--btn-secondary-text, #334155); background: var(--btn-secondary-bg, #ffffff); border: 1px solid var(--btn-secondary-border, #dcdcdc); }
.btn-secondary:hover, .btn-secondary:focus { color: var(--btn-secondary-text, #334155); background: var(--btn-secondary-bg-hover, #f8fafc); border-color: var(--btn-secondary-border, #dcdcdc); }
.btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle { color: var(--btn-secondary-text, #334155); background: var(--btn-secondary-bg-hover, #f8fafc); }

/* Danger — 淡紅（刪除、不可逆） */
.btn-danger { color: var(--btn-danger-text, #b42318); background: var(--btn-danger-bg, rgba(239,68,68,0.10)); border: 1px solid var(--btn-danger-border, rgba(239,68,68,0.26)); }
.btn-danger:hover, .btn-danger:focus { color: var(--btn-danger-text, #b42318); background: var(--btn-danger-bg-hover, rgba(239,68,68,0.18)); border-color: var(--btn-danger-border, rgba(239,68,68,0.26)); }
.btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle { color: var(--btn-danger-text, #b42318); background: var(--btn-danger-bg-hover, rgba(239,68,68,0.18)); }

/* Success — 淡綠 */
.btn-success { color: var(--btn-success-text, #065f46); background: var(--btn-success-bg, rgba(34,197,94,0.12)); border: 1px solid var(--btn-success-border, rgba(34,197,94,0.28)); }
.btn-success:hover, .btn-success:focus { color: var(--btn-success-text, #065f46); background: var(--btn-success-bg-hover, rgba(34,197,94,0.20)); }
.btn-success:active, .btn-success.active { color: var(--btn-success-text, #065f46); background: var(--btn-success-bg-hover, rgba(34,197,94,0.20)); }

/* Warning — 淡橙 */
.btn-warning { color: var(--btn-warning-text, #92400e); background: var(--btn-warning-bg, rgba(245,158,11,0.12)); border: 1px solid var(--btn-warning-border, rgba(245,158,11,0.28)); }
.btn-warning:hover, .btn-warning:focus { color: var(--btn-warning-text, #92400e); background: var(--btn-warning-bg-hover, rgba(245,158,11,0.20)); }
.btn-warning:active, .btn-warning.active { color: var(--btn-warning-text, #92400e); background: var(--btn-warning-bg-hover, rgba(245,158,11,0.20)); }

/* Info — 淡青 */
.btn-info { color: var(--btn-info-text, #0e7490); background: var(--btn-info-bg, rgba(6,182,212,0.12)); border: 1px solid var(--btn-info-border, rgba(6,182,212,0.28)); }
.btn-info:hover, .btn-info:focus { color: var(--btn-info-text, #0e7490); background: var(--btn-info-bg-hover, rgba(6,182,212,0.20)); }
.btn-info:active, .btn-info.active { color: var(--btn-info-text, #0e7490); background: var(--btn-info-bg-hover, rgba(6,182,212,0.20)); }

/* Light */
.btn-light { color: var(--btn-light-text, #334155); background: var(--btn-light-bg, #f8fafc); border: 1px solid var(--btn-light-border, #e2e8f0); }
.btn-light:hover, .btn-light:focus { color: var(--btn-light-text-hover, #1e293b); background: var(--btn-light-bg-hover, #f1f5f9); }
.btn-light:active, .btn-light.active { color: var(--btn-light-text-hover, #1e293b); background: var(--btn-light-bg-hover, #f1f5f9); }

/* Dark */
.btn-dark { color: var(--btn-dark-text, #f1f5f9); background: var(--btn-dark-bg, #334155); border: 1px solid var(--btn-dark-border, #475569); }
.btn-dark:hover, .btn-dark:focus { color: var(--btn-dark-text-hover, #f8fafc); background: var(--btn-dark-bg-hover, #475569); }
.btn-dark:active, .btn-dark.active { color: var(--btn-dark-text-hover, #f8fafc); background: var(--btn-dark-bg-hover, #475569); }

/* Ghost — 無邊框（工具型操作） */
.btn-ghost { color: var(--btn-ghost-text, #0077ad); background: var(--btn-ghost-bg, transparent); border: 1px solid transparent; }
.btn-ghost:hover, .btn-ghost:focus { color: var(--btn-ghost-text, #0077ad); background: var(--btn-ghost-bg-hover, rgba(0,160,232,0.08)); }

/* Outline variants */
.btn-outline-primary { color: var(--btn-primary-text, #0077ad); background: transparent; border: 1px solid var(--btn-primary-border, rgba(0,160,232,0.28)); }
.btn-outline-primary:hover, .btn-outline-primary:focus { color: var(--btn-primary-text, #0077ad); background: var(--btn-primary-bg, rgba(0,160,232,0.12)); }
.btn-outline-secondary { color: var(--btn-secondary-text, #334155); background: transparent; border: 1px solid var(--btn-secondary-border, #dcdcdc); }
.btn-outline-secondary:hover, .btn-outline-secondary:focus { color: var(--btn-secondary-text, #334155); background: var(--btn-secondary-bg-hover, #f8fafc); }

/*--------------*/
a.bg-primary:focus, a.bg-primary:hover, button.bg-primary:focus, button.bg-primary:hover { background: var(--primary-dark, #0092d4) !important; }

/*--------------*/
.btn-outline-primary { color: var(--btn-primary-text, #0077ad); border-color: var(--btn-primary-border, rgba(0,160,232,0.28)); background: transparent; }
.btn-outline-primary:hover { color: var(--btn-primary-text, #0077ad); background: var(--btn-primary-bg, rgba(0,160,232,0.12)); border-color: var(--btn-primary-border, rgba(0,160,232,0.28)); }
.btn-outline-secondary { color: var(--btn-secondary-text, #334155); border-color: var(--btn-secondary-border, #dcdcdc); }
.btn-outline-secondary:hover { color: var(--btn-secondary-text, #334155); background: var(--btn-secondary-bg-hover, #f8fafc); }
.btn-outline-success { color: var(--btn-success-text, #065f46); border-color: var(--btn-success-border, rgba(34, 197, 94, 0.28)); }
.btn-outline-danger { color: var(--btn-danger-text, #b42318); border-color: var(--btn-danger-border, rgba(239,68,68,0.26)); }
.btn-outline-warning { color: var(--btn-warning-text, #92400e); border-color: var(--btn-warning-border, rgba(245, 158, 11, 0.28)); }
.btn-outline-info { color: var(--btn-info-text, #0e7490); border-color: var(--btn-info-border, rgba(6, 182, 212, 0.28)); }
.btn-outline-light { color: var(--btn-light-border, #E9EDF4); border-color: var(--btn-light-border, #E9EDF4); }
.btn-outline-dark { color: var(--btn-dark-bg, #3f414d); border-color: var(--btn-dark-bg, #3f414d); }

/*----------------------------------------------
Alert
------------------------------------------------*/
.alert-primary { color: var(--primary, #00A0E8); border-color: var(--primary, #00A0E8); background-color: var(--primary-tint, #e6f6fd); }
.alert-secondary { color: var(--text-tertiary, #a09e9e); border-color: var(--border-default, #d6d8d5); background-color: var(--iq-bg-secondary, #f1f2f1); }
.alert-success { color: var(--state-success-text, #27b345); border-color: var(--state-success-border, #b2efb2); background-color: var(--state-success-bg, #eefff2); }
.alert-danger { color: var(--state-error-text, #f14336); border-color: var(--state-error-border, #f7c6c6); background-color: var(--state-error-bg, #fff5f4); }
.alert-warning { color: var(--state-warning-text, #fbc647); border-color: var(--state-warning-border, #fff2b2); background-color: var(--state-warning-bg, #fffcf3); }
.alert-info { color: var(--state-info-text, #6ce6f4); border-color: var(--state-info-border, #b2f1ff); background-color: var(--state-info-bg, #e5fafc); }
.alert-light { color: var(--text-tertiary, #a09e9e); border-color: var(--border-default, #d6d8d5); background-color: var(--surface-raised, #e9edf4); }
.alert-dark { color: var(--text-primary, #3f414d); border-color: var(--border-strong, #c3c8c8); background-color: var(--iq-bg-dark, #f0efef); }

/*--------------*/
.alert { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
.alert .iq-alert-icon { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 0 1.30rem 0 0; }
.alert .iq-alert-icon i { font-size: 2.441em; line-height: normal; }
.alert .iq-alert-text { -ms-flex-item-align: center; align-self: center; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; }
.alert .close { float: right; font-size: 20px; font-weight: 400; line-height: 1; color: var(--text-inverse, #fff); text-shadow: none; opacity: 1; }
.close:not(:disabled):not(.disabled):focus, .close:not(:disabled):not(.disabled):hover { outline: none; }

/*----------------------------------------------
list Group
------------------------------------------------*/
.list-group-item-primary { background-color: var(--primary-tint, #e6f6fd); color: var(--primary, #00A0E8); }
.list-group-item-secondary { color: var(--text-tertiary, #a09e9e); background-color: var(--iq-bg-secondary, #f1f2f1); }
.list-group-item-success { color: var(--state-success-text, #27b345); background-color: var(--state-success-bg, #eefff2); }
.list-group-item-danger { color: var(--state-error-text, #f14336); background-color: var(--state-error-bg, #fff5f4); }
.list-group-item-warning { color: var(--state-warning-text, #fbc647); background-color: var(--state-warning-bg, #fffcf3); }
.list-group-item-info { color: var(--state-info-text, #6ce6f4); background-color: var(--state-info-bg, #e5fafc); }
.list-group-item-light { color: var(--text-tertiary, #a09e9e); background-color: var(--surface-raised, #e9edf4); }
.list-group-item-dark { color: var(--text-primary, #3f414d); background-color: var(--iq-bg-dark, #f0efef); }
.list-group-item-action { color: var(--text-primary, #3f414d); }
.list-group-item.active { background-color: var(--primary, #00A0E8); border-color: var(--primary, #00A0E8); }

/*----------------------------------------------
Border Color
------------------------------------------------*/
.border-primary {border-color: var(--primary, #00A0E8) !important; }
.border-secondary {border-color: var(--border-default, #d6d8d5) !important; }
.border-success { border-color: var(--state-success-border, #b2efb2) !important; }
.border-danger { border-color: var(--state-error-border, #f7c6c6) !important; }
.border-warning { border-color: var(--state-warning-border, #fff2b2) !important; }
.border-info { border-color: var(--state-info-border, #b2f1ff) !important; }
.border-light { border-color: var(--border-default, #d6d8d5) !important; }
.border-dark { border-color: var(--border-strong, #c3c8c8) !important; }