/* ============================================================
   Dark Blue Theme for Material Admin (SourceBans)
   Palette (deep navy, inspired by API-docs):
     --bg-body:      #070d1a   (deepest background)
     --bg-sidebar:   #0a1225   (sidebar)
     --bg-card:      #0c1528   (cards, panels)
     --bg-card-alt:  #101d35   (card headers, alt surfaces)
     --bg-input:     #111c30   (inputs, form controls)
     --bg-header:    #080f1f   (top header bar)
     --border:       rgba(30, 100, 200, 0.18)  (borders)
     --border-solid: #152040   (solid borders)
     --text-primary: #ddeeff   (main text)
     --text-secondary:#7ea8d4  (secondary/muted text)
     --text-heading: #e8f0ff   (headings)
     --accent:       #1e90ff   (links, active states)
     --accent-hover: #4ea8ff   (link hover)
     --accent-bg:    rgba(30, 144, 255, 0.12) (active menu bg)
   ============================================================ */

/* === Base === */

body {
  background-color: #070d1a !important;
  color: #ddeeff !important;
}

a {
  color: #1e90ff;
}

a:hover,
a:focus {
  color: #4ea8ff;
}

mark {
  background-color: #0f2a4d;
  color: #ddeeff;
}

hr {
  border-top-color: #152040;
}

::selection {
  background: #0f2a4d;
  color: #e8f0ff;
}

/* === Scrollbar (webkit) === */

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #070d1a;
}

::-webkit-scrollbar-thumb {
  background: #152040;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #1a2d50;
}

/* === Header === */

#header {
  background-color: #080f1f !important;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.45) !important;
}

#header[data-current-skin] {
  background-color: #080f1f !important;
}

.header-inner {
  color: #ddeeff;
}

.logo a {
  color: #e8f0ff !important;
}

.top-menu > li > a,
.tm-icon {
  color: #7ea8d4 !important;
}

.top-menu > li > a:hover .tm-icon,
.top-menu > li > a:hover {
  color: #ddeeff !important;
}

#menu-trigger .line {
  background-color: #7ea8d4;
}

/* === Sidebar === */

.sidebar {
  background: #0a1225 !important;
  box-shadow: 2px 0 12px rgba(0, 0, 0, 0.35) !important;
}

.profile-menu > a {
  background: linear-gradient(135deg, #080f1f 0%, #0f1e3a 100%) !important;
}

.profile-menu > a .profile-info {
  background: rgba(0, 0, 0, 0.45) !important;
  color: #ddeeff !important;
}

.profile-menu .main-menu {
  border-bottom-color: #152040 !important;
}

.main-menu > li > a {
  color: #7ea8d4 !important;
}

.main-menu > li > a:hover {
  color: #ddeeff !important;
  background-color: #0c1528 !important;
}

.main-menu > li > a > i {
  color: #3d607f;
}

.main-menu > li > a:hover > i {
  color: #1e90ff;
}

.main-menu > li.active > a {
  color: #1e90ff !important;
  background-color: #0f2a4d !important;
}

.main-menu > li.active > a > i {
  color: #1e90ff;
}

.main-menu > li.nonactive > a {
  color: #7ea8d4 !important;
}

/* Submenu */
.sub-menu > li > a {
  color: #5a80a8 !important;
}

.sub-menu > li > a:hover,
.sub-menu > li.active > a {
  color: #1e90ff !important;
}

/* === Cards === */

.card {
  background: #0c1528 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.card .card-header {
  border-bottom-color: #152040;
}

.card .card-header h2 {
  color: #e8f0ff !important;
}

.card .card-header h2 small {
  color: #5a80a8 !important;
}

.card .card-header:not(.ch-alt):not([class*="bgm-"]) {
  background-color: transparent !important;
}

.card .card-header.ch-alt:not([class*="bgm-"]) {
  background-color: #0a1225 !important;
}

.card-body,
.card-body.card-padding {
  color: #ddeeff;
}

/* === Tables (global) === */

table {
  color: #ddeeff;
}

th, td {
  color: #ddeeff;
}

tr {
  background-color: #0c1528 !important;
}

thead tr,
thead > tr {
  background-color: #0a1225 !important;
}

th {
  color: #7ea8d4 !important;
  border-color: #152040 !important;
}

td {
  border-color: #152040 !important;
}

.table {
  color: #ddeeff;
  background-color: #0c1528 !important;
}

.table > thead > tr > th {
  color: #7ea8d4 !important;
  border-bottom-color: #1a2d50 !important;
  background-color: #0a1225 !important;
}

.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  border-top-color: #152040 !important;
  border-color: #152040 !important;
  color: #ddeeff;
}

.table > tbody > tr {
  background-color: #0c1528 !important;
}

.table > tbody + tbody {
  border-top-color: #1a2d50 !important;
}

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #0e1830 !important;
}

