/* DCS Sports final dashboard corrections
   - compact accordion navigation + collapsed flyouts
   - persistent dark/light themes
   - legacy module surfaces aligned with the Hybrid AI shell
   - operational/admin module scaffolds
*/
html{color-scheme:dark}
html[data-theme="dark"]{
  --bg:#0b2033;--soft:#081827;--soft-2:#102a40;--line:rgba(148,205,232,.14);--line-2:rgba(148,205,232,.09);
  --text:#f5fbff;--muted:#88a3ba;--dim:#617d96;--brand:#22dfa6;--brand-soft:rgba(34,223,166,.08);--brand-line:rgba(34,223,166,.22);
  --amber:#f2bd62;--amber-soft:rgba(242,189,98,.09);--red:#f27d75;--red-soft:rgba(242,125,117,.09);--blue:#14bdf2;--blue-soft:rgba(20,189,242,.08);
  --shadow:0 24px 62px -32px rgba(0,0,0,.82);--shadow-sm:0 10px 26px -18px rgba(0,0,0,.72);
}
html[data-theme="light"]{color-scheme:light;
  --hy-bg:#f4f8fb;--hy-bg-2:#eef5f8;--hy-panel:#fff;--hy-panel-2:#f7fbfd;--hy-panel-3:#edf6fa;
  --hy-line:rgba(15,55,78,.12);--hy-line-strong:rgba(14,122,155,.22);--hy-text:#0b1c2a;--hy-text-2:#183448;--hy-muted:#617b8d;--hy-dim:#7890a0;
  --hy-shadow:0 28px 70px -34px rgba(18,55,77,.28);--hy-shadow-soft:0 18px 45px -30px rgba(18,55,77,.22);
  --bg:#fff;--soft:#f4f8fb;--soft-2:#edf4f7;--line:#dce7ed;--line-2:#e9f0f4;--text:#102332;--muted:#637b8c;--dim:#8296a5;
  --brand:#078f6a;--brand-soft:#e6f8f1;--brand-line:#b8e9d6;--amber:#9a6700;--amber-soft:#fff3d6;--red:#c2453f;--red-soft:#fdecea;--blue:#087aa4;--blue-soft:#e4f5fb;
  --shadow:0 22px 54px -30px rgba(18,55,77,.28);--shadow-sm:0 8px 22px -15px rgba(18,55,77,.22);
}

/* Prevent a flash of the wrong rail width. */
html.sidebar-collapsed{--sidebar:82px}

