/* DragonCore — Custom Theme Override
   Palette: Cyber Teal on Deep Navy
   Replaces Frest purple (#7367f0) with electric cyan/teal (#00c8ff)
   ------------------------------------------------------------------ */

/* ── Root tokens ──────────────────────────────────────────────────── */
:root {
  --dc-primary:      #00c8ff;
  --dc-primary-dk:   #009ec8;
  --dc-primary-lt:   #33d4ff;
  --dc-bg:           #06101e;
  --dc-surface:      #0c1b30;
  --dc-surface2:     #102040;
  --dc-sidebar:      #071525;
  --dc-border:       #1a3050;
  --dc-text:         #d8eaf8;
  --dc-muted:        #5a7a96;
  --dc-success:      #00e676;
  --dc-danger:       #ff4c6a;
  --dc-warning:      #ffb600;
  --dc-info:         #00c8ff;
}

/* ── Global backgrounds ───────────────────────────────────────────── */
body,
.dark-layout                            { background: var(--dc-bg)    !important; color: var(--dc-text) !important; }
.card                                   { background: var(--dc-surface) !important; border: 1px solid var(--dc-border) !important; }
.card-header                            { background: var(--dc-surface2) !important; border-bottom: 1px solid var(--dc-border) !important; }

/* ── Primary colour overrides ─────────────────────────────────────── */
.btn-primary,
.badge-primary,
.bg-primary                             { background-color: var(--dc-primary)    !important; border-color: var(--dc-primary)    !important; color: #000 !important; }
.btn-primary:hover                      { background-color: var(--dc-primary-dk) !important; border-color: var(--dc-primary-dk) !important; }
.btn-outline-primary                    { color: var(--dc-primary) !important; border-color: var(--dc-primary) !important; background: transparent !important; }
.btn-outline-primary:hover              { background: var(--dc-primary) !important; color: #000 !important; }
.text-primary                           { color: var(--dc-primary) !important; }
.border-primary                         { border-color: var(--dc-primary) !important; }

a                                       { color: var(--dc-primary); }
a:hover                                 { color: var(--dc-primary-lt); }

/* ── Navbar ───────────────────────────────────────────────────────── */
.header-navbar                          { background: var(--dc-sidebar) !important; border-bottom: 1px solid var(--dc-border) !important; box-shadow: 0 2px 16px rgba(0,200,255,.08) !important; }
.header-navbar .navbar-container        { padding: 0 1.2rem !important; }
.dhr-marquee                            { color: var(--dc-primary) !important; font-size: .8rem; letter-spacing: .02em; }

/* ── Sidebar ──────────────────────────────────────────────────────── */
.main-menu,
.main-menu .navigation                  { background: var(--dc-sidebar) !important; }
.main-menu .navbar-header              { background: var(--dc-sidebar) !important; border-bottom: 1px solid var(--dc-border) !important; }
.main-menu .navigation li a            { color: var(--dc-muted) !important; transition: color .2s, padding-left .2s; }
.main-menu .navigation li a:hover,
.main-menu .navigation li.active > a   { color: var(--dc-primary) !important; padding-left: 1.6rem !important; }
.main-menu .navigation .navigation-header span { color: var(--dc-primary) !important; font-size: .65rem; letter-spacing: .12em; text-transform: uppercase; opacity: .7; }
.main-menu .navigation .menu-content   { background: rgba(0,200,255,.04) !important; }
.main-menu .shadow-bottom               { background: linear-gradient(180deg, var(--dc-sidebar) 44%, transparent) !important; }

/* Active nav item accent bar */
.main-menu .navigation > li.active > a::after {
    content: '';
    position: absolute;
    right: 0; top: 0; bottom: 0;
    width: 3px;
    background: var(--dc-primary);
    border-radius: 2px 0 0 2px;
}
.main-menu .navigation > li { position: relative; }

/* ── Forms & inputs ───────────────────────────────────────────────── */
.form-control                           { background: var(--dc-surface2) !important; border: 1px solid var(--dc-border) !important; color: var(--dc-text) !important; }
.form-control:focus                     { border-color: var(--dc-primary) !important; box-shadow: 0 0 0 2px rgba(0,200,255,.18) !important; }
.form-control::placeholder              { color: var(--dc-muted) !important; }
select.form-control option              { background: var(--dc-surface2); color: var(--dc-text); }
label                                   { color: var(--dc-muted) !important; font-size: .85rem; }

/* ── Buttons ──────────────────────────────────────────────────────── */
.btn-success                            { background: var(--dc-success)  !important; border-color: var(--dc-success)  !important; color: #000 !important; }
.btn-danger                             { background: var(--dc-danger)   !important; border-color: var(--dc-danger)   !important; }
.btn-warning                            { background: var(--dc-warning)  !important; border-color: var(--dc-warning)  !important; color: #000 !important; }
.btn-outline-success                    { color: var(--dc-success) !important; border-color: var(--dc-success) !important; background: transparent !important; }
.btn-outline-success:hover              { background: var(--dc-success)  !important; color: #000 !important; }
.btn-light-secondary                    { background: var(--dc-surface2) !important; border-color: var(--dc-border)  !important; color: var(--dc-text) !important; }

/* ── Tables ───────────────────────────────────────────────────────── */
.table                                  { color: var(--dc-text) !important; }
.table thead th                         { background: var(--dc-surface2) !important; color: var(--dc-primary) !important; border-bottom: 2px solid var(--dc-border) !important; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; }
.table td, .table th                    { border-color: var(--dc-border) !important; }
.table-striped tbody tr:nth-of-type(odd) { background: rgba(0,200,255,.03) !important; }
.table-hover tbody tr:hover             { background: rgba(0,200,255,.07) !important; }

/* DataTables overrides */
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input { background: var(--dc-surface2) !important; border-color: var(--dc-border) !important; color: var(--dc-text) !important; }
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_length,
.dataTables_wrapper .dataTables_filter { color: var(--dc-muted) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button { color: var(--dc-muted) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button:hover { background: var(--dc-primary) !important; color: #000 !important; border-color: var(--dc-primary) !important; border-radius: 4px; }

/* ── Alerts / badges ──────────────────────────────────────────────── */
.alert-success                          { background: rgba(0,230,118,.12)  !important; border-color: var(--dc-success) !important; color: var(--dc-success) !important; }
.alert-danger                           { background: rgba(255,76,106,.12) !important; border-color: var(--dc-danger)  !important; color: var(--dc-danger)  !important; }
.alert-warning                          { background: rgba(255,182,0,.12)  !important; border-color: var(--dc-warning) !important; color: var(--dc-warning) !important; }
.badge-success                          { background: var(--dc-success) !important; color: #000 !important; }
.badge-danger                           { background: var(--dc-danger)  !important; }
.badge-warning                          { background: var(--dc-warning) !important; color: #000 !important; }

/* ── Dropdown menus ───────────────────────────────────────────────── */
.dropdown-menu                          { background: var(--dc-surface) !important; border: 1px solid var(--dc-border) !important; }
.dropdown-item                          { color: var(--dc-text) !important; }
.dropdown-item:hover                    { background: var(--dc-surface2) !important; color: var(--dc-primary) !important; }
.dropdown-divider                       { border-color: var(--dc-border) !important; }

/* ── Avatar / user chip ───────────────────────────────────────────── */
.avatar.bg-success                      { background: linear-gradient(135deg, var(--dc-primary), var(--dc-primary-dk)) !important; }

/* ── Modal ────────────────────────────────────────────────────────── */
.modal-content                          { background: var(--dc-surface) !important; border: 1px solid var(--dc-border) !important; }
.modal-header                           { border-bottom: 1px solid var(--dc-border) !important; }
.modal-footer                           { border-top: 1px solid var(--dc-border) !important; }

/* ── Stat cards (dashboard) ───────────────────────────────────────── */
.card .icon-item                        { color: var(--dc-primary) !important; }
.card-title                             { color: var(--dc-text) !important; font-weight: 600; }

/* ── Scrollbar ────────────────────────────────────────────────────── */
::-webkit-scrollbar                     { width: 6px; height: 6px; }
::-webkit-scrollbar-track               { background: var(--dc-bg); }
::-webkit-scrollbar-thumb               { background: var(--dc-border); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover         { background: var(--dc-primary); }

/* ── Glow accents ─────────────────────────────────────────────────── */
.btn-primary:focus,
.btn-primary:active                     { box-shadow: 0 0 0 3px rgba(0,200,255,.3) !important; }
.form-control:focus                     { box-shadow: 0 0 0 2px rgba(0,200,255,.2) !important; }

/* ── Content area ─────────────────────────────────────────────────── */
.app-content                            { background: var(--dc-bg) !important; }
.content-wrapper                        { background: transparent !important; }
.content-overlay                        { background: rgba(6,16,30,.6) !important; }
.sidenav-overlay                        { background: rgba(6,16,30,.6) !important; }

/* ── Typography refinements ───────────────────────────────────────── */
h1, h2, h3, h4, h5, h6                 { color: var(--dc-text) !important; }
.text-muted                             { color: var(--dc-muted) !important; }
small.text-muted                        { color: var(--dc-muted) !important; }

/* ── Footer ───────────────────────────────────────────────────────── */
.footer                                 { background: var(--dc-sidebar) !important; border-top: 1px solid var(--dc-border) !important; }