.table-striped > tbody > tr:nth-of-type(even) {
  background-color: #0c1528 !important;
}

.table-hover > tbody > tr:hover {
  background-color: #0f1e3a !important;
}

/* Active row (used by onmouseover="this.className='active'") */
tr.active,
tr.active > td,
tr.active > th,
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #0f1e3a !important;
}

.table-bordered {
  border-color: #152040 !important;
}

.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > th,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > th,
.table-bordered > tfoot > tr > td {
  border-color: #152040 !important;
}

/* Nested tables */
.table .table {
  background-color: #0e1830 !important;
}

/* SourceBans listtable classes (unstyled tables inside cards) */
.listtable,
.listtable tr,
.listtable td,
.listtable th {
  background-color: #0c1528 !important;
  color: #ddeeff !important;
  border-color: #152040 !important;
}

.listtable_1 {
  background-color: #0c1528 !important;
  color: #ddeeff !important;
  border-color: #152040 !important;
}

.listtable_2 {
  background-color: #0e1830 !important;
  color: #ddeeff !important;
  border-color: #152040 !important;
}

.listtable_top {
  background-color: #0a1225 !important;
  color: #7ea8d4 !important;
  border-color: #152040 !important;
}

/* Opener divs (expandable server details) */
.opener {
  color: #ddeeff;
}

/* Force dark on any inline border-color #FFFFFF or #fff */
.card td[style*="border"],
.card tr[style*="border"] {
  border-color: #152040 !important;
}

/* Nested tables inside cards */
.card table,
.card table tr,
.card table td,
.card table th {
  background-color: transparent !important;
  color: #ddeeff;
  border-color: #152040 !important;
}

.card > .card-body table,
.card > .table-responsive > table {
  background-color: #0c1528 !important;
}

/* Server info details area */
.card .p-20 {
  color: #ddeeff;
}

.card .p-20 b,
.card .p-20 strong {
  color: #e8f0ff;
}

/* Comments section */
.tv-comments,
.tvc-lists,
.tvc-lists li {
  color: #ddeeff;
}

.tvc-lists .media-body strong {
  color: #e8f0ff;
}

.tvc-lists .c-gray {
  color: #3d607f !important;
}

/* === Forms === */