/* Navigation groups */
.nav-group{position:relative}
.nav-parent{appearance:none;width:100%;font:inherit;text-align:left;background:transparent}
.nav-parent .nav-chevron{margin-left:7px;color:var(--hy-dim);font-size:16px;line-height:1;transition:transform .18s ease}
.nav-group.open>.nav-parent .nav-chevron{transform:rotate(90deg);color:var(--hy-cyan)}
.nav-group.has-active>.nav-parent{color:#eaf7ff!important}
.nav-submenu{display:none;margin:2px 0 5px 11px;padding-left:7px;border-left:1px solid rgba(148,205,232,.12)}
.nav-group.open>.nav-submenu{display:block;animation:navSubIn .16s ease}
.nav-child{min-height:36px;padding:7px 9px!important;font-size:11.9px!important;border-radius:9px!important}
.nav-child .ic{width:17px!important;height:17px!important}
.nav-child.active{background:linear-gradient(100deg,rgba(20,189,242,.11),rgba(34,223,166,.06))!important}
@keyframes navSubIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.sidebar-collapsed .nav-submenu{display:none!important}
.sidebar-collapsed .nav-parent .nav-chevron{display:none}
.sidebar-collapsed .nav-parent{font-size:0!important;justify-content:center!important;padding:9px!important}
.sidebar-collapsed .nav-group.has-active>.nav-parent{background:linear-gradient(100deg,rgba(20,189,242,.105),rgba(34,223,166,.055))!important;border-color:rgba(20,189,242,.12)!important}
.nav-group-flyout{position:fixed;z-index:540;width:284px;padding:10px;border:1px solid var(--hy-line-strong);border-radius:16px;background:linear-gradient(155deg,rgba(10,34,53,.985),rgba(5,20,34,.99));box-shadow:0 28px 70px -24px rgba(0,0,0,.88);backdrop-filter:blur(18px);color:#eaf7ff}
.fly-head{display:flex;align-items:center;gap:10px;padding:8px 8px 11px;border-bottom:1px solid var(--hy-line)}
.fly-ic{width:34px;height:34px;border-radius:10px;background:rgba(20,189,242,.09);display:grid;place-items:center;color:#67d8f5}
.fly-head b{display:block;font-size:12.5px}.fly-head span{display:block;color:#68859b;font-size:9px;margin-top:2px}.fly-list{padding-top:6px}
.nav-group-flyout .item{color:#9cb3c5!important}.nav-group-flyout .item:hover{color:#fff!important}.nav-group-flyout .readydot{display:block!important}.nav-group-flyout .tag{display:inline-flex!important}

/* Theme control */
.hy-theme-btn{font-size:17px;font-weight:800;line-height:1}
.theme-choice-row{display:flex;gap:8px;flex-wrap:wrap}.theme-choice{height:40px;padding:0 15px;border:1px solid var(--line);border-radius:11px;background:var(--soft);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.theme-choice.active{border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand)}

/* Make every legacy module match the Hybrid dark shell. */
html[data-theme="dark"] body{background:var(--hy-bg)!important;color:var(--text)}
html[data-theme="dark"] .card,html[data-theme="dark"] .howcard,html[data-theme="dark"] .acct-dd,html[data-theme="dark"] .scoreb,html[data-theme="dark"] .inp2,html[data-theme="dark"] .scin input{background:linear-gradient(155deg,rgba(15,43,66,.88),rgba(7,24,40,.92))!important;border-color:var(--line)!important;color:var(--text)!important}
html[data-theme="dark"] .card-h{border-color:var(--line-2)!important;background:rgba(255,255,255,.012)}
html[data-theme="dark"] .card-h h3,html[data-theme="dark"] .page-h h1,html[data-theme="dark"] .row .t,html[data-theme="dark"] .kv span,html[data-theme="dark"] .empty h4{color:var(--text)!important}
html[data-theme="dark"] .row,html[data-theme="dark"] .kv{border-color:var(--line-2)!important}
html[data-theme="dark"] .row .ic2{background:rgba(255,255,255,.04)!important;color:#70d9ef}
html[data-theme="dark"] .chip{background:rgba(255,255,255,.035)!important;border-color:var(--line)!important;color:#a9bfd0!important}
html[data-theme="dark"] .tabs{background:rgba(255,255,255,.035)!important;border:1px solid var(--line);padding:5px;max-width:100%;overflow-x:auto;scrollbar-width:thin}
html[data-theme="dark"] .tab{color:#7894aa!important;white-space:nowrap;border:1px solid transparent}
html[data-theme="dark"] .tab:hover{color:#dff6ff!important;background:rgba(20,189,242,.05)}
html[data-theme="dark"] .tab.on{background:linear-gradient(100deg,rgba(20,189,242,.14),rgba(34,223,166,.08))!important;border-color:rgba(20,189,242,.18)!important;color:#fff!important;box-shadow:none!important}
html[data-theme="dark"] .btn.ghost{background:rgba(255,255,255,.035)!important;border-color:var(--line)!important;color:#dcebf4!important}
html[data-theme="dark"] .btn.ghost:hover,html[data-theme="dark"] .scoreb:hover{background:rgba(34,223,166,.075)!important;border-color:var(--brand-line)!important;color:#8ff0d0!important}
html[data-theme="dark"] .inp2,html[data-theme="dark"] .scin input{color:#eaf6fd!important}.inp2::placeholder,.scin input::placeholder{color:var(--dim)}
html[data-theme="dark"] .errbox{background:rgba(242,125,117,.08)!important;border-color:rgba(242,125,117,.24)!important;color:#ffaaa4!important}
html[data-theme="dark"] .note2{color:var(--muted)}
html[data-theme="dark"] .howcard .det li{color:#a9bfd0!important}
html[data-theme="dark"] .acct-dd .mi{color:#a9bfd0!important}.acct-dd .mi:hover{background:var(--soft)!important}
html[data-theme="dark"] #pal>div{background:#0b2033!important;border:1px solid var(--hy-line)!important;color:#eaf7ff}.sidebar-collapsed #pal{--sidebar:82px}

/* Operational module pages */
.module-eyebrow{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--hy-cyan);font-weight:850;margin-bottom:4px}
.module-connect{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-size:9px;font-weight:800;border:1px solid var(--line);white-space:nowrap}.module-connect:before{content:"";width:7px;height:7px;border-radius:50%}.module-connect.connected{color:var(--brand);background:var(--brand-soft);border-color:var(--brand-line)}.module-connect.connected:before{background:var(--brand)}.module-connect.pending{color:var(--amber);background:var(--amber-soft)}.module-connect.pending:before{background:var(--amber)}
.module-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;margin-top:14px;align-items:start}
.endpoint-chip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:7px;padding:3px 7px}
.module-state{display:inline-flex;padding:3px 7px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:9px;font-weight:750;white-space:nowrap}
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.module-action{min-height:38px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--text);font:inherit;font-size:11px;font-weight:700;text-align:left;cursor:pointer}.module-action:hover:not(:disabled){border-color:var(--brand-line);background:var(--brand-soft);color:var(--brand)}.module-action:disabled{opacity:.58;cursor:not-allowed}
.backend-note{margin-top:12px;padding:11px;border:1px solid rgba(242,189,98,.18);border-radius:11px;background:rgba(242,189,98,.055)}.backend-note b{display:block;color:var(--amber);font-size:10.5px}.backend-note span{display:block;color:var(--muted);font-size:9.5px;margin-top:4px;line-height:1.5}

/* Light theme: complete shell, pages, drawers and AI cards. */
html[data-theme="light"] body{background:radial-gradient(900px 520px at 84% -6%,rgba(20,189,242,.08),transparent 62%),#f4f8fb!important;color:var(--text)}
html[data-theme="light"] body:before{opacity:.32}
html[data-theme="light"] .sidebar{background:linear-gradient(180deg,#ffffff,#f5fafc)!important;border-color:var(--line)!important;color:var(--text);box-shadow:16px 0 42px -35px rgba(18,55,77,.35)}
html[data-theme="light"] .brand{border-color:var(--line-2)!important}html[data-theme="light"] .brand .name{color:#102332!important}
html[data-theme="light"] .rolebar{background:linear-gradient(135deg,#edf9fd,#edf9f5)!important;border-color:var(--line)!important}html[data-theme="light"] .rolebar .who b{color:#102332}html[data-theme="light"] .rolebar .who small{color:#6e8798!important}
html[data-theme="light"] .hy-side-status{background:#e9faf3;border-color:#c7eadc;color:#087a5c}.hy-side-status i{box-shadow:0 0 0 5px rgba(34,223,166,.1)}
html[data-theme="light"] .sec{color:#718a9b!important}.item{color:#60798a!important}html[data-theme="light"] .item:hover{background:#eef6f9!important;color:#123349!important;border-color:#dcebf1}html[data-theme="light"] .item.active,html[data-theme="light"] .nav-group.has-active>.nav-parent{background:linear-gradient(100deg,#e5f7fd,#e6faf2)!important;color:#073f50!important;border-color:#cce9ed!important}
html[data-theme="light"] .item .ic{color:#5e8296}html[data-theme="light"] .item.active .ic{color:#078f6a}.nav-submenu{border-color:#dce7ed}
html[data-theme="light"] .foot{background:#f8fbfc!important;border-color:var(--line)!important}
html[data-theme="light"] .topbar{background:rgba(255,255,255,.9)!important;border-color:var(--line)!important}html[data-theme="light"] .crumb{color:#718797!important}html[data-theme="light"] .crumb b{color:#173247!important}
html[data-theme="light"] .search,html[data-theme="light"] .hy-icon-btn{background:#f4f8fa!important;border-color:var(--line)!important;color:#60798a!important}html[data-theme="light"] .hy-context select{background:#fff;color:#27485d;border-color:var(--line)}
html[data-theme="light"] .content>.note{color:#758c9c!important}
html[data-theme="light"] .card,html[data-theme="light"] .howcard,html[data-theme="light"] .acct-dd,html[data-theme="light"] .scoreb,html[data-theme="light"] .inp2,html[data-theme="light"] .scin input{background:#fff!important;border-color:var(--line)!important;color:var(--text)!important;box-shadow:var(--shadow-sm)}
html[data-theme="light"] .card-h{border-color:var(--line-2)!important;background:#fbfdfe}html[data-theme="light"] .tabs{background:#eaf2f6!important;border:1px solid #dce7ed;padding:5px;max-width:100%;overflow-x:auto}html[data-theme="light"] .tab{color:#667e8f!important;white-space:nowrap}html[data-theme="light"] .tab.on{background:#fff!important;color:#0c6f83!important;box-shadow:0 5px 15px -10px rgba(18,55,77,.35)!important}
html[data-theme="light"] .hy-drawer{background:linear-gradient(180deg,#fff,#f4f9fb);color:#183448;border-color:var(--line);box-shadow:-30px 0 70px -45px rgba(18,55,77,.35)}html[data-theme="light"] .hy-drawer-head b,html[data-theme="light"] .hy-ai-answer h4,html[data-theme="light"] .hy-notice b{color:#102332}html[data-theme="light"] .hy-ai-context,html[data-theme="light"] .hy-prompt,html[data-theme="light"] .hy-notice{background:#f4f9fb;border-color:var(--line);color:#526f81}
html[data-theme="light"] .hy-page-header h1,html[data-theme="light"] .hy-athlete-main h2,html[data-theme="light"] .hy-ai-brief h3,html[data-theme="light"] .hy-card-head h3,html[data-theme="light"] .hy-kpi strong,html[data-theme="light"] .hy-hero-metric b,html[data-theme="light"] .hy-gps-step.done b,html[data-theme="light"] .hy-gps-step.current b{color:#102332!important}
html[data-theme="light"] .hy-kpi,html[data-theme="light"] .hy-athlete-card,html[data-theme="light"] .hy-ai-brief,html[data-theme="light"] .hy-card{background:linear-gradient(155deg,#fff,#f7fbfd)!important;border-color:var(--line)!important;box-shadow:var(--shadow-sm)}
html[data-theme="light"] .hy-athlete-card:after{opacity:.35}html[data-theme="light"] .hy-next-priority,html[data-theme="light"] .hy-hero-metric,html[data-theme="light"] .hy-task{background:#f4f9fb;border-color:var(--line)}html[data-theme="light"] .hy-next-priority b,html[data-theme="light"] .hy-task b{color:#173247}html[data-theme="light"] .hy-chart-wrap{background:linear-gradient(rgba(20,70,95,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(20,70,95,.045) 1px,transparent 1px);background-size:30px 30px}html[data-theme="light"] .hy-ring:before{background:#fff}
html[data-theme="light"] .nav-group-flyout{background:linear-gradient(155deg,#fff,#f4f9fb);border-color:var(--line);color:#102332;box-shadow:0 24px 60px -26px rgba(18,55,77,.38)}html[data-theme="light"] .fly-head b{color:#102332}html[data-theme="light"] .nav-group-flyout .item{color:#60798a!important}html[data-theme="light"] .nav-group-flyout .item:hover{color:#102332!important}
html[data-theme="light"] .hy-nav-tooltip{background:#fff;color:#173247;border-color:#cce8ef;box-shadow:0 16px 38px -18px rgba(18,55,77,.35)}html[data-theme="light"] .hy-nav-tooltip::before{background:#fff;border-color:#cce8ef}
html[data-theme="light"] .login{background:radial-gradient(900px 560px at 85% -15%,rgba(20,189,242,.10),transparent 63%),radial-gradient(780px 540px at 6% 110%,rgba(34,223,166,.08),transparent 62%),#f4f8fb!important}html[data-theme="light"] .login-card{background:#fff!important;color:#102332!important;border-color:var(--line)!important;box-shadow:0 30px 70px -38px rgba(18,55,77,.35)!important}html[data-theme="light"] .gbtn,html[data-theme="light"] .inp{background:#f7fafc!important;color:#102332!important;border-color:var(--line)!important}

@media(max-width:1050px){.module-layout{grid-template-columns:1fr}}
@media(max-width:860px){
  .nav-submenu{margin-left:10px}.nav-group-flyout{display:none!important}.action-grid{grid-template-columns:1fr}
  body.mobile-nav-ready .topbar{background:rgba(6,17,31,.96)!important}html[data-theme="light"] body.mobile-nav-ready .topbar{background:rgba(255,255,255,.97)!important}
  body.mobile-nav-ready .hy-mobile-menu{background:rgba(255,255,255,.04)!important;border-color:var(--hy-line)!important;color:#dff6ff!important}html[data-theme="light"] body.mobile-nav-ready .hy-mobile-menu{background:#fff!important;color:#173247!important;border-color:var(--line)!important}
  body.mobile-nav-ready .nav-group.open>.nav-submenu{display:block!important}
}
