/* SCIHAT: deep teal theme with lime/orange accents from the SCI Day logo. Loaded last on every page. */
html:root:not(#_){
  color-scheme:dark;
  --bg:#071a24; --surface:#0f2733; --surface-2:#16333f; --ink:#f5f2ef; --ink-muted:#9fb8c2; --line:#24495a;
  --accent:#3bb8dc; --accent-ink:#ffffff; --accent-soft:#0c2733;
  --warn:#ffb340; --warn-soft:#2e2208; --danger:#ff8a7a; --danger-soft:#3a1412;
  --focus:#ffd43b; --shadow:0 0 0 1px rgba(255,255,255,.03),0 12px 32px rgba(0,0,0,.6);
  --ok:#43d488; --ok-soft:#0f2a1c; --red-1:#1d8ab0; --red-2:#0f5a78;
}
html:root:not(#_) body{
  background:
    radial-gradient(1100px 520px at 88% -8%, rgba(31,134,171,.26), transparent 62%),
    radial-gradient(800px 420px at -8% 108%, rgba(185,214,43,.10), transparent 60%),
    repeating-linear-gradient(-45deg, rgba(255,255,255,.012) 0 2px, transparent 2px 14px),
    var(--bg);
  background-attachment:fixed; color:var(--ink);
}
::selection{background:#1f86ab;color:#fff}
input[type=checkbox],input[type=radio],input[type=range]{accent-color:#1f86ab}
select option{background:#0f2733;color:#f5f2ef}
:focus-visible{outline:3px solid #ffd43b!important;outline-offset:2px}

/* energy ticker */
.energy{position:relative;overflow:hidden;height:34px;display:flex;align-items:center;background:repeating-linear-gradient(-45deg,#1f86ab 0 16px,#5e9e2f 16px 32px);border-bottom:2px solid #000;box-shadow:0 4px 24px rgba(31,134,171,.45);z-index:70}
.energy-track{display:flex;white-space:nowrap;animation:energy 55s linear infinite;will-change:transform}
.energy span{padding:0 22px;font:800 12.5px/34px "Archivo",system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.45)}
.energy span::after{content:"\2605";margin-left:44px;color:#ffd43b}
@keyframes energy{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.energy-track{animation:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* headings */
h1,h2,h3,.page-title{font-family:"Archivo",system-ui,sans-serif}
h1{font-weight:800;text-transform:uppercase;letter-spacing:.02em}
h1::first-line{color:var(--ink)}
.page-title{font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-style:italic}
.page-title::after{content:"";display:block;width:96px;height:6px;margin-top:8px;background:linear-gradient(90deg,#b9d62b,#1f86ab 70%,transparent);transform:skewX(-32deg)}
.eyebrow{color:#b9d62b;font-weight:800;letter-spacing:.16em}
.panel-head h2{color:var(--ink);letter-spacing:.08em}
.panel-head h2::before{content:"";display:inline-block;width:10px;height:18px;margin-right:10px;background:linear-gradient(180deg,#b9d62b,#1f86ab);transform:skewX(-20deg);vertical-align:-3px;border-radius:2px}

/* cards */
.panel,.card{background:linear-gradient(180deg,#10293a,#0c2230);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);position:relative}
.panel::before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#b9d62b,#1f86ab)}
.panel:hover{border-color:#24566a}
input,select,textarea{background:#0a1e29!important;color:var(--ink)!important;border-color:#2f5a6c!important}
input:focus,select:focus,textarea:focus{border-color:#3bb8dc!important;box-shadow:0 0 0 3px rgba(59,184,220,.25)}
::placeholder{color:#6f909d}

/* buttons */
.btn{background:#16333f;border:1px solid #2f5a6c;color:var(--ink);font-weight:700;border-radius:10px;transition:transform .12s,box-shadow .12s,border-color .12s}
.btn:hover{border-color:#3bb8dc;transform:translateY(-1px)}
.btn.primary,.btn.primary:visited{background:linear-gradient(180deg,#1d8ab0,#0f5a78);border-color:#6fd0ea;color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 0 0 1px rgba(59,184,220,.35),0 8px 24px rgba(31,134,171,.4)}
.btn.primary:hover{filter:brightness(1.12);box-shadow:0 0 0 1px rgba(59,184,220,.6),0 10px 30px rgba(31,134,171,.6)}
.btn.primary:active{transform:translateY(1px)}
.btn.ghost{background:transparent}
.btn.danger{color:#ff8a7a;border-color:#ff8a7a}
button[data-informphysio]{background:#ffd43b!important;color:#1a1400!important;border:2px solid #ffea8a!important;box-shadow:0 0 0 3px rgba(255,212,59,.3),0 8px 24px rgba(255,212,59,.25)!important}

/* tabs */
.mode-tabs{border-bottom:2px solid #12384a;gap:6px}
.mode-tab{background:#0f2a37;border:1px solid var(--line);border-bottom:none;color:var(--ink-muted);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;transition:background .15s,color .15s}
.mode-tab:hover{color:#fff;background:#12303d}
.mode-tab[aria-selected="true"]{background:linear-gradient(180deg,#1d8ab0,#0f5a78);color:#fff;border-color:#6fd0ea;box-shadow:0 -6px 24px rgba(31,134,171,.5)}
.tab{font-weight:800;letter-spacing:.05em;text-transform:uppercase;font-size:12.5px}
.tab[aria-selected="true"]{background:linear-gradient(180deg,#1d8ab0,#0f5a78)!important;color:#fff!important;border-color:#6fd0ea!important}

/* status colours that used to be green/cream */
.ask-msg.ok,.cam-msg.ok,.game-msg.ok,.wow-msg{color:var(--ok)}
.ask-msg.err,.cam-msg.err,.game-msg.err{color:var(--danger)}
.ask-req.done{border-left-color:var(--ok)}
.prog-note.up{border-left-color:var(--ok);background:var(--ok-soft)}
.prog-note.back{border-left-color:#ffb340;background:#2e2208}
.prog-done{background:var(--ok-soft);border-left-color:var(--ok)}
.prog-row.progress{border-color:var(--ok)}
.prog-badge{background:#1f4050;color:#cfe0e6}
.prog-badge.progress,.prog-badge.st-achieved,.prog-badge.tr-up{background:#1f9d5c;color:#fff}
.prog-badge.hold,.prog-badge.restart{background:#4a3708;color:#ffd98a}
.prog-badge.st-missed,.prog-badge.tr-down{background:#4a1418;color:#ffb3ba}
.prog-badge.st-inprogress,.prog-badge.tr-new{background:#ffd43b;color:#2b2200}
.prog-badge.st-upcoming,.prog-badge.tr-same{background:#1f4050;color:#bcd2da}
.prog-plan tr.cur td{background:#2f3a0e}
.prog-tip.up{background:var(--ok-soft);border-color:var(--ok)}
.prog-tip.hold,.prog-tip.back{background:#2e2208;border-color:#ffb340}
.prog-bar .seg{background:#16333f;border-color:#2f5a6c;color:var(--ink-muted)}
.prog-bar .seg.now{background:#ffd43b;border-color:#ffea8a;color:#1a1400}
.cam-save{background:#2e2208;border-color:#e0a800}
.wow-tiles>div{background:linear-gradient(180deg,#0c2733,#0a1b24);border:1px solid #1d4a5c}
.wow-tiles b{color:#6fd0ea;text-shadow:0 0 18px rgba(59,184,220,.45)}
.wow-badge{border-color:#2f5a6c}
.wow-badge.on{background:linear-gradient(180deg,#2f3a0e,#1d2a0a);border-color:#e0b400;box-shadow:0 0 18px rgba(255,212,59,.25)}
.wow-badge.on b,.wow-badge.on span{color:#ffe08a}.wow-badge.on i{color:#ffd43b}
.wow-chart .bar{fill:url(#none);fill:#b9d62b}.wow-chart .ln{stroke:#ffd43b}.wow-chart .dot{fill:#ffd43b}
.wow-legend .k.ln{background:#ffd43b}
.game-stage{border:2px solid #174255;box-shadow:0 0 40px rgba(31,134,171,.25)}
.game-res h3{color:#ffd43b}.game-big{color:#fff;text-shadow:0 0 30px rgba(59,184,220,.7)}
.wow-mic button{background:linear-gradient(180deg,#1d8ab0,#0f5a78);box-shadow:0 0 24px rgba(31,134,171,.6)}
.cam-stage{background:#0a1e29;border:2px solid #174255}
.acct-chip{background:#0f2733;border-color:#2f5a6c}

/* landing page ranking, bars */
.rank-bar i,.bars div{background:linear-gradient(180deg,#3bb8dc,#11607e)}

/* print stays plain */
@media print{
  html:root:not(#_){--bg:#fff;--surface:#fff;--surface-2:#f2f2f2;--ink:#000;--ink-muted:#333;--line:#999;--accent:#000;--accent-soft:#eee;color-scheme:light}
  html:root:not(#_) body{background:#fff}
  .energy{display:none!important}
  .panel,.card{background:#fff;box-shadow:none}.panel::before{display:none}
}

[hidden]{display:none!important}

/* page banners */
.pg-hero{position:relative;border-radius:18px;overflow:hidden;min-height:260px;padding:34px 36px;margin:0 0 18px;display:flex;flex-direction:column;justify-content:center;
background:linear-gradient(90deg,rgba(7,26,36,.96) 0%,rgba(7,26,36,.85) 38%,rgba(7,26,36,.15) 70%,transparent 100%),var(--ban) right 10%/cover no-repeat;border:1px solid rgba(59,184,220,.25)}
.pg-hero .page-title{margin:4px 0 6px}
.pg-hero .page-sub{max-width:46%;margin:0}
@media(max-width:760px){.pg-hero{min-height:230px;padding:22px 18px;background:linear-gradient(180deg,rgba(7,26,36,.95) 0%,rgba(7,26,36,.8) 55%,rgba(7,26,36,.35) 100%),var(--ban) 80% 8%/cover no-repeat}.pg-hero .page-sub{max-width:100%}}

.pg-hero .page-title{font-size:26px;font-weight:800;color:#fff}
.tb-dash{height:130px;border-radius:12px;margin:0 0 12px;background:linear-gradient(90deg,rgba(7,26,36,.9),rgba(7,26,36,0) 60%),var(--ban) right 12%/cover no-repeat}