.form-control {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.form-control:not(.fc-alt) {
  padding: 6px 12px !important;
  border: 1px solid #1a2d50 !important;
  border-radius: 3px !important;
}

.form-control:focus {
  border-color: #1e90ff !important;
  box-shadow: 0 0 0 2px rgba(78, 168, 238, 0.15) !important;
}

.form-control::-webkit-input-placeholder { color: #3d607f; }
.form-control::-moz-placeholder { color: #3d607f; }
.form-control:-ms-input-placeholder { color: #3d607f; }
.form-control::placeholder { color: #3d607f; }

.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #0a1225 !important;
  color: #3d607f !important;
}

/* Legacy admin inputs without .form-control */
#admin-page-content input.inputbox,
#admin-page-content input.textbox,
#admin-page-content textarea.textbox,
#admin-page-content input#new_override_name,
#admin-page-content input#immunity,
input.inputbox#groupname,
input.textbox,
textarea.textbox,
input#new_override_name,
input#immunity {
  background-color: #111c30 !important;
  border: 1px solid #1a2d50 !important;
  border-radius: 3px !important;
  color: #ddeeff !important;
  padding: 6px 10px !important;
}

#admin-page-content input.inputbox:focus,
#admin-page-content input.textbox:focus,
#admin-page-content textarea.textbox:focus,
#admin-page-content input#new_override_name:focus,
#admin-page-content input#immunity:focus,
input.inputbox#groupname:focus,
input.textbox:focus,
textarea.textbox:focus,
input#new_override_name:focus,
input#immunity:focus {
  border-color: #1e90ff !important;
  box-shadow: 0 0 0 2px rgba(78, 168, 238, 0.15) !important;
  outline: none !important;
}

input#immunity {
  min-width: 70px;
  text-align: center;
}

.fg-line:after {
  background: #1e90ff !important;
}

.fg-line .form-control {
  border-color: #1a2d50 !important;
}

.fg-line .form-control:focus {
  border-color: #1e90ff !important;
}

label,
.control-label {
  color: #7ea8d4;
}

.input-group-addon {
  color: #7ea8d4 !important;
  border-color: #1a2d50 !important;
  background-color: #0a1225 !important;
}

/* Select / Chosen / Bootstrap-select — see full overrides below in "Wall comments" section */

/* Toggle switch */
.toggle-switch .ts-helper {
  background-color: #152040;
}

/* Checkbox & Radio — visible on dark bg */
.checkbox .input-helper:before,
.radio .input-helper:before {
  border: 2px solid #4a7aaa !important;
  background-color: transparent !important;
}

/* Checkbox tick (checkmark) */
.checkbox .input-helper:after {
  border-bottom-color: #1e90ff !important;
  border-left-color: #1e90ff !important;
}

/* Radio dot */
.radio .input-helper:after {
  background-color: #1e90ff !important;
}

/* Fix: .form-inline resets checkbox label padding to 0, causing overlap */
.form-inline .checkbox label,
.form-inline .radio label {
  padding-left: 30px !important;
}

/* === Buttons === */

.btn-default {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.btn-default:hover,
.btn-default:focus {
  background-color: #152040 !important;
  border-color: #1a4a7a !important;
  color: #e8f0ff !important;
}

/* Legacy SB "save" buttons (upload icon/map) */
.btn.save,
button.btn.save {
  background-color: #16314a !important;
  border: 1px solid #244c72 !important;
  color: #dcecff !important;
  background-image: none !important;
  text-shadow: none !important;
}

.btn.save:hover,
.btn.save:focus,
button.btn.save:hover,
button.btn.save:focus {
  background-color: #1d3f60 !important;
  border-color: #2d5f90 !important;
  color: #ecf5ff !important;
  background-image: none !important;
}

/* === Dropdowns === */

.dropdown-menu {
  background-color: #0c1528 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45) !important;
  border-color: #152040 !important;
}

.dropdown-menu > li > a {
  color: #ddeeff !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  background-color: #0f2a4d !important;
  color: #e8f0ff !important;
}

.dropdown-menu .divider {
  background-color: #152040 !important;
}

.dropdown-menu[class*="bgm-"] > li > a {
  color: #fff !important;
}

/* === Modals === */

.modal-content {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
  color: #ddeeff !important;
}

.modal-header {
  border-bottom-color: #152040 !important;
}

.modal-footer {
  border-top-color: #152040 !important;
}

.modal-title {
  color: #e8f0ff !important;
}

.modal-backdrop.in {
  opacity: 0.7;
}

/* === Pagination === */

.pagination > li > a,
.pagination > li > span {
  background-color: #111c30 !important;
  border-color: #152040 !important;
  color: #7ea8d4 !important;
}

.pagination > li > a:hover,
.pagination > li > span:hover {
  background-color: #152040 !important;
  color: #ddeeff !important;
}

.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover {
  background-color: #1e90ff !important;
  border-color: #1e90ff !important;
  color: #fff !important;
}

.pagination > .disabled > a,
.pagination > .disabled > span {
  background-color: #0a1225 !important;
  border-color: #152040 !important;
  color: #2a3f5a !important;
}

/* === Breadcrumb === */

.breadcrumb {
  background-color: #0c1528 !important;
  border-bottom-color: #152040 !important;
}

.breadcrumb > li > a {
  color: #7ea8d4 !important;
}

.breadcrumb > li > a:hover {
  color: #1e90ff !important;
}

.breadcrumb > li + li:before {
  color: #2a3f5a !important;
}

.breadcrumb > .active {
  color: #3d607f !important;
}

/* === Ban status colors (table rows) === */

/* Permanent ban — danger: deep red tint */
td.danger,
tr.danger > td,
.table > tbody > tr > td.danger,
.table > tbody > tr.danger > td {
  background-color: rgba(220, 53, 69, 0.2) !important;
  color: #ff6b6b !important;
}

td.danger.c-white,
tr.danger > td.c-white {
  color: #ff6b6b !important;
}

.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr > td.danger:hover {
  background-color: rgba(220, 53, 69, 0.3) !important;
}

/* Unbanned / Removed — success: muted green tint */
td.success,
tr.success > td,
.table > tbody > tr > td.success,
.table > tbody > tr.success > td {
  background-color: rgba(76, 175, 80, 0.15) !important;
  color: #66bb6a !important;
}

td.success.c-white,
tr.success > td.c-white {
  color: #66bb6a !important;
}

.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr > td.success:hover {
  background-color: rgba(76, 175, 80, 0.25) !important;
}

/* Expired — active: muted amber tint */
td.active,
.table > tbody > tr > td.active,
.table > tbody > tr.active > td {
  background-color: rgba(255, 193, 7, 0.12) !important;
  color: #ffc107 !important;
}

.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr > td.active:hover {
  background-color: rgba(255, 193, 7, 0.2) !important;
}

/* Warning row */
td.warning,
tr.warning > td,
.table > tbody > tr > td.warning,
.table > tbody > tr.warning > td {
  background-color: rgba(255, 152, 0, 0.15) !important;
  color: #ffb74d !important;
}

/* Info row */
td.info,
tr.info > td,
.table > tbody > tr > td.info,
.table > tbody > tr.info > td {
  background-color: rgba(33, 150, 243, 0.12) !important;
  color: #64b5f6 !important;
}

/* Dashboard: duration accent in latest bans/comms widgets */
.ban-length-cell {
  font-weight: 500;
  border-radius: 3px;
}

.ban-length-cell.ban-length-cell--active {
  background-color: rgba(30, 144, 255, 0.16) !important;
  color: #9ecbff !important;
}

.ban-length-cell.ban-length-cell--unbanned {
  background-color: rgba(76, 175, 80, 0.2) !important;
  color: #7fdd83 !important;
}

.ban-length-cell.ban-length-cell--unbanned del {
  color: #7fdd83 !important;
  opacity: 0.95;
}

/* SourceBans comms-specific classes */
.listtable_1_permanent,
td.listtable_1_permanent {
  background-color: rgba(220, 53, 69, 0.2) !important;
  color: #ff6b6b !important;
}

.listtable_1_banned,
td.listtable_1_banned {
  background-color: #0c1528 !important;
  color: #ddeeff !important;
}

.listtable_1_unbanned,
td.listtable_1_unbanned {
  background-color: rgba(76, 175, 80, 0.15) !important;
  color: #66bb6a !important;
}

/* Override c-white inside status cells — use status color instead */
td.danger .c-white,
td.success .c-white,
td.danger.c-white,
td.success.c-white,
tr.danger .c-white,
tr.success .c-white {
  color: inherit !important;
}

/* Strikethrough for unbanned/expired bans */
td.success del,
td.active del,
tr.success del,
tr.active del {
  color: #3d607f;
}

/* === Blockquote === */

blockquote {
  border-left-color: #1a2d50;
  color: #ddeeff;
}

blockquote footer,
blockquote small {
  color: #3d607f;
}

/* === Alerts === */

.alert {
  border: none;
}

/* === Panels / Wells === */

.panel {
  background-color: #0c1528;
  border-color: #152040;
}

.panel-default > .panel-heading {
  background-color: #0a1225;
  border-color: #152040;
  color: #ddeeff;
}

.well {
  background-color: #0a1225 !important;
  border-color: #152040 !important;
  color: #ddeeff;
}

/* === Listview === */

.listview .lv-header {
  color: #fff;
}

.listview .lv-body .lv-item {
  border-bottom-color: #152040;
}

.lv-title {
  color: #ddeeff;
}

.lv-small {
  color: #5a80a8 !important;
}

/* === Tabs === */

.tab-nav > li > a {
  color: #7ea8d4 !important;
}

.tab-nav > li > a:hover {
  color: #ddeeff !important;
}

.tab-nav > li.active > a {
  color: #1e90ff !important;
}

.tab-content {
  color: #ddeeff;
}

/* === Footer === */

#footer {
  color: #3d607f !important;
}

#footer .f-menu > li > a,
.footer_link {
  color: #3d607f !important;
}

#footer .f-menu > li > a:hover,
.footer_link:hover {
  color: #1e90ff !important;
}

/* Page loader customization: circular scanner */
.page-loader .preloader {
  width: 78px !important;
  height: 78px !important;
  position: relative !important;
  left: 50% !important;
  top: 50% !important;
  margin: 0 !important;
  transform: translate(-50%, -50%);
}

.page-loader .preloader .pl-circular {
  display: none !important;
}

.page-loader .preloader:before {
  content: "";
  position: absolute !important;
  inset: 0 !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 50% 45%, rgba(30, 144, 255, 0.18) 0%, rgba(30, 144, 255, 0.08) 45%, rgba(30, 144, 255, 0.03) 70%, rgba(30, 144, 255, 0.01) 100%);
  border: 1px solid rgba(78, 168, 255, 0.26);
  box-shadow: inset 0 0 14px rgba(30, 144, 255, 0.14);
}

.page-loader .preloader:after {
  content: "";
  position: absolute !important;
  inset: -2px !important;
  border-radius: 50% !important;
  border: 2px solid transparent;
  border-top-color: rgba(78, 168, 255, 0.95);
  border-right-color: rgba(30, 144, 255, 0.65);
  filter: drop-shadow(0 0 7px rgba(78, 168, 255, 0.6));
  animation: sbOrbitScan 0.9s linear infinite;
}

.page-loader .preloader p {
  position: absolute !important;
  left: 50% !important;
  top: 100% !important;
  transform: translateX(-50%);
  margin-top: 16px !important;
  color: #9ecbff !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 500;
  white-space: nowrap;
  text-align: center;
}

.page-loader .preloader p:after {
  content: "...";
  animation: sbLoaderDots 0.9s steps(3, end) infinite;
}

@keyframes sbOrbitScan {
  to { transform: rotate(360deg); }
}

@keyframes sbLoaderDots {
  0%, 20% { opacity: 0.25; }
  60% { opacity: 0.7; }
  100% { opacity: 1; }
}

/* === Chat sidebar === */

#chat {
  background: #0a1225 !important;
}

.chat-seach {
  border-bottom-color: #152040;
}

.chat-seach h4 {
  color: #ddeeff;
}

/* === Page Loader === */

.page-loader {
  background-color: #070d1a !important;
}

.page-loader p {
  color: #7ea8d4;
}

/* === Tooltip === */

.tooltip-inner {
  background-color: #0c1528;
  color: #ddeeff;
  border: 1px solid #152040;
}

.tooltip.top .tooltip-arrow {
  border-top-color: #0c1528;
}

.tooltip.bottom .tooltip-arrow {
  border-bottom-color: #0c1528;
}

.tooltip.left .tooltip-arrow {
  border-left-color: #0c1528;
}

.tooltip.right .tooltip-arrow {
  border-right-color: #0c1528;
}

/* === Popover === */

.popover {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
  color: #ddeeff;
}

.popover-title {
  background-color: #0a1225 !important;
  border-bottom-color: #152040 !important;
  color: #e8f0ff;
}

.popover > .arrow:after {
  border-top-color: #0c1528 !important;
}

/* === SweetAlert === */

.sweet-alert {
  background-color: #0c1528 !important;
  color: #ddeeff !important;
}

.sweet-alert h2 {
  color: #e8f0ff !important;
}

.sweet-alert p {
  color: #7ea8d4 !important;
}

.sweet-alert .icon.success .fix {
  background-color: #0c1528 !important;
}

.sweet-alert .icon.success::before,
.sweet-alert .icon.success::after {
  background-color: #0c1528 !important;
}

.sweet-alert .icon.error::before,
.sweet-alert .icon.error::after {
  background-color: #0c1528 !important;
}

/* === Growl notifications === */

.bootstrap-growl {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
  color: #ddeeff !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4) !important;
}

/* === Progress bars === */

.progress {
  background-color: #152040 !important;
}

/* === Labels / Badges === */

.label-default {
  background-color: #152040 !important;
  color: #ddeeff !important;
}

.badge {
  background-color: #1e90ff;
}

/* === Nav pills === */

.nav-pills > li > a {
  color: #7ea8d4;
}

.nav-pills > li > a:hover {
  background-color: #111c30;
  color: #ddeeff;
}

.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  background-color: #1e90ff;
  color: #fff;
}

/* === Code / Pre === */

code {
  background-color: #111c30;
  color: #4ea8ff;
  border: none;
}

pre {
  background-color: #0a1225 !important;
  border-color: #152040 !important;
  color: #ddeeff !important;
}

/* === Block header (content title) === */

.block-header h2 {
  color: #7ea8d4 !important;
}

#content_title {
  color: #7ea8d4 !important;
}

/* === Typography inside content === */

h1, h2, h3, h4, h5, h6 {
  color: #e8f0ff;
}

b, strong {
  color: #e8f0ff;
}

i:not([class]) {
  color: #7ea8d4;
}

/* === Misc overrides === */

.c-white {
  color: #fff !important;
}

.bgm-bluegray {
  background-color: #0f1e3a !important;
}

.text-muted {
  color: #3d607f !important;
}

.help-block {
  color: #3d607f;
}

/* Context menu */
div.contextmenu {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
}

div.contextmenu a {
  color: #ddeeff !important;
}

div.contextmenu a:hover {
  background-color: #0f2a4d !important;
}

.contextmenu .head {
  background-color: #0a1225 !important;
  background-image: none !important;
  color: #ddeeff !important;
}

.contextmenu .separator {
  background: #152040 !important;
  border-bottom-color: #1a2d50 !important;
}

/* Calendar */
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-popover {
  border-color: #152040;
}

.fc-unthemed .fc-today {
  background: #0f2a4d;
}

/* Custom scrollbar */
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #1a2d50 !important;
}

.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #0a1225 !important;
}

/* Search in header */
#top-search-wrap {
  background: #0a1225 !important;
}

#top-search-wrap input[type="text"] {
  background-color: #111c30 !important;
  color: #ddeeff !important;
}

/* Flot charts */
.flot-text {
  color: #3d607f !important;
}

/* Easy pie chart */
.epc-chart canvas + span {
  color: #ddeeff !important;
}

/* Sparkline tooltip */
.jqstooltip {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
  color: #ddeeff !important;
}

/* IE warning */
.ie-warning {
  background-color: #0c1528;
  color: #ddeeff;
}

/* Summernote editor — keep inner editing area light */
.note-editor {
  border-color: #152040 !important;
}

.note-editor .note-toolbar {
  background-color: #0a1225 !important;
  border-bottom-color: #152040 !important;
}

.note-editor .note-toolbar .btn-default {
  background-color: transparent !important;
  border-color: transparent !important;
  color: #7ea8d4 !important;
}

.note-editor .note-toolbar .btn-default:hover {
  background-color: #111c30 !important;
  color: #ddeeff !important;
}

.note-editor .note-statusbar {
  background-color: #0a1225 !important;
  border-top-color: #152040 !important;
}

/* === Skin override — force dark header regardless of data-current-skin === */

[data-current-skin="lightblue"],
[data-current-skin="blue"],
[data-current-skin="bluegray"],
[data-current-skin="purple"],
[data-current-skin="orange"],
[data-current-skin="cyan"],
[data-current-skin="green"],
[data-current-skin="red"],
[data-current-skin="pink"],
[data-current-skin="teal"] {
  background-color: #080f1f !important;
}

/* === Login page === */

.lc-block {
  background: #0c1528 !important;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.45) !important;
}

body.login-content:before {
  background: #080f1f !important;
}

/* === Block header small === */

.block-header > h2 {
  color: #7ea8d4 !important;
}

.block-header > h2 > small {
  color: #3d607f !important;
}

/* === Content section === */

#content {
  color: #ddeeff;
}

/* === Waves effect (ripple) — slightly visible on dark === */

.waves-ripple {
  background: rgba(255, 255, 255, 0.12) !important;
}

/* === File input === */

.fileinput .btn-default,
.fileinput .btn {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.fileinput .form-control {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.fileinput .thumbnail {
  background-color: #0a1225 !important;
  border-color: #152040 !important;
}

.fileinput-filename {
  color: #ddeeff;
}

.btn-file {
  background-color: #152040 !important;
  color: #ddeeff !important;
}

/* Krajee / Bootstrap file input */
.file-input,
.file-preview,
.file-drop-zone {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
  color: #ddeeff !important;
}

.file-caption-name {
  color: #ddeeff !important;
}

.input-group .form-control,
.input-group .input-group-addon,
.input-group .input-group-btn .btn {
  border-color: #1a2d50 !important;
}

/* === Textarea explicit === */

textarea,
textarea.form-control,
textarea.auto-size {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

/* === Wall comments (ban/comm details) === */

.wall-comment-list {
  background: #0a1225 !important;
  color: #ddeeff;
}

.wcc-inner {
  background: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #7ea8d4 !important;
}

.wcc-inner:hover {
  border-color: #1e90ff !important;
  color: #ddeeff !important;
}

.wcl-list .media-body .a-title {
  color: #1e90ff !important;
}

.wcl-list .media-body p {
  color: #ddeeff;
}

/* === Bootstrap-select (selectpicker) full dark override === */

.bootstrap-select > .dropdown-toggle,
.bootstrap-select .btn,
.bootstrap-select > .dropdown-toggle.btn-default {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.bootstrap-select > .dropdown-toggle:hover,
.bootstrap-select > .dropdown-toggle:focus,
.bootstrap-select > .dropdown-toggle:active,
.bootstrap-select.open > .dropdown-toggle {
  background-color: #152040 !important;
  border-color: #1a4a7a !important;
  color: #e8f0ff !important;
}

.bootstrap-select .dropdown-toggle .filter-option {
  color: #ddeeff !important;
}

.bootstrap-select .dropdown-toggle .caret {
  border-top-color: #7ea8d4 !important;
}

.bootstrap-select .dropdown-menu {
  background-color: #0c1528 !important;
  border-color: #152040 !important;
}

.bootstrap-select .dropdown-menu li a {
  color: #ddeeff !important;
}

.bootstrap-select .dropdown-menu li a:hover,
.bootstrap-select .dropdown-menu li.selected a,
.bootstrap-select .dropdown-menu li.active a {
  background-color: #0f2a4d !important;
  color: #e8f0ff !important;
}

.bootstrap-select .dropdown-menu li.disabled a {
  color: #2a3f5a !important;
}

.bootstrap-select .no-results {
  background-color: #0a1225 !important;
  color: #7ea8d4 !important;
}

.bs-searchbox input {
  background-color: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.bootstrap-select.show-menu-arrow .dropdown-toggle:after {
  border-bottom-color: #0c1528 !important;
}

.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle:after {
  border-top-color: #0c1528 !important;
}

/* === Chosen select dark override === */

.chosen-container-single .chosen-single {
  background: #111c30 !important;
  border: 1px solid #1a2d50 !important;
  border-radius: 3px !important;
  padding: 4px 12px !important;
  color: #ddeeff !important;
  box-shadow: none !important;
  height: auto !important;
  line-height: 1.5 !important;
}

.chosen-container-single .chosen-single div b {
  filter: invert(0.7);
}

.chosen-container .chosen-drop {
  background: #0c1528 !important;
  border-color: #152040 !important;
}

.chosen-container .chosen-results li {
  color: #ddeeff !important;
}

.chosen-container .chosen-results li.highlighted {
  background: #0f2a4d !important;
  color: #e8f0ff !important;
}

.chosen-container .chosen-results li.no-results {
  background: #0a1225 !important;
  color: #7ea8d4 !important;
}

.chosen-container-single .chosen-search input[type="text"] {
  background: #111c30 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

.chosen-container-multi .chosen-choices {
  background: #111c30 !important;
  border-color: #1a2d50 !important;
}

.chosen-container-multi .chosen-choices li.search-choice {
  background: #152040 !important;
  border-color: #1a2d50 !important;
  color: #ddeeff !important;
}

/* === Select element native === */

select,
select.form-control {
  background-color: #111c30 !important;
  border: 1px solid #1a2d50 !important;
  border-radius: 3px !important;
  padding: 6px 12px !important;
  padding-right: 34px !important;
  color: #ddeeff !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select.form-control::-ms-expand {
  display: none;
}

select option {
  background-color: #0c1528;
  color: #ddeeff;
}

/* Material Admin select arrow overlay (.select:before has background-color: #FFF) */
html:not(.ie9) .select:before {
  background-color: #111c30 !important;
  background-image: none !important;
  border-left: 1px solid #1a2d50;
}

html:not(.ie9) .select:after {
  content: "";
  position: absolute;
  right: 11px;
  top: 50%;
  margin-top: -2px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #7ea8d4;
  pointer-events: none;
  z-index: 6;
}

/* Bootstrap-select: force dark on toggle and all pseudo-elements */
.bootstrap-select > .dropdown-toggle {
  background-color: #111c30 !important;
  border: 1px solid #1a2d50 !important;
  border-radius: 3px !important;
  padding: 6px 30px 6px 12px !important;
  color: #ddeeff !important;
}

.bootstrap-select > .dropdown-toggle:before,
.bootstrap-select > .dropdown-toggle:after,
.bootstrap-select .filter-option,
.bootstrap-select .filter-option:before,
.bootstrap-select .filter-option:after {
  background-color: transparent !important;
  background: transparent !important;
}

.bootstrap-select > .dropdown-toggle .caret {
  border-top-color: #7ea8d4 !important;
  border-bottom-color: #7ea8d4 !important;
}

/* Notify area inside bootstrap-select */
.bootstrap-select .dropdown-menu .notify {
  background: #0a1225 !important;
  border-color: #152040 !important;
  color: #7ea8d4 !important;
}

/* Chosen: arrow div background */
.chosen-container-single .chosen-single div {
  background: transparent !important;
}

.chosen-container-single .chosen-single div b {
  background-color: transparent !important;
  filter: invert(0.7) !important;
}

/* Server page action buttons: less saturated in deep blue palette */
.server-action-btn {
  border: 1px solid transparent;
}

.server-action-btn.server-action-btn--connect {
  background-color: #16314a !important;
  border-color: #244c72 !important;
  color: #d7e8ff !important;
}

.server-action-btn.server-action-btn--connect:hover,
.server-action-btn.server-action-btn--connect:focus {
  background-color: #1d3f60 !important;
  border-color: #2d5f90 !important;
  color: #ecf5ff !important;
}

.server-action-btn.server-action-btn--refresh {
  background-color: #2b374a !important;
  border-color: #3b4c67 !important;
  color: #d7e8ff !important;
}

.server-action-btn.server-action-btn--refresh:hover,
.server-action-btn.server-action-btn--refresh:focus {
  background-color: #34435a !important;
  border-color: #4a5f82 !important;
  color: #ecf5ff !important;
}

/* Admin hub: tone down bright category tiles */
#cpanel > .card-body > .col-sm-12 {
  display: flex;
  flex-wrap: wrap;
}

#cpanel > .card-body > .col-sm-12 > .col-sm-4 {
  float: none;
  display: flex;
  margin-bottom: 20px;
}

#cpanel > .card-body > .col-sm-12 > .col-sm-4 > .card {
  width: 100%;
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 10px !important;
  overflow: hidden;
}

#cpanel .card > .card-body[class*="bgm-"] {
  color: #d7e8ff !important;
  min-height: 126px;
  flex: 1 1 auto;
  border-radius: 10px 10px 0 0;
}

#cpanel .bgm-amber { background-color: #2d3f58 !important; }
#cpanel .bgm-teal { background-color: #1f3c55 !important; }
#cpanel .bgm-lime { background-color: #304a5a !important; }
#cpanel .bgm-pink { background-color: #3a3455 !important; }
#cpanel .bgm-brown { background-color: #3a3348 !important; }
#cpanel .bgm-gray { background-color: #2c3a4f !important; }

#cpanel .card > .card-body.c-white:not([class*="bgm-"]) {
  background-color: #0f1f38 !important;
  flex: 0 0 auto;
  margin-top: auto;
  border-radius: 0 0 10px 10px;
}

#cpanel .btn.btn-primary {
  background-color: #173452 !important;
  border-color: #24547d !important;
  color: #ddeeff !important;
  border-radius: 0 0 10px 10px;
}

#cpanel .btn.btn-primary:hover,
#cpanel .btn.btn-primary:focus {
  background-color: #1d4163 !important;
  border-color: #2d6797 !important;
  color: #ecf5ff !important;
}

@media (max-width: 767px) {
  #cpanel > .card-body > .col-sm-12 {
    display: block;
  }

  #cpanel > .card-body > .col-sm-12 > .col-sm-4 {
    float: left;
    display: block;
    margin-bottom: 15px;
  }

  #cpanel > .card-body > .col-sm-12 > .col-sm-4 > .card {
    display: block;
    height: auto;
  }
}

/* RCON page: remove legacy white glow and keep controls dark */
#rcon .ms-reply {
  box-shadow: none !important;
  background: #0c1528 !important;
  border-top: 1px solid #152040 !important;
}

#rcon .ms-reply textarea {
  background: #0c1a31 !important;
  color: #ddeeff !important;
  border: 1px solid #1a3f64 !important;
  padding-right: 70px !important;
}

#rcon .ms-reply button {
  background: #10223b !important;
  color: #4ea8ff !important;
  border-left: 1px solid #1a3f64 !important;
}

#rcon .ms-reply button:hover,
#rcon .ms-reply button:focus {
  background: #16314a !important;
  color: #9ecbff !important;
}

/* Ban/Admin list nav page selector (in card-header) */
/* Hide the overlay "square with triangle" that causes overlap */
.card-header .select:before,
.card-header .select:after {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

select.page-changer {
  display: inline-block !important;
  width: auto !important;
  min-width: 64px !important;
  height: 34px !important;
  padding: 6px 28px 6px 10px !important;
  
  border: 1px solid #1a3f64 !important;
  border-radius: 4px !important;
  background-color: #0c1a31 !important;
  color: #ddeeff !important;
  box-shadow: inset 0 0 0 1px rgba(30, 144, 255, 0.06);
  
  /* Custom internal arrow */
  background-image: linear-gradient(45deg, transparent 50%, #88b8ea 50%), linear-gradient(135deg, #88b8ea 50%, transparent 50%);
  background-position: calc(100% - 12px) 50%, calc(100% - 7px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select.page-changer:focus {
  border-color: #1e90ff !important;
  box-shadow: 0 0 0 2px rgba(30, 144, 255, 0.14) !important;
}

/* Admin card: remove light panel on left side */
#profile-main {
  background-color: #0c1528 !important;
  border: 1px solid #152040 !important;
}

#profile-main .pm-overview {
  background-color: #0f1a31 !important;
  border-right: 1px solid #152040 !important;
}

#profile-main .pm-body {
  background-color: #0c1528 !important;
}

#profile-main .pmo-pic,
#profile-main .pmo-block,
#profile-main .pmo-contact {
  background-color: transparent !important;
  color: #ddeeff !important;
}

#profile-main .pmo-pic img {
  background-color: #0a1225;
}

#profile-main .pmop-edit {
  background-color: #16314a !important;
  color: #ddeeff !important;
}

#profile-main .pmop-edit:hover,
#profile-main .pmop-edit:focus {
  background-color: #1d3f60 !important;
  color: #ecf5ff !important;
}

/* Modal link-style actions ("Закрыть") should stay readable on dark bg */
.modal .btn.btn-link,
.modal .btn.btn-link.waves-effect,
.modal-content .btn.btn-link,
.modal-footer .btn.btn-link {
  color: #9ecbff !important;
}

.modal .btn.btn-link:visited {
  color: #9ecbff !important;
}

.modal .btn.btn-link:hover,
.modal .btn.btn-link:focus,
.modal .btn.btn-link.waves-effect:hover,
.modal .btn.btn-link.waves-effect:focus,
.modal-content .btn.btn-link:hover,
.modal-content .btn.btn-link:focus,
.modal-footer .btn.btn-link:hover,
.modal-footer .btn.btn-link:focus {
  color: #d9ebff !important;
  text-decoration: none !important;
}

/* === Input mask / placeholder === */

.ip-header {
  color: #7ea8d4;
}

/* === Summernote editor content inside cards (user HTML with inline styles) === */

.card-body [style*="background-color: #f5f5f5"],
.card-body [style*="background: #f5f5f5"],
.card-body [style*="background-color:#f5f5f5"],
.card-body [style*="background: white"],
.card-body [style*="background-color: white"],
.card-body [style*="background: #ecf0f1"],
.card-body [style*="background-color: #ecf0f1"],
.card-body [style*="background: #eaf4fb"],
.card-body [style*="background-color: #f8f9fa"],
.card-body [style*="background-color: #f0f0f0"] {
  background-color: inherit !important;
  background: inherit !important;
}

/* Override inline Summernote content colors for dark theme */
.card-body div[style*="background: white"],
.card-body div[style*="background-color: #f5f5f5"] {
  background: transparent !important;
  background-color: transparent !important;
}

/* === Responsive tweaks === */

@media (max-width: 767px) {
  .sidebar {
    background: #0a1225 !important;
  }

  [data-current-skin] .ha-menu {
    background: #080f1f !important;
  }
}
