
:root{
  --navy:#10243f;--navy2:#17375e;--ink:#132238;--muted:#637083;--line:#e3e8ef;
  --paper:#f4f7fb;--card:#fff;--good:#0f9d68;--warn:#d97706;--bad:#c2413a;
  --shadow:0 10px 30px rgba(16,36,63,.08);--radius:20px;
}
*{box-sizing:border-box}
html{background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink)}
body{margin:0;min-height:100vh;background:linear-gradient(180deg,#edf3fa 0,#f8fafc 280px,#f4f7fb 100%)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit}
.hidden{display:none!important}
.topbar{min-height:88px;padding:20px max(20px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;color:white;background:linear-gradient(135deg,var(--navy),var(--navy2));position:sticky;top:0;z-index:20;box-shadow:0 6px 20px rgba(12,34,58,.16)}
.topbar h1{font-size:1.32rem;margin:2px 0 0;letter-spacing:-.02em}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.14em;margin:0;color:#7a8ca4}.topbar .eyebrow{color:#bed2eb}
main{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 110px}
.view{display:none}.view.active{display:block}
.hero{padding:30px;border-radius:28px;background:linear-gradient(135deg,#fff,#f7fbff);border:1px solid #e4ecf5;display:flex;align-items:end;justify-content:space-between;gap:24px;box-shadow:var(--shadow)}
.hero h2{font-size:clamp(1.8rem,4vw,3.1rem);letter-spacing:-.045em;line-height:1.02;margin:8px 0 12px;max-width:700px}.muted{color:var(--muted);line-height:1.6}
.btn{border:0;border-radius:13px;padding:11px 15px;font-weight:750;transition:.18s transform,.18s box-shadow,.18s background}
.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--navy);color:#fff;box-shadow:0 7px 18px rgba(16,36,63,.2)}.btn.secondary{background:#eaf1f8;color:var(--navy)}.btn.ghost{background:transparent;color:inherit;border:1px solid rgba(255,255,255,.3)}.btn.danger{color:#a6322e;border-color:#e8c4c2}.btn.large{padding:14px 20px}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 34px}.stat-card{background:var(--card);border:1px solid var(--line);padding:18px;border-radius:18px}.stat-value{font-weight:850;font-size:1.75rem;letter-spacing:-.04em}.stat-label{font-size:.82rem;color:var(--muted);margin-top:4px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:28px 0 15px}.section-head h2{margin:5px 0 0;font-size:1.55rem;letter-spacing:-.025em}.sticky-head{position:sticky;top:88px;z-index:10;background:rgba(244,247,251,.94);backdrop-filter:blur(10px);padding:14px 0;margin-top:0}
.module-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.module-card{--accent:#3b82f6;background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 6px 18px rgba(20,35,55,.05);position:relative;overflow:hidden}.module-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--accent)}.module-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.module-num{font-size:.74rem;font-weight:800;color:var(--accent);text-transform:uppercase;letter-spacing:.12em}.module-card h3{margin:6px 0 6px;font-size:1.25rem}.module-meta{font-size:.83rem;color:var(--muted)}.progress{height:9px;background:#edf1f5;border-radius:99px;overflow:hidden;margin:16px 0 10px}.progress>span{height:100%;display:block;background:var(--accent);border-radius:99px}.tool-chips,.resource-row{display:flex;flex-wrap:wrap;gap:8px}.chip,.resource-link{font-size:.78rem;background:#f1f5f9;border:1px solid #e2e8f0;padding:7px 9px;border-radius:10px;text-decoration:none;color:#334155;font-weight:650}.chip:hover,.resource-link:hover{border-color:#b9c8d8;background:#edf4fb}.module-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px}
.course-module{margin-bottom:20px;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}.course-module-head{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:#fbfcfe}.course-module-head h3{margin:0}.topic-row{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid #edf0f4}.topic-row:last-child{border-bottom:0}.topic-title{font-weight:720}.topic-sub{font-size:.78rem;color:var(--muted);margin-top:4px}.status-badge{font-size:.74rem;font-weight:800;border-radius:99px;padding:7px 10px;background:#eef2f7;color:#516072;white-space:nowrap}.status-badge.complete{background:#e2f5ed;color:#08734d}.status-badge.practising{background:#fff1d7;color:#996007}.status-badge.learning{background:#e7efff;color:#315fa5}.review-flag{font-size:.72rem;color:#a43e36;font-weight:800}.topic-open{border:1px solid #d9e1ea;background:#fff;border-radius:10px;padding:8px 11px;font-weight:750;color:var(--navy)}
.filters{display:flex;gap:9px;flex-wrap:wrap}.filters input,.filters select{background:#fff;border:1px solid #d9e1ea;border-radius:12px;padding:10px 12px;color:var(--ink)}.filters input{min-width:220px}
.review-list{display:grid;gap:12px}.review-card{background:#fff;border:1px solid #eed6d3;border-left:5px solid #d7645c;border-radius:16px;padding:16px;display:flex;justify-content:space-between;gap:18px;align-items:center}
.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.settings-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}.settings-card h3{margin:0 0 8px}.button-row,.pin-grid{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.pin-grid input{flex:1;min-width:160px;padding:11px;border-radius:12px;border:1px solid #d5dde7}.file-label input{display:none}.link-btn{display:inline-block;text-decoration:none;margin-top:12px}
.bottom-nav{position:fixed;left:50%;bottom:max(12px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:30;width:min(560px,calc(100% - 24px));padding:8px;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(16,36,63,.96);backdrop-filter:blur(14px);border-radius:18px;box-shadow:0 12px 35px rgba(10,28,47,.28)}.nav-item{border:0;background:transparent;color:#bfd0e4;border-radius:12px;padding:7px 4px;display:flex;flex-direction:column;align-items:center;gap:2px}.nav-item span{font-size:1.1rem}.nav-item small{font-size:.68rem;font-weight:750}.nav-item.active{background:#fff;color:var(--navy)}
dialog{width:min(720px,calc(100% - 24px));max-height:88vh;border:0;padding:0;border-radius:24px;box-shadow:0 30px 80px rgba(10,25,44,.3)}dialog::backdrop{background:rgba(10,25,44,.55);backdrop-filter:blur(4px)}.dialog-shell{padding:26px;position:relative}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:#eff3f7;width:36px;height:36px;border-radius:99px;font-size:1.35rem}.dialog-title{font-size:1.55rem;letter-spacing:-.03em;margin:8px 48px 4px 0}.dialog-module{color:var(--muted);font-size:.8rem;font-weight:800}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:20px 0}.field label{display:block;font-size:.78rem;font-weight:800;color:#607084;margin-bottom:5px}.field input,.field select,.field textarea{width:100%;border:1px solid #d6dee8;border-radius:11px;padding:10px;background:#fff}.field textarea{min-height:110px;resize:vertical}.full{grid-column:1/-1}.review-toggle{display:flex;align-items:center;gap:10px;background:#fff4f2;border:1px solid #f2d3cf;padding:12px;border-radius:12px}.dialog-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:16px}
.toast{position:fixed;left:50%;bottom:94px;transform:translate(-50%,18px);opacity:0;pointer-events:none;background:#10243f;color:white;padding:11px 15px;border-radius:12px;transition:.2s;z-index:80;font-weight:650}.toast.show{opacity:1;transform:translate(-50%,0)}
.lock-screen{position:fixed;inset:0;z-index:100;background:linear-gradient(145deg,#0d2039,#173f68);display:grid;place-items:center;padding:24px}.lock-card{width:min(360px,100%);background:#fff;border-radius:24px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.brand-mark{width:56px;height:56px;border-radius:16px;background:#10243f;color:white;display:grid;place-items:center;font-weight:900;font-size:1.25rem}.lock-card h1{margin:16px 0 2px}.lock-card label{display:block;font-weight:750;margin:20px 0 6px}.lock-card input{width:100%;padding:12px;border:1px solid #ccd6e2;border-radius:12px;margin-bottom:10px}.lock-card .btn{width:100%}.error{color:#ad372f;font-size:.82rem;min-height:1em}
.empty{background:#fff;border:1px dashed #cbd5e1;border-radius:18px;padding:28px;text-align:center;color:var(--muted)}
@media(max-width:760px){
  .topbar{min-height:76px;padding:15px 18px}.topbar h1{font-size:1.12rem}main{width:min(100% - 20px,1180px);padding-top:18px}.hero{align-items:stretch;flex-direction:column;padding:23px}.hero .btn{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}.module-grid,.settings-grid{grid-template-columns:1fr}.sticky-head{top:76px;align-items:stretch;flex-direction:column}.filters{width:100%}.filters input,.filters select{flex:1;min-width:0}.topic-row{grid-template-columns:1fr auto}.topic-open{grid-column:2;grid-row:1/3}.form-grid{grid-template-columns:1fr}.full{grid-column:1}.dialog-shell{padding:22px 17px}.review-card{align-items:flex-start;flex-direction:column}
}


/* ===== Interface v2 ===== */
.topbar-brand{display:flex;align-items:center;gap:12px;min-width:0}
.mini-mark{width:42px;height:42px;border-radius:13px;background:#fff;color:var(--navy);display:grid;place-items:center;font-weight:900;font-size:1rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.top-actions{display:flex;align-items:center;gap:10px}
.privacy-pill{font-size:.72rem;font-weight:750;color:#d6e4f3;padding:7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:999px;white-space:nowrap}

.dashboard-hero{background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 100%);border:1px solid #dce7f2;border-radius:28px;padding:30px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;box-shadow:var(--shadow)}
.hero-copy h2{font-size:clamp(1.9rem,4vw,3.25rem);line-height:1;letter-spacing:-.05em;margin:8px 0 14px;max-width:720px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.progress-orb{width:170px;height:170px;position:relative;display:grid;place-items:center}
.progress-orb svg{width:100%;height:100%;transform:rotate(-90deg)}
.orb-track,.orb-progress{fill:none;stroke-width:10}
.orb-track{stroke:#e7edf4}
.orb-progress{stroke:#17375e;stroke-linecap:round;stroke-dasharray:301.59;stroke-dashoffset:301.59;transition:stroke-dashoffset .5s ease}
.orb-label{position:absolute;display:flex;flex-direction:column;align-items:center;line-height:1}
.orb-label strong{font-size:2rem;letter-spacing:-.05em}
.orb-label span{font-size:.72rem;color:var(--muted);margin-top:6px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}

.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0 32px}
.quick-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:16px;text-align:left;display:flex;align-items:center;gap:13px;color:var(--ink);min-height:82px}
.quick-card:hover{border-color:#bdcad8;background:#fbfdff}
.quick-icon{width:42px;height:42px;border-radius:13px;background:#edf3f9;color:var(--navy);display:grid;place-items:center;flex:0 0 auto;font-weight:900}
.quick-card span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.quick-card small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.text-button{border:0;background:transparent;color:var(--navy2);font-weight:800;padding:8px 0}

.module-card{cursor:default}
.module-card .module-symbol{width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--accent) 12%,white);color:var(--accent);display:grid;place-items:center;font-size:1.15rem;font-weight:900;margin-bottom:12px}
.module-card h3{font-size:1.3rem}
.module-card strong.module-pct{font-size:1.2rem;color:var(--accent)}

.toolkit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.toolkit-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:16px;text-decoration:none;display:flex;flex-direction:column;gap:8px;min-height:118px}
.toolkit-card:hover{border-color:#bac8d8}
.toolkit-icon{width:38px;height:38px;border-radius:11px;background:#eef3f8;display:grid;place-items:center;color:var(--navy);font-weight:900}
.toolkit-card strong{font-size:.95rem}
.toolkit-card small{color:var(--muted);line-height:1.35}

.study-path{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}
.study-step{border:1px solid #dce4ed;background:#fff;border-radius:13px;padding:11px 9px;text-align:center}
.study-step .step-num{display:block;width:24px;height:24px;margin:0 auto 7px;border-radius:999px;background:#eef3f8;color:var(--navy);font-weight:900;line-height:24px;font-size:.75rem}
.study-step strong{display:block;font-size:.8rem}
.resource-section{margin:18px 0}
.resource-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.resource-section-head h3{margin:0;font-size:.92rem}
.resource-list{display:grid;gap:8px}
.resource-big{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border:1px solid #dce4ed;background:#fbfdff;border-radius:13px;text-decoration:none;font-weight:750}
.resource-big span:last-child{color:#718096;font-size:.8rem}
.progress-panel{background:#f7f9fc;border:1px solid #e0e6ee;border-radius:16px;padding:16px;margin-top:18px}
.progress-panel h3{margin:0 0 12px;font-size:1rem}
.dialog-shell{padding-top:30px}
.dialog-module{letter-spacing:.08em;text-transform:uppercase}
.dialog-title{font-size:clamp(1.45rem,4vw,2rem)}

@media(max-width:760px){
  .privacy-pill{display:none}
  .topbar-brand{gap:8px}
  .app-back-btn{padding:0 9px}
  .top-actions{gap:6px}
  #installBtn{padding-left:10px;padding-right:10px}
  .dashboard-hero{grid-template-columns:1fr;padding:22px}
  .progress-orb{width:138px;height:138px;justify-self:center;grid-row:1}
  .hero-copy{grid-row:2}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr}
  .hero-actions .btn{width:auto}
  .quick-grid{grid-template-columns:1fr}
  .toolkit-grid{grid-template-columns:repeat(2,1fr)}
  .study-path{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:400px){
  .hero-actions{grid-template-columns:1fr}
  .toolkit-grid{grid-template-columns:1fr 1fr}
}


/* ===== Welcome page v3 ===== */
.welcome-screen{
  position:fixed;
  inset:0;
  z-index:70;
  overflow:auto;
  background:
    radial-gradient(circle at 20% 20%, rgba(63,114,175,.18), transparent 32%),
    radial-gradient(circle at 80% 18%, rgba(112,185,255,.18), transparent 28%),
    linear-gradient(145deg, #0e2037 0%, #15385f 45%, #edf4fb 100%);
}
.welcome-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:28px;
  position:relative;
}
.welcome-glow{
  position:absolute;
  border-radius:999px;
  filter:blur(70px);
  opacity:.75;
  pointer-events:none;
}
.welcome-glow-a{
  width:240px;height:240px;
  background:rgba(99,160,255,.28);
  top:9%;left:8%;
}
.welcome-glow-b{
  width:280px;height:280px;
  background:rgba(255,255,255,.22);
  bottom:8%;right:6%;
}
.welcome-card{
  width:min(1120px,100%);
  position:relative;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.58);
  border-radius:32px;
  padding:32px;
  box-shadow:0 24px 70px rgba(10,28,47,.18);
  backdrop-filter:blur(16px);
}
.welcome-brand-row{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  align-items:start;
}
.welcome-mark{
  width:74px;height:74px;
  border-radius:22px;
  background:linear-gradient(145deg,#10243f,#17375e);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.5rem;
  font-weight:900;
  box-shadow:0 14px 26px rgba(16,36,63,.22);
}
.welcome-brand-copy h1{
  margin:6px 0 10px;
  font-size:clamp(2.05rem,4vw,3.6rem);
  line-height:.98;
  letter-spacing:-.06em;
  color:#10243f;
}
.welcome-subtitle{
  max-width:760px;
  color:#5f6f82;
  font-size:1.03rem;
  line-height:1.7;
  margin:0;
}
.welcome-pill-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:24px 0 24px;
}
.welcome-pill{
  background:rgba(16,36,63,.06);
  color:#17375e;
  border:1px solid rgba(16,36,63,.08);
  border-radius:999px;
  padding:9px 13px;
  font-size:.8rem;
  font-weight:760;
}
.welcome-grid{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:18px;
}
.welcome-panel{
  background:rgba(255,255,255,.72);
  border:1px solid #dfe8f1;
  border-radius:24px;
  padding:22px;
}
.welcome-panel h2{
  margin:0 0 14px;
  font-size:1.15rem;
  letter-spacing:-.025em;
}
.welcome-steps{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}
.welcome-step{
  background:#fbfdff;
  border:1px solid #e3ebf3;
  border-radius:18px;
  padding:15px 14px;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-height:114px;
}
.welcome-step span{
  width:28px;height:28px;
  border-radius:999px;
  background:#edf3f9;
  color:#10243f;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:.82rem;
}
.welcome-step strong{
  font-size:.94rem;
}
.welcome-step small{
  color:#66768a;
  line-height:1.45;
}
.module-preview-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px;
}
.module-preview-chip{
  border-radius:16px;
  padding:13px 12px;
  background:linear-gradient(135deg,#f7fbff,#eef5fb);
  border:1px solid #e0e8f2;
  color:#17375e;
  font-weight:760;
  min-height:54px;
  display:flex;
  align-items:center;
}
.welcome-footer{
  margin-top:22px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  flex-wrap:wrap;
}
.welcome-checkbox{
  display:flex;
  align-items:center;
  gap:10px;
  color:#4f6074;
  font-weight:650;
}
.welcome-checkbox input{
  width:18px;height:18px;
}
.welcome-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.dark-ghost{
  color:#10243f !important;
  border:1px solid #c7d4e2 !important;
  background:rgba(255,255,255,.45) !important;
}
.dark-ghost:hover{
  background:#fff !important;
}

@media(max-width:860px){
  .welcome-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .welcome-shell{padding:16px}
  .welcome-card{
    padding:22px;
    border-radius:26px;
  }
  .welcome-brand-row{
    grid-template-columns:1fr;
  }
  .welcome-mark{
    width:62px;height:62px;border-radius:18px;
  }
  .welcome-steps,
  .module-preview-grid{
    grid-template-columns:1fr;
  }
  .welcome-footer{
    flex-direction:column;
    align-items:stretch;
  }
  .welcome-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .welcome-actions .btn{
    width:100%;
  }
}


/* ===== Sigma Maths Premium Identity v4 ===== */
:root{
  --brand-navy:#0b1f36;
  --brand-navy-2:#173b63;
  --brand-gold:#d7aa52;
  --brand-gold-soft:#f5ead2;
  --brand-blue:#8ec5ff;
  --surface:#ffffff;
  --surface-2:#f6f8fb;
  --surface-3:#edf2f7;
  --app-bg:#f2f5f9;
  --text:#132238;
  --text-soft:#637083;
  --stroke:#dfe6ee;
  --shadow-premium:0 20px 55px rgba(8,26,45,.10);
  color-scheme:light;
}
html[data-theme="dark"]{
  --surface:#0f1b2b;
  --surface-2:#132238;
  --surface-3:#192b40;
  --app-bg:#07111f;
  --text:#edf4fb;
  --text-soft:#9eb0c4;
  --stroke:#27394d;
  --paper:#07111f;
  --card:#0f1b2b;
  --ink:#edf4fb;
  --muted:#9eb0c4;
  --line:#27394d;
  --navy:#dbeaff;
  --navy2:#8ec5ff;
  color-scheme:dark;
}
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 20% 0%,rgba(40,80,125,.18),transparent 28%),
    linear-gradient(180deg,#07111f,#0a1524);
  color:var(--text);
}
html[data-theme="dark"] .topbar{
  background:rgba(7,17,31,.93);
  border-bottom:1px solid #203249;
}
html[data-theme="dark"] .dashboard-hero,
html[data-theme="dark"] .module-card,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .quick-card,
html[data-theme="dark"] .toolkit-card,
html[data-theme="dark"] .course-module,
html[data-theme="dark"] .review-card,
html[data-theme="dark"] .settings-card,
html[data-theme="dark"] .progress-panel{
  background:var(--surface);
  border-color:var(--stroke);
  color:var(--text);
}
html[data-theme="dark"] .course-module-head,
html[data-theme="dark"] .sticky-head{
  background:rgba(15,27,43,.94);
}
html[data-theme="dark"] .topic-row{border-color:#203249}
html[data-theme="dark"] .filters input,
html[data-theme="dark"] .filters select,
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .field textarea,
html[data-theme="dark"] .pin-grid input{
  background:#0b1726;color:#edf4fb;border-color:#31465e;
}
html[data-theme="dark"] .chip,
html[data-theme="dark"] .resource-link,
html[data-theme="dark"] .resource-big,
html[data-theme="dark"] .topic-open,
html[data-theme="dark"] .btn.secondary{
  background:#16283b;color:#dbeaff;border-color:#2c4057;
}
html[data-theme="dark"] dialog{background:#0f1b2b;color:#edf4fb}
html[data-theme="dark"] .dialog-shell{background:#0f1b2b}
html[data-theme="dark"] .welcome-screen{
  background:
    radial-gradient(circle at 18% 12%,rgba(142,197,255,.12),transparent 28%),
    radial-gradient(circle at 85% 75%,rgba(215,170,82,.09),transparent 30%),
    linear-gradient(145deg,#06101d,#0b1f36);
}
html[data-theme="dark"] .premium-welcome{
  background:rgba(11,25,42,.90);
  border-color:rgba(142,197,255,.15);
}
html[data-theme="dark"] .welcome-brand-copy h1,
html[data-theme="dark"] .welcome-copy h1,
html[data-theme="dark"] .brand-name,
html[data-theme="dark"] .panel-kicker,
html[data-theme="dark"] .module-preview-chip,
html[data-theme="dark"] .welcome-checkbox{
  color:#edf4fb;
}
html[data-theme="dark"] .welcome-subtitle,
html[data-theme="dark"] .brand-tagline,
html[data-theme="dark"] .welcome-step small{color:#9fb1c6}
html[data-theme="dark"] .welcome-panel,
html[data-theme="dark"] .welcome-step,
html[data-theme="dark"] .module-preview-chip,
html[data-theme="dark"] .profile-entry-card{
  background:rgba(15,31,50,.88);border-color:#28405b;color:#edf4fb;
}
html[data-theme="dark"] .welcome-pill{background:#14283d;border-color:#29415a;color:#dbeaff}

body{background:var(--app-bg);color:var(--text)}
.sigma-mark{
  width:52px;height:52px;border-radius:16px;
  background:linear-gradient(145deg,var(--brand-navy),var(--brand-navy-2));
  color:#fff;display:grid;place-items:center;position:relative;
  font-weight:900;letter-spacing:-.07em;
  box-shadow:0 12px 28px rgba(11,31,54,.20)
}
.sigma-mark span{
  position:absolute;right:7px;top:3px;color:var(--brand-gold);
  font-size:.72em;line-height:1
}
.large-mark{width:62px;height:62px;border-radius:19px;font-size:1.05rem}
.compact-mark{width:42px;height:42px;border-radius:13px;font-size:.82rem}
.brand-name{font-size:.76rem;letter-spacing:.18em;font-weight:900;color:var(--brand-navy);margin:0}
.brand-tagline{font-size:.84rem;color:#64758a;margin:3px 0 0}
.gold-eyebrow{color:#ad7d27!important}

.topbar{
  background:linear-gradient(120deg,var(--brand-navy),#102d4e);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.topbar-title h1{margin-top:1px}
.app-back-btn{
  min-height:42px;padding:0 11px;border-radius:12px;border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;gap:7px;
  font-weight:800;font-size:.82rem;white-space:nowrap;transition:.18s ease;
}
.app-back-btn span:first-child{font-size:1.15rem;line-height:1}
.app-back-btn:not(:disabled):hover{background:rgba(255,255,255,.15);transform:translateY(-1px)}
.app-back-btn:disabled{opacity:.32;cursor:default}
.dialog-back{
  display:inline-flex;align-items:center;gap:6px;border:1px solid var(--stroke);background:var(--surface-2);
  color:var(--text);border-radius:11px;padding:8px 11px;font-weight:800;margin:0 44px 14px 0;
}
.dialog-back:hover{background:var(--surface-3)}
.icon-btn{
  width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.2);
  background:rgba(255,255,255,.06);color:#fff;display:grid;place-items:center;
  font-size:1.1rem
}
.icon-btn:hover{background:rgba(255,255,255,.12)}

.welcome-screen{
  background:
    radial-gradient(circle at 12% 15%,rgba(142,197,255,.20),transparent 27%),
    radial-gradient(circle at 83% 78%,rgba(215,170,82,.16),transparent 30%),
    linear-gradient(145deg,#0b1f36 0%,#15375b 48%,#eaf1f8 100%);
}
.welcome-shell{min-height:100vh}
.welcome-orbit{
  position:absolute;border:1px solid rgba(255,255,255,.12);
  border-radius:999px;pointer-events:none
}
.orbit-one{width:520px;height:520px;right:-130px;top:-160px}
.orbit-two{width:360px;height:360px;left:-120px;bottom:-80px}
.premium-welcome{
  max-width:1180px;
  background:rgba(255,255,255,.90);
  box-shadow:0 32px 90px rgba(4,22,40,.24);
  border:1px solid rgba(255,255,255,.60);
  overflow:hidden
}
.welcome-topline{
  display:flex;justify-content:space-between;gap:18px;align-items:center;
  padding-bottom:20px;border-bottom:1px solid rgba(95,116,140,.16)
}
.brand-lockup{display:flex;align-items:center;gap:13px}
.privacy-badge{
  font-size:.72rem;font-weight:800;color:#53677c;
  background:rgba(16,47,80,.06);border:1px solid rgba(16,47,80,.09);
  padding:8px 11px;border-radius:999px
}
.welcome-hero-grid{
  display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  gap:30px;align-items:center;padding:34px 0 26px
}
.welcome-copy h1{
  color:var(--brand-navy);font-size:clamp(2.4rem,5vw,4.5rem);
  letter-spacing:-.065em;line-height:.94;margin:9px 0 18px
}
.welcome-copy h1 em{font-style:normal;color:var(--brand-navy-2)}
.profile-entry-card{
  margin-top:24px;display:grid;grid-template-columns:auto 1fr auto;gap:13px;
  align-items:center;padding:14px;border-radius:19px;background:#f7fafc;
  border:1px solid #dde7f0
}
.premium-avatar{
  width:48px;height:48px;border-radius:15px;background:var(--brand-navy);
  color:#fff;display:grid;place-items:center;font-weight:900
}
.profile-entry-copy{display:flex;flex-direction:column;min-width:0}
.profile-entry-copy small{font-size:.66rem;letter-spacing:.12em;color:#8391a1;font-weight:850}
.profile-entry-copy strong{font-size:1rem;margin:2px 0}
.profile-entry-copy span{font-size:.77rem;color:#66768a}
.brand-primary{
  background:linear-gradient(135deg,var(--brand-navy),var(--brand-navy-2));
  color:#fff!important;border:0!important;
  box-shadow:0 9px 22px rgba(11,31,54,.20)
}
.brand-primary:hover{box-shadow:0 12px 26px rgba(11,31,54,.25)}
.welcome-visual{position:relative;min-width:0}
.math-hero-svg{width:100%;display:block;filter:drop-shadow(0 22px 32px rgba(8,26,45,.20))}
.floating-formula{
  position:absolute;background:#fff;color:var(--brand-navy);font-weight:850;
  padding:9px 12px;border-radius:12px;border:1px solid #e2e8ef;
  box-shadow:0 10px 25px rgba(10,30,50,.12)
}
.formula-a{left:1%;bottom:12%}
.formula-b{right:2%;top:13%}
.formula-c{right:7%;bottom:6%}
.welcome-lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.premium-panel{background:rgba(248,251,254,.88)}
.panel-kicker{font-size:.7rem;letter-spacing:.14em;color:#60748a;font-weight:900;margin-bottom:13px}
.welcome-step span{
  width:auto;height:auto;display:block;background:none;border-radius:0;
  color:var(--brand-gold);font-size:.69rem;letter-spacing:.08em;line-height:1
}
.module-preview-chip{gap:10px}
.module-preview-chip span{
  display:grid;place-items:center;width:35px;height:35px;border-radius:11px;
  background:#eaf1f8;color:var(--brand-navy);font-size:.75rem;font-weight:900;
  flex:0 0 auto
}

.premium-lock-card{width:min(420px,100%)}
.lock-brand{display:flex;gap:14px;align-items:center}
.lock-brand h1{margin:3px 0 0;font-size:1.45rem}
.lock-course{margin:2px 0 0;color:#68798c}
.profile-strip{
  margin:22px 0;background:#f5f8fb;border:1px solid #dfe7ef;border-radius:16px;
  padding:12px;display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center
}
.profile-avatar{
  width:42px;height:42px;border-radius:13px;background:var(--brand-navy);
  color:#fff;display:grid;place-items:center;font-weight:900
}
.profile-strip div:nth-child(2){display:flex;flex-direction:column}
.profile-strip small{color:#7b8998}
.local-dot{color:#2e9c6b}
.lock-footnote{font-size:.75rem;color:#7a8897;text-align:center;margin:14px 0 0}

.module-symbol{
  overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 10%,white),color-mix(in srgb,var(--accent) 18%,white))!important
}
.module-symbol svg{width:27px;height:27px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.module-card{
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.module-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(10,30,50,.09)}
.module-card:after{
  content:"";position:absolute;width:85px;height:85px;border-radius:999px;
  right:-28px;bottom:-34px;background:color-mix(in srgb,var(--accent) 8%,transparent);
  pointer-events:none
}

.theme-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.theme-option{
  min-height:72px;border:1px solid var(--stroke);background:var(--surface-2);
  color:var(--text);border-radius:14px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:5px;font-weight:800
}
.theme-option.active{border-color:var(--brand-gold);box-shadow:inset 0 0 0 1px var(--brand-gold);background:var(--brand-gold-soft);color:#5a431b}
html[data-theme="dark"] .theme-option.active{background:#3a2e1d;color:#f3d89e}

.view.active{animation:pageEnter .28s cubic-bezier(.2,.7,.2,1)}
@keyframes pageEnter{
  from{opacity:0;transform:translateY(7px)}
  to{opacity:1;transform:translateY(0)}
}
dialog[open]{animation:dialogEnter .22s ease-out}
@keyframes dialogEnter{
  from{opacity:0;transform:translateY(12px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.quick-card,.toolkit-card,.topic-row,.review-card{transition:background .18s ease,border-color .18s ease,transform .18s ease}
.quick-card:hover,.toolkit-card:hover{transform:translateY(-2px)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
@media(max-width:880px){
  .welcome-hero-grid{grid-template-columns:1fr}
  .welcome-visual{max-width:560px;margin:0 auto}
  .welcome-lower-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .welcome-topline{align-items:flex-start}
  .privacy-badge{display:none}
  .welcome-copy h1{font-size:clamp(2.25rem,12vw,3.45rem)}
  .profile-entry-card{grid-template-columns:auto 1fr}
  .profile-entry-card .btn{grid-column:1/-1;width:100%}
  .welcome-visual{margin-top:-8px}
  .floating-formula{font-size:.74rem;padding:7px 9px}
  .theme-choice{grid-template-columns:repeat(3,1fr)}
}


/* ===== Test Paper Generator v5 ===== */
.bottom-nav{grid-template-columns:repeat(5,1fr);width:min(650px,calc(100% - 24px))}
.quick-grid{grid-template-columns:repeat(4,1fr)}

.test-builder-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.test-builder-card{
  background:var(--surface);
  border:1px solid var(--stroke);
  border-radius:24px;
  padding:24px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:16px;
  box-shadow:0 7px 22px rgba(10,30,50,.045);
}
.test-builder-card .test-form{grid-column:1/-1}
.test-builder-icon{
  width:54px;height:54px;border-radius:17px;
  background:linear-gradient(145deg,var(--brand-navy),var(--brand-navy-2));
  color:#fff;display:grid;place-items:center;font-size:1.15rem;font-weight:900;
}
.mixed-builder-card .test-builder-icon{color:var(--brand-gold)}
.test-builder-card h3{font-size:1.35rem;margin:4px 0 6px;letter-spacing:-.025em}
.test-form{display:grid;gap:14px;margin-top:4px}
.test-form>label>span,.question-count-group legend{
  display:block;font-size:.76rem;font-weight:850;color:var(--text-soft);margin-bottom:7px;
  letter-spacing:.04em;text-transform:uppercase
}
.test-form select{
  width:100%;padding:12px 13px;border-radius:13px;border:1px solid var(--stroke);
  background:var(--surface-2);color:var(--text);font-size:1rem
}
.question-count-group{border:0;padding:0;margin:0}
.question-count-group>div{display:flex}
.question-count-group label{
  display:inline-flex;align-items:center;justify-content:center;margin-right:8px;
  cursor:pointer
}
.question-count-group input{position:absolute;opacity:0;pointer-events:none}
.question-count-group label span{
  min-width:68px;padding:11px 15px;border-radius:12px;text-align:center;
  border:1px solid var(--stroke);background:var(--surface-2);font-weight:850
}
.question-count-group input:checked+span{
  border-color:var(--brand-gold);
  box-shadow:inset 0 0 0 1px var(--brand-gold);
  background:var(--brand-gold-soft);color:#5b441c
}
html[data-theme="dark"] .question-count-group input:checked+span{background:#3a2e1d;color:#f3d89e}

.test-feature-strip{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--stroke);border:1px solid var(--stroke);border-radius:18px;
  overflow:hidden;margin:18px 0 28px
}
.test-feature-strip div{background:var(--surface);padding:15px}
.test-feature-strip strong{display:block;font-size:.83rem}
.test-feature-strip span{display:block;color:var(--text-soft);font-size:.74rem;margin-top:3px;line-height:1.35}

.test-workspace{margin-top:28px}
.test-workspace-toolbar{
  display:flex;justify-content:space-between;align-items:end;gap:16px;
  margin:0 0 14px;padding:18px;background:var(--surface);
  border:1px solid var(--stroke);border-radius:18px
}
.test-workspace-toolbar h3{font-size:1.4rem;margin:4px 0}
.test-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}

.paper-sheet{
  width:min(900px,100%);margin:18px auto;padding:52px 58px;
  background:white;color:#111827;border:1px solid #d8dee6;
  box-shadow:0 16px 45px rgba(9,28,48,.10);
  border-radius:4px
}
.paper-header{border-bottom:2px solid #152d4a;padding-bottom:22px;margin-bottom:26px}
.paper-brand{font-size:.7rem;letter-spacing:.18em;font-weight:900;color:#173b63}
.paper-header h1{font-size:1.8rem;margin:8px 0 3px;color:#0b1f36}
.paper-header p{margin:0;color:#4b5563}
.candidate-line{display:flex;justify-content:space-between;gap:20px;margin:26px 0 18px;font-size:.88rem}
.paper-instructions{
  display:flex;flex-direction:column;gap:4px;background:#f5f7fa;padding:13px 15px;
  border-radius:7px;font-size:.83rem;line-height:1.45
}
.question-paper-list{padding-left:26px;margin:0}
.question-paper-list>li{
  padding:0 0 25px 8px;margin-bottom:20px;border-bottom:1px solid #e5e7eb;
  line-height:1.55
}
.question-text{font-size:.98rem;font-weight:600}
.question-topic{
  display:inline-block;margin-top:8px;font-size:.68rem;color:#6b7280;
  text-transform:uppercase;letter-spacing:.07em;font-weight:800
}
.answer-space{height:52px;margin-top:10px;border-bottom:1px dotted #d1d5db}
.student-answer-label{display:block;margin-top:14px;font-size:.72rem;font-weight:850;color:#41546b;text-transform:uppercase;letter-spacing:.06em}
.student-answer-input{width:100%;min-height:48px;margin-top:6px;padding:11px 13px;border:1.5px solid #b9c6d5;border-radius:10px;background:#fff;color:#111827;font-size:1rem;font-weight:650;outline:none}
.student-answer-input:focus{border-color:#173b63;box-shadow:0 0 0 3px rgba(23,59,99,.12)}
.student-answer-input[readonly]{background:#f7f9fb;color:#25364a}
.answer-feedback{margin-top:7px;padding:8px 10px;border-radius:9px;font-size:.78rem;font-weight:800}
.answer-feedback.correct{background:#eaf8f1;color:#08704a}
.answer-feedback.review{background:#fff4e5;color:#9a5700}
.sigma-feedback-explanation{display:block;margin-top:6px;font-weight:650;line-height:1.45}
.sigma-feedback-explanation strong{font-weight:900}
.question-paper-list>li.question-correct{border-left:3px solid #0f9d68;padding-left:12px}
.question-paper-list>li.question-review{border-left:3px solid #d97706;padding-left:12px}
.print-answer-space{display:none;height:26mm;margin-top:10px;border-bottom:1px dotted #d1d5db}
.answer-paper-list{padding-left:26px}
.answer-paper-list>li{padding:0 0 13px 8px;line-height:1.5}
.answer-value{font-weight:850;color:#0b1f36}
.answer-method{display:block;color:#4b5563;font-size:.82rem;margin-top:3px}
.answer-sheet{border-top:5px solid var(--brand-gold)}

@media(max-width:900px){
  .test-builder-grid{grid-template-columns:1fr}
  .test-feature-strip{grid-template-columns:repeat(2,1fr)}
  .quick-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .test-workspace-toolbar{align-items:stretch;flex-direction:column}
  .test-toolbar-actions{justify-content:stretch;display:grid;grid-template-columns:1fr 1fr;width:100%}
  .test-toolbar-actions .btn{width:100%}
  .paper-sheet{padding:28px 22px;border-radius:0}
  .candidate-line{flex-direction:column;gap:9px}
}
@media(max-width:440px){
  .test-feature-strip{grid-template-columns:1fr}
  .quick-grid{grid-template-columns:1fr}
  .bottom-nav{width:calc(100% - 14px);padding:6px}
  .nav-item small{font-size:.6rem}
}

/* clean printing */
@media print{
  body *{visibility:hidden!important}
  body.print-questions #printableQuestionPaper,
  body.print-questions #printableQuestionPaper *,
  body.print-answers #printableAnswerPaper,
  body.print-answers #printableAnswerPaper *{
    visibility:visible!important
  }
  body.print-questions #printableQuestionPaper,
  body.print-answers #printableAnswerPaper{
    position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;padding:18mm;
    border:0;box-shadow:none;border-radius:0
  }
  .answer-space{height:26mm}
  .student-answer-label,.student-answer-input,.answer-feedback{display:none!important}
  .print-answer-space{display:block!important}
  .question-paper-list>li{break-inside:avoid;page-break-inside:avoid;border-left:0!important;padding-left:8px!important}
  @page{size:A4;margin:10mm}
}


/* ===== Cross-platform install centre v6 ===== */
.bottom-nav{grid-template-columns:repeat(6,1fr);width:min(760px,calc(100% - 24px))}
.install-hero-card{
  display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;
  background:var(--surface);border:1px solid var(--stroke);border-radius:24px;padding:22px;
  box-shadow:0 8px 24px rgba(10,30,50,.06)
}
.install-app-mark{
  width:74px;height:74px;border-radius:22px;background:linear-gradient(145deg,var(--brand-navy),var(--brand-navy-2));
  color:#fff;display:grid;place-items:center;position:relative;font-weight:900;font-size:1.25rem
}
.install-app-mark span{position:absolute;right:9px;top:6px;color:var(--brand-gold);font-size:.72em}
.install-hero-copy h3{margin:0 0 5px;font-size:1.25rem}
.install-status{
  min-height:0;margin:12px 0 0;padding:0;color:var(--text-soft);font-size:.85rem
}
.install-status:not(:empty){
  background:var(--surface);border:1px solid var(--stroke);border-radius:14px;padding:12px 14px
}
.platform-install-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px
}
.platform-card{
  background:var(--surface);border:1px solid var(--stroke);border-radius:20px;padding:20px
}
.platform-card.active-platform{
  border-color:var(--brand-gold);box-shadow:inset 0 0 0 1px var(--brand-gold)
}
.platform-icon{
  width:42px;height:42px;border-radius:13px;background:var(--surface-3);display:grid;place-items:center;
  color:var(--brand-navy-2);font-weight:900;margin-bottom:12px
}
.platform-card h3{margin:0 0 10px}
.platform-card ol{padding-left:22px;color:var(--text-soft);line-height:1.55;font-size:.88rem}
.platform-card li{margin-bottom:7px}
.platform-card p{color:var(--text-soft);font-size:.82rem;margin-bottom:0}
.hosting-note{
  margin-top:18px;background:var(--surface);border:1px solid var(--stroke);border-radius:18px;
  padding:17px;display:grid;grid-template-columns:auto 1fr;gap:13px
}
.hosting-note-icon{
  width:36px;height:36px;border-radius:999px;background:var(--brand-gold-soft);
  color:#6f531f;display:grid;place-items:center;font-weight:900
}
.hosting-note h3{margin:0 0 5px}
.hosting-note p{margin:0;color:var(--text-soft);line-height:1.55}
@media(max-width:760px){
  .install-hero-card{grid-template-columns:auto 1fr}
  .install-hero-card .btn{grid-column:1/-1;width:100%}
  .platform-install-grid{grid-template-columns:1fr}
  .bottom-nav{width:calc(100% - 10px);padding:5px}
  .nav-item{padding-left:1px;padding-right:1px}
  .nav-item small{font-size:.55rem}
}


/* ===== Mathematical typography fix v6.2 ===== */
.question-text sup,
.answer-value sup,
.answer-method sup{
  font-size:.72em;
  line-height:0;
  position:relative;
  vertical-align:baseline;
  top:-.48em;
}
.question-text{
  font-variant-numeric:lining-nums tabular-nums;
}
.answer-value{
  font-variant-numeric:lining-nums tabular-nums;
}


/* ===== New-user local profile v7 ===== */
.profile-setup-screen{
  position:fixed;inset:0;z-index:120;overflow:auto;
  background:
    radial-gradient(circle at 18% 15%,rgba(142,197,255,.18),transparent 30%),
    radial-gradient(circle at 85% 80%,rgba(215,170,82,.14),transparent 28%),
    linear-gradient(145deg,#07111f,#0b1f36 58%,#173b63);
}
.profile-setup-shell{
  min-height:100%;padding:28px;display:grid;place-items:center;
}
.setup-card{
  width:min(640px,100%);
  background:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.58);
  border-radius:30px;padding:30px;
  box-shadow:0 32px 90px rgba(3,17,31,.34);
}
.setup-brand{display:flex;align-items:center;gap:14px;padding-bottom:20px;border-bottom:1px solid #e2e8ef}
.setup-copy{padding:26px 0 8px}
.setup-copy h1{font-size:clamp(2rem,6vw,3.2rem);line-height:1;letter-spacing:-.055em;margin:7px 0 13px;color:#0b1f36}
.setup-copy>p:last-child{color:#607287;line-height:1.6;margin:0;max-width:560px}
.setup-form{display:grid;gap:16px;margin-top:18px}
.setup-form label>span{display:block;font-size:.78rem;font-weight:850;color:#526579;margin-bottom:6px}
.setup-form input{
  width:100%;padding:13px 14px;border:1px solid #cfdae5;border-radius:13px;
  background:#fff;color:#132238;font-size:1rem;outline:none
}
.setup-form input:focus{border-color:#769cc5;box-shadow:0 0 0 3px rgba(75,126,178,.12)}
.setup-pin-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.setup-privacy-note{
  padding:13px 14px;border-radius:14px;background:#f5f8fb;border:1px solid #dfe8f1;
  display:flex;flex-direction:column;gap:3px;color:#516579
}
.setup-privacy-note strong{color:#173b63;font-size:.85rem}
.setup-privacy-note span{font-size:.78rem;line-height:1.45}
.setup-submit{width:100%;margin-top:2px}
.setup-error{text-align:center;margin:0;min-height:1.2em}
.dashboard-greeting{margin:-5px 0 12px;color:var(--text-soft);font-weight:700}

.profile-settings-summary{
  display:flex;align-items:center;gap:11px;margin:14px 0;
  padding:12px;border:1px solid var(--stroke);background:var(--surface-2);border-radius:14px
}
.profile-settings-summary>div:last-child{display:flex;flex-direction:column}
.profile-settings-summary small{color:var(--text-soft);margin-top:2px}
.profile-settings-actions{display:flex;gap:8px;flex-wrap:wrap}

html[data-theme="dark"] .setup-card{
  background:rgba(12,26,43,.97);border-color:#29415a;color:#edf4fb
}
html[data-theme="dark"] .setup-copy h1{color:#edf4fb}
html[data-theme="dark"] .setup-copy>p:last-child{color:#a9bad0}
html[data-theme="dark"] .setup-brand{border-color:#263c54}
html[data-theme="dark"] .setup-form label>span{color:#b2c1d2}
html[data-theme="dark"] .setup-form input{background:#0a1726;color:#edf4fb;border-color:#31475f}
html[data-theme="dark"] .setup-privacy-note{background:#10243a;border-color:#29415a;color:#a9bad0}
html[data-theme="dark"] .setup-privacy-note strong{color:#dbeaff}

@media(max-width:620px){
  .profile-setup-shell{padding:15px}
  .setup-card{padding:22px;border-radius:25px}
  .setup-pin-grid{grid-template-columns:1fr}
}


/* ===== v10 Email account + 30-day evaluation + streak rewards demo ===== */
.evaluation-offer{display:flex;align-items:center;gap:14px;margin:18px 0 4px;padding:15px 16px;border:1px solid #d8e7f5;border-radius:16px;background:linear-gradient(135deg,#f2f8ff,#fffaf0)}
.evaluation-offer-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;background:#10243f;color:#fff;font-size:1.05rem;font-weight:900;box-shadow:0 8px 20px rgba(16,36,63,.15)}
.evaluation-offer>div:last-child{display:flex;flex-direction:column;gap:3px}.evaluation-offer strong{font-size:.95rem}.evaluation-offer span{font-size:.78rem;color:#68768a}
.email-preference,.settings-toggle-row{display:flex!important;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #dfe7ef;border-radius:14px;background:#f8fbfe;color:inherit}
.email-preference input,.settings-toggle-row input{width:auto!important;margin-top:3px}
.email-preference>span,.settings-toggle-row>span{display:flex!important;flex-direction:column;gap:2px;margin:0!important}
.email-preference small,.settings-toggle-row small{font-weight:500;color:#718095;line-height:1.35}
.account-trial-card{margin:18px 0 24px;padding:22px;border-radius:22px;border:1px solid #dbe5ef;background:linear-gradient(135deg,#fff,#f5f9fd);box-shadow:0 9px 28px rgba(16,36,63,.07)}
.account-trial-main{display:flex;justify-content:space-between;gap:18px;align-items:center}.account-trial-main h3{margin:5px 0 7px;font-size:1.25rem;letter-spacing:-.02em}
.account-email-line{margin:0;color:#627085;font-size:.84rem}.account-email-line strong{color:#22364f}
.trial-days-badge{min-width:88px;padding:11px 14px;border-radius:17px;background:#10243f;color:#fff;text-align:center;display:flex;flex-direction:column}
.trial-days-badge strong{font-size:1.65rem;line-height:1}.trial-days-badge span{font-size:.68rem;margin-top:4px;color:#d8e6f5}
.trial-progress-track{height:8px;margin:17px 0 14px;border-radius:99px;background:#e4eaf1;overflow:hidden}.trial-progress-track span{display:block;width:100%;height:100%;border-radius:99px;background:linear-gradient(90deg,#1c6d8f,#27a77c)}
.account-trial-foot{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#627085;font-size:.78rem}.account-trial-foot .btn{margin-left:auto}
.demo-disclaimer,.demo-note{color:#77869a;font-size:.74rem;line-height:1.45;margin:13px 0 0}
.settings-card-kicker{font-size:.68rem;font-weight:900;letter-spacing:.12em;color:#9a6f16;margin-bottom:7px}
.featured-account-card{border-color:#d6e5f2;background:linear-gradient(145deg,#fff,#f6fbff)}
.account-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:15px 0}.account-facts span{display:flex;flex-direction:column;padding:10px;border-radius:12px;background:#f3f7fb}
.account-facts small{font-size:.66rem;color:#78869a;text-transform:uppercase;letter-spacing:.06em}.account-facts strong{font-size:.82rem;margin-top:3px}
.settings-toggle-row{margin:14px 0}.email-preview-shell{max-width:650px}
.email-preview-card{border:1px solid #e0e7ef;border-radius:18px;padding:20px;background:#fff;margin:18px 0}
.email-preview-brand{font-size:.68rem;font-weight:900;letter-spacing:.12em;color:#6a7a8e}.email-preview-card h3{font-size:1.35rem;margin:7px 0 4px}
.email-preview-to{color:#6b7889;font-size:.8rem;margin-bottom:16px}.email-preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
.email-preview-metrics span{background:#f4f7fa;border-radius:12px;padding:11px;display:flex;flex-direction:column}.email-preview-metrics strong{font-size:1.15rem}.email-preview-metrics small{color:#78869a;font-size:.68rem}
.email-preview-focus{margin:16px 0;padding:14px;border-radius:13px;background:#fff9e9;border:1px solid #f0e2b6}.email-preview-focus strong{display:block;margin-bottom:6px}
.email-preview-focus ol{margin:0;padding-left:20px;color:#536276}.email-preview-cta{display:inline-block;padding:10px 14px;border-radius:11px;background:#10243f;color:#fff;font-weight:800;font-size:.8rem}
.trial-expired .trial-days-badge{background:#7d3440}.trial-expired .trial-progress-track span{width:0!important;background:#b34d57}
@media(max-width:700px){.account-trial-main{align-items:flex-start}.account-trial-foot .btn{width:100%;margin-left:0}.account-facts{grid-template-columns:1fr}.email-preview-metrics{grid-template-columns:1fr}}
html[data-theme="dark"] .evaluation-offer,html[data-theme="dark"] .account-trial-card,html[data-theme="dark"] .featured-account-card{background:linear-gradient(145deg,#10243a,#0d1a2a);border-color:#29415a}
html[data-theme="dark"] .email-preference,html[data-theme="dark"] .settings-toggle-row,html[data-theme="dark"] .account-facts span,html[data-theme="dark"] .email-preview-metrics span{background:#0d1c2e;border-color:#2c425a}
html[data-theme="dark"] .account-email-line strong{color:#edf4fb}html[data-theme="dark"] .email-preview-card{background:#0b1726;border-color:#2a4058}
html[data-theme="dark"] .email-preview-focus{background:#282313;border-color:#524722}


/* ===== v10 Streak rewards ===== */
.setup-reward-note{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:14px;background:#fff8e8;border:1px solid #efdfaf;color:#26384e}
.setup-reward-note span{font-size:.76rem;color:#6d7887;line-height:1.4}
.streak-rewards-card{margin:18px 0 24px;padding:22px;border-radius:22px;border:1px solid #ead9aa;background:linear-gradient(135deg,#fffaf0,#fff,#f4f9ff);box-shadow:0 9px 28px rgba(16,36,63,.07)}
.streak-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.streak-head h3{margin:5px 0 0;font-size:1.3rem}
.today-bonus-pill{padding:8px 11px;border-radius:999px;background:#10243f;color:#fff;font-size:.72rem;font-weight:850;white-space:nowrap}
.streak-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:17px 0 12px}
.streak-metrics>div{min-width:0;padding:13px;border-radius:15px;background:rgba(255,255,255,.72);border:1px solid #e4e8ed;display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}
.streak-icon{grid-row:1/3;font-size:1.2rem}.streak-metrics strong{font-size:1.28rem;line-height:1}.streak-metrics small{font-size:.66rem;color:#748297;margin-top:3px}
.weekly-goal-track{height:8px;border-radius:99px;background:#e6e9ed;overflow:hidden}.weekly-goal-track span{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#d7aa52,#ea7e43);transition:width .25s ease}
.next-reward-text{font-weight:750;color:#35465c;margin:12px 0 4px;font-size:.82rem}.reward-rules-mini{font-size:.69rem;color:#78869a;line-height:1.4;margin:0}
.featured-reward-card{border-color:#ead9aa;background:linear-gradient(145deg,#fffaf0,#fff)}
.reward-rules-list{display:grid;gap:8px;margin:14px 0}.reward-rules-list span{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:#f7f8fa;border:1px solid #e5e9ee}.reward-rules-list small{color:#708096;line-height:1.35}
.email-streak-line{padding:10px 12px;border-radius:11px;background:#fff8e8;border:1px solid #efdfaf;color:#536276;font-size:.78rem}
.email-preview-metrics{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.streak-metrics{grid-template-columns:repeat(2,1fr)}.streak-head{flex-direction:column}.today-bonus-pill{white-space:normal}.email-preview-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.streak-metrics,.email-preview-metrics{grid-template-columns:1fr}}
html[data-theme="dark"] .setup-reward-note,html[data-theme="dark"] .streak-rewards-card,html[data-theme="dark"] .featured-reward-card{background:linear-gradient(145deg,#201c13,#0f1b2b);border-color:#594a2c;color:#edf4fb}
html[data-theme="dark"] .streak-metrics>div,html[data-theme="dark"] .reward-rules-list span{background:#0d1c2e;border-color:#2c425a}
html[data-theme="dark"] .next-reward-text{color:#dce8f5}html[data-theme="dark"] .email-streak-line{background:#282313;border-color:#524722;color:#cbd7e5}


/* ===== v11 Sigma Mascot Edition ===== */
.sigma-kicker{font-size:.66rem;font-weight:900;letter-spacing:.13em;color:#9a6f16}
.sigma-setup-intro{display:grid;grid-template-columns:92px 1fr;gap:14px;align-items:center;margin:16px 0;padding:12px 14px;border:1px solid #e3d9bd;border-radius:18px;background:linear-gradient(135deg,#fffaf0,#f7fbff)}
.sigma-setup-intro img{width:92px;height:92px;object-fit:cover;object-position:center 31%;border-radius:16px;background:#fff;border:1px solid #e4e9ef}
.sigma-setup-intro>div{display:flex;flex-direction:column;gap:3px}.sigma-setup-intro strong{font-size:.98rem}.sigma-setup-intro small{font-size:.76rem;color:#68768a;line-height:1.4}
.sigma-welcome-visual{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:12px!important;background:linear-gradient(145deg,#fff,#f4f8fd)!important;border:1px solid #dfe8f1;border-radius:28px;overflow:hidden}
.sigma-welcome-image-wrap{width:100%;aspect-ratio:1/1;display:grid;place-items:center;background:#fff;border-radius:22px;overflow:hidden}
.sigma-welcome-image-wrap img{width:100%;height:100%;object-fit:cover;display:block}
.sigma-welcome-caption{width:100%;padding:2px 8px 7px;display:flex;flex-direction:column;text-align:center;gap:2px}.sigma-welcome-caption span{font-size:.66rem;font-weight:900;letter-spacing:.14em;color:#9a6f16}.sigma-welcome-caption strong{font-size:.95rem}.sigma-welcome-caption small{font-size:.7rem;color:#708096}
.sigma-coach-card{margin:18px 0 20px;padding:16px 18px;border-radius:22px;border:1px solid #dbe5ef;background:linear-gradient(135deg,#fff,#f6faff,#fffaf1);box-shadow:0 9px 28px rgba(16,36,63,.06);display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center;overflow:hidden}
.sigma-coach-image{width:112px;height:112px;border-radius:19px;overflow:hidden;background:#fff;border:1px solid #e1e7ee}.sigma-coach-image img{width:100%;height:100%;object-fit:cover;object-position:center 31%;display:block}
.sigma-coach-copy h3{margin:4px 0 5px;font-size:1.25rem;letter-spacing:-.02em}.sigma-coach-copy>p:last-of-type{margin:0;color:#526579;line-height:1.48}.sigma-coach-meta{display:inline-block;margin-top:8px;padding:6px 9px;border-radius:999px;background:#10243f;color:#fff;font-size:.68rem;font-weight:800}
.streak-rewards-card{position:relative;overflow:hidden}.streak-rewards-card:after{content:"Σ";position:absolute;right:14px;bottom:-18px;font-size:90px;font-weight:900;color:rgba(215,170,82,.10);pointer-events:none}
.email-sigma-header{display:grid;grid-template-columns:72px 1fr;gap:12px;align-items:center;margin:-4px 0 14px;padding:10px;border-radius:14px;background:linear-gradient(135deg,#f7fbff,#fffaf0);border:1px solid #e1e8ef}.email-sigma-header img{width:72px;height:72px;object-fit:cover;object-position:center 31%;border-radius:12px;background:#fff}.email-sigma-header div{display:flex;flex-direction:column;gap:2px}.email-sigma-header strong{font-size:.96rem}.email-sigma-header small{font-size:.72rem;color:#708096;line-height:1.35}
.sigma-email-signoff{margin:15px 0 2px;font-size:.76rem;color:#65758a;font-weight:700}
html[data-theme="dark"] .sigma-setup-intro,html[data-theme="dark"] .sigma-welcome-visual,html[data-theme="dark"] .sigma-coach-card,html[data-theme="dark"] .email-sigma-header{background:linear-gradient(145deg,#10243a,#0d1a2a);border-color:#29415a}
html[data-theme="dark"] .sigma-coach-copy>p:last-of-type,html[data-theme="dark"] .sigma-setup-intro small,html[data-theme="dark"] .sigma-welcome-caption small,html[data-theme="dark"] .email-sigma-header small{color:#a9bad0}
@media(max-width:700px){.sigma-coach-card{grid-template-columns:88px 1fr;padding:13px}.sigma-coach-image{width:88px;height:88px}.sigma-setup-intro{grid-template-columns:72px 1fr}.sigma-setup-intro img{width:72px;height:72px}}
@media(max-width:480px){.sigma-coach-card{grid-template-columns:1fr;text-align:center}.sigma-coach-image{margin:auto}.sigma-coach-meta{white-space:normal}.sigma-setup-intro{grid-template-columns:1fr;text-align:center}.sigma-setup-intro img{margin:auto}}

/* ===== Interactive tests + recorded learner progress v12 ===== */
.interactive-test-status{
  width:min(900px,100%);margin:14px auto 4px;padding:15px 17px;border:1px solid var(--stroke);border-radius:16px;
  background:var(--surface);display:grid;grid-template-columns:auto minmax(150px,1fr);gap:8px 18px;align-items:center
}
.interactive-test-status>div:first-child{display:flex;flex-direction:column;gap:2px}.interactive-kicker{font-size:.66rem;letter-spacing:.12em;font-weight:900;color:#856622}
.answer-progress-track{height:9px;border-radius:999px;background:var(--surface-3);overflow:hidden}.answer-progress-track span{display:block;height:100%;width:0;background:var(--brand-gold);transition:width .2s ease}
.interactive-test-status small{grid-column:1/-1;color:var(--text-soft)}
.test-result-summary{width:min(900px,100%);margin:14px auto;padding:16px 18px;border:1px solid var(--stroke);border-radius:18px;background:linear-gradient(135deg,var(--surface),var(--surface-2));display:grid;grid-template-columns:94px 1fr;gap:16px;align-items:center}
.test-result-summary img{width:94px;height:94px;object-fit:cover;object-position:50% 18%;border-radius:18px}.test-result-copy h3{margin:3px 0 6px;font-size:1.35rem}.test-result-copy p{margin:0 0 8px;color:var(--text-soft)}.test-result-copy small{display:block;margin-top:8px;color:var(--text-soft)}
.result-review-topics{padding:9px 11px;border-radius:10px;background:var(--surface-3);font-size:.82rem;line-height:1.45}
.recent-test-history{margin:18px 0;padding:18px;border:1px solid var(--stroke);border-radius:18px;background:var(--surface)}.recent-test-history h3{margin:3px 0 4px}.recent-test-history p{margin:0;color:var(--text-soft)}
.history-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.history-head>strong{padding:6px 9px;border-radius:999px;background:var(--surface-3);font-size:.72rem}.history-list{display:grid;gap:8px;margin-top:13px}.history-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.history-row>div{min-width:0}.history-row strong{display:block}.history-row small{display:block;color:var(--text-soft);margin-top:2px;line-height:1.35}.history-row>span{font-size:1.05rem;font-weight:900;white-space:nowrap}
.email-test-result{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:12px;background:#eef4fb;margin:12px 0}.email-test-result span{font-size:.78rem;color:#5f6f82;line-height:1.45}
html[data-theme="dark"] .interactive-test-status,html[data-theme="dark"] .test-result-summary,html[data-theme="dark"] .recent-test-history{background:var(--surface);border-color:var(--stroke)}
@media(max-width:760px){.interactive-test-status{grid-template-columns:1fr}.interactive-test-status small{grid-column:auto}.test-result-summary{grid-template-columns:68px 1fr}.test-result-summary img{width:68px;height:68px}.history-row{align-items:flex-start}}
@media(max-width:440px){.test-result-summary{grid-template-columns:1fr}.test-result-summary img{width:82px;height:82px}.history-row{flex-direction:column}.history-row>span{align-self:flex-start}}

/* ===== Back navigation v13 ===== */
@media(max-width:430px){
  .app-back-label{display:none}
  .app-back-btn{width:42px;justify-content:center;padding:0}
  .topbar-title .eyebrow{display:none}
}
html[data-theme="dark"] .dialog-back{border-color:#33485f;background:#17283c;color:#edf4fb}


/* ===== v15 Worksheet QA Edition ===== */
.original-worksheet-card{border:1px solid rgba(215,170,82,.55)!important;background:linear-gradient(145deg,var(--surface),rgba(215,170,82,.08))!important}
.original-badge{display:inline-block;font-size:.64rem;line-height:1;padding:6px 8px;border-radius:999px;background:var(--brand-gold-soft);color:#795710;font-weight:900;letter-spacing:.08em;margin-bottom:7px}
html[data-theme="dark"] .original-badge{background:rgba(215,170,82,.16);color:#f4dca9}
.worksheet-topic-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.worksheet-builder-card{background:var(--surface);border:1px solid var(--stroke);border-radius:24px;padding:22px;box-shadow:0 8px 24px rgba(10,30,50,.06)}
.worksheet-builder-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.worksheet-builder-head h3{margin:2px 0 4px;font-size:1.3rem}
.worksheet-builder-controls{display:grid;grid-template-columns:1fr 1.6fr auto auto;gap:12px;align-items:end}
.worksheet-builder-controls>label{display:flex;flex-direction:column;gap:7px;font-size:.78rem;font-weight:800;color:var(--text-soft)}
.worksheet-builder-controls select{width:100%;min-height:48px;border:1px solid var(--stroke);border-radius:12px;padding:10px 12px;background:var(--surface);color:var(--text)}
.worksheet-builder-controls .question-count-group{margin:0}.worksheet-feature-strip{margin-top:16px}
@media(max-width:980px){.worksheet-builder-controls{grid-template-columns:1fr 1fr}.worksheet-builder-controls .question-count-group,.worksheet-builder-controls>.btn{grid-column:span 1}}
@media(max-width:650px){.worksheet-builder-head{align-items:flex-start}.worksheet-builder-controls{grid-template-columns:1fr}.worksheet-builder-controls .question-count-group,.worksheet-builder-controls>.btn{grid-column:auto}.worksheet-topic-actions{display:grid;grid-template-columns:1fr}.worksheet-topic-actions .btn{width:100%}}
@media print{
  body.print-worksheet-questions #worksheetQuestionPaper,body.print-worksheet-questions #worksheetQuestionPaper *,
  body.print-worksheet-answers #worksheetAnswerPaper,body.print-worksheet-answers #worksheetAnswerPaper *{visibility:visible!important}
  body.print-worksheet-questions #worksheetQuestionPaper,body.print-worksheet-answers #worksheetAnswerPaper{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;padding:18mm;border:0;box-shadow:none;border-radius:0}
}

/* v15 mark-scheme presentation */
.worksheet-question-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px}
.question-marks{font-size:.78rem;font-weight:850;color:var(--text-soft);white-space:nowrap}
.mark-scheme-marks{display:inline-block;margin-left:10px;padding:3px 7px;border-radius:999px;border:1px solid var(--stroke);font-size:.72rem;font-weight:850;color:var(--text-soft)}
.qa-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;background:var(--surface-3);border:1px solid var(--stroke);font-size:.7rem;font-weight:850;color:var(--text-soft)}
@media print{.question-marks,.mark-scheme-marks{color:#111!important;border-color:#bbb!important}}

/* ===== v16 Sigma Maths Tools ===== */
.bt-toolkit-card{font:inherit;text-align:left;cursor:pointer;color:inherit;width:100%}
.bt-tool-chip{cursor:pointer;font:inherit}
.bt-tool-resource{width:100%;text-align:left;cursor:pointer;font:inherit;display:flex;align-items:center;justify-content:space-between;gap:16px}
.bt-tool-resource span:first-child{display:flex;flex-direction:column;gap:3px}.bt-tool-resource small{color:var(--muted);font-size:.76rem;font-weight:600}
.bt-tools-heading{align-items:flex-end}.tool-title-chip{padding:9px 13px;border-radius:999px;background:var(--brand-gold-soft);color:var(--brand-navy);font-size:.78rem;font-weight:900;white-space:nowrap}
.bt-tool-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:10px 0 18px}
.bt-tool-tabs button{border:1px solid var(--stroke);background:var(--surface);color:var(--text);border-radius:16px;padding:13px 8px;display:flex;flex-direction:column;align-items:center;gap:3px;font:inherit;cursor:pointer;min-height:84px}
.bt-tool-tabs button span{font-size:1.2rem;font-weight:900;color:var(--brand-navy-2)}.bt-tool-tabs button strong{font-size:.84rem}.bt-tool-tabs button small{font-size:.66rem;color:var(--muted)}
.bt-tool-tabs button.active{background:linear-gradient(145deg,var(--brand-navy),var(--brand-navy-2));color:#fff;border-color:transparent;box-shadow:0 10px 24px rgba(11,31,54,.18)}
.bt-tool-tabs button.active span,.bt-tool-tabs button.active small{color:#fff}
.bt-tool-panel{display:none;background:var(--surface);border:1px solid var(--stroke);border-radius:22px;padding:22px;box-shadow:var(--shadow-premium)}.bt-tool-panel.active{display:block}
.bt-tool-intro{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.bt-tool-intro h3{font-size:1.45rem;margin:7px 0 5px}.bt-tool-intro p{margin:0;color:var(--muted);max-width:760px;line-height:1.5}
.compact-select{display:flex;flex-direction:column;gap:5px;min-width:130px}.compact-select span,.tool-main-input span,.bt-graph-controls label span,.table-builder-grid label span,.geometry-fields label span{font-size:.72rem;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.compact-select select,.tool-main-input input,.tool-main-input select,.tool-main-input textarea,.bt-graph-controls input,.table-builder-grid input,.geometry-fields input{width:100%;border:1px solid var(--stroke);border-radius:12px;padding:11px 12px;background:var(--surface-2);color:var(--text);font:inherit}
.bt-graph-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:18px}.bt-graph-controls{display:flex;flex-direction:column;gap:10px}.bt-graph-controls label{display:flex;flex-direction:column;gap:5px}.tool-help{font-size:.76rem;color:var(--muted);line-height:1.45;margin:2px 0}.bt-graph-stage{min-width:0}.bt-graph-stage canvas{width:100%;height:500px;display:block;border:1px solid var(--stroke);border-radius:16px;background:#fff;touch-action:none;cursor:grab}.bt-graph-stage canvas.dragging{cursor:grabbing}.bt-graph-status{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.72rem;color:var(--muted);padding:7px 3px 0}.bt-analysis-box{display:grid;gap:5px;padding:12px;border-radius:14px;background:var(--surface-2);border:1px solid var(--stroke);font-size:.76rem}.bt-analysis-box strong{color:var(--text)}.bt-analysis-box span{color:var(--muted);line-height:1.4}
.tool-error{color:#b53b34;font-weight:750;font-size:.8rem;min-height:1.1em}.scientific-shell{max-width:700px;display:grid;gap:14px}.tool-main-input{display:flex;flex-direction:column;gap:6px}.tool-main-input textarea{resize:vertical;min-height:110px}.sci-keypad{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sci-keypad button{border:1px solid var(--stroke);background:var(--surface-2);color:var(--text);border-radius:11px;padding:10px;font-weight:800;cursor:pointer}.tool-big-result{padding:18px;border-radius:16px;background:var(--surface-2);border:1px solid var(--stroke);display:flex;flex-direction:column;gap:5px}.tool-big-result small{font-size:.7rem;color:var(--muted);font-weight:900;letter-spacing:.08em}.tool-big-result strong{font-size:1.9rem;word-break:break-word}.tool-big-result .error-result{font-size:1rem;color:#b53b34}
.solver-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tool-subcard{border:1px solid var(--stroke);border-radius:17px;padding:17px;background:var(--surface-2);display:grid;gap:12px}.tool-subcard h4{margin:0;font-size:1.1rem}.solver-result{min-height:62px;border-radius:13px;background:var(--surface);border:1px solid var(--stroke);padding:13px;display:flex;flex-direction:column;gap:5px}.solver-result strong{font-size:1.1rem}.solver-result small{color:var(--muted)}
.table-builder-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:10px;margin-bottom:12px}.table-builder-grid label,.geometry-fields label{display:flex;flex-direction:column;gap:5px}.bt-table-wrap{margin-top:14px;overflow:auto;max-height:500px;border-radius:15px;border:1px solid var(--stroke)}.bt-value-table{width:100%;border-collapse:collapse;background:var(--surface)}.bt-value-table th,.bt-value-table td{padding:10px 13px;border-bottom:1px solid var(--stroke);text-align:right}.bt-value-table th{position:sticky;top:0;background:var(--surface-2);color:var(--text);font-size:.78rem}.bt-value-table tr:last-child td{border-bottom:0}
.geometry-layout{display:grid;gap:14px;max-width:850px}.geometry-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tool-result-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:4px}.tool-result-row{display:flex;justify-content:space-between;gap:14px;padding:11px 13px;border:1px solid var(--stroke);border-radius:12px;background:var(--surface-2)}.tool-result-row span{color:var(--muted);font-size:.8rem}.tool-result-row strong{font-size:.88rem}.stats-results{margin-top:14px;max-width:850px}
html[data-theme="dark"] .bt-tool-panel,html[data-theme="dark"] .bt-tool-tabs button,html[data-theme="dark"] .tool-subcard,html[data-theme="dark"] .solver-result,html[data-theme="dark"] .tool-big-result,html[data-theme="dark"] .bt-analysis-box,html[data-theme="dark"] .bt-value-table{background:var(--surface);border-color:var(--stroke)}
html[data-theme="dark"] .compact-select select,html[data-theme="dark"] .tool-main-input input,html[data-theme="dark"] .tool-main-input select,html[data-theme="dark"] .tool-main-input textarea,html[data-theme="dark"] .bt-graph-controls input,html[data-theme="dark"] .table-builder-grid input,html[data-theme="dark"] .geometry-fields input,html[data-theme="dark"] .sci-keypad button{background:#0b1726;color:#edf4fb;border-color:#31465e}
html[data-theme="dark"] .bt-value-table th,html[data-theme="dark"] .tool-result-row{background:#132238;border-color:#27394d}
@media(max-width:900px){.bt-tool-tabs{grid-template-columns:repeat(3,1fr)}.bt-graph-layout{grid-template-columns:1fr}.bt-graph-stage canvas{height:430px}.solver-grid{grid-template-columns:1fr}.table-builder-grid{grid-template-columns:1fr 1fr}.table-builder-grid label:first-child{grid-column:1/-1}.geometry-fields{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.bt-tool-panel{padding:15px}.bt-tool-intro{flex-direction:column}.compact-select{width:100%}.bt-tool-tabs{grid-template-columns:repeat(2,1fr);gap:7px}.bt-tool-tabs button{min-height:72px;padding:9px 6px}.bt-graph-stage canvas{height:360px}.sci-keypad{grid-template-columns:repeat(4,1fr)}.geometry-fields,.tool-result-list{grid-template-columns:1fr}.table-builder-grid{grid-template-columns:1fr}.table-builder-grid label:first-child{grid-column:auto}.bt-graph-status{flex-direction:column}.tool-title-chip{display:none}}

/* ===== v18 Interactive Worksheets + Automatic Marking ===== */
.worksheet-interactive-status{margin-top:14px}
.worksheet-workings-label{display:block;margin-top:12px;font-size:.72rem;font-weight:850;color:#41546b;text-transform:uppercase;letter-spacing:.06em}
.worksheet-workings-input{width:100%;min-height:82px;margin-top:6px;padding:11px 13px;border:1.5px solid #c5cfda;border-radius:10px;background:#fbfcfe;color:#111827;font:500 .94rem/1.45 inherit;resize:vertical;outline:none}
.worksheet-workings-input:focus{border-color:#173b63;box-shadow:0 0 0 3px rgba(23,59,99,.12)}
.worksheet-workings-input[readonly]{background:#f7f9fb;color:#334155}
html[data-theme="dark"] .worksheet-workings-input{background:#0b1726;color:#edf4fb;border-color:#31465e}
html[data-theme="dark"] .worksheet-workings-input[readonly]{background:#111f31;color:#dce8f5}
#submitWorksheetBtn:disabled,#toggleWorksheetAnswersBtn:disabled,#printWorksheetAnswersBtn:disabled{opacity:.52;cursor:not-allowed}
@media print{
  .worksheet-workings-label,.worksheet-workings-input{display:none!important}
  body.print-worksheet-questions .student-answer-label,body.print-worksheet-questions .student-answer-input,body.print-worksheet-questions .answer-feedback{display:none!important}
  body.print-worksheet-questions .print-answer-space{display:block!important;height:26mm}
}


/* ===== V19 • Sigma Learning Journey =====
   Original Sigma Maths visual system: playful learning-product ergonomics
   without copying any third-party app's mascot, palette, layouts or trade dress. */
:root{
  --v19-ink:#0b213b;
  --v19-blue:#1f6fd1;
  --v19-cyan:#12a9b4;
  --v19-coral:#ef6d5f;
  --v19-gold:#d8a83f;
  --v19-mint:#e8f8f4;
  --v19-sky:#edf6ff;
  --v19-cream:#fff9ea;
  --v19-radius:26px;
}
body{background:linear-gradient(180deg,#f4f8fc 0,#edf3f8 100%)}
.dashboard-hero{
  overflow:hidden;position:relative;border-radius:32px;
  background:linear-gradient(132deg,#ffffff 0%,#f1f8ff 58%,#eafbf7 100%);
  border:1px solid #d5e5ef;box-shadow:0 16px 42px rgba(11,33,59,.08)
}
.dashboard-hero:after{content:"Σ";position:absolute;right:118px;top:-45px;font-size:190px;font-weight:950;color:rgba(31,111,209,.045);pointer-events:none}
.hero-copy h2{color:var(--v19-ink)}
.btn.primary,.btn.brand-primary{border-radius:15px;box-shadow:0 5px 0 rgba(11,33,59,.18);transform:translateY(-1px)}
.btn.primary:active,.btn.brand-primary:active{box-shadow:0 2px 0 rgba(11,33,59,.18);transform:translateY(2px)}
.progress-orb{filter:drop-shadow(0 10px 20px rgba(31,111,209,.08))}
.orb-progress{stroke:var(--v19-cyan)}

.sigma-coach-card{
  grid-template-columns:132px 1fr;border-radius:28px;border:1px solid #d7e9ee;
  background:linear-gradient(125deg,#fff 0%,#f0fbf8 46%,#fff8e8 100%);
  box-shadow:0 12px 34px rgba(11,33,59,.075);position:relative
}
.sigma-coach-card:after{content:"SIGMA";position:absolute;right:18px;top:14px;font-weight:950;font-size:2.8rem;letter-spacing:.04em;color:rgba(11,33,59,.035);pointer-events:none}
.sigma-coach-image{width:132px;height:132px;border-radius:28px;border:0;box-shadow:0 10px 24px rgba(11,33,59,.12);transform:rotate(-1.5deg)}
.sigma-coach-meta{background:var(--v19-ink);border:1px solid rgba(255,255,255,.14)}

.v19-mission-zone,.v19-readiness-card{margin:20px 0 24px}
.v19-section-intro{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}
.v19-section-intro h3{margin:4px 0 0;font-size:1.28rem;letter-spacing:-.025em}
.v19-mission-pill{border-radius:999px;padding:8px 12px;background:#eaf4ff;color:#185cae;font-size:.72rem;font-weight:900;white-space:nowrap}
.v19-mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.v19-mission-card{
  position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:5px 10px;
  align-items:center;text-align:left;min-height:118px;padding:16px;border-radius:22px;border:1px solid #dce7ef;background:#fff;color:var(--v19-ink);
  box-shadow:0 7px 0 #dce7ef,0 14px 28px rgba(11,33,59,.05);transition:.18s ease
}
.v19-mission-card:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 9px 0 #d5e2ec,0 18px 34px rgba(11,33,59,.075)}
.v19-mission-card:active:not(:disabled){transform:translateY(4px);box-shadow:0 3px 0 #dce7ef}
.v19-mission-card:disabled{opacity:.52;cursor:not-allowed}
.v19-mission-card.primary-mission{background:linear-gradient(145deg,#eef9ff,#fff);border-color:#cce2f4;box-shadow:0 7px 0 #c9dfef,0 14px 28px rgba(11,33,59,.05)}
.mission-number{position:absolute;top:10px;right:13px;font-size:.65rem;font-weight:950;letter-spacing:.12em;color:#a0b0bf}
.mission-icon{grid-row:1/3;width:48px;height:48px;border-radius:16px;background:var(--v19-sky);display:grid;place-items:center;font-weight:950;font-size:1rem;color:var(--v19-blue)}
.v19-mission-card:nth-child(2) .mission-icon{background:#fff2ef;color:var(--v19-coral)}
.v19-mission-card:nth-child(3) .mission-icon{background:var(--v19-cream);color:#9a6b0f}
.mission-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.mission-copy strong{font-size:.94rem}.mission-copy small{color:#6c7c8e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mission-arrow{font-weight:950;font-size:1.15rem;color:#94a5b5}

.v19-readiness-card{padding:22px;border-radius:28px;background:#0d2948;color:#fff;box-shadow:0 14px 36px rgba(11,33,59,.13);overflow:hidden;position:relative}
.v19-readiness-card:after{content:"x²";position:absolute;right:-24px;top:-46px;font-size:180px;font-weight:950;color:rgba(255,255,255,.035);pointer-events:none}
.v19-readiness-main{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;position:relative;z-index:1}
.readiness-ring{--readiness:0deg;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle at center,#0d2948 0 55%,transparent 56%),conic-gradient(var(--v19-cyan) 0 var(--readiness),rgba(255,255,255,.14) var(--readiness) 360deg);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.readiness-ring strong{font-size:1.65rem;line-height:1}.readiness-ring span{font-size:.62rem;text-transform:uppercase;letter-spacing:.09em;color:#b7ccdc;margin-top:5px;font-weight:850}
.readiness-copy h3{margin:5px 0 6px;font-size:1.35rem}.readiness-copy p{margin:0 0 5px;color:#e3edf5}.readiness-copy small{display:block;color:#9fb4c6;line-height:1.4}
.v19-readiness-modules{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:18px;position:relative;z-index:1}
.readiness-module{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.055);color:#fff;border-radius:16px;padding:9px;display:flex;align-items:center;gap:8px;text-align:left;min-width:0}
.readiness-module:hover{background:rgba(255,255,255,.1)}
.readiness-mini-ring{--module-ready:0deg;width:40px;height:40px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#0d2948 0 56%,transparent 58%),conic-gradient(var(--accent) 0 var(--module-ready),rgba(255,255,255,.13) var(--module-ready) 360deg)}
.readiness-mini-ring strong{font-size:.62rem}.readiness-module>span:last-child{min-width:0;display:flex;flex-direction:column}.readiness-module small{font-size:.57rem;color:#9fb5c6}.readiness-module strong{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.readiness-module em{font-size:.5rem;color:#8fd8d1;font-style:normal;font-weight:900;letter-spacing:.05em;margin-top:2px}

.stats-grid{gap:10px}.stat-card{border-radius:20px;border:1px solid #dde7ef;box-shadow:0 6px 0 #e2e9ef;background:#fff}.stat-value{color:var(--v19-ink)}
.streak-rewards-card{border-radius:26px;box-shadow:0 8px 0 #eadfbd,0 16px 30px rgba(11,33,59,.05)}

.module-grid{gap:18px}
.v19-module-card{border-radius:26px;padding:20px;border:1px solid #dbe5ed;box-shadow:0 7px 0 #dfe7ed,0 16px 28px rgba(11,33,59,.055)}
.v19-module-card:hover{transform:translateY(-4px);box-shadow:0 10px 0 #dce5ec,0 20px 34px rgba(11,33,59,.08)}
.v19-module-card:before{display:none}.v19-module-card:after{width:120px;height:120px;right:-34px;bottom:-48px}
.v19-module-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.v19-module-card .module-symbol{width:50px;height:50px;border-radius:17px;margin:0 0 14px}
.module-stage{font-size:.62rem;font-weight:950;letter-spacing:.08em;padding:7px 9px;border-radius:999px;background:#eef3f7;color:#6d7b89}.module-stage.mastered{background:#e6f7f1;color:#08765b}.module-stage.in-progress{background:#eaf3ff;color:#1f63ad}.module-stage.ready{background:#fff6df;color:#8b6515}
.module-mastery-ring{--module-ready:0deg;width:68px;height:68px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle,#fff 0 58%,transparent 60%),conic-gradient(var(--accent) 0 var(--module-ready),#e8edf2 var(--module-ready) 360deg)}
.module-mastery-ring strong{font-size:.88rem;color:var(--v19-ink);line-height:1}.module-mastery-ring small{font-size:.48rem;text-transform:uppercase;color:#81909f;font-weight:850;margin-top:3px}
.v19-progress{height:11px}.v19-progress>span{box-shadow:inset 0 -2px 0 rgba(0,0,0,.08)}

.v19-course-module{border-radius:26px;border:1px solid #d9e4ec;box-shadow:0 8px 0 #e0e7ed;margin-bottom:28px;overflow:hidden}
.v19-course-module .course-module-head{background:linear-gradient(130deg,color-mix(in srgb,var(--accent) 7%,#fff),#fff);padding:20px 22px}
.journey-topic{position:relative;grid-template-columns:54px minmax(220px,1fr) auto auto!important;min-height:86px;padding:12px 18px 12px 10px!important;border-bottom:0!important}
.journey-topic:after{content:"";position:absolute;left:36px;top:62px;bottom:-24px;width:4px;border-radius:99px;background:#e1e7ed;z-index:0}.journey-topic:last-child:after{display:none}
.journey-node{display:grid;place-items:center;position:relative;z-index:1}.journey-node span{width:48px;height:48px;border-radius:17px;background:#f2f5f8;border:2px solid #dce4ea;display:grid;place-items:center;font-size:.78rem;font-weight:950;color:#708092;box-shadow:0 4px 0 #dce4ea}
.journey-topic.complete .journey-node span{background:#e9f8f3;border-color:#9cd9c7;color:#08775a;box-shadow:0 4px 0 #b8e1d5}.journey-topic.learning .journey-node span,.journey-topic.practising .journey-node span{background:#eaf4ff;border-color:#9ec7ee;color:#185fae;box-shadow:0 4px 0 #bdd6ec}.journey-topic.needs-review .journey-node span{background:#fff0ed;border-color:#efb4ad;color:#b54337;box-shadow:0 4px 0 #efc4bf}.journey-topic.current-topic{background:linear-gradient(90deg,#f4faff,#fff)}
.journey-topic-copy{min-width:0}.journey-topic .topic-open{border-radius:13px;padding:9px 14px;box-shadow:0 3px 0 #d8e1e8}.journey-topic .status-badge{font-size:.68rem}

.sigma-celebration{position:fixed;inset:0;z-index:150;display:grid;place-items:center;padding:20px;background:rgba(5,18,34,.62);backdrop-filter:blur(8px)}
.sigma-celebration.hidden{display:none!important}.sigma-celebration-card{width:min(430px,100%);position:relative;text-align:center;padding:26px 26px 24px;border-radius:32px;background:linear-gradient(145deg,#fff,#f1fbf8 62%,#fff7e6);box-shadow:0 30px 90px rgba(0,0,0,.3);overflow:hidden;animation:v19Celebrate .38s cubic-bezier(.2,.8,.2,1)}
.sigma-celebration-card img{width:154px;height:154px;border-radius:31px;object-fit:cover;object-position:center 31%;box-shadow:0 14px 30px rgba(11,33,59,.15);position:relative;z-index:2}.sigma-celebration-card h2{margin:8px 0 7px;font-size:1.75rem;color:var(--v19-ink)}.sigma-celebration-card p:not(.eyebrow){margin:0 auto 18px;max-width:330px;color:#5f7082;line-height:1.5}.celebration-close{position:absolute;right:14px;top:12px;width:36px;height:36px;border:0;border-radius:50%;background:#edf2f5;color:#657688;font-size:1.35rem;z-index:4}.celebration-burst span{position:absolute;font-weight:950;color:var(--v19-gold);animation:v19Float 2.3s ease-in-out infinite}.celebration-burst span:nth-child(1){left:14%;top:18%;font-size:1.4rem}.celebration-burst span:nth-child(2){right:16%;top:21%;color:var(--v19-cyan);animation-delay:.2s}.celebration-burst span:nth-child(3){left:8%;top:48%;color:var(--v19-blue);animation-delay:.45s}.celebration-burst span:nth-child(4){right:8%;top:46%;color:var(--v19-coral);animation-delay:.6s}.celebration-burst span:nth-child(5){right:24%;top:8%;color:#43a77d;animation-delay:.85s}
@keyframes v19Celebrate{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}
@keyframes v19Float{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-8px) rotate(7deg)}}

html[data-theme="dark"] body{background:#081523}
html[data-theme="dark"] .v19-mission-card,html[data-theme="dark"] .v19-module-card,html[data-theme="dark"] .stat-card{background:#0d1c2e;border-color:#29415a;box-shadow:0 6px 0 #172a3e;color:#edf4fb}
html[data-theme="dark"] .mission-copy small{color:#9db0c5}
html[data-theme="dark"] .module-mastery-ring{background:radial-gradient(circle,#0d1c2e 0 58%,transparent 60%),conic-gradient(var(--accent) 0 var(--module-ready),#203249 var(--module-ready) 360deg)}
html[data-theme="dark"] .module-mastery-ring strong{color:#edf4fb}
html[data-theme="dark"] .journey-node span{background:#10243a;border-color:#29415a;box-shadow:0 4px 0 #203449}
html[data-theme="dark"] .journey-topic.current-topic{background:linear-gradient(90deg,#10253b,#0d1c2e)}
html[data-theme="dark"] .sigma-celebration-card{background:linear-gradient(145deg,#10243a,#0d1a2a);color:#edf4fb}html[data-theme="dark"] .sigma-celebration-card h2{color:#edf4fb}html[data-theme="dark"] .sigma-celebration-card p:not(.eyebrow){color:#adc0d3}

@media(max-width:920px){.v19-readiness-modules{grid-template-columns:repeat(4,1fr)}.v19-mission-grid{grid-template-columns:1fr 1fr}.v19-mission-card:last-child{grid-column:1/-1}.quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){
  .sigma-coach-card{grid-template-columns:96px 1fr}.sigma-coach-image{width:96px;height:96px;border-radius:22px}
  .v19-section-intro{align-items:flex-start}.v19-mission-grid{grid-template-columns:1fr}.v19-mission-card:last-child{grid-column:auto}
  .v19-readiness-main{grid-template-columns:1fr;text-align:center}.readiness-ring{margin:auto}.v19-readiness-modules{grid-template-columns:repeat(2,1fr)}
  .journey-topic{grid-template-columns:48px 1fr auto!important;gap:9px!important}.journey-topic .status-badge{grid-column:2;justify-self:start}.journey-topic .topic-open{grid-column:3;grid-row:1/3}.journey-topic:after{left:32px}
}
@media(max-width:480px){.v19-readiness-modules{grid-template-columns:1fr 1fr}.readiness-module{padding:7px}.stats-grid{gap:8px}.stat-card{padding:14px}.v19-module-card{padding:17px}.module-mastery-ring{width:60px;height:60px}.journey-topic{padding-right:10px!important}.journey-topic .status-badge{display:none}.journey-topic{grid-template-columns:46px 1fr auto!important}.journey-topic .topic-open{grid-row:1;grid-column:3}.mission-copy small{white-space:normal}}

/* ===== V20 • Sigma Times Storm ===== */
.times-game-shell{--storm-ink:#0b213b;--storm-cyan:#32b9e8;--storm-gold:#f0bc4f;--storm-coral:#ed6a5e;--storm-mint:#45b991;margin:0 auto;max-width:1120px}
.times-game-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,.6fr);gap:18px;align-items:stretch;margin-bottom:18px}
.times-game-intro{padding:22px;border:1px solid #dce6ee;border-radius:26px;background:linear-gradient(145deg,#f5fbff,#fff 56%,#fff8e9);box-shadow:0 7px 0 #dbe7ef}
.times-game-intro h2{margin:5px 0 7px;font-size:clamp(1.6rem,4vw,2.45rem);letter-spacing:-.035em;color:var(--storm-ink)}
.times-game-intro>p:not(.eyebrow){max-width:700px;color:#5f7082;line-height:1.55}
.times-game-launch-row{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-top:16px}.times-game-launch-row label{display:flex;flex-direction:column;gap:5px;min-width:230px;font-size:.72rem;font-weight:850;color:#627488;text-transform:uppercase;letter-spacing:.05em}.times-game-launch-row select{min-height:46px;border:1px solid #c8d5e1;border-radius:13px;padding:0 12px;background:#fff;color:#132941;font-size:.9rem;font-weight:750}
.times-record-card{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center;padding:18px;border-radius:26px;background:#10243f;color:#fff;overflow:hidden;position:relative}.times-record-card:after{content:"×";position:absolute;right:-12px;bottom:-34px;font-size:10rem;font-weight:950;color:rgba(255,255,255,.045)}.times-record-card img{width:96px;height:96px;border-radius:22px;object-fit:cover;object-position:center 31%;background:#fff}.times-record-card h3{margin:2px 0 9px}.times-record-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.times-record-grid div{display:flex;flex-direction:column;padding:8px;border-radius:12px;background:rgba(255,255,255,.075)}.times-record-grid strong{font-size:1rem}.times-record-grid span{font-size:.62rem;color:#bad0e5;text-transform:uppercase;font-weight:800}
.times-game-hud{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:0 0 10px}.times-hud-item{padding:10px 12px;border-radius:14px;border:1px solid #dce5ed;background:#fff;display:flex;flex-direction:column;gap:2px}.times-hud-item span{font-size:.6rem;font-weight:900;text-transform:uppercase;color:#8391a0;letter-spacing:.06em}.times-hud-item strong{color:#10243f;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.times-hud-item.lives strong{color:#d64f49;letter-spacing:.08em}
.times-tier-strip{display:grid;grid-template-columns:minmax(150px,.3fr) minmax(0,1fr);gap:12px;align-items:center;margin-bottom:10px;padding:10px 13px;border-radius:15px;background:#eef5f9;border:1px solid #dce6ed}.times-tier-copy{display:flex;flex-direction:column}.times-tier-copy strong{font-size:.86rem}.times-tier-copy span{font-size:.67rem;color:#6f8091}.times-range-track{height:10px;background:#dfe8ef;border-radius:99px;overflow:hidden}.times-range-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#2faedb,#46b88e);border-radius:inherit;transition:width .25s ease}.times-range-next{display:block;margin-top:5px;font-size:.66rem;color:#697b8e;font-weight:750}
.times-arena-wrap{position:relative}.times-arena{height:470px;position:relative;overflow:hidden;border-radius:28px;border:2px solid #1d3956;background:radial-gradient(circle at 18% 8%,rgba(70,185,221,.19),transparent 28%),radial-gradient(circle at 83% 18%,rgba(240,188,79,.12),transparent 22%),linear-gradient(180deg,#07182d 0%,#0e2a47 56%,#17344e 100%);box-shadow:inset 0 -75px 100px rgba(0,0,0,.14)}
.times-arena:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.2px);background-size:47px 47px;opacity:.13;pointer-events:none}.times-arena.slow-field{box-shadow:inset 0 0 0 3px rgba(54,191,235,.28),inset 0 -75px 100px rgba(0,0,0,.14)}.times-arena.answer-miss{animation:stormMiss .2s ease}.times-defender{position:absolute;left:10px;bottom:12px;width:88px;z-index:3;filter:drop-shadow(0 10px 15px rgba(0,0,0,.28));pointer-events:none}.times-defender img{display:block;width:88px;height:88px;object-fit:cover;object-position:center 31%;border-radius:22px;border:2px solid rgba(255,255,255,.72)}.times-core{position:absolute;left:0;right:0;bottom:0;height:11px;background:linear-gradient(90deg,#35bce9,#f0bc4f,#45b991);box-shadow:0 -6px 18px rgba(55,191,232,.32);z-index:2}.times-core.core-hit{animation:coreHit .38s ease}.falling-sum{position:absolute;top:0;z-index:4;min-width:104px;padding:11px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.96);color:#10243f;display:flex;justify-content:center;align-items:center;gap:8px;font-size:1.15rem;font-weight:950;box-shadow:0 8px 18px rgba(0,0,0,.24);will-change:transform}.falling-sum b{color:#2b9fc9}.falling-sum.tier-4,.falling-sum.tier-5,.falling-sum.tier-6{border-color:#f2ce73;background:#fffaf0}.falling-sum.sum-cleared{animation:sumClear .18s ease forwards}.falling-sum.sum-impact{animation:sumImpact .18s ease forwards}
.times-slow-banner{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:8;padding:8px 12px;border-radius:999px;background:#e9faff;color:#075b78;font-size:.75rem;font-weight:950;box-shadow:0 6px 18px rgba(0,0,0,.2)}.times-slow-banner.hidden{display:none}.power-toast{position:absolute;z-index:10;left:50%;top:42%;transform:translate(-50%,-50%);max-width:80%;padding:11px 15px;border-radius:14px;background:rgba(8,28,49,.94);border:1px solid rgba(255,255,255,.24);color:#fff;text-align:center;font-size:.78rem;font-weight:900;box-shadow:0 10px 25px rgba(0,0,0,.28);animation:powerToast 1.9s ease forwards}
.times-answer-deck{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:13px;margin-top:10px;border:1px solid #dce6ee;border-radius:18px;background:#fff}.times-answer-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.times-answer-form input{min-height:52px;padding:0 14px;border:2px solid #b7c8d8;border-radius:13px;font-size:1.3rem;font-weight:900;color:#10243f}.times-answer-form input:focus{outline:none;border-color:#2c9fd0;box-shadow:0 0 0 4px rgba(44,159,208,.13)}.times-feedback{align-self:center;padding:8px 10px;border-radius:12px;font-size:.76rem;font-weight:850;color:#637487}.times-feedback.fast{background:#e9f8f2;color:#087357}.times-feedback.good{background:#eef7fb;color:#176487}.times-feedback.bad{background:#fff0ee;color:#a9423b}.times-feedback.warn{background:#fff7e4;color:#8a6510}.times-feedback.shield{background:#edf2ff;color:#405aa9}
.times-power-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0 18px}.times-power-btn{min-height:72px;border:1px solid #cfdae4;border-radius:17px;background:#fff;padding:11px;text-align:left;color:#173049;display:grid;grid-template-columns:42px 1fr auto;gap:9px;align-items:center;box-shadow:0 4px 0 #dce5eb}.times-power-btn:not(:disabled):active{transform:translateY(3px);box-shadow:0 1px 0 #dce5eb}.times-power-btn:disabled{opacity:.48}.times-power-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#eaf7fc;font-size:1.1rem}.times-power-btn:nth-child(2) .times-power-icon{background:#eef1ff}.times-power-btn:nth-child(3) .times-power-icon{background:#fff2eb}.times-power-copy{display:flex;flex-direction:column}.times-power-copy strong{font-size:.82rem}.times-power-copy small{font-size:.65rem;color:#748596}.times-power-count{min-width:30px;height:30px;border-radius:999px;background:#10243f;color:#fff;display:grid;place-items:center;padding:0 7px;font-size:.68rem;font-weight:950}.shield-armed #timesShieldBtn{border-color:#748be2;background:#f5f7ff}
.times-game-status{margin:8px 0 0;padding:9px 12px;border-radius:13px;background:#eef5f9;color:#506579;font-size:.75rem;font-weight:800;line-height:1.4}.times-game-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0}.times-rule{padding:14px;border:1px solid #dde6ed;border-radius:17px;background:#fff}.times-rule strong{display:block;font-size:.83rem;margin-bottom:4px}.times-rule span{font-size:.7rem;color:#708195;line-height:1.4}
.times-analysis{margin:24px 0;padding:20px;border-radius:24px;border:1px solid #d8e4ec;background:linear-gradient(145deg,#f6fbff,#fff)}.times-analysis.hidden{display:none}.times-analysis h3{margin:3px 0 15px}.times-analysis-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.times-analysis-metrics div{padding:10px;border-radius:13px;background:#fff;border:1px solid #e1e8ee;display:flex;flex-direction:column}.times-analysis-metrics strong{font-size:1.08rem}.times-analysis-metrics span{font-size:.61rem;text-transform:uppercase;color:#7b8b9b;font-weight:850}.times-analysis-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.times-analysis-columns>div{padding:14px;border-radius:16px;background:#fff;border:1px solid #e1e8ee}.times-analysis-columns h4{margin:0 0 9px}.analysis-fact{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #edf1f4;font-weight:900}.analysis-fact:last-child{border-bottom:0}.analysis-fact small{font-weight:650;color:#748596;text-align:right}.analysis-fact.weak{color:#a4473f}.analysis-fact.strong{color:#087357}.times-analysis-tip{margin:12px 0 0;padding:11px 13px;border-radius:13px;background:#10243f;color:#dceafb;font-size:.75rem;line-height:1.45}
html[data-theme="dark"] .times-game-intro,html[data-theme="dark"] .times-hud-item,html[data-theme="dark"] .times-answer-deck,html[data-theme="dark"] .times-power-btn,html[data-theme="dark"] .times-rule,html[data-theme="dark"] .times-analysis{background:#0d1c2e;border-color:#29415a;color:#edf4fb;box-shadow:none}html[data-theme="dark"] .times-game-intro h2,html[data-theme="dark"] .times-hud-item strong,html[data-theme="dark"] .times-power-btn{color:#edf4fb}html[data-theme="dark"] .times-game-intro>p:not(.eyebrow),html[data-theme="dark"] .times-power-copy small,html[data-theme="dark"] .times-rule span{color:#a9bad0}html[data-theme="dark"] .times-tier-strip{background:#10243a;border-color:#29415a}html[data-theme="dark"] .times-answer-form input,html[data-theme="dark"] .times-game-launch-row select{background:#091726;color:#edf4fb;border-color:#36516d}html[data-theme="dark"] .times-analysis-metrics div,html[data-theme="dark"] .times-analysis-columns>div{background:#10243a;border-color:#29415a}
.bottom-nav{grid-template-columns:repeat(8,1fr);width:min(940px,calc(100% - 24px))}
@keyframes sumClear{to{opacity:0;filter:brightness(1.5)}}@keyframes sumImpact{to{opacity:0;filter:blur(2px) brightness(.7)}}@keyframes stormMiss{50%{box-shadow:inset 0 0 0 4px rgba(237,106,94,.6),inset 0 -75px 100px rgba(0,0,0,.14)}}@keyframes coreHit{50%{filter:brightness(2.2);transform:scaleY(2.2)}}@keyframes powerToast{0%{opacity:0;transform:translate(-50%,-42%) scale(.9)}12%,72%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-58%) scale(.96)}}
@media(max-width:900px){.times-game-hero{grid-template-columns:1fr}.times-game-hud{grid-template-columns:repeat(3,1fr)}.times-game-rules{grid-template-columns:1fr 1fr}.times-analysis-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){main{padding-bottom:150px}.bottom-nav{grid-template-columns:repeat(4,1fr);width:calc(100% - 10px);padding:4px}.times-arena{height:430px;border-radius:20px}.times-power-grid{grid-template-columns:1fr}.times-power-btn{min-height:62px}.times-answer-deck{grid-template-columns:1fr}.times-answer-form input{font-size:1.1rem}.times-analysis-columns{grid-template-columns:1fr}.times-game-launch-row>*{width:100%}.times-game-launch-row label{min-width:0}.times-record-card{grid-template-columns:74px 1fr}.times-record-card img{width:74px;height:74px}.falling-sum{min-width:90px;padding:9px 11px;font-size:1.02rem}.times-defender,.times-defender img{width:72px;height:72px}}
@media(max-width:430px){.times-game-hud{grid-template-columns:repeat(2,1fr)}.times-game-rules{grid-template-columns:1fr}.times-analysis-metrics{grid-template-columns:repeat(2,1fr)}.times-tier-strip{grid-template-columns:1fr}.times-answer-form{grid-template-columns:minmax(0,1fr) 82px}.times-answer-form .btn{padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){.falling-sum,.power-toast,.times-core,.times-arena{animation:none!important;transition:none!important}}

/* ===== v21 Sigma Times Storm • Retro Tracker Audio ===== */
.times-audio-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px dashed #c9d8e5}
.times-audio-label{font-size:.66rem;letter-spacing:.11em;font-weight:950;color:#6b7890;margin-right:2px}
.times-audio-btn{min-height:40px;border:1px solid #b9c9d8;border-radius:12px;padding:8px 12px;background:#10243f;color:#fff;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer;box-shadow:0 4px 0 #09182a;transition:transform .12s ease,opacity .12s ease,background .12s ease}
.times-audio-btn:active{transform:translateY(2px);box-shadow:0 2px 0 #09182a}
.times-audio-btn.audio-off{background:#eef3f7;color:#526477;box-shadow:0 3px 0 #cbd6df}
.times-audio-controls small{flex-basis:100%;color:#76869a;font-size:.68rem;line-height:1.35}
html[data-theme="dark"] .times-audio-controls{border-color:#35516c}
html[data-theme="dark"] .times-audio-label,html[data-theme="dark"] .times-audio-controls small{color:#9fb1c7}
html[data-theme="dark"] .times-audio-btn.audio-off{background:#172a40;color:#a9bad0;box-shadow:0 3px 0 #07111d;border-color:#36516d}
@media(max-width:650px){.times-audio-controls{display:grid;grid-template-columns:1fr 1fr}.times-audio-label,.times-audio-controls small{grid-column:1/-1}.times-audio-btn{width:100%}}

/* ===== v22 Sigma Home • Arcade Study Theme ===== */
.home-audio-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.home-audio-btn{min-height:42px;border:1px solid #b9c9d8;border-radius:13px;padding:9px 13px;background:#10243f;color:#fff;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer;box-shadow:0 4px 0 #09182a;transition:transform .12s ease,background .12s ease,opacity .12s ease}
.home-audio-btn:active{transform:translateY(2px);box-shadow:0 2px 0 #09182a}
.home-audio-btn.audio-off{background:#eef3f7;color:#526477;box-shadow:0 3px 0 #cbd6df}
.home-audio-controls span{font-size:.7rem;color:#748398;font-weight:750}
html[data-theme="dark"] .home-audio-btn.audio-off{background:#172a40;color:#a9bad0;box-shadow:0 3px 0 #07111d;border-color:#36516d}
html[data-theme="dark"] .home-audio-controls span{color:#a4b5c9}
@media(max-width:520px){.home-audio-controls{align-items:stretch;flex-direction:column}.home-audio-btn{width:100%}.home-audio-controls span{text-align:center}}


/* V23 complete-build regression lock: retain V19 journey aesthetics and expose all nine main areas. */
.bottom-nav{grid-template-columns:repeat(9,1fr);width:min(1040px,calc(100% - 24px))}
@media(max-width:650px){
  main{padding-bottom:158px}
  .bottom-nav{grid-template-columns:repeat(5,1fr);width:calc(100% - 10px);padding:4px}
  .nav-item{min-width:0;padding:6px 1px}
  .nav-item small{font-size:.54rem}
}


/* ===== v24 Game access + audio boost ===== */
.hero-game-btn{background:linear-gradient(135deg,#17375e,#235c8f);color:#fff;border-color:#17375e;box-shadow:0 5px 0 #0b223c}
.home-game-launch{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;margin:18px 0;padding:18px 20px;border-radius:22px;background:linear-gradient(135deg,#10243f,#173d67);color:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 10px 26px rgba(16,36,63,.18)}
.home-game-launch-icon{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(145deg,#47bce7,#46b88e);color:#08233b;font-size:2rem;font-weight:950;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}
.home-game-launch-copy h3{margin:2px 0 5px;font-size:1.35rem}.home-game-launch-copy p{margin:0;color:#c9daeb;font-size:.8rem;line-height:1.4}.home-game-launch .gold-eyebrow{color:#f1ca70}
.audio-volume-control{display:grid;grid-template-columns:auto minmax(110px,190px) 42px;align-items:center;gap:8px;padding:7px 9px;border:1px solid #cad6e1;border-radius:12px;background:#f5f8fb;color:#4d6175;font-size:.68rem;font-weight:850}
.audio-volume-control input[type="range"]{width:100%;accent-color:#17375e;cursor:pointer}.audio-volume-control strong{font-size:.68rem;text-align:right;color:#17375e}.audio-volume-control span{white-space:nowrap}
.times-audio-controls .times-volume-control{flex:1 1 270px}.times-audio-controls .audio-volume-control span{color:#4d6175;font-size:.68rem}.times-audio-controls .audio-volume-control strong{color:#17375e}
html[data-theme="dark"] .audio-volume-control{background:#172a40;border-color:#36516d;color:#b7c7d9}html[data-theme="dark"] .audio-volume-control strong{color:#d9e7f6}
@media(max-width:760px){.home-game-launch{grid-template-columns:52px 1fr}.home-game-launch-icon{width:50px;height:50px}.home-game-launch .btn{grid-column:1/-1;width:100%}.hero-game-btn{width:100%}.audio-volume-control{grid-template-columns:1fr 110px 40px;width:100%}.home-audio-controls{width:100%}.home-audio-controls>span{flex-basis:100%}.times-audio-controls .times-volume-control{grid-column:1/-1}}
@media(max-width:420px){.audio-volume-control{grid-template-columns:1fr 90px 38px}.home-game-launch{padding:15px;gap:12px}.home-game-launch-copy p{font-size:.72rem}}


/* V25 Sigma Storm Arcade progression */
.times-wave-strip{display:grid;grid-template-columns:minmax(190px,.42fr) minmax(180px,1fr) auto;gap:12px;align-items:center;margin:-2px 0 10px;padding:10px 13px;border-radius:15px;background:linear-gradient(90deg,#fff7df,#f2f9ff);border:1px solid #e7d9aa}.times-wave-copy{display:flex;flex-direction:column}.times-wave-copy span{font-size:.61rem;font-weight:950;letter-spacing:.1em;color:#9a6b0b}.times-wave-copy strong{font-size:.82rem;color:#15304b}.times-wave-track{height:11px;background:#e7e1ce;border-radius:999px;overflow:hidden}.times-wave-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#f0bc4f,#ed765f);border-radius:inherit;transition:width .22s ease}.times-wave-strip>small{font-size:.7rem;font-weight:900;color:#6a7480;white-space:nowrap}
.times-overdrive-banner{position:absolute;top:12px;right:14px;z-index:9;padding:8px 12px;border-radius:999px;background:#fff0b8;color:#7c4b00;border:1px solid #ffd56a;font-size:.72rem;font-weight:950;box-shadow:0 7px 18px rgba(0,0,0,.22);animation:overdrivePulse .65s ease-in-out infinite alternate}.times-overdrive-banner.hidden{display:none}.overdrive-active .times-arena{box-shadow:inset 0 0 0 3px rgba(255,201,64,.38),inset 0 -75px 100px rgba(0,0,0,.14)}
.times-boss-panel{position:absolute;top:54px;left:50%;transform:translateX(-50%);z-index:8;width:min(520px,76%);display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:9px 12px;border-radius:15px;background:rgba(70,15,25,.92);border:1px solid rgba(255,210,110,.62);color:#fff;box-shadow:0 10px 26px rgba(0,0,0,.32)}.times-boss-panel.hidden{display:none}.times-boss-panel>span{font-size:.67rem;font-weight:950;letter-spacing:.08em}.times-boss-panel>strong{font-size:.7rem}.times-boss-health{height:10px;border-radius:99px;background:rgba(255,255,255,.18);overflow:hidden}.times-boss-health span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#ffdd72,#ef6a5d);transition:width .22s ease}
.falling-sum.boss-sum{min-width:150px;padding:15px 18px;border:2px solid #f0bc4f;background:linear-gradient(145deg,#401323,#7b2432);color:#fff;font-size:1.38rem;box-shadow:0 0 0 4px rgba(240,188,79,.13),0 14px 30px rgba(0,0,0,.4)}.falling-sum.boss-sum b{color:#ffdc78}.falling-sum.boss-sum em{position:absolute;top:-9px;right:8px;padding:2px 6px;border-radius:999px;background:#f0bc4f;color:#4a2810;font-size:.48rem;font-style:normal;letter-spacing:.08em}.falling-sum.bonus-sum{border:2px solid #ffd85a;background:linear-gradient(145deg,#fff8cf,#fff);box-shadow:0 0 0 5px rgba(255,216,90,.12),0 8px 18px rgba(0,0,0,.24)}.bonus-star{color:#d99700;font-style:normal;font-size:.9rem;animation:bonusSpin 1.1s linear infinite}
.times-upgrade-overlay{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:18px;background:rgba(3,14,27,.76);backdrop-filter:blur(5px)}.times-upgrade-overlay.hidden{display:none}.times-upgrade-card{width:min(760px,94%);padding:20px;border-radius:24px;background:#f8fbff;border:1px solid rgba(255,255,255,.8);box-shadow:0 24px 70px rgba(0,0,0,.42);color:#142c45}.times-upgrade-card h3{margin:4px 0 4px;font-size:1.35rem}.times-upgrade-card>p:not(.eyebrow){margin:0 0 14px;color:#68798a;font-size:.78rem}.times-upgrade-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.times-upgrade-option{min-height:150px;border:1px solid #d5e0e8;border-radius:18px;background:#fff;padding:15px;text-align:left;display:flex;flex-direction:column;gap:7px;cursor:pointer;box-shadow:0 5px 0 #dce4ea;color:#173049}.times-upgrade-option:hover{transform:translateY(-2px);box-shadow:0 7px 0 #dce4ea}.times-upgrade-option:active{transform:translateY(3px);box-shadow:0 2px 0 #dce4ea}.times-upgrade-option>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#edf7ff;font-size:1.3rem}.times-upgrade-option strong{font-size:.86rem}.times-upgrade-option small{color:#718194;line-height:1.35}
@keyframes overdrivePulse{from{transform:scale(1)}to{transform:scale(1.035)}}@keyframes bonusSpin{to{transform:rotate(360deg)}}
html[data-theme="dark"] .times-wave-strip{background:linear-gradient(90deg,#2d2617,#10243a);border-color:#4a4230}html[data-theme="dark"] .times-wave-copy strong{color:#edf4fb}html[data-theme="dark"] .times-upgrade-card{background:#10243a;color:#edf4fb;border-color:#35516c}html[data-theme="dark"] .times-upgrade-option{background:#0d1c2e;border-color:#35516c;color:#edf4fb;box-shadow:0 5px 0 #07111d}html[data-theme="dark"] .times-upgrade-option small{color:#a7b8ca}
@media(max-width:900px){.times-game-hud{grid-template-columns:repeat(4,1fr)}.times-wave-strip{grid-template-columns:1fr 1fr}.times-wave-strip>small{grid-column:2;text-align:right}.times-upgrade-choices{grid-template-columns:1fr}.times-upgrade-option{min-height:0}.times-boss-panel{width:84%}}
@media(max-width:520px){.times-game-hud{grid-template-columns:repeat(2,1fr)}.times-wave-strip{grid-template-columns:1fr}.times-wave-strip>small{grid-column:auto;text-align:left}.times-boss-panel{top:48px;width:90%;grid-template-columns:1fr auto}.times-boss-health{grid-column:1/-1;grid-row:2}.times-overdrive-banner{top:9px;right:9px;font-size:.62rem}.falling-sum.boss-sum{min-width:125px;font-size:1.15rem}.times-upgrade-card{padding:15px}}

/* ===== V26 SIGMA STORM DELUXE ===== */
#timesGameView{--neon-cyan:#4be7ff;--neon-blue:#4f7cff;--neon-violet:#a65cff;--neon-pink:#ff4db8;--neon-gold:#ffd75a;--neon-red:#ff5d73;--arena-deep:#040915;--arena-mid:#09152b}
.times-mode-select{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:15px 0 10px}
.times-mode-card{appearance:none;border:1px solid #cfdce8;background:linear-gradient(180deg,#fff,#f4f8fb);border-radius:16px;padding:12px 10px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:8px;text-align:left;cursor:pointer;color:#18324c;box-shadow:0 4px 0 #d8e2ea;transition:.16s ease}
.times-mode-card>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:#eaf6ff;font-size:1rem}.times-mode-card strong{font-size:.73rem;line-height:1.1}.times-mode-card small{font-size:.58rem;color:#738394;line-height:1.25;margin-top:2px}.times-mode-card:hover{transform:translateY(-2px);box-shadow:0 6px 0 #d8e2ea}.times-mode-card.active{border-color:#5e8ff6;background:linear-gradient(160deg,#edf7ff,#f6efff);box-shadow:0 0 0 2px rgba(78,129,246,.13),0 5px 0 #c7d7f3}.times-mode-card.active>span{background:linear-gradient(135deg,#183a70,#742fb0);color:#fff;box-shadow:0 0 18px rgba(89,115,255,.25)}
.times-mode-brief{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:9px 12px;border-radius:13px;background:#0e2036;color:#dcecff;border:1px solid #25415e;margin-bottom:10px}.times-mode-brief strong{font-size:.62rem;letter-spacing:.08em;color:#ffd75a}.times-mode-brief span{font-size:.68rem;color:#bcd0e5}
.times-audio-controls{border:1px solid #244b6f!important;background:linear-gradient(145deg,#081829,#102943)!important;color:#dff5ff!important}.times-audio-controls small{color:#9fbed6!important}.times-audio-label{color:#ffd75a!important}.times-audio-btn{border-color:#315977!important;background:#102b45!important;color:#e8f7ff!important}.times-audio-btn.boost-on{background:linear-gradient(145deg,#6d3910,#a95f16)!important;border-color:#e4a44a!important;color:#fff6ce!important;box-shadow:0 0 15px rgba(255,172,66,.2)}.times-audio-controls .audio-volume-control{background:#071421!important;border-color:#28445e!important;color:#bad5e8!important}.times-audio-controls .audio-volume-control strong{color:#dff6ff!important}.times-audio-controls input[type="range"]{accent-color:#4be7ff!important}
.times-game-hud{position:relative;z-index:12}.times-hud-item{background:linear-gradient(180deg,#071729,#0d2742)!important;border-color:#244766!important;box-shadow:inset 0 1px rgba(255,255,255,.05),0 5px 12px rgba(8,19,34,.08)}.times-hud-item span{color:#78a5c5!important}.times-hud-item strong{color:#eefbff!important;text-shadow:0 0 12px rgba(75,231,255,.16)}.times-hud-item.lives strong{color:#ff7084!important}.times-hud-item.combo{position:relative;overflow:hidden}.times-overdrive-meter{height:4px;margin-top:5px;border-radius:99px;background:#183753;overflow:hidden}.times-overdrive-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,#5be7ff,#b85cff,#ffd65a);box-shadow:0 0 10px #8c7bff;transition:width .18s ease}
.times-tier-strip,.times-wave-strip{background:linear-gradient(90deg,#071b30,#102943)!important;border-color:#244766!important;color:#dff4ff!important}.times-tier-copy strong,.times-wave-copy strong{color:#eefbff!important}.times-tier-copy span,.times-range-next,.times-wave-strip>small{color:#8eb3cd!important}.times-range-track,.times-wave-track{background:#173751!important}.times-range-track span,.times-wave-track span{box-shadow:0 0 10px rgba(75,231,255,.4)}
.times-arena{height:520px;border:2px solid #26648b;background:radial-gradient(circle at 50% 110%,rgba(81,68,255,.25),transparent 36%),radial-gradient(circle at 12% 14%,rgba(63,220,255,.12),transparent 26%),radial-gradient(circle at 86% 25%,rgba(200,70,255,.10),transparent 24%),linear-gradient(180deg,#020711 0%,#061126 45%,#0a1730 100%);box-shadow:0 0 0 1px rgba(75,231,255,.13),0 18px 50px rgba(3,12,26,.25),inset 0 0 65px rgba(37,113,190,.14);isolation:isolate}
.times-arena:before{background-image:linear-gradient(rgba(65,180,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(65,180,255,.035) 1px,transparent 1px)!important;background-size:36px 36px!important;opacity:.7!important}.times-arena:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(90deg,rgba(0,0,0,.22),transparent 8%,transparent 92%,rgba(0,0,0,.22));box-shadow:inset 0 0 100px rgba(0,0,0,.22)}
.storm-starfield{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}.storm-starfield i{position:absolute;width:2px;height:2px;border-radius:50%;background:#dffbff;box-shadow:0 0 8px #75e8ff;animation:stormStar 4s linear infinite}.storm-starfield i:nth-child(1){left:8%;top:12%;animation-delay:-.4s}.storm-starfield i:nth-child(2){left:19%;top:48%;animation-delay:-2.1s}.storm-starfield i:nth-child(3){left:31%;top:24%;animation-delay:-1.4s}.storm-starfield i:nth-child(4){left:47%;top:9%;animation-delay:-3s}.storm-starfield i:nth-child(5){left:63%;top:42%;animation-delay:-.9s}.storm-starfield i:nth-child(6){left:74%;top:17%;animation-delay:-2.7s}.storm-starfield i:nth-child(7){left:87%;top:36%;animation-delay:-1.8s}.storm-starfield i:nth-child(8){left:94%;top:8%;animation-delay:-3.6s}
.storm-grid-floor{position:absolute;z-index:0;left:-15%;right:-15%;bottom:-18%;height:48%;transform:perspective(300px) rotateX(62deg);transform-origin:bottom;background-image:linear-gradient(rgba(61,159,255,.23) 1px,transparent 1px),linear-gradient(90deg,rgba(61,159,255,.23) 1px,transparent 1px);background-size:34px 28px;mask-image:linear-gradient(to top,#000 0%,rgba(0,0,0,.78) 52%,transparent 100%);opacity:.52;pointer-events:none}
.storm-side-rail{position:absolute;top:0;bottom:0;width:4px;z-index:2;background:linear-gradient(180deg,transparent,#44dfff 28%,#8a54ff 72%,transparent);opacity:.55;box-shadow:0 0 12px #42ddff}.rail-left{left:5px}.rail-right{right:5px}
.times-mission-banner{position:absolute;left:14px;top:13px;z-index:7;display:flex;flex-direction:column;padding:8px 11px;border-left:3px solid #4be7ff;background:linear-gradient(90deg,rgba(4,18,34,.88),rgba(4,18,34,.12));pointer-events:none}.times-mission-banner small{font-size:.48rem;font-weight:950;letter-spacing:.16em;color:#63dfff}.times-mission-banner strong{font-size:.64rem;letter-spacing:.06em;color:#eafaff}
.times-event-banner{position:absolute;z-index:11;top:100px;left:50%;transform:translateX(-50%);padding:9px 16px;border-radius:999px;background:linear-gradient(90deg,#312067,#8a2f8d);border:1px solid #d987ff;color:#fff;font-size:.7rem;font-weight:950;letter-spacing:.06em;box-shadow:0 0 28px rgba(189,70,255,.35);animation:eventPulse .55s ease-in-out infinite alternate}.times-event-banner.hidden{display:none}
.times-defender{left:22px;bottom:20px;width:104px;z-index:8;animation:sigmaHover 2.1s ease-in-out infinite}.times-defender img{width:96px;height:96px;border-radius:26px;border:2px solid rgba(82,226,255,.8);box-shadow:0 0 0 4px rgba(56,185,255,.09),0 0 24px rgba(65,213,255,.22);background:#0a2138}.sigma-thruster{position:absolute;left:40px;bottom:-7px;width:22px;height:34px;border-radius:50%;background:linear-gradient(180deg,#fff7a7,#55e7ff 46%,transparent);filter:blur(1px);opacity:.75;animation:thruster .25s ease-in-out infinite alternate;z-index:-1}.sigma-nameplate{position:absolute;left:8px;bottom:-13px;padding:3px 8px;border-radius:999px;background:#061321;border:1px solid #316a8c;color:#7eeaff;font-size:.48rem;font-weight:950;letter-spacing:.12em;box-shadow:0 0 12px rgba(54,203,255,.2)}.times-defender.sigma-fire{animation:sigmaFire .18s ease}.times-defender.sigma-hit{animation:sigmaHit .38s ease}.times-defender.sigma-win{animation:sigmaWin .55s ease}.shield-armed .times-defender img{box-shadow:0 0 0 7px rgba(95,182,255,.13),0 0 30px #4b8dff;border-color:#8ec5ff}.overdrive-active .times-defender img{filter:saturate(1.2) brightness(1.18);box-shadow:0 0 0 6px rgba(255,210,80,.15),0 0 34px #ffd65a;border-color:#ffe382}
.times-core{height:18px;left:13%;right:3%;bottom:9px;border-radius:999px;background:linear-gradient(90deg,#45eaff,#5b78ff 45%,#bd53ff 72%,#ffd65a);box-shadow:0 0 8px #5ddaff,0 0 30px rgba(77,114,255,.6);z-index:5}.times-core:before{content:"MATHS CORE";position:absolute;right:14px;top:-17px;font-size:.45rem;font-weight:950;letter-spacing:.14em;color:#78dfff;text-shadow:0 0 8px #4bbfff}.times-core.core-hit{animation:coreHitV26 .4s ease}
.falling-sum{--enemy:#4be7ff;--enemy2:#4f7cff;min-width:98px;min-height:62px;padding:17px 18px;border-radius:50% 50% 44% 44%;border:1px solid color-mix(in srgb,var(--enemy) 72%,white);background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.95),rgba(255,255,255,.72) 28%,color-mix(in srgb,var(--enemy) 28%,#081424) 72%);color:#06152a;box-shadow:0 0 0 3px color-mix(in srgb,var(--enemy) 12%,transparent),0 0 22px color-mix(in srgb,var(--enemy) 42%,transparent),0 10px 22px rgba(0,0,0,.35);font-size:1.08rem;gap:6px;z-index:6;overflow:visible}.falling-sum:before,.falling-sum:after{content:"";position:absolute;pointer-events:none}.falling-sum:before{width:76%;height:15px;left:12%;top:-7px;border:2px solid var(--enemy);border-bottom:0;border-radius:50% 50% 0 0;box-shadow:0 0 10px var(--enemy)}.falling-sum:after{width:9px;height:9px;border-radius:50%;right:13px;top:9px;background:var(--enemy);box-shadow:0 0 9px var(--enemy)}.falling-sum b{color:#143f78;text-shadow:0 0 5px rgba(255,255,255,.7)}
.falling-sum.enemy-drone{--enemy:#55e5ff;--enemy2:#4f7cff;border-radius:16px 16px 34px 34px}.falling-sum.enemy-danger{--enemy:#ff5d73;--enemy2:#ff7d4f;background:radial-gradient(circle at 50% 35%,#fff0e8,#ffb1ad 30%,#731d36 80%);color:#3b0b17;animation:dangerThrob .48s ease-in-out infinite alternate}.falling-sum.enemy-heavy{--enemy:#b567ff;--enemy2:#6a4dff;min-width:118px;min-height:70px;border-radius:20px;clip-path:polygon(14% 0,86% 0,100% 28%,90% 100%,10% 100%,0 28%);background:linear-gradient(145deg,#f0dbff,#9f6ae3 35%,#30145a 100%);color:#1a0734}.falling-sum.bonus-sum{--enemy:#ffd75a;background:radial-gradient(circle,#fffce7,#ffe783 38%,#98620e 100%);color:#4f3200;border-color:#ffe992;box-shadow:0 0 0 4px rgba(255,215,90,.13),0 0 28px rgba(255,215,90,.65),0 10px 22px rgba(0,0,0,.3);animation:goldFloat .65s ease-in-out infinite alternate}.falling-sum.boss-sum{--enemy:#ff4db8;min-width:178px;min-height:104px;border-radius:26px;clip-path:polygon(50% 0,92% 20%,100% 64%,72% 100%,28% 100%,0 64%,8% 20%);background:radial-gradient(circle at 50% 38%,#ffe6f7 0,#e057bc 25%,#5a135d 58%,#160b35 100%);border:2px solid #ff9be2;color:#fff;text-shadow:0 0 8px #ff7ad1;box-shadow:0 0 0 5px rgba(255,79,188,.12),0 0 38px rgba(255,64,194,.55),0 16px 35px rgba(0,0,0,.55);animation:bossHover .8s ease-in-out infinite alternate}.falling-sum.boss-sum:before{width:68%;height:28px;left:16%;top:-12px;border-color:#ff8dd9;box-shadow:0 0 20px #ff53c2}.falling-sum.boss-sum:after{width:14px;height:14px;right:18px;top:17px;background:#ffd85a;box-shadow:0 0 14px #ffd85a}.falling-sum.boss-sum b{color:#ffe18a}.falling-sum.boss-sum em{top:-14px;right:12px;background:#ffcf57;color:#3f163e;box-shadow:0 0 10px #ffcf57}.bonus-star{filter:drop-shadow(0 0 7px #ffdd57)}
.storm-beam{position:absolute;z-index:9;width:4px;transform-origin:bottom center;border-radius:999px;background:linear-gradient(to top,#fff,#55eaff 35%,#8c65ff);box-shadow:0 0 6px #fff,0 0 16px #55eaff;pointer-events:none;animation:beamFire .18s ease-out forwards}.storm-explosion{position:absolute;z-index:10;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff,0 0 24px var(--boom,#57e9ff),0 0 48px var(--boom,#57e9ff);pointer-events:none;animation:stormExplode .32s ease-out forwards}.storm-score-pop{position:absolute;z-index:11;color:#fff;font-size:.72rem;font-weight:950;text-shadow:0 0 10px #4be7ff;pointer-events:none;animation:scorePop .65s ease-out forwards}.storm-impact-wave{position:absolute;z-index:10;width:30px;height:30px;border-radius:50%;border:3px solid #ff6076;box-shadow:0 0 20px #ff6076;pointer-events:none;animation:impactWave .45s ease-out forwards}
.times-boss-panel{top:53px;background:linear-gradient(90deg,rgba(43,8,62,.95),rgba(93,18,70,.95));border-color:#ff8bd9;box-shadow:0 0 24px rgba(255,77,184,.28),0 12px 28px rgba(0,0,0,.36)}.times-boss-health{height:12px;background:#241337;border:1px solid #6a3c7a}.times-boss-health span{background:linear-gradient(90deg,#ff596e,#ff53c3,#ffd75a);box-shadow:0 0 10px #ff53c3}
.times-overdrive-banner{background:linear-gradient(90deg,#ffdb63,#ff7c50);color:#3f2600;border-color:#fff0a3;box-shadow:0 0 22px rgba(255,198,71,.46)}.overdrive-active .times-arena{box-shadow:0 0 0 2px rgba(255,211,74,.25),0 0 42px rgba(255,190,51,.25),inset 0 0 90px rgba(255,171,46,.08)}
.times-answer-deck{background:linear-gradient(180deg,#081a2d,#0d2944);border-color:#254a68}.times-answer-form input{background:#04101c;border-color:#2b5a7a;color:#eafaff;box-shadow:inset 0 0 22px rgba(34,121,174,.09)}.times-answer-form input::placeholder{color:#6f91aa}.times-feedback{color:#c6ddec}.times-feedback.good,.times-feedback.fast{background:#0a3d42;color:#92fff0}.times-feedback.bad{background:#47172a;color:#ffabb7}.times-feedback.warn{background:#49390f;color:#ffe392}.times-feedback.shield{background:#18325f;color:#add2ff}
.times-power-btn{background:linear-gradient(180deg,#07192b,#0c2a45)!important;border-color:#27516f!important;color:#e9f8ff!important}.times-power-copy small{color:#8fb0c9!important}.times-power-count{background:#143c5a!important;color:#fff!important}.times-game-status{background:#071827!important;border-color:#244763!important;color:#b9d7eb!important}
.times-upgrade-overlay{background:rgba(1,6,15,.78);backdrop-filter:blur(4px)}.times-upgrade-card{background:linear-gradient(145deg,#071829,#0c2742)!important;border-color:#3d6d91!important;color:#eaf9ff!important;box-shadow:0 0 40px rgba(58,159,255,.22),0 24px 70px rgba(0,0,0,.5)!important}.times-upgrade-card>p:not(.eyebrow){color:#97b6cc!important}.times-upgrade-option{background:linear-gradient(180deg,#0a2138,#0e2e4c)!important;border-color:#315b7b!important;color:#eefbff!important;box-shadow:0 5px 0 #04111e!important}.times-upgrade-option>span{background:#132d4b!important;color:#7eeaff}.times-upgrade-option small{color:#9ebbd0!important}
.times-game-rules .times-rule{background:linear-gradient(180deg,#f9fcff,#eef6fb)}
#timesGameView.overdrive-active .storm-grid-floor{opacity:.8;filter:hue-rotate(35deg) saturate(1.6)}
#timesGameView.event-lightning .times-arena{animation:lightningArena .6s ease-in-out infinite alternate}#timesGameView.event-gold .times-arena{box-shadow:0 0 0 2px rgba(255,216,90,.25),0 0 40px rgba(255,198,50,.20),inset 0 0 75px rgba(255,213,90,.08)}#timesGameView.event-precision .times-arena{box-shadow:0 0 0 2px rgba(97,255,207,.25),0 0 40px rgba(55,255,195,.18),inset 0 0 75px rgba(71,255,206,.06)}
@keyframes stormStar{0%{transform:translateY(-12px);opacity:.25}50%{opacity:1}100%{transform:translateY(120px);opacity:.12}}@keyframes sigmaHover{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes thruster{from{transform:scaleY(.75);opacity:.45}to{transform:scaleY(1.18);opacity:.92}}@keyframes sigmaFire{0%{transform:translateX(0) scale(1)}40%{transform:translateX(4px) scale(1.04)}100%{transform:translateX(0) scale(1)}}@keyframes sigmaHit{0%,100%{transform:translateX(0)}20%{transform:translateX(-7px) rotate(-3deg)}45%{transform:translateX(6px) rotate(3deg)}70%{transform:translateX(-3px)}}@keyframes sigmaWin{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-13px) rotate(-3deg)}70%{transform:translateY(-8px) rotate(4deg)}}@keyframes dangerThrob{from{filter:brightness(.92)}to{filter:brightness(1.24);box-shadow:0 0 28px rgba(255,75,104,.75)}}@keyframes goldFloat{from{filter:brightness(.96);transform:translate(-50%,0) scale(.98)}to{filter:brightness(1.15);transform:translate(-50%,0) scale(1.03)}}@keyframes bossHover{from{filter:brightness(.96)}to{filter:brightness(1.13);box-shadow:0 0 0 5px rgba(255,79,188,.14),0 0 52px rgba(255,64,194,.72),0 16px 35px rgba(0,0,0,.55)}}@keyframes beamFire{0%{opacity:1;transform:rotate(var(--beam-angle)) scaleY(.15)}100%{opacity:0;transform:rotate(var(--beam-angle)) scaleY(1)}}@keyframes stormExplode{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}100%{transform:translate(-50%,-50%) scale(4.8);opacity:0}}@keyframes scorePop{0%{transform:translate(-50%,0) scale(.8);opacity:0}20%{opacity:1}100%{transform:translate(-50%,-38px) scale(1.15);opacity:0}}@keyframes impactWave{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}100%{transform:translate(-50%,-50%) scale(5);opacity:0}}@keyframes coreHitV26{0%{filter:none}35%{filter:brightness(2);box-shadow:0 0 30px #fff,0 0 60px #ff516d}100%{filter:none}}@keyframes eventPulse{from{filter:brightness(.95);transform:translateX(-50%) scale(.98)}to{filter:brightness(1.2);transform:translateX(-50%) scale(1.03)}}@keyframes lightningArena{from{filter:none}to{filter:brightness(1.08) saturate(1.15)}}
@media(max-width:900px){.times-mode-select{grid-template-columns:repeat(2,1fr)}.times-arena{height:500px}.times-defender{width:92px}.times-defender img{width:84px;height:84px}.times-core{left:18%}}
@media(max-width:540px){.times-mode-select{grid-template-columns:1fr 1fr;gap:7px}.times-mode-card{padding:9px 8px;grid-template-columns:28px 1fr}.times-mode-card>span{width:28px;height:28px}.times-mode-card small{font-size:.53rem}.times-mode-brief{font-size:.62rem}.times-arena{height:480px;border-radius:20px}.times-defender{left:10px;bottom:17px}.sigma-nameplate{display:none}.times-core{left:22%;right:2%}.times-mission-banner{left:9px;top:8px}.times-event-banner{top:92px;max-width:88%;white-space:nowrap}.falling-sum{min-width:86px;min-height:56px;font-size:1rem}.falling-sum.enemy-heavy{min-width:104px}.falling-sum.boss-sum{min-width:145px;min-height:88px}.times-audio-controls .times-volume-control{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.storm-starfield i,.times-defender,.sigma-thruster,.falling-sum.enemy-danger,.falling-sum.bonus-sum,.falling-sum.boss-sum{animation:none!important}}
.storm-arena-title{position:absolute;z-index:14;left:50%;top:42%;transform:translate(-50%,-50%) scale(.72);opacity:0;min-width:min(420px,78%);padding:18px 24px;text-align:center;border-radius:20px;background:linear-gradient(145deg,rgba(4,17,33,.94),rgba(16,46,75,.92));border:1px solid #4bcfff;box-shadow:0 0 35px rgba(75,207,255,.28),0 18px 45px rgba(0,0,0,.48);pointer-events:none;transition:.28s ease}.storm-arena-title.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.storm-arena-title small{display:block;font-size:.58rem;font-weight:950;letter-spacing:.2em;color:#6fe7ff}.storm-arena-title strong{display:block;margin:5px 0;font-size:1.45rem;letter-spacing:.04em;color:#fff;text-shadow:0 0 18px rgba(75,231,255,.38)}.storm-arena-title span{display:block;font-size:.68rem;font-weight:850;color:#a9cbe1}.storm-arena-title.boss{border-color:#ff73ca;background:linear-gradient(145deg,rgba(45,6,56,.96),rgba(104,18,80,.93));box-shadow:0 0 42px rgba(255,76,190,.38),0 18px 45px rgba(0,0,0,.52)}.storm-arena-title.boss small{color:#ffd75a}.storm-arena-title.boss strong{color:#fff1fa;text-shadow:0 0 20px #ff4db8}.storm-arena-title.lightning{border-color:#8d72ff}.storm-arena-title.gold{border-color:#ffd75a}.storm-arena-title.precision{border-color:#62ffd3}.storm-arena-title.shield{border-color:#73a6ff}
.falling-sum.bonus-sum{animation:goldPulse .65s ease-in-out infinite alternate}@keyframes goldPulse{from{filter:brightness(.96)}to{filter:brightness(1.18);box-shadow:0 0 0 4px rgba(255,215,90,.16),0 0 38px rgba(255,215,90,.78),0 10px 22px rgba(0,0,0,.3)}}

/* ===== V27 SIGMA TUTOR ===== */
.sigma-study-path{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:14px 0 18px}
.sigma-study-path .study-step{min-width:0;padding:8px 6px;border-radius:14px}
.sigma-study-path .study-step strong{font-size:.78rem}
.sigma-tutor-hero{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;padding:18px;margin:6px 0 16px;border:1px solid rgba(34,211,238,.28);border-radius:22px;background:linear-gradient(135deg,rgba(15,23,42,.97),rgba(30,41,59,.95));box-shadow:0 16px 40px rgba(2,8,23,.22);color:#f8fafc;overflow:hidden;position:relative}
.sigma-tutor-hero:after{content:"Σ";position:absolute;right:-4px;bottom:-34px;font-size:8rem;font-weight:900;color:rgba(34,211,238,.06);pointer-events:none}
.sigma-tutor-hero img{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(34,211,238,.18))}
.sigma-tutor-hero h3{margin:7px 0 5px;font-size:1.25rem}.sigma-tutor-hero p{margin:0;line-height:1.58;color:#e2e8f0;font-size:1rem}
.sigma-section-number{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:8px;border-radius:10px;background:linear-gradient(135deg,#06b6d4,#3b82f6);color:white;font-weight:900;box-shadow:0 6px 18px rgba(6,182,212,.25)}
.sigma-method-card,.sigma-worked-card,.sigma-guided-card,.sigma-explore-card,.sigma-practice-card{border-radius:20px!important;padding:18px!important}
.sigma-method-list{list-style:none;padding:0;margin:14px 0;display:grid;gap:10px}
.sigma-method-list li{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;padding:11px 12px;background:var(--surface-2,#f8fafc);border:1px solid var(--border,#e2e8f0);border-radius:14px}
.sigma-method-list li>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#111827;color:#fff;font-weight:900}.sigma-method-list li p{margin:4px 0 0;line-height:1.45}
.sigma-why-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.sigma-why-row>div{padding:12px;border-radius:14px;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.18)}.sigma-why-row p{margin:5px 0 0;line-height:1.45}.sigma-why-row .sigma-watchout{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.22)}
.sigma-worked-steps{display:grid;gap:9px;margin:13px 0}.sigma-worked-step{display:none;grid-template-columns:60px 1fr;gap:10px;align-items:center;padding:12px 13px;border-radius:14px;background:linear-gradient(90deg,rgba(59,130,246,.08),transparent);border-left:4px solid #3b82f6;opacity:0;transform:translateY(6px)}.sigma-worked-step.visible{display:grid;animation:sigmaStepIn .28s ease forwards}.sigma-worked-step span{font-size:.68rem;letter-spacing:.08em;font-weight:900;color:#2563eb}.sigma-worked-step p{margin:0;font-size:1rem;line-height:1.45;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
@keyframes sigmaStepIn{to{opacity:1;transform:none}}
.sigma-try-prompt{line-height:1.55;font-size:1rem}.sigma-answer-row{display:grid;grid-template-columns:1fr auto;gap:8px}.sigma-answer-row input{min-height:48px;border:2px solid var(--border,#cbd5e1);border-radius:14px;padding:0 13px;font-size:1.05rem;background:var(--surface,#fff);color:var(--text,#111827)}
.sigma-hint-actions{display:flex;gap:7px;flex-wrap:wrap;margin:11px 0}.sigma-hint-actions .btn{font-size:.8rem;padding:8px 10px}.sigma-hint-text{padding:11px 12px;border-radius:13px;background:rgba(99,102,241,.07);line-height:1.45}.sigma-answer-feedback{min-height:20px;margin-top:10px;padding:0;line-height:1.45}.sigma-answer-feedback.correct,.sigma-answer-feedback.wrong,.sigma-answer-feedback.neutral{padding:11px 12px;border-radius:13px}.sigma-answer-feedback.correct{background:rgba(34,197,94,.11);color:#15803d}.sigma-answer-feedback.wrong{background:rgba(245,158,11,.11);color:#a16207}.sigma-answer-feedback.neutral{background:rgba(100,116,139,.09)}
.sigma-mini-lab{margin:12px 0;padding:15px;border-radius:18px;background:radial-gradient(circle at top right,rgba(34,211,238,.14),transparent 42%),#0f172a;color:#e2e8f0;border:1px solid rgba(34,211,238,.24);overflow:hidden}.lab-title{font-weight:900;color:#67e8f9;margin-bottom:10px;letter-spacing:.02em}.sigma-mini-lab label{display:block;margin:8px 0;color:#cbd5e1}.sigma-mini-lab input[type=range]{width:100%;accent-color:#22d3ee}.sigma-mini-lab input.lab-data{width:100%;min-height:44px;border-radius:12px;border:1px solid #475569;background:#111827;color:#fff;padding:8px 10px}.sigma-lab-output{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.07);font-weight:700;color:#f8fafc}.sigma-lab-canvas{display:block;width:100%;height:auto;max-height:230px;border-radius:12px;background:#020617;border:1px solid #334155}.lab-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fraction-bars{display:grid;gap:9px;margin:8px 0}.fbar{height:34px;border:2px solid #64748b;border-radius:8px;overflow:hidden}.fbar span{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#3b82f6)}.fbar.thirds span{background:linear-gradient(90deg,#a78bfa,#ec4899)}.percent-grid{height:32px;border:1px solid #64748b;border-radius:8px;overflow:hidden;background:repeating-linear-gradient(90deg,transparent 0 9%,rgba(255,255,255,.08) 9% 10%)}.percent-grid span{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#3b82f6);transition:width .15s ease}.balance-eqn{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;text-align:center;font:800 1.35rem ui-monospace,monospace;margin:12px 0;padding:16px;border-radius:14px;background:rgba(255,255,255,.06)}.coin-face{display:grid;place-items:center;width:86px;height:86px;margin:10px auto;border-radius:50%;background:linear-gradient(135deg,#facc15,#f59e0b);color:#422006;font-size:1.4rem;font-weight:900;box-shadow:0 10px 30px rgba(245,158,11,.22)}.lab-rectangle{margin:12px auto;max-width:90%;background:linear-gradient(135deg,rgba(34,211,238,.35),rgba(59,130,246,.25));border:3px solid #22d3ee;border-radius:6px;transition:.15s}.numberline-track{position:relative;height:6px;background:#64748b;margin:30px 12px;border-radius:99px}.numberline-zero{position:absolute;left:50%;top:-25px;font-size:.75rem}.numberline-dot{position:absolute;top:50%;width:20px;height:20px;border-radius:50%;background:#22d3ee;box-shadow:0 0 18px #22d3ee;transform:translate(-50%,-50%);transition:left .12s}.sigma-tool-divider{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:var(--muted,#64748b);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.sigma-tool-divider:before,.sigma-tool-divider:after{content:"";height:1px;background:var(--border,#e2e8f0);flex:1}
@media(max-width:640px){.sigma-study-path{grid-template-columns:repeat(5,1fr);gap:4px}.sigma-study-path .study-step{padding:6px 2px}.sigma-study-path .step-num{width:22px;height:22px;font-size:.7rem}.sigma-study-path .study-step strong{font-size:.62rem}.sigma-tutor-hero{grid-template-columns:68px 1fr;padding:14px;gap:11px}.sigma-tutor-hero img{width:66px;height:66px}.sigma-tutor-hero h3{font-size:1.08rem}.sigma-why-row{grid-template-columns:1fr}.lab-controls{grid-template-columns:1fr}.sigma-answer-row{grid-template-columns:1fr}.sigma-answer-row .btn{width:100%}}

/* ===== V28 SIGMA ADAPTIVE TUTOR ===== */
.sigma-study-path{grid-template-columns:repeat(6,minmax(0,1fr))}
.sigma-adaptive-strip{margin:4px 0 16px;padding:14px;border-radius:18px;border:1px solid rgba(59,130,246,.22);background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(30,41,59,.94));color:#e2e8f0;display:grid;grid-template-columns:auto minmax(170px,1fr);gap:12px 18px;align-items:center;box-shadow:0 12px 30px rgba(2,8,23,.16)}
.sigma-adaptive-strip.mode-guided{border-color:rgba(56,189,248,.42)}.sigma-adaptive-strip.mode-building{border-color:rgba(167,139,250,.42)}.sigma-adaptive-strip.mode-independent{border-color:rgba(34,197,94,.42)}.sigma-adaptive-strip.mode-challenge{border-color:rgba(250,204,21,.55);box-shadow:0 12px 32px rgba(250,204,21,.09)}
.sigma-adaptive-mode{display:flex;align-items:center;gap:10px}.sigma-mode-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.08);font-size:1.25rem}.sigma-adaptive-mode small{display:block;color:#94a3b8;font-size:.62rem;font-weight:900;letter-spacing:.12em}.sigma-adaptive-mode strong{display:block;margin-top:2px;font-size:1.06rem;color:#f8fafc}
.sigma-mastery-wrap>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;font-weight:800}.sigma-mastery-track{height:9px;margin-top:6px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden}.sigma-mastery-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#3b82f6,#8b5cf6);transition:width .28s ease}
.sigma-adaptive-strip>p{grid-column:1/-1;margin:0;font-size:.82rem;line-height:1.45;color:#cbd5e1}.sigma-badge-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.sigma-badge-row span{padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.07);font-size:.68rem;font-weight:850;color:#f8fafc}
.sigma-confidence-check{margin-top:14px;padding:12px;border-radius:15px;background:rgba(99,102,241,.06);border:1px solid rgba(99,102,241,.14)}.sigma-confidence-check>strong{display:block;margin-bottom:8px}.sigma-confidence-check>div{display:flex;gap:7px;flex-wrap:wrap}.sigma-confidence-check button{border:1px solid var(--border,#cbd5e1);background:var(--surface,#fff);color:var(--text,#111827);border-radius:12px;padding:8px 10px;font-weight:800;cursor:pointer}.sigma-confidence-check button.active{background:#111827;color:#fff;border-color:#111827}.sigma-confidence-check p{margin:8px 0 0;font-size:.78rem;color:var(--muted,#64748b);line-height:1.4}
.sigma-rescue-panel{margin-top:12px;padding:14px;border-radius:16px;border:1px solid rgba(245,158,11,.32);background:linear-gradient(135deg,rgba(245,158,11,.09),rgba(249,115,22,.05))}.sigma-rescue-panel>span{font-size:.65rem;font-weight:950;letter-spacing:.12em;color:#b45309}.sigma-rescue-panel h4{margin:5px 0 4px}.sigma-rescue-panel p{margin:0 0 9px;line-height:1.45}.sigma-rescue-panel.hidden{display:none}
.sigma-sprint-card{border-radius:20px!important;padding:18px!important;background:linear-gradient(180deg,rgba(15,23,42,.025),transparent)}.sigma-sprint-score{display:grid;place-items:center;min-width:52px;padding:7px 10px;border-radius:12px;background:#111827;color:white;font-weight:950}.sigma-energy{margin:12px 0 14px;padding:10px 12px;border-radius:14px;background:rgba(34,211,238,.07);border:1px solid rgba(34,211,238,.16)}.sigma-energy>div:first-child{display:flex;justify-content:space-between;font-size:.72rem}.sigma-energy-track{height:8px;margin-top:7px;border-radius:999px;background:rgba(15,23,42,.1);overflow:hidden}.sigma-energy-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22d3ee,#3b82f6,#a78bfa);transition:width .25s ease}
.sigma-sprint-list{display:grid;gap:10px}.sigma-sprint-q{padding:12px;border:1px solid var(--border,#e2e8f0);border-radius:15px;background:var(--surface,#fff);transition:.2s ease}.sigma-sprint-q.correct{border-color:rgba(34,197,94,.45);box-shadow:0 0 0 3px rgba(34,197,94,.06)}.sigma-sprint-q.review{border-color:rgba(245,158,11,.42)}.sigma-sprint-qhead{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;margin-bottom:9px}.sigma-sprint-qhead>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#111827;color:#fff;font-weight:900;font-size:.75rem}.sigma-sprint-qhead strong{font-size:.98rem;line-height:1.35}.sigma-sprint-feedback{min-height:18px;margin-top:7px;font-size:.82rem;line-height:1.4}.sigma-sprint-feedback.correct{color:#15803d}.sigma-sprint-feedback.wrong{color:#a16207}.sigma-sprint-feedback.neutral{color:#64748b}
@media(max-width:720px){.sigma-adaptive-strip{grid-template-columns:1fr}.sigma-adaptive-strip>p,.sigma-badge-row{grid-column:1}.sigma-study-path{grid-template-columns:repeat(3,1fr)}.sigma-study-path .study-step{min-height:54px}.sigma-confidence-check>div{display:grid;grid-template-columns:1fr}.sigma-confidence-check button{width:100%}}

/* V29 Maths Keys */
.maths-keys{margin:9px 0 12px;padding:10px 10px 12px;border:1px solid color-mix(in srgb,var(--brand,#247aa5) 18%,#d5dfeb);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface,#fff) 95%,#53c8ff 5%),color-mix(in srgb,var(--surface,#fff) 98%,#d9eefc 2%));display:grid;grid-template-columns:1fr;gap:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 18px rgba(8,35,60,.04)}
.maths-keys-label{font-size:.62rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#627085);white-space:nowrap}
.maths-keys-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;align-items:center}
.maths-key{display:grid;place-items:center;min-width:0;height:38px;padding:0;border:1px solid color-mix(in srgb,var(--brand,#247aa5) 32%,#c9d8e6);border-radius:11px;background:linear-gradient(180deg,var(--surface,#fff),color-mix(in srgb,var(--surface,#fff) 88%,#e6f3fb 12%));color:var(--ink,#13243b);font:900 .96rem/1 system-ui,-apple-system,sans-serif;box-shadow:0 3px 10px rgba(8,35,60,.08),inset 0 1px 0 rgba(255,255,255,.75);touch-action:manipulation}
.maths-key.maths-key-compact{font-size:.85rem}
.maths-key:active{transform:translateY(1px);background:#e9f8ff}
@media(max-width:700px){.maths-keys-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.maths-key{height:40px;font-size:1rem}.maths-key.maths-key-compact{font-size:.9rem}}
@media(max-width:430px){.maths-keys-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.maths-key{height:41px}.maths-key.maths-key-compact{font-size:.88rem}.maths-keys-label{font-size:.58rem}}
@media print{.maths-keys{display:none!important}}

/* V29 Sigma Blaster Break */
.blaster-active .times-arena{box-shadow:0 0 0 2px rgba(93,244,255,.28),0 0 46px rgba(55,206,255,.25),inset 0 0 90px rgba(69,83,255,.12)}
.sigma-blaster-phase{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(circle at 50% 100%,rgba(87,79,255,.24),transparent 42%),linear-gradient(180deg,rgba(2,7,18,.08),rgba(2,10,27,.23))}
.blaster-hud{position:absolute;top:54px;left:50%;transform:translateX(-50%);z-index:12;display:flex;gap:10px;align-items:center;padding:7px 12px;border:1px solid rgba(102,236,255,.65);border-radius:999px;background:rgba(2,16,35,.86);color:#c8faff;box-shadow:0 0 22px rgba(68,222,255,.22);font-size:.72rem}
.blaster-hud strong{color:#fff;letter-spacing:.1em}.blaster-hud span{color:#ffe06b;font-weight:950}.blaster-hud small{color:#8ceeff;font-weight:800}
.blaster-tip{position:absolute;left:50%;bottom:74px;transform:translateX(-50%);margin:0;padding:5px 10px;border-radius:999px;background:rgba(4,17,34,.78);border:1px solid rgba(104,223,255,.28);color:#d8f9ff;font-size:.66rem;font-weight:850;letter-spacing:.04em}
.blaster-ship{position:absolute;left:50%;bottom:21px;transform:translateX(-50%);width:68px;height:52px;filter:drop-shadow(0 0 14px rgba(83,227,255,.55))}
.blaster-ship img{position:absolute;width:48px;height:48px;left:10px;top:-7px;object-fit:cover;object-position:center 30%;border-radius:15px;border:1px solid #79ecff}
.blaster-ship i{position:absolute;left:26px;bottom:-13px;width:16px;height:25px;border-radius:50%;background:linear-gradient(#fff7a8,#59e8ff 45%,transparent);filter:blur(1px);animation:thruster .22s ease-in-out infinite alternate}
.blaster-target{--drift:0px;position:absolute;z-index:11;width:58px;height:44px;margin:-22px 0 0 -29px;border:1px solid #75edff;border-radius:48% 48% 35% 35%;background:radial-gradient(circle at 50% 38%,#f5fdff 0 12%,#59dff3 13% 22%,#17366a 23% 58%,#08152d 59%);box-shadow:0 0 0 3px rgba(68,226,255,.08),0 0 20px rgba(63,219,255,.55);color:#ffe26c;cursor:crosshair;pointer-events:auto;touch-action:manipulation;animation:blasterDrone 1.8s linear forwards}
.blaster-target:before,.blaster-target:after{content:"";position:absolute;top:16px;width:17px;height:7px;background:#6befff;box-shadow:0 0 9px #6befff}.blaster-target:before{left:-12px;transform:skewY(18deg)}.blaster-target:after{right:-12px;transform:skewY(-18deg)}
.blaster-target i{position:absolute;left:23px;top:12px;width:10px;height:10px;border-radius:50%;background:#ff5f87;box-shadow:0 0 10px #ff5f87}.blaster-target span{position:absolute;left:50%;bottom:2px;transform:translateX(-50%);font-size:.7rem;text-shadow:0 0 6px #ffe05f}
.blaster-target.shot{animation:blasterShot .12s ease forwards;pointer-events:none}
.blaster-beam{position:absolute;z-index:15;width:4px;transform-origin:50% 100%;transform:rotate(var(--beam-angle));background:linear-gradient(180deg,transparent,#fff 20%,#59efff 55%,#8c69ff);box-shadow:0 0 8px #62eaff;pointer-events:none;border-radius:999px}
.blaster-pop{position:absolute;z-index:16;transform:translate(-50%,-50%);font-style:normal;font-size:.72rem;font-weight:950;color:#ffe475;text-shadow:0 0 10px #ffcf35;pointer-events:none;animation:blasterPop .4s ease forwards}
@keyframes blasterDrone{0%{transform:translate(0,-25px) scale(.82);opacity:0}12%{opacity:1}100%{transform:translate(var(--drift),115px) scale(1.08);opacity:.90}}
@keyframes blasterShot{to{transform:scale(1.55);filter:brightness(2.4);opacity:0}}
@keyframes blasterPop{to{transform:translate(-50%,-110%);opacity:0}}
@media(max-width:540px){.blaster-hud{top:62px;font-size:.62rem;gap:7px;padding:6px 9px}.blaster-target{width:62px;height:48px}.blaster-tip{bottom:72px}}
@media(prefers-reduced-motion:reduce){.blaster-target,.blaster-ship i,.blaster-pop{animation:none!important}}

.blaster-active .times-defender{opacity:0;transition:opacity .12s ease}

/* V30 Sigma Adaptive Curriculum */
.sigma-branch-card,.sigma-foundation-card,.sigma-repair-banner{margin:14px 0;border:1px solid rgba(84,211,255,.28);border-radius:18px;background:linear-gradient(135deg,rgba(10,26,48,.94),rgba(23,16,54,.92));padding:16px;color:#eefaff;box-shadow:0 16px 40px rgba(0,0,0,.16)}
.sigma-branch-card small,.sigma-foundation-card small,.sigma-repair-banner small{display:block;color:#6ee7ff;font-weight:800;letter-spacing:.12em;margin-bottom:4px}.sigma-branch-card strong,.sigma-foundation-card strong,.sigma-repair-banner strong{font-size:1.05rem}.sigma-branch-card p,.sigma-foundation-card p,.sigma-repair-banner p{margin:.35rem 0 .75rem;color:#cbd5e1}.sigma-branch-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.sigma-branch-buttons button{border:1px solid rgba(148,163,184,.35);background:rgba(15,23,42,.78);color:#e2e8f0;border-radius:999px;padding:9px 13px;font-weight:750;cursor:pointer}.sigma-branch-buttons button.active{background:linear-gradient(135deg,#22d3ee,#8b5cf6);color:#06111d;border-color:transparent;box-shadow:0 0 22px rgba(34,211,238,.28)}
.sigma-foundation-card{display:grid;grid-template-columns:auto 1fr;gap:14px;border-color:rgba(250,204,21,.4);background:linear-gradient(135deg,rgba(55,36,9,.92),rgba(30,21,50,.92))}.sigma-foundation-icon{font-size:2rem}.sigma-repair-banner{display:flex;justify-content:space-between;align-items:center;gap:16px;border-color:rgba(52,211,153,.42);background:linear-gradient(135deg,rgba(6,47,42,.92),rgba(12,30,52,.94))}
.times-learning-link{margin:14px 0;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;border:1px solid rgba(52,211,153,.28);border-radius:18px;background:linear-gradient(135deg,rgba(5,35,42,.88),rgba(22,18,58,.9));padding:14px 16px;color:#eafffb}.times-learning-link small{display:block;font-weight:900;letter-spacing:.11em;color:#5eead4}.times-learning-link strong{display:block;font-size:1rem;margin:3px 0}.times-learning-link span{display:block;color:#cbd5e1;font-size:.86rem;max-width:620px}.times-learning-link>div:last-child{text-align:right;min-width:190px}.times-learning-link label{display:grid;gap:4px;font-size:.75rem;color:#94a3b8}.times-learning-link select{background:#071523;color:#eefaff;border:1px solid rgba(94,234,212,.32);border-radius:10px;padding:7px 9px}
#timesGameView[data-arena-skin="violet"] .times-arena{box-shadow:inset 0 0 55px rgba(168,85,247,.2),0 0 34px rgba(168,85,247,.16);border-color:rgba(192,132,252,.55)}#timesGameView[data-arena-skin="violet"] .storm-grid-floor{filter:hue-rotate(52deg) saturate(1.25)}
#timesGameView[data-arena-skin="solar"] .times-arena{box-shadow:inset 0 0 60px rgba(250,204,21,.2),0 0 38px rgba(245,158,11,.16);border-color:rgba(250,204,21,.62)}#timesGameView[data-arena-skin="solar"] .storm-grid-floor{filter:hue-rotate(155deg) saturate(1.35)}
#timesGameView[data-arena-skin="hyper"] .times-arena{box-shadow:inset 0 0 65px rgba(236,72,153,.22),0 0 44px rgba(34,211,238,.2);border-color:rgba(236,72,153,.58)}#timesGameView[data-arena-skin="hyper"] .storm-grid-floor{filter:hue-rotate(300deg) saturate(1.55)}
@media(max-width:700px){.sigma-repair-banner,.times-learning-link{grid-template-columns:1fr;display:grid}.sigma-repair-banner button{width:100%}.times-learning-link>div:last-child{text-align:left;min-width:0}}


/* V31 Sigma Storm Character Arcade — young-adult neon identity */
#timesGameView{
  --sector-a:#55eaff;
  --sector-b:#6b7cff;
  --sector-c:#d85cff;
  --sector-warm:#ffd35d;
  --sector-danger:#ff5d73;
}
#timesGameView[data-sector="launch"]{--sector-a:#42e8ff;--sector-b:#3b82f6;--sector-c:#8b5cf6;--sector-warm:#f8d25a}
#timesGameView[data-sector="orbit"]{--sector-a:#9d6cff;--sector-b:#e14dff;--sector-c:#42d9ff;--sector-warm:#ffcc66}
#timesGameView[data-sector="reactor"]{--sector-a:#ffb52e;--sector-b:#ff6b42;--sector-c:#ff3d81;--sector-warm:#ffe36e}
#timesGameView[data-sector="quantum"]{--sector-a:#48f5b3;--sector-b:#2dd4bf;--sector-c:#a855f7;--sector-warm:#d9ff6b}
#timesGameView[data-sector="core"]{--sector-a:#50eaff;--sector-b:#ff4fd8;--sector-c:#ffd84d;--sector-warm:#ffffff}

#timesGameView .times-arena{
  border-color:color-mix(in srgb,var(--sector-a) 62%,#1d3550);
  background:
    radial-gradient(circle at 50% 112%,color-mix(in srgb,var(--sector-b) 32%,transparent),transparent 38%),
    radial-gradient(circle at 10% 14%,color-mix(in srgb,var(--sector-a) 20%,transparent),transparent 27%),
    radial-gradient(circle at 88% 22%,color-mix(in srgb,var(--sector-c) 18%,transparent),transparent 26%),
    linear-gradient(180deg,#020711 0%,#071126 46%,#0a1730 100%);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--sector-a) 22%,transparent),0 18px 50px rgba(3,12,26,.28),inset 0 0 78px color-mix(in srgb,var(--sector-b) 14%,transparent);
  transition:border-color .55s ease,box-shadow .55s ease,filter .55s ease;
}
#timesGameView[data-sector="reactor"] .times-arena{
  background:
    radial-gradient(circle at 50% 112%,rgba(255,116,36,.33),transparent 40%),
    radial-gradient(circle at 12% 18%,rgba(255,208,65,.18),transparent 26%),
    radial-gradient(circle at 85% 24%,rgba(255,47,115,.16),transparent 25%),
    linear-gradient(180deg,#100709 0%,#25100d 48%,#30130f 100%);
}
#timesGameView[data-sector="quantum"] .times-arena{
  background:
    radial-gradient(circle at 52% 112%,rgba(33,244,176,.28),transparent 39%),
    radial-gradient(circle at 10% 15%,rgba(78,234,255,.14),transparent 27%),
    radial-gradient(circle at 86% 20%,rgba(168,85,247,.20),transparent 27%),
    linear-gradient(180deg,#020b11 0%,#071b24 48%,#11213a 100%);
}
#timesGameView[data-sector="core"] .times-arena{
  background:
    radial-gradient(circle at 50% 112%,rgba(255,73,211,.25),transparent 38%),
    radial-gradient(circle at 8% 15%,rgba(68,230,255,.18),transparent 26%),
    radial-gradient(circle at 88% 20%,rgba(255,213,74,.18),transparent 25%),
    linear-gradient(180deg,#050713 0%,#101029 48%,#20103b 100%);
}

.times-sector-badge{
  position:absolute;right:14px;top:13px;z-index:7;display:flex;flex-direction:column;align-items:flex-end;
  padding:8px 11px;border-right:3px solid var(--sector-a);
  background:linear-gradient(270deg,rgba(4,18,34,.9),rgba(4,18,34,.10));
  pointer-events:none;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--sector-a) 20%,transparent));
}
.times-sector-badge small{font-size:.47rem;font-weight:950;letter-spacing:.16em;color:var(--sector-a)}
.times-sector-badge strong{font-size:.64rem;letter-spacing:.08em;color:#f6fbff}

.times-comms{
  position:absolute;right:14px;bottom:18px;z-index:13;width:min(330px,57%);display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;
  padding:9px 11px;border:1px solid color-mix(in srgb,var(--sector-a) 38%,#24425f);border-radius:14px;
  background:linear-gradient(135deg,rgba(3,15,29,.94),rgba(12,25,48,.90));color:#eefbff;
  box-shadow:0 14px 35px rgba(0,0,0,.32),0 0 24px color-mix(in srgb,var(--sector-a) 10%,transparent);
  opacity:0;transform:translateY(9px);transition:.22s ease;pointer-events:none;
}
.times-comms.show{opacity:1;transform:translateY(0)}
.times-comms[data-tone="rival"]{border-color:color-mix(in srgb,var(--sector-danger) 55%,#4a2943);background:linear-gradient(135deg,rgba(37,7,27,.95),rgba(31,13,50,.92))}
.times-comms-avatar{
  width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:1.18rem;font-weight:1000;
  color:#06101e;background:linear-gradient(135deg,var(--sector-a),var(--sector-c));box-shadow:0 0 18px color-mix(in srgb,var(--sector-a) 34%,transparent);
}
.times-comms[data-tone="rival"] .times-comms-avatar{background:linear-gradient(135deg,#ff5d73,#d85cff);color:#fff}
.times-comms small{display:block;font-size:.47rem;letter-spacing:.14em;font-weight:950;color:var(--sector-a)}
.times-comms[data-tone="rival"] small{color:#ff91b5}
.times-comms strong{display:block;margin-top:2px;font-size:.68rem;line-height:1.32;font-weight:780;color:#eef8ff}

.times-record-chase{display:block;margin-top:2px;font-size:.48rem!important;color:var(--sector-a)!important;font-weight:900;letter-spacing:.04em}
.times-hud-item.score{border-color:color-mix(in srgb,var(--sector-a) 32%,#244766)!important}
.times-hud-item.score strong{color:#fff!important;text-shadow:0 0 14px color-mix(in srgb,var(--sector-a) 35%,transparent)!important}

#timesGameView .falling-sum.enemy-drone{
  --enemy:var(--sector-a);--enemy2:var(--sector-b);
  border-color:color-mix(in srgb,var(--sector-a) 72%,#fff);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--sector-a) 8%,transparent),0 0 22px color-mix(in srgb,var(--sector-a) 28%,transparent),0 10px 22px rgba(0,0,0,.32);
}
#timesGameView .falling-sum.enemy-danger{
  --enemy:var(--sector-danger);--enemy2:var(--sector-c);
  box-shadow:0 0 0 3px rgba(255,93,115,.08),0 0 26px rgba(255,71,112,.45),0 10px 24px rgba(0,0,0,.34);
}
#timesGameView .falling-sum.enemy-heavy{
  --enemy:var(--sector-c);--enemy2:var(--sector-b);
  border-color:color-mix(in srgb,var(--sector-c) 68%,#fff);
}
#timesGameView .storm-grid-floor{filter:hue-rotate(0deg) saturate(1.35);transition:filter .55s ease,opacity .55s ease}
#timesGameView[data-sector="orbit"] .storm-grid-floor{filter:hue-rotate(58deg) saturate(1.7)}
#timesGameView[data-sector="reactor"] .storm-grid-floor{filter:hue-rotate(155deg) saturate(1.9)}
#timesGameView[data-sector="quantum"] .storm-grid-floor{filter:hue-rotate(250deg) saturate(1.75)}
#timesGameView[data-sector="core"] .storm-grid-floor{filter:hue-rotate(315deg) saturate(2.1)}

#timesGameView .times-core{
  background:linear-gradient(90deg,var(--sector-a),var(--sector-c),var(--sector-warm),var(--sector-a));
  background-size:220% 100%;
  animation:coreSpectrum 2.7s linear infinite;
  box-shadow:0 -5px 22px color-mix(in srgb,var(--sector-a) 35%,transparent);
}
@keyframes coreSpectrum{to{background-position:220% 0}}

.times-boss-panel{grid-template-columns:minmax(130px,auto) 1fr auto!important}
.times-boss-panel>div:first-child{display:flex;flex-direction:column;min-width:0}
.times-boss-panel>div:first-child small{font-size:.43rem;letter-spacing:.13em;font-weight:900;color:#ffb7df}
.times-boss-panel>div:first-child span{font-size:.67rem;font-weight:1000;letter-spacing:.08em;color:#fff}
#timesGameView[data-boss="null"] .times-boss-panel{border-color:#68ecff;background:linear-gradient(90deg,rgba(4,32,45,.96),rgba(27,38,76,.94))}
#timesGameView[data-boss="phantom"] .times-boss-panel{border-color:#ff69cf;background:linear-gradient(90deg,rgba(47,7,56,.96),rgba(103,15,83,.94))}
#timesGameView[data-boss="reactor"] .times-boss-panel{border-color:#ffc343;background:linear-gradient(90deg,rgba(61,22,5,.96),rgba(115,37,16,.94))}
#timesGameView[data-boss="parallax"] .times-boss-panel{border-color:#b98cff;background:linear-gradient(90deg,rgba(31,14,61,.96),rgba(72,31,111,.94))}
#timesGameView[data-boss="prime"] .times-boss-panel{border-color:#7dffae;background:linear-gradient(90deg,rgba(4,45,35,.96),rgba(20,76,65,.94))}
#timesGameView[data-boss="omega"] .times-boss-panel{border-color:#fff;background:linear-gradient(90deg,rgba(14,29,68,.97),rgba(102,20,94,.96),rgba(95,61,8,.94))}
#timesGameView[data-boss-phase="1"] .falling-sum.boss-sum{filter:saturate(1.25) brightness(1.07)}
#timesGameView[data-boss-phase="2"] .falling-sum.boss-sum{animation:bossHover .42s ease-in-out infinite alternate;filter:saturate(1.6) brightness(1.12)}
#timesGameView[data-boss-phase="2"] .times-boss-health span{filter:saturate(1.4);box-shadow:0 0 16px #ff4db8}

.storm-arena-title.sector{
  border-color:var(--sector-a);
  background:linear-gradient(145deg,rgba(3,16,31,.96),color-mix(in srgb,var(--sector-b) 28%,rgba(10,24,48,.96)));
  box-shadow:0 0 45px color-mix(in srgb,var(--sector-a) 28%,transparent),0 18px 45px rgba(0,0,0,.5);
}
.storm-arena-title.sector small{color:var(--sector-a)}
.storm-arena-title.sector strong{font-size:1.65rem;letter-spacing:.08em}
.storm-arena-title.sector span{color:#d4e9f6}

.times-upgrade-option{
  position:relative;overflow:hidden;
  background:linear-gradient(155deg,#071827,#122845)!important;
  border-color:color-mix(in srgb,var(--sector-a) 28%,#31506c)!important;
}
.times-upgrade-option:before{
  content:"";position:absolute;inset:0 0 auto;height:3px;
  background:linear-gradient(90deg,var(--sector-a),var(--sector-c),var(--sector-warm));
}
.times-upgrade-option:hover{box-shadow:0 0 28px color-mix(in srgb,var(--sector-a) 16%,transparent),0 12px 28px rgba(0,0,0,.18)}

.times-medal{
  margin:0 0 14px;padding:14px 16px;border-radius:17px;border:1px solid #48576a;
  display:grid;grid-template-columns:auto 1fr;column-gap:13px;align-items:center;
  background:linear-gradient(135deg,#0b1a2c,#15243b);color:#fff;
}
.times-medal small{grid-column:1;font-size:.48rem;font-weight:950;letter-spacing:.14em;color:#9fb4c8}
.times-medal strong{grid-column:1;font-size:1.15rem;letter-spacing:.08em}
.times-medal span{grid-column:2;grid-row:1/3;font-size:.76rem;color:#c9d7e5}
.times-medal-bronze{border-color:#b97b55;background:linear-gradient(135deg,#23140e,#49301e)}
.times-medal-silver{border-color:#aab7c7;background:linear-gradient(135deg,#12202e,#34485e)}
.times-medal-gold{border-color:#ffd45f;background:linear-gradient(135deg,#2b2008,#63430e);box-shadow:0 0 24px rgba(255,205,72,.14)}
.times-medal-platinum{border-color:#9cf6ff;background:linear-gradient(135deg,#092331,#26365f,#4c1f62);box-shadow:0 0 30px rgba(100,228,255,.18)}

#timesGameView[data-sector="core"] .blaster-target:nth-of-type(3n+1){border-color:#ff5bd6;box-shadow:0 0 22px rgba(255,91,214,.56)}
#timesGameView[data-sector="core"] .blaster-target:nth-of-type(3n+2){border-color:#ffd95c;box-shadow:0 0 22px rgba(255,217,92,.52)}
#timesGameView[data-sector="quantum"] .blaster-target{border-color:#62f4b7;box-shadow:0 0 22px rgba(98,244,183,.50)}

@media(max-width:700px){
  .times-sector-badge{right:9px;top:8px}
  .times-sector-badge strong{font-size:.56rem}
  .times-comms{right:8px;bottom:13px;width:min(355px,72%);grid-template-columns:32px 1fr;padding:8px 9px}
  .times-comms-avatar{width:31px;height:31px;border-radius:9px;font-size:1rem}
  .times-comms strong{font-size:.62rem}
}
@media(max-width:520px){
  .times-sector-badge{top:47px;right:8px}
  .times-boss-panel{top:83px!important}
  .times-comms{width:calc(100% - 18px);right:9px;bottom:12px}
  .times-record-chase{font-size:.44rem!important}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView .times-core{animation:none!important}
  .times-comms{transition:none!important}
}

/* V34 • Sigma Mission Campaign + Touch Answer Pad + Bonus Weapon */
.times-mode-card.campaign-card{border-color:rgba(255,205,80,.55);background:linear-gradient(145deg,rgba(255,185,40,.16),rgba(130,70,255,.14));}
.times-campaign-panel{margin:14px 0 16px;padding:16px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:linear-gradient(155deg,rgba(8,15,35,.96),rgba(35,18,65,.94));box-shadow:inset 0 0 36px rgba(97,63,255,.08),0 16px 35px rgba(0,0,0,.2)}
.campaign-panel-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.campaign-panel-head h3{margin:.15rem 0 .25rem;font-size:1.15rem}.campaign-panel-head p{margin:0;color:var(--muted);max-width:720px}.campaign-save-chip{white-space:nowrap;border:1px solid rgba(74,255,166,.34);color:#91ffc2;background:rgba(50,210,130,.1);padding:7px 10px;border-radius:999px;font-size:.7rem;font-weight:800;letter-spacing:.08em}
.campaign-level-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.campaign-level-card{min-height:104px;text-align:left;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:12px;background:linear-gradient(145deg,rgba(20,31,59,.95),rgba(27,20,48,.96));color:inherit;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.campaign-level-card:hover:not(:disabled),.campaign-level-card.selected{transform:translateY(-2px);border-color:rgba(102,230,255,.68);box-shadow:0 0 0 1px rgba(102,230,255,.14),0 10px 28px rgba(37,186,255,.12)}.campaign-level-card small{display:block;color:#83e9ff;font-weight:800;letter-spacing:.08em;font-size:.65rem}.campaign-level-card strong{display:block;margin:7px 0 8px;font-size:.88rem;line-height:1.15}.campaign-level-card span{font-size:.67rem;font-weight:900;color:#ffd65c;letter-spacing:.06em}.campaign-level-card.complete{background:linear-gradient(145deg,rgba(18,67,58,.92),rgba(31,25,64,.96));border-color:rgba(91,255,190,.32)}.campaign-level-card.complete span{color:#7fffc1}.campaign-level-card.locked{opacity:.4;filter:saturate(.4);cursor:not-allowed}.campaign-briefing{margin-top:12px;border-left:3px solid #ffcb4a;padding:12px 14px;background:rgba(255,255,255,.045);border-radius:0 14px 14px 0}.campaign-briefing>div{display:flex;flex-direction:column;gap:4px}.campaign-briefing small{font-size:.67rem;color:#ffd764;font-weight:900;letter-spacing:.1em}.campaign-briefing strong{font-size:1rem}.campaign-briefing span,.campaign-briefing p{color:var(--muted);margin:0}.campaign-briefing p{margin-top:7px;font-size:.79rem}
.falling-sum.campaign-puzzle{min-width:112px;max-width:190px}.falling-sum .campaign-expression{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;font-size:1.08em;font-weight:950}.falling-sum .campaign-expression b{font-size:.85em;opacity:.88}.falling-sum .campaign-expression small{font-size:.6em;font-weight:800;opacity:.8}.falling-sum .campaign-expression sup{font-size:.65em;transform:translateY(-.25em)}
.times-mission-complete{position:absolute;inset:0;z-index:45;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 35%,rgba(84,255,190,.2),rgba(9,10,30,.88) 52%,rgba(3,4,15,.95));backdrop-filter:blur(5px)}.mission-complete-card{width:min(520px,94%);border:1px solid rgba(118,255,200,.35);border-radius:24px;padding:24px;background:linear-gradient(150deg,rgba(14,34,48,.97),rgba(31,19,62,.98));box-shadow:0 0 60px rgba(76,255,197,.14),0 22px 60px rgba(0,0,0,.4);text-align:center}.mission-complete-card h3{margin:.25rem 0 1rem;font-size:1.35rem}.mission-complete-text{display:flex;flex-direction:column;gap:7px}.mission-complete-text strong{font-size:1.05rem;color:#ffe16a}.mission-complete-text span{color:#e9f4ff}.mission-complete-text small{color:var(--muted)}.mission-complete-actions{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}
#timesGameView[data-campaign="2"] .times-arena{--mission-accent:#9d7cff}#timesGameView[data-campaign="3"] .times-arena{--mission-accent:#ff9d42}#timesGameView[data-campaign="4"] .times-arena{--mission-accent:#55ffd0}#timesGameView[data-campaign="5"] .times-arena{--mission-accent:#ff4fa3}#timesGameView[data-campaign="6"] .times-arena{--mission-accent:#8ad8ff}#timesGameView[data-campaign="7"] .times-arena{--mission-accent:#ffe058}#timesGameView[data-campaign="8"] .times-arena{--mission-accent:#ff6cf0}
#timesGameView[data-puzzle="division"] .falling-sum{box-shadow:0 0 24px rgba(145,112,255,.28)}#timesGameView[data-puzzle="square"] .falling-sum{box-shadow:0 0 26px rgba(255,170,58,.28)}#timesGameView[data-puzzle="root"] .falling-sum{box-shadow:0 0 26px rgba(76,255,205,.28)}#timesGameView[data-puzzle="percent"] .falling-sum{box-shadow:0 0 28px rgba(255,219,72,.28)}
@media(max-width:900px){.campaign-level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-panel-head{flex-direction:column}.campaign-save-chip{align-self:flex-start}}
@media(max-width:520px){.campaign-level-grid{grid-template-columns:1fr 1fr;gap:8px}.campaign-level-card{min-height:94px;padding:10px}.campaign-level-card strong{font-size:.8rem}.times-campaign-panel{padding:12px;border-radius:18px}}
@media(min-width:901px){#timesGameView .times-mode-select{grid-template-columns:repeat(5,minmax(0,1fr))}}


/* V33 • Touch-first arcade answer pad */
.times-number-pad{
  grid-column:1/-1;display:grid;gap:9px;padding:10px;border:1px solid color-mix(in srgb,var(--sector-a,#46d8ff) 34%,#254a68);border-radius:16px;
  background:linear-gradient(145deg,rgba(3,14,26,.96),rgba(11,29,50,.96));box-shadow:inset 0 0 28px rgba(40,148,210,.07),0 10px 26px rgba(0,0,0,.18);
  transition:opacity .18s ease,filter .18s ease,border-color .2s ease;
}
.times-pad-label{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 2px}
.times-pad-label span{font-size:.55rem;font-weight:1000;letter-spacing:.16em;color:var(--sector-a,#6de8ff)}
.times-pad-label small{font-size:.52rem;font-weight:800;color:#8fb0c6}
.times-pad-grid{display:grid;grid-template-columns:repeat(4,minmax(54px,1fr));grid-template-rows:repeat(4,minmax(56px,auto));gap:8px}
.times-pad-key{
  min-height:56px;border:1px solid color-mix(in srgb,var(--sector-a,#4edfff) 35%,#31516a);border-radius:13px;
  background:linear-gradient(180deg,rgba(21,52,79,.98),rgba(8,28,47,.98));color:#f4fbff;font:1000 1.2rem/1 system-ui,-apple-system,Segoe UI,sans-serif;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 6px 14px rgba(0,0,0,.22),0 0 15px color-mix(in srgb,var(--sector-a,#46d8ff) 8%,transparent);
  touch-action:manipulation;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .08s ease,filter .08s ease,box-shadow .12s ease;
}
.times-pad-key:active:not(:disabled){transform:translateY(2px) scale(.985);filter:brightness(1.25);box-shadow:inset 0 0 18px color-mix(in srgb,var(--sector-a,#46d8ff) 18%,transparent),0 2px 6px rgba(0,0,0,.28)}
.times-pad-action{font-size:.68rem;letter-spacing:.06em;color:#b9d8ea;background:linear-gradient(180deg,#20384f,#10263a)}
.times-pad-zero{grid-column:1/span 3;font-size:1.35rem}
.times-pad-fire{grid-column:4;grid-row:3/span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-color:color-mix(in srgb,var(--sector-warm,#ffd45a) 65%,#fff);background:linear-gradient(180deg,var(--sector-warm,#ffd45a),#f38c24);color:#1c1010;box-shadow:0 0 22px color-mix(in srgb,var(--sector-warm,#ffd45a) 24%,transparent),0 7px 18px rgba(0,0,0,.28)}
.times-pad-fire span{font-size:.86rem;letter-spacing:.08em}.times-pad-fire small{font-size:.46rem;letter-spacing:.12em;font-weight:1000;opacity:.75}
.times-number-pad.is-locked{opacity:.34;filter:saturate(.45)}
.times-number-pad.is-locked .times-pad-label span::after{content:" • LOCKED";color:#ff9fb0}
.times-number-pad button:disabled{cursor:not-allowed;box-shadow:none}
#timesGameView.overdrive-active .times-pad-fire{animation:padFirePulse .65s ease-in-out infinite alternate}
@keyframes padFirePulse{to{filter:brightness(1.22);box-shadow:0 0 34px color-mix(in srgb,var(--sector-warm,#ffd45a) 52%,transparent),0 8px 20px rgba(0,0,0,.3)}}
@media(max-width:650px){.times-number-pad{padding:8px}.times-pad-grid{grid-template-rows:repeat(4,minmax(54px,auto));gap:7px}.times-pad-key{min-height:54px;font-size:1.16rem}.times-pad-label small{display:none}}
@media(max-width:430px){.times-pad-grid{grid-template-columns:repeat(4,minmax(48px,1fr));grid-template-rows:repeat(4,52px);gap:6px}.times-pad-key{min-height:52px;border-radius:11px}.times-pad-action{font-size:.61rem}.times-pad-fire span{font-size:.78rem}}


/* V34 • Prominent Sigma Nova bonus weapon */
.times-bonus-weapon-row{display:grid;grid-template-columns:1fr;gap:6px;margin-top:10px}
.times-bonus-weapon{min-height:72px;width:100%;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;border:1px solid rgba(255,98,196,.46);border-radius:17px;padding:10px 14px;background:linear-gradient(135deg,rgba(76,20,112,.98),rgba(205,34,139,.92) 58%,rgba(255,130,48,.94));color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 8px 22px rgba(0,0,0,.28),0 0 24px rgba(255,65,190,.15);text-align:left;touch-action:manipulation;transition:transform .08s ease,filter .12s ease,box-shadow .15s ease}
.times-bonus-weapon:not(:disabled):active{transform:translateY(2px) scale(.99);filter:brightness(1.2)}
.times-bonus-weapon:disabled{opacity:.48;filter:saturate(.55)}
.times-bonus-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font:1000 1.55rem/1 system-ui;background:radial-gradient(circle at 35% 30%,#fff5bd,#ff58dc 38%,#6a2dff 72%);box-shadow:0 0 24px rgba(255,88,220,.38);color:#28133f}
.times-bonus-copy{display:flex;flex-direction:column;gap:1px}.times-bonus-copy small{font-size:.49rem;font-weight:1000;letter-spacing:.15em;color:#ffd4f2}.times-bonus-copy strong{font-size:1.12rem;letter-spacing:.12em}.times-bonus-copy em{font-style:normal;font-size:.58rem;font-weight:900;letter-spacing:.12em;color:#fff0bd}
.times-bonus-count{min-width:66px;padding:8px 9px;border-radius:999px;background:rgba(4,11,28,.62);border:1px solid rgba(255,255,255,.2);font-size:.65rem;font-weight:1000;letter-spacing:.05em;text-align:center}
.times-bonus-charge{height:7px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)}.times-bonus-charge i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8d55ff,#ff4fc7,#ffd252);box-shadow:0 0 15px #ff4fc7;transition:width .2s ease}
#timesGameView.nova-ready .times-bonus-weapon{opacity:1;animation:novaReadyPulse .85s ease-in-out infinite alternate;border-color:#ffe17d;box-shadow:0 0 32px rgba(255,78,207,.28),0 0 18px rgba(255,215,75,.22),0 8px 22px rgba(0,0,0,.3)}
@keyframes novaReadyPulse{to{filter:brightness(1.14) saturate(1.12)}}
.nova-weapon-fx{position:absolute;inset:0;z-index:36;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle,rgba(255,255,210,.45),rgba(255,68,205,.23) 26%,rgba(86,47,255,.12) 52%,transparent 72%);animation:novaFx .72s ease-out forwards}.nova-weapon-fx i{position:absolute;width:22%;aspect-ratio:1;border-radius:50%;border:4px solid #fff8b5;box-shadow:0 0 34px #ff58dc,0 0 72px #6e55ff;animation:novaRing .7s ease-out forwards}.nova-weapon-fx strong{font-size:2rem;letter-spacing:.16em;text-shadow:0 0 18px #ff72df,0 0 30px #7b5cff}.nova-weapon-fx span{position:absolute;margin-top:58px;font-size:.64rem;font-weight:1000;letter-spacing:.14em;color:#fff0b4}.nova-fired .times-arena{animation:novaArenaFlash .38s ease-out}
@keyframes novaRing{to{width:105%;opacity:0}}@keyframes novaFx{0%{opacity:0}18%{opacity:1}100%{opacity:0}}@keyframes novaArenaFlash{40%{filter:brightness(1.42) saturate(1.35)}}
@media(max-width:430px){.times-bonus-weapon{grid-template-columns:48px 1fr auto;min-height:64px;padding:8px 10px}.times-bonus-icon{width:46px;height:46px;border-radius:13px}.times-bonus-copy strong{font-size:1rem}.times-bonus-count{min-width:58px;font-size:.58rem}}


/* V35 • Retro lives + arcade assault enemy system */
.times-retro-lives{position:absolute;right:12px;bottom:15px;z-index:24;min-width:146px;padding:8px 10px 7px;border:1px solid rgba(104,239,255,.48);border-radius:8px;background:linear-gradient(180deg,rgba(2,9,22,.92),rgba(6,21,42,.94));box-shadow:0 0 0 2px rgba(18,55,81,.5),0 0 18px rgba(71,230,255,.15);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#d9fbff;pointer-events:none;image-rendering:pixelated}
.times-retro-lives small{display:block;margin-bottom:5px;color:#72f2ff;font-size:.47rem;font-weight:1000;letter-spacing:.14em;text-shadow:0 0 8px rgba(78,236,255,.55)}
.times-retro-lives strong{position:absolute;right:9px;top:8px;color:#ffe56f;font-size:.72rem;letter-spacing:.07em;text-shadow:0 0 9px rgba(255,217,75,.5)}
.retro-life-icons{display:flex;gap:5px;padding-right:32px;min-height:17px;align-items:center}.retro-life-icons i{position:relative;width:15px;height:13px;display:block;filter:drop-shadow(0 0 5px rgba(80,237,255,.7))}.retro-life-icons i:before{content:"";position:absolute;left:5px;top:0;border-left:3px solid transparent;border-right:3px solid transparent;border-bottom:8px solid #8af5ff}.retro-life-icons i:after{content:"";position:absolute;left:1px;bottom:0;width:13px;height:5px;background:linear-gradient(90deg,#55dfff,#fff5a8,#55dfff);clip-path:polygon(0 100%,30% 0,70% 0,100% 100%,70% 75%,30% 75%)}
.times-retro-lives.life-lost{animation:retroLifeLost .42s steps(2,end)}.times-retro-lives.life-gained{animation:retroLifeGain .65s steps(2,end)}
@keyframes retroLifeLost{0%,100%{filter:none}25%,75%{filter:brightness(2.4);transform:translateX(2px)}50%{filter:hue-rotate(300deg) saturate(2);transform:translateX(-2px)}}
@keyframes retroLifeGain{0%,100%{filter:none}30%{filter:brightness(2.3) saturate(1.6);box-shadow:0 0 28px rgba(84,255,160,.55)}}

.times-game-over{position:absolute;inset:0;z-index:60;display:grid;place-items:center;padding:18px;background:repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 2px,transparent 2px 4px),radial-gradient(circle at 50% 40%,rgba(194,35,63,.22),rgba(0,0,0,.91) 58%,#010207 100%);backdrop-filter:blur(2px)}
.retro-game-over-card{width:min(520px,94%);padding:30px 22px 24px;border:3px solid #ff5c76;outline:3px solid rgba(255,214,82,.12);background:#05070f;box-shadow:0 0 0 7px #12182a,0 0 48px rgba(255,61,95,.28);text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;animation:retroGameOverIn .28s steps(4,end)}
.retro-game-over-card>small{color:#78efff;font-size:.58rem;font-weight:1000;letter-spacing:.2em}.retro-game-over-card h3{margin:.5rem 0 .9rem;color:#ff607b;font-size:clamp(2.1rem,8vw,4.2rem);line-height:.9;letter-spacing:.08em;text-shadow:4px 0 #421322,-4px 0 #1e5260,0 0 18px rgba(255,81,112,.42);animation:retroGameOverBlink 1s steps(2,end) infinite}
.retro-game-over-text{display:flex;flex-direction:column;gap:7px;margin:0 auto 20px;color:#dff9ff}.retro-game-over-text strong{color:#ffe36d;font-size:1rem;letter-spacing:.08em}.retro-game-over-text span{font-size:.68rem;color:#a7c3d7}.retro-game-over-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.retro-arcade-btn{min-width:132px;border:2px solid #5fe8ff;border-radius:4px;padding:11px 16px;background:#08172b;color:#c9faff;font:1000 .7rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.12em;box-shadow:inset 0 0 0 2px #03101d,0 4px 0 #07101c;touch-action:manipulation}.retro-arcade-btn.primary{border-color:#ffe265;background:#352806;color:#fff0a0}.retro-arcade-btn:active{transform:translateY(3px);box-shadow:none}
@keyframes retroGameOverIn{from{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}@keyframes retroGameOverBlink{50%{filter:brightness(1.55)}}

.blaster-pattern-badge{position:absolute;top:96px;left:50%;transform:translateX(-50%);z-index:14;padding:5px 9px;border:1px solid rgba(255,255,255,.24);border-radius:4px;background:rgba(3,9,24,.82);font:1000 .52rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.12em;color:#ffe16b;box-shadow:0 0 16px rgba(255,219,91,.12)}
.blaster-target{--blaster-life:1.8s;--zig:0px;animation-duration:var(--blaster-life)}
.blaster-target.enemy-scout{border-color:#6cecff}.blaster-target.enemy-interceptor{width:48px;height:34px;border-color:#ff62cb;background:radial-gradient(circle at 50% 38%,#fff 0 10%,#ff65d3 11% 20%,#49256f 21% 58%,#130b28 59%);box-shadow:0 0 22px rgba(255,84,205,.55);animation-name:blasterInterceptor}
.blaster-target.enemy-armored{width:72px;height:52px;border:2px solid #ffc75a;border-radius:15px;background:linear-gradient(145deg,#332918,#745017 44%,#151827 45% 100%);box-shadow:0 0 0 3px rgba(255,194,62,.08),0 0 24px rgba(255,175,48,.38)}.blaster-target.enemy-armored:before,.blaster-target.enemy-armored:after{background:#ffbd4d;box-shadow:0 0 8px #ffbd4d}.blaster-target.enemy-armored.damaged{filter:brightness(1.6);border-color:#fff1a6}.blaster-target.enemy-armored .enemy-hp{display:block;position:absolute;left:50%;top:-10px;transform:translateX(-50%);font:1000 .44rem/1 ui-monospace;color:#ffe38a;white-space:nowrap}
.blaster-target.enemy-bomber{width:64px;height:48px;border-color:#ff5e68;background:radial-gradient(circle at 50% 42%,#ffd4ce 0 10%,#f84e5b 11% 22%,#5b1623 23% 60%,#190812 61%);box-shadow:0 0 0 3px rgba(255,68,88,.1),0 0 26px rgba(255,54,76,.56);animation-name:blasterBomber}.blaster-target.enemy-bomber:after{background:#ff5260;box-shadow:0 0 13px #ff3448}.blaster-target.enemy-bomber .enemy-label{color:#ffb5bc}
.blaster-target.enemy-phaser{border-color:#72ffbe;box-shadow:0 0 25px rgba(89,255,183,.48);animation-name:blasterPhaser}.blaster-target.enemy-phaser i{background:#9d76ff;box-shadow:0 0 10px #9d76ff}
.blaster-target.enemy-swarm{width:40px;height:30px;border-color:#b8f7ff;box-shadow:0 0 14px rgba(119,236,255,.44);animation-name:blasterInterceptor}
.blaster-target.enemy-oneup{width:62px;height:46px;border:2px solid #6dff9f;background:linear-gradient(145deg,#0d4d2b,#20b565);box-shadow:0 0 28px rgba(74,255,137,.62);color:#eaffb7;animation-name:blasterOneUp}.blaster-target.enemy-oneup:before,.blaster-target.enemy-oneup:after{background:#6dff9f;box-shadow:0 0 9px #6dff9f}.blaster-target .enemy-label{position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);font:1000 .42rem/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.08em;color:#9af4ff;white-space:nowrap}.blaster-target.enemy-oneup .enemy-label{color:#8dffb2;font-size:.48rem}.blaster-target.enemy-oneup span{font-size:.85rem;color:#edff90}
.blaster-danger-flash{position:absolute;inset:0;z-index:33;pointer-events:none;background:radial-gradient(circle at 50% 100%,rgba(255,86,70,.4),transparent 55%);animation:blasterDanger .45s ease-out forwards}.blaster-attack-warning{position:absolute;left:50%;bottom:61px;transform:translateX(-50%);z-index:17;color:#ff8290;font:1000 .58rem/1 ui-monospace;letter-spacing:.14em;text-shadow:0 0 9px #ff3e59;animation:attackWarning .7s steps(2,end)}
@keyframes blasterInterceptor{0%{transform:translate(-70px,-28px) scale(.76);opacity:0}15%{opacity:1}50%{transform:translate(70px,40px) scale(1)}100%{transform:translate(var(--drift),125px) scale(1.12);opacity:.90}}
@keyframes blasterBomber{0%{transform:translate(0,-35px) scale(.72);opacity:0}15%{opacity:1}70%{transform:translate(calc(var(--drift) * .45),80px) scale(1.12)}100%{transform:translate(var(--drift),145px) scale(1.26);opacity:.92}}
@keyframes blasterPhaser{0%{transform:translate(-35px,-25px) scale(.8);opacity:0}12%{opacity:1}34%{transform:translate(55px,30px) scale(.95);opacity:.35}38%{opacity:0}48%{transform:translate(-55px,48px) scale(1);opacity:1}75%{opacity:.3}100%{transform:translate(var(--drift),125px) scale(1.08);opacity:.86}}
@keyframes blasterOneUp{0%{transform:translate(0,-20px) scale(.72);opacity:0}15%{opacity:1}55%{transform:translate(35px,42px) scale(1.04)}100%{transform:translate(-35px,105px) scale(1.08);opacity:.92}}
@keyframes blasterDanger{to{opacity:0}}@keyframes attackWarning{50%{opacity:.25}}

@media(max-width:540px){.times-retro-lives{right:8px;bottom:10px;min-width:124px;padding:7px 8px}.retro-life-icons{gap:4px}.retro-life-icons i{width:13px}.retro-game-over-card{padding:24px 14px 19px}.blaster-pattern-badge{top:105px;font-size:.46rem}.blaster-target.enemy-armored{width:68px;height:50px}.blaster-target.enemy-bomber{width:60px;height:45px}}


/* ===== V36 • Cabinet arcade input + boss character system ===== */
.bottom-nav{grid-template-columns:repeat(7,1fr);width:min(850px,calc(100% - 24px))}
.times-number-pad{position:relative;padding:13px 13px 15px;border:2px solid color-mix(in srgb,var(--sector-a,#46d8ff) 48%,#20384f);border-radius:20px;background:linear-gradient(180deg,#101926,#050b12 58%,#080f19);box-shadow:inset 0 0 0 3px #18283a,inset 0 -10px 20px rgba(0,0,0,.38),0 11px 0 #02060b,0 17px 30px rgba(0,0,0,.36)}
.times-number-pad:before,.times-number-pad:after{content:"";position:absolute;top:10px;width:8px;height:8px;border-radius:50%;background:#22374a;box-shadow:inset 0 1px 2px #000,0 0 0 1px #38546a}.times-number-pad:before{left:10px}.times-number-pad:after{right:10px}
.times-pad-label{padding:2px 13px 4px}.times-pad-label span{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#a9f7ff;text-shadow:0 0 9px #36dff7}.times-pad-label small{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#91a9bc}.cabinet-credit{color:#ffd65a;font-weight:1000;text-shadow:0 0 8px rgba(255,214,90,.5)}
.times-pad-grid{gap:10px;padding:4px;border-radius:14px;background:linear-gradient(145deg,#0b1420,#111f2c);box-shadow:inset 0 0 0 1px rgba(255,255,255,.045)}
.times-pad-key{position:relative;overflow:hidden;min-height:62px;border:2px solid #45627a;border-bottom-width:5px;border-radius:50%;background:radial-gradient(circle at 38% 28%,#385b78,#19354d 53%,#0b1d2c 78%);box-shadow:inset 0 2px 2px rgba(255,255,255,.17),inset 0 -7px 10px rgba(0,0,0,.3),0 5px 0 #07121d,0 8px 12px rgba(0,0,0,.34);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-shadow:0 0 8px rgba(109,232,255,.28)}
.times-pad-key>span{display:block;font:1000 1.35rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.times-pad-key>small{display:block;margin-top:3px;font:.48rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;color:#aac0d2}
.times-pad-key:active:not(:disabled){transform:translateY(4px) scale(.98);box-shadow:inset 0 2px 10px rgba(0,0,0,.34),0 1px 0 #07121d;filter:brightness(1.22)}
.times-pad-action{border-color:#777b83;background:radial-gradient(circle at 38% 28%,#737d89,#374553 54%,#17232f 80%);color:#e9f2f7;border-radius:16px}.times-pad-action>span{font-size:.9rem}
.times-pad-zero{grid-column:1/span 3;border-radius:18px;background:radial-gradient(ellipse at 38% 28%,#365f7d,#18384f 58%,#0a1c2a 84%)}
.times-pad-fire{border-radius:22px;border-color:#ffca42;border-bottom-color:#9f3d13;background:radial-gradient(circle at 36% 25%,#fff58d,#ffb21e 34%,#ff5a18 72%,#a82412 100%);color:#211009;box-shadow:inset 0 3px 3px rgba(255,255,255,.5),inset 0 -10px 14px rgba(114,17,5,.35),0 7px 0 #781d0a,0 0 24px rgba(255,117,26,.34)}
.times-pad-fire>span{font-size:1rem;text-shadow:0 1px 0 #fff1a3}.times-pad-fire>small{color:#4f1d08}
#timesGameView.overdrive-active .times-pad-fire,#timesGameView.nova-ready .times-pad-fire{box-shadow:inset 0 3px 3px rgba(255,255,255,.5),0 7px 0 #781d0a,0 0 34px rgba(255,173,31,.62)}

.times-boss-panel{grid-template-columns:62px minmax(122px,auto) 1fr auto!important;gap:10px!important;min-height:70px!important;align-items:center!important;padding:7px 11px!important}
.times-boss-avatar{position:relative;width:58px;height:56px;display:grid;place-items:center;filter:drop-shadow(0 0 8px var(--boss-glow,#63eaff));isolation:isolate}
.times-boss-avatar .boss-shell{position:absolute;inset:4px 6px;background:linear-gradient(145deg,var(--boss-hi,#8ff5ff),var(--boss-mid,#1aa9c9) 48%,var(--boss-lo,#0b4260));clip-path:polygon(50% 0,91% 20%,100% 67%,73% 100%,27% 100%,0 67%,9% 20%);border-radius:8px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.18),inset 0 -9px 13px rgba(0,0,0,.27)}
.times-boss-avatar .boss-eye{position:absolute;z-index:2;height:6px;width:16px;border-radius:99px;background:#fff;box-shadow:0 0 8px #fff,0 0 13px var(--boss-glow,#68eaff)}.times-boss-avatar .eye-a{left:12px;top:23px;transform:rotate(7deg)}.times-boss-avatar .eye-b{right:12px;top:23px;transform:rotate(-7deg)}
.times-boss-avatar .boss-core{position:absolute;z-index:2;bottom:8px;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle,#fff 0 20%,var(--boss-hi,#8ff5ff) 24% 48%,var(--boss-mid,#1aa9c9) 53%);box-shadow:0 0 12px var(--boss-glow,#68eaff)}
.times-boss-avatar b{position:absolute;z-index:3;top:5px;left:50%;transform:translateX(-50%);font:1000 .62rem/1 ui-monospace,monospace;color:#07111f;text-shadow:0 1px 0 rgba(255,255,255,.35)}
.times-boss-copy{display:flex;flex-direction:column;min-width:0}.times-boss-copy small{font-size:.43rem;letter-spacing:.13em;font-weight:900;color:var(--boss-hi,#ffb7df)}.times-boss-copy span{font-size:.68rem;font-weight:1000;letter-spacing:.08em;color:#fff}.times-boss-copy em{font-style:normal;font-size:.43rem;letter-spacing:.12em;color:#a9c9db;font-weight:900;margin-top:2px}
#timesGameView[data-boss="null"]{--boss-hi:#a6f7ff;--boss-mid:#22d7ef;--boss-lo:#11617a;--boss-glow:#5deaff}
#timesGameView[data-boss="null"] .times-boss-avatar .boss-shell{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}#timesGameView[data-boss="null"] .times-boss-avatar .eye-a{left:17px;width:24px;transform:none}#timesGameView[data-boss="null"] .times-boss-avatar .eye-b{display:none}
#timesGameView[data-boss="phantom"]{--boss-hi:#ffb0ef;--boss-mid:#ff4ac8;--boss-lo:#6f1a79;--boss-glow:#ff55d8}
#timesGameView[data-boss="phantom"] .times-boss-avatar .boss-shell{clip-path:polygon(12% 0,88% 7%,100% 38%,78% 55%,94% 100%,50% 82%,9% 100%,23% 55%,0 34%);animation:bossGlitch .8s steps(2,end) infinite alternate}
#timesGameView[data-boss="reactor"]{--boss-hi:#ffe16c;--boss-mid:#ff8b1c;--boss-lo:#8e2e10;--boss-glow:#ff9b29}
#timesGameView[data-boss="reactor"] .times-boss-avatar .boss-shell{clip-path:circle(47%);border-radius:50%}#timesGameView[data-boss="reactor"] .times-boss-avatar .boss-core{width:23px;height:23px;bottom:16px}
#timesGameView[data-boss="parallax"]{--boss-hi:#d6bdff;--boss-mid:#9865ff;--boss-lo:#422581;--boss-glow:#b489ff}
#timesGameView[data-boss="parallax"] .times-boss-avatar .boss-shell{clip-path:polygon(0 18%,70% 0,100% 50%,70% 100%,0 82%,30% 50%)}#timesGameView[data-boss="parallax"] .times-boss-avatar .eye-b{top:33px;right:8px;width:12px}
#timesGameView[data-boss="prime"]{--boss-hi:#bcffd1;--boss-mid:#39df83;--boss-lo:#126145;--boss-glow:#62ff9e}
#timesGameView[data-boss="prime"] .times-boss-avatar .boss-shell{clip-path:polygon(50% 0,100% 23%,79% 45%,100% 76%,58% 100%,17% 85%,0 43%,24% 18%)}#timesGameView[data-boss="prime"] .times-boss-avatar .eye-a,#timesGameView[data-boss="prime"] .times-boss-avatar .eye-b{height:4px;top:21px}
#timesGameView[data-boss="warden"]{--boss-hi:#fff08a;--boss-mid:#e8b922;--boss-lo:#65510d;--boss-glow:#ffe34c}
#timesGameView[data-boss="warden"] .times-boss-avatar .boss-shell{clip-path:polygon(50% 0,62% 20%,91% 9%,81% 38%,100% 50%,81% 63%,91% 92%,62% 81%,50% 100%,38% 81%,9% 92%,19% 63%,0 50%,19% 38%,9% 9%,38% 20%)}
#timesGameView[data-boss="redline"]{--boss-hi:#ffd09a;--boss-mid:#ff512c;--boss-lo:#82151c;--boss-glow:#ff4f39}
#timesGameView[data-boss="redline"] .times-boss-avatar .boss-shell{clip-path:polygon(18% 0,82% 0,100% 28%,84% 100%,16% 100%,0 28%)}#timesGameView[data-boss="redline"] .times-boss-avatar .eye-a,#timesGameView[data-boss="redline"] .times-boss-avatar .eye-b{width:7px;height:18px;top:18px}
#timesGameView[data-boss="omega"]{--boss-hi:#fff;--boss-mid:#79c7ff;--boss-lo:#923ec0;--boss-glow:#fff}
#timesGameView[data-boss="omega"] .times-boss-avatar .boss-shell{clip-path:polygon(50% 0,84% 10%,100% 42%,82% 100%,50% 84%,18% 100%,0 42%,16% 10%);background:linear-gradient(145deg,#fff,#58dcff 32%,#d34ae7 65%,#ffc64d)}#timesGameView[data-boss="omega"] .times-boss-avatar{animation:omegaChromatic .8s linear infinite alternate}
#timesGameView[data-boss-phase="1"] .times-boss-avatar{transform:scale(1.04)}#timesGameView[data-boss-phase="2"] .times-boss-avatar{animation:bossRage .36s ease-in-out infinite alternate}
@keyframes bossGlitch{50%{transform:translateX(2px) skewX(4deg);filter:hue-rotate(14deg)}100%{transform:translateX(-2px) skewX(-3deg)}}@keyframes omegaChromatic{to{filter:drop-shadow(0 0 12px #fff) hue-rotate(35deg)}}@keyframes bossRage{to{transform:scale(1.08);filter:drop-shadow(0 0 14px var(--boss-glow,#fff)) brightness(1.15)}}
@media(max-width:650px){.bottom-nav{grid-template-columns:repeat(4,1fr);width:calc(100% - 10px)}.times-pad-key{min-height:58px}.times-boss-panel{grid-template-columns:48px minmax(90px,.7fr) 1fr auto!important}.times-boss-avatar{width:46px;height:46px}.times-boss-avatar .boss-shell{inset:3px}.times-boss-avatar .eye-a{left:8px}.times-boss-avatar .eye-b{right:8px}.times-boss-copy span{font-size:.58rem}}

/* V36 • Large in-arena boss characters */
.times-boss-panel>.times-boss-avatar{display:grid!important;min-width:58px!important;flex-direction:initial!important}
.times-arena-boss-character{position:absolute;z-index:5;left:50%;top:94px;transform:translateX(-50%);width:136px;height:118px;opacity:.82;pointer-events:none;filter:drop-shadow(0 0 22px var(--boss-glow,#68eaff));transition:opacity .2s ease,transform .2s ease}
.times-arena-boss-character.hidden{display:none}.times-arena-boss-character .boss-shell{position:absolute;inset:7px 15px 18px;background:linear-gradient(145deg,var(--boss-hi,#8ff5ff),var(--boss-mid,#1aa9c9) 48%,var(--boss-lo,#0b4260));clip-path:polygon(50% 0,91% 20%,100% 67%,73% 100%,27% 100%,0 67%,9% 20%);box-shadow:inset 0 0 0 3px rgba(255,255,255,.17),inset 0 -18px 24px rgba(0,0,0,.3)}
.times-arena-boss-character .boss-eye{position:absolute;z-index:2;top:47px;width:29px;height:8px;border-radius:99px;background:#fff;box-shadow:0 0 13px #fff,0 0 24px var(--boss-glow,#68eaff)}.times-arena-boss-character .eye-a{left:31px;transform:rotate(7deg)}.times-arena-boss-character .eye-b{right:31px;transform:rotate(-7deg)}
.times-arena-boss-character .boss-core{position:absolute;z-index:3;left:50%;bottom:25px;transform:translateX(-50%);width:25px;height:25px;border-radius:50%;background:radial-gradient(circle,#fff 0 18%,var(--boss-hi,#8ff5ff) 22% 47%,var(--boss-mid,#1aa9c9) 52%);box-shadow:0 0 20px var(--boss-glow,#68eaff)}
.times-arena-boss-character b{position:absolute;z-index:4;left:50%;top:15px;transform:translateX(-50%);font:1000 1.05rem/1 ui-monospace,monospace;color:#07111f;text-shadow:0 1px 0 rgba(255,255,255,.4)}.times-arena-boss-character small{position:absolute;left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;padding:4px 8px;border-radius:999px;background:rgba(2,8,18,.76);border:1px solid color-mix(in srgb,var(--boss-glow,#68eaff) 42%,transparent);font:.48rem/1 ui-monospace,monospace;font-weight:1000;letter-spacing:.12em;color:#fff}
#timesGameView[data-boss="null"] .times-arena-boss-character .boss-shell{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}#timesGameView[data-boss="null"] .times-arena-boss-character .eye-a{left:43px;width:50px;transform:none}#timesGameView[data-boss="null"] .times-arena-boss-character .eye-b{display:none}
#timesGameView[data-boss="phantom"] .times-arena-boss-character .boss-shell{clip-path:polygon(12% 0,88% 7%,100% 38%,78% 55%,94% 100%,50% 82%,9% 100%,23% 55%,0 34%);animation:bossGlitch .62s steps(2,end) infinite alternate}
#timesGameView[data-boss="reactor"] .times-arena-boss-character .boss-shell{clip-path:circle(47%);border-radius:50%}#timesGameView[data-boss="reactor"] .times-arena-boss-character .boss-core{width:44px;height:44px;bottom:36px}
#timesGameView[data-boss="parallax"] .times-arena-boss-character .boss-shell{clip-path:polygon(0 18%,70% 0,100% 50%,70% 100%,0 82%,30% 50%)}#timesGameView[data-boss="parallax"] .times-arena-boss-character .eye-b{top:67px;right:19px;width:21px}
#timesGameView[data-boss="prime"] .times-arena-boss-character .boss-shell{clip-path:polygon(50% 0,100% 23%,79% 45%,100% 76%,58% 100%,17% 85%,0 43%,24% 18%)}#timesGameView[data-boss="prime"] .times-arena-boss-character .boss-eye{height:5px;top:43px}
#timesGameView[data-boss="warden"] .times-arena-boss-character .boss-shell{clip-path:polygon(50% 0,62% 20%,91% 9%,81% 38%,100% 50%,81% 63%,91% 92%,62% 81%,50% 100%,38% 81%,9% 92%,19% 63%,0 50%,19% 38%,9% 9%,38% 20%)}
#timesGameView[data-boss="redline"] .times-arena-boss-character .boss-shell{clip-path:polygon(18% 0,82% 0,100% 28%,84% 100%,16% 100%,0 28%)}#timesGameView[data-boss="redline"] .times-arena-boss-character .boss-eye{width:11px;height:33px;top:38px}
#timesGameView[data-boss="omega"] .times-arena-boss-character .boss-shell{clip-path:polygon(50% 0,84% 10%,100% 42%,82% 100%,50% 84%,18% 100%,0 42%,16% 10%);background:linear-gradient(145deg,#fff,#58dcff 32%,#d34ae7 65%,#ffc64d)}
#timesGameView[data-boss-phase="1"] .times-arena-boss-character{transform:translateX(-50%) scale(1.06);opacity:.88}#timesGameView[data-boss-phase="2"] .times-arena-boss-character{animation:arenaBossRage .34s ease-in-out infinite alternate;opacity:.95}
@keyframes arenaBossRage{to{transform:translateX(-50%) scale(1.1) rotate(.7deg);filter:drop-shadow(0 0 31px var(--boss-glow,#fff)) brightness(1.16)}}
@media(max-width:650px){.times-arena-boss-character{top:98px;width:108px;height:95px}.times-arena-boss-character .boss-eye{top:37px}.times-arena-boss-character .eye-a{left:24px}.times-arena-boss-character .eye-b{right:24px}.times-arena-boss-character .boss-core{bottom:21px}.times-arena-boss-character small{font-size:.42rem}}

/* ===== V37 Sigma Exam Intelligence ===== */
.sigma-exam-intelligence-card{overflow:hidden;position:relative}
.sigma-exam-intelligence-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#64f4ff,#8d6cff,#ffca55);opacity:.9}
.sigma-predicted-grade-panel{min-width:168px;padding:16px 18px;border-radius:18px;background:linear-gradient(145deg,rgba(84,247,255,.12),rgba(139,92,246,.12));border:1px solid rgba(123,226,255,.28);text-align:center;box-shadow:inset 0 0 24px rgba(87,210,255,.05)}
.sigma-predicted-grade-panel span{display:block;font-size:.68rem;font-weight:900;letter-spacing:.14em;color:var(--muted)}
.sigma-predicted-grade-panel strong{display:block;font-size:2.65rem;line-height:1;margin:.38rem 0;color:var(--text)}
.sigma-predicted-grade-panel small{display:block;max-width:180px;color:var(--muted);line-height:1.35}
.sigma-grade-security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}
.sigma-grade-security-grid>div{padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}
.sigma-grade-security-grid>div>span{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.sigma-grade-security-grid strong{font-size:.82rem}.sigma-grade-security-grid em{font-style:normal;font-weight:900;color:var(--brand)}
.sigma-grade-track{height:8px;border-radius:99px;background:rgba(127,139,166,.18);overflow:hidden}.sigma-grade-track i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#4de4ff,#8b6cff,#ffca55);transition:width .45s ease}
.sigma-priority-panel{border:1px solid var(--line);border-radius:17px;padding:14px;background:rgba(5,12,28,.16);margin-bottom:16px}
.sigma-priority-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:10px}.sigma-priority-head span{font-size:.7rem;font-weight:950;letter-spacing:.13em;color:var(--muted)}.sigma-priority-head small{color:var(--muted)}
.sigma-priority-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.sigma-priority-list button{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 9px;text-align:left;border:1px solid var(--line);border-radius:13px;padding:10px 11px;background:var(--panel);color:var(--text);cursor:pointer}.sigma-priority-list button:hover{transform:translateY(-1px);border-color:rgba(92,226,255,.5)}.sigma-priority-list button span{grid-row:1/3;align-self:center;display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:rgba(106,114,255,.13);font-weight:950;color:var(--brand)}.sigma-priority-list button strong{font-size:.8rem;line-height:1.2}.sigma-priority-list button em{font-size:.68rem;font-style:normal;color:var(--muted)}
.sigma-exam-grade{display:inline-flex;align-items:center;border:1px solid rgba(255,196,76,.4);border-radius:999px;padding:3px 8px;font-size:.63rem;font-weight:900;letter-spacing:.07em;color:#f7c85a;background:rgba(247,200,90,.08)}
.sigma-reasoning-checkpoints{margin:12px 0;border:1px solid rgba(91,220,255,.24);border-radius:14px;background:rgba(50,140,200,.055);overflow:hidden}.sigma-reasoning-checkpoints summary{cursor:pointer;padding:11px 13px;display:flex;justify-content:space-between;gap:12px;font-weight:850}.sigma-reasoning-checkpoints summary small{font-weight:500;color:var(--muted)}
.sigma-checkpoint-fields{padding:0 12px 12px;display:grid;gap:9px}.sigma-checkpoint-fields label{display:grid;gap:5px}.sigma-checkpoint-fields label span{font-size:.76rem;font-weight:800}.sigma-checkpoint-fields label em{font-style:normal;color:var(--muted)}.sigma-checkpoint-fields input{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 11px;background:var(--input-bg,var(--panel));color:var(--text)}
.sigma-reasoning-checkpoints.submitted{padding:11px 12px}.sigma-reasoning-head{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.72rem}.sigma-reasoning-head span{color:var(--muted)}.sigma-checkpoint-result{display:flex;gap:9px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(127,139,166,.12)}.sigma-checkpoint-result>span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;font-weight:900;background:rgba(127,139,166,.12)}.sigma-checkpoint-result.correct>span{background:rgba(59,210,140,.15);color:#49dc9a}.sigma-checkpoint-result.review>span{background:rgba(255,166,61,.14);color:#ffb45e}.sigma-checkpoint-result div{display:grid;gap:2px}.sigma-checkpoint-result small{color:var(--muted)}
.sigma-diagnosis{margin-top:10px;padding:10px 11px;border-radius:11px}.sigma-diagnosis.correct{background:rgba(59,210,140,.09);border:1px solid rgba(59,210,140,.22)}.sigma-diagnosis.review{background:rgba(255,166,61,.08);border:1px solid rgba(255,166,61,.22)}.sigma-diagnosis p{margin:4px 0 0;font-size:.8rem;color:var(--muted)}
.answer-feedback.partial{background:rgba(255,190,72,.09);border-color:rgba(255,190,72,.28);color:#f3bd54}.question-partial{box-shadow:inset 3px 0 #efb947}
.sigma-diagnostic-list{display:grid;gap:7px;margin:10px 0}.sigma-diagnostic-list>div{display:grid;grid-template-columns:minmax(90px,auto) 1fr;gap:9px;padding:8px 10px;border-radius:10px;background:rgba(255,171,65,.07);border:1px solid rgba(255,171,65,.15)}.sigma-diagnostic-list strong{font-size:.75rem}.sigma-diagnostic-list span{font-size:.75rem;color:var(--muted)}
.sigma-topic-grade-badge{margin-left:auto;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:7px 10px;border:1px solid rgba(92,226,255,.24);border-radius:12px;background:rgba(92,226,255,.055)}.sigma-topic-grade-badge span{font-size:.6rem;letter-spacing:.1em;color:var(--muted);font-weight:900}.sigma-topic-grade-badge strong{font-size:.75rem;color:var(--brand)}.sigma-topic-grade-badge small{font-size:.67rem;color:var(--muted)}
@media(max-width:760px){.sigma-grade-security-grid,.sigma-priority-list{grid-template-columns:1fr}.sigma-predicted-grade-panel{width:100%;min-width:0}.sigma-priority-head{align-items:flex-start;flex-direction:column}.v19-readiness-main{flex-wrap:wrap}.sigma-reasoning-checkpoints summary{flex-direction:column;gap:3px}}

/* ===== V38 SIGMA DAILY ===== */
.sigma-daily-card{margin:18px 0 22px;padding:22px;border:1px solid rgba(255,209,71,.38);border-radius:24px;background:linear-gradient(135deg,rgba(14,22,48,.98),rgba(37,16,64,.96));box-shadow:0 18px 44px rgba(7,10,28,.26),inset 0 0 40px rgba(67,211,255,.04);color:#f8fbff;position:relative;overflow:hidden}
.sigma-daily-card:before{content:"Σ DAILY";position:absolute;right:-8px;top:-18px;font:900 72px/1 system-ui;letter-spacing:-5px;color:rgba(255,255,255,.035);pointer-events:none}
.sigma-daily-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;position:relative;z-index:1}.sigma-daily-copy h3{font-size:clamp(1.45rem,3vw,2.15rem);margin:4px 0 8px}.sigma-daily-copy>p:not(.eyebrow){margin:0;color:#c8d2ef;max-width:760px}.sigma-daily-focus{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.sigma-daily-focus span{display:flex;gap:7px;align-items:center;padding:8px 10px;border:1px solid rgba(119,218,255,.2);border-radius:12px;background:rgba(9,16,38,.55);font-weight:700;font-size:.86rem}.sigma-daily-focus small{color:#72dfff;font-weight:900;font-size:.63rem;letter-spacing:.06em}.sigma-daily-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.sigma-daily-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(86px,1fr));gap:9px}.sigma-daily-scoreboard>div{min-width:92px;text-align:center;padding:13px 9px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(3,8,24,.58)}.sigma-daily-scoreboard span{display:block;font-size:1.1rem}.sigma-daily-scoreboard strong{display:block;font:900 1.35rem/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#fff;margin:4px 0}.sigma-daily-scoreboard small{color:#9eabc9;font-size:.67rem;text-transform:uppercase;letter-spacing:.06em}.sigma-daily-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:18px;position:relative;z-index:1}.sigma-daily-calendar span{height:44px;border-radius:11px;background:rgba(2,7,22,.55);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;gap:6px;color:#8995b6}.sigma-daily-calendar span.today{border-color:#ffd147}.sigma-daily-calendar span.done{background:rgba(23,170,108,.16);border-color:rgba(67,238,163,.42);color:#b8ffda}.sigma-daily-calendar span.protected{background:rgba(112,74,214,.2);border-color:rgba(180,145,255,.5);color:#e3d6ff}.sigma-daily-calendar em{font-style:normal;font-weight:900}.sigma-daily-calendar i{font-style:normal}.sigma-daily-week-track{height:6px;margin:10px 0 9px;background:rgba(255,255,255,.09);border-radius:999px;overflow:hidden}.sigma-daily-week-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#4cddff,#ffd147);border-radius:inherit;transition:width .35s ease}.sigma-daily-rule{color:#8390ad;position:relative;z-index:1}
.daily-mission-dialog{border:0;padding:0;background:transparent;width:min(760px,calc(100% - 22px));max-width:760px}.daily-mission-dialog::backdrop{background:rgba(2,5,16,.82);backdrop-filter:blur(9px)}.daily-mission-shell{position:relative;max-height:min(88vh,900px);overflow:auto;border:1px solid rgba(121,210,255,.28);border-radius:24px;padding:24px;background:linear-gradient(160deg,#0b1025,#15112c 60%,#091522);color:#f7f9ff;box-shadow:0 30px 90px rgba(0,0,0,.55)}.daily-dialog-top{display:flex;justify-content:space-between;gap:14px;padding-right:36px}.daily-dialog-top>div{display:flex;flex-direction:column;gap:3px}.daily-dialog-top span{color:#62dcff;font-size:.7rem;font-weight:900;letter-spacing:.08em}.daily-dialog-top strong{font-size:1.35rem}.daily-dialog-top em{font-style:normal;color:#ffd861;font-size:.72rem;font-weight:900;letter-spacing:.08em}.daily-dialog-track{height:5px;margin:15px 0 18px;background:rgba(255,255,255,.09);border-radius:99px;overflow:hidden}.daily-dialog-track i{display:block;height:100%;background:linear-gradient(90deg,#55e2ff,#ffe168);border-radius:inherit}.daily-question-card{padding:20px;border:1px solid rgba(255,255,255,.11);border-radius:19px;background:rgba(3,8,24,.52)}.daily-question-card.correct{border-color:rgba(69,235,160,.35)}.daily-question-card.review{border-color:rgba(255,109,105,.35)}.daily-question-context{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:18px}.daily-question-context span{padding:5px 8px;border-radius:8px;background:rgba(74,205,255,.12);color:#74ddff;font-weight:900;font-size:.68rem;letter-spacing:.06em}.daily-question-context strong{font-size:.9rem}.daily-question-context small{width:100%;color:#8f9bbb}.daily-question-text{font-size:clamp(1.18rem,3vw,1.6rem);font-weight:800;line-height:1.45;margin:12px 0}.daily-question-marks{text-align:right;color:#9eabc4;font-size:.78rem}.daily-answer-label{display:block;margin:18px 0 7px;color:#b8c4dd;font-weight:800}.daily-answer-input{width:100%;box-sizing:border-box;border:1px solid rgba(123,216,255,.32);border-radius:13px;padding:14px 15px;background:#070d20;color:#fff;font-size:1.05rem;outline:none}.daily-answer-input:focus{border-color:#65dfff;box-shadow:0 0 0 3px rgba(101,223,255,.12)}.daily-answer-feedback{margin-top:18px;padding:14px;border-radius:13px}.daily-answer-feedback.correct{background:rgba(40,189,124,.12);border:1px solid rgba(64,232,157,.3)}.daily-answer-feedback.review{background:rgba(222,72,84,.1);border:1px solid rgba(255,103,112,.26)}.daily-answer-feedback strong{display:block;margin-bottom:5px}.daily-answer-feedback p{margin:0 0 6px;color:#dce4f6}.daily-answer-feedback small{color:#9eabc3}.daily-dialog-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px}.daily-complete-screen{text-align:center;padding:20px 4px 6px}.daily-complete-kicker{display:inline-block;color:#67e3ff;font-weight:900;letter-spacing:.13em;font-size:.72rem;margin-bottom:8px}.daily-complete-screen>strong{display:block;font:900 clamp(3.5rem,12vw,6rem)/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:#ffe06b;text-shadow:0 0 24px rgba(255,222,100,.22)}.daily-complete-screen h2{margin:8px 0 10px}.daily-complete-screen>p{color:#aeb9d2;max-width:570px;margin:0 auto 20px}.daily-complete-next,.daily-week-unlock{margin:10px auto;padding:13px 16px;max-width:560px;border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(2,7,20,.5);display:grid;gap:3px}.daily-complete-next small,.daily-week-unlock span{font-size:.66rem;font-weight:900;letter-spacing:.09em;color:#72ddff}.daily-week-unlock.ready{border-color:rgba(255,211,75,.45);box-shadow:0 0 22px rgba(255,211,75,.08)}.daily-week-unlock.ready strong{color:#ffe171}.daily-complete-screen .daily-dialog-actions{justify-content:center}
@media(max-width:760px){.sigma-daily-main{grid-template-columns:1fr}.sigma-daily-scoreboard{grid-template-columns:repeat(3,1fr)}.sigma-daily-scoreboard>div{min-width:0;padding:10px 5px}.sigma-daily-card{padding:17px;border-radius:20px}.daily-mission-shell{padding:19px 15px}.daily-dialog-top{flex-direction:column}.sigma-daily-calendar{gap:4px}.sigma-daily-calendar span{height:38px}.sigma-daily-rule{font-size:.68rem}}

/* V39 Sigma Adaptive Mastery */
.sigma-adaptive-status{margin-top:14px;padding:14px 16px;border:1px solid rgba(77,208,225,.35);border-radius:16px;background:linear-gradient(135deg,rgba(9,29,48,.92),rgba(20,43,69,.82));display:grid;gap:7px}
.sigma-adaptive-status>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sigma-adaptive-status span{font-size:.72rem;letter-spacing:.12em;font-weight:900;color:#78dff0}.sigma-adaptive-status strong{font-size:1rem;color:#fff}.sigma-adaptive-status p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.45}.sigma-adaptive-status.as-unlocked{border-color:rgba(250,204,21,.7);box-shadow:0 0 0 1px rgba(250,204,21,.12),0 12px 30px rgba(250,204,21,.08)}
.sigma-paper-mode-card{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 18px;padding:18px 20px;border:1px solid rgba(77,208,225,.3);border-radius:18px;background:linear-gradient(135deg,rgba(8,26,45,.96),rgba(21,49,77,.88))}.sigma-paper-mode-card h3{margin:5px 0}.sigma-paper-mode-card p{margin:0;color:var(--muted);max-width:760px}.sigma-paper-mode-card label{min-width:230px;display:grid;gap:7px;font-weight:800}.sigma-paper-mode-card select{min-height:46px;border-radius:12px;padding:0 12px;background:var(--panel);color:var(--text);border:1px solid var(--line)}
.sigma-exam-grade.as-bridge,.question-topic.as-bridge{border-color:rgba(250,204,21,.7)!important;color:#ffe778!important;background:rgba(250,204,21,.08)!important}
@media(max-width:760px){.sigma-paper-mode-card{align-items:stretch;flex-direction:column}.sigma-paper-mode-card label{min-width:0;width:100%}}

/* ===== V40 Sigma Mastery Rank ladder ===== */
.sigma-rank-explainer{margin:14px 0 18px;padding:13px 14px;border:1px solid var(--stroke);border-radius:17px;background:var(--surface);box-shadow:0 8px 20px rgba(10,30,50,.04)}
.sigma-rank-explainer.compact{margin-top:10px}.sigma-rank-legend{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.sigma-rank-legend span{min-height:48px;padding:8px 6px;border-radius:12px;border:1px solid var(--stroke);display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;font-size:.72rem;font-weight:900;letter-spacing:.03em}.sigma-rank-legend b{font-size:.85rem}.sigma-rank-legend .rank-starter{background:var(--surface-soft)}.sigma-rank-legend .rank-timber{background:linear-gradient(145deg,#5b3a25,#8c5b32);color:#fff2dd;border-color:#9d6b3f}.sigma-rank-legend .rank-bronze{background:linear-gradient(145deg,#6f3a22,#b66c3d);color:#fff1e7;border-color:#ca8150}.sigma-rank-legend .rank-silver{background:linear-gradient(145deg,#c7d0da,#f2f5f8);color:#273444;border-color:#aeb8c4}.sigma-rank-legend .rank-gold{background:linear-gradient(145deg,#9d7412,#f0c94f,#ffeaa0);color:#3c2d05;border-color:#d5aa2f;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.sigma-rank-rule{margin:9px 2px 0;font-size:.78rem;color:var(--muted);line-height:1.42}
.sigma-rank-control{transition:filter .16s ease,box-shadow .16s ease,transform .16s ease,border-color .16s ease!important}.sigma-rank-control.sigma-rank-timber{background:linear-gradient(145deg,#5b3a25,#8c5b32)!important;color:#fff2dd!important;border-color:#a47245!important}.sigma-rank-control.sigma-rank-bronze{background:linear-gradient(145deg,#703b23,#b76d3e)!important;color:#fff4ec!important;border-color:#cf8452!important}.sigma-rank-control.sigma-rank-silver{background:linear-gradient(145deg,#c7d0da,#f3f6f9)!important;color:#243142!important;border-color:#aeb8c4!important;box-shadow:0 7px 18px rgba(83,99,116,.14)!important}.sigma-rank-control.sigma-rank-gold{background:linear-gradient(135deg,#8d6710,#d9a91f 42%,#f6d45f 72%,#fff0a3)!important;color:#302202!important;border-color:#edc84b!important;box-shadow:0 0 0 1px rgba(255,221,98,.35),0 9px 24px rgba(193,145,18,.25)!important;font-weight:950!important}.sigma-rank-control.sigma-rank-gold:hover{filter:brightness(1.05);transform:translateY(-1px)}
select.sigma-rank-control{font-weight:850}.sigma-rank-review-due{position:relative!important;filter:saturate(.82)!important;box-shadow:0 0 0 2px rgba(245,158,11,.55),0 8px 24px rgba(245,158,11,.14)!important;animation:sigmaRankDue 2.3s ease-in-out infinite}.sigma-review-due{font-style:normal;font-size:.68rem;font-weight:950;letter-spacing:.09em;padding:4px 7px;border-radius:999px;background:rgba(245,158,11,.16);color:#f6b52c}.sigma-module-rank-status{margin-top:8px;padding:9px 11px;border-radius:12px;background:var(--surface-soft);border:1px solid var(--stroke);display:flex;align-items:center;justify-content:space-between;gap:10px}.sigma-module-rank-status span{font-size:.76rem;font-weight:950}.sigma-module-rank-status small{font-size:.7rem;color:var(--muted);text-align:right}.sigma-adaptive-status[data-rank="gold"]{border-color:rgba(250,204,21,.72);background:linear-gradient(135deg,rgba(58,42,4,.94),rgba(95,70,8,.85));box-shadow:0 12px 30px rgba(191,145,20,.13)}.sigma-adaptive-status[data-rank="silver"]{border-color:rgba(203,213,225,.72)}.sigma-adaptive-status[data-rank="bronze"]{border-color:rgba(180,101,58,.72)}.sigma-adaptive-status[data-rank="timber"]{border-color:rgba(128,82,44,.72)}
@keyframes sigmaRankDue{0%,100%{filter:saturate(.82) brightness(1)}50%{filter:saturate(.92) brightness(1.06)}}
@media(max-width:720px){.sigma-rank-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.sigma-rank-legend .rank-gold{grid-column:1/-1}.sigma-module-rank-status{align-items:flex-start;flex-direction:column}.sigma-module-rank-status small{text-align:left}}

/* ============================================================
   V41 • Sigma Login & Accounts
   Production-style account gateway; backend connection is optional.
   ============================================================ */
.sigma-auth-screen{
  position:fixed; inset:0; z-index:12000; overflow:auto; min-height:100dvh;
  background:linear-gradient(145deg,#06101e 0%,#0a1830 46%,#112847 100%);
  color:#f7fbff;
}
.sigma-auth-screen.hidden{display:none!important}
.sigma-auth-backdrop{position:fixed;inset:0;overflow:hidden;pointer-events:none}
.sigma-auth-grid{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(114,197,255,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(114,197,255,.09) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 80%,transparent)}
.sigma-auth-orbit{position:absolute;border:1px solid rgba(111,202,255,.15);border-radius:50%;box-shadow:0 0 80px rgba(70,176,255,.08)}
.sigma-auth-orbit.orbit-a{width:620px;height:620px;right:-190px;top:-210px}
.sigma-auth-orbit.orbit-b{width:430px;height:430px;left:-170px;bottom:-160px;border-color:rgba(255,202,86,.13)}
.sigma-auth-shell{position:relative;z-index:1;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);max-width:1220px;margin:0 auto;padding:clamp(24px,4vw,64px);gap:clamp(28px,5vw,72px);align-items:center}
.sigma-auth-brand-panel{display:flex;flex-direction:column;gap:28px;padding:18px 8px}
.sigma-auth-brand .brand-name{color:#fff}
.sigma-auth-brand .brand-tagline{color:#9fb9d6}
.sigma-auth-hero{max-width:640px}
.sigma-auth-hero h1{margin:.35rem 0 1rem;font-size:clamp(2.45rem,5vw,4.7rem);line-height:.98;letter-spacing:-.045em;color:#fff}
.sigma-auth-hero>p:last-child{max-width:600px;font-size:1.08rem;line-height:1.7;color:#bed0e4}
.sigma-auth-benefits{display:grid;gap:12px;max-width:610px}
.sigma-auth-benefits>span{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:center;padding:12px 14px;border:1px solid rgba(164,208,255,.12);background:rgba(255,255,255,.035);border-radius:16px}
.sigma-auth-benefits b{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,rgba(46,176,255,.22),rgba(13,75,140,.2));border:1px solid rgba(95,195,255,.23);color:#80d7ff;font-size:1.1rem}
.sigma-auth-benefits strong,.sigma-auth-benefits small{display:block}
.sigma-auth-benefits strong{color:#f6fbff;font-size:.95rem}.sigma-auth-benefits small{margin-top:3px;color:#91aac6;line-height:1.4}
.sigma-auth-mascot-row{display:flex;align-items:center;gap:14px;color:#b9cce0;max-width:520px}
.sigma-auth-mascot-row img{width:68px;height:68px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))}
.sigma-auth-mascot-row strong,.sigma-auth-mascot-row small{display:block}.sigma-auth-mascot-row strong{color:#fff}.sigma-auth-mascot-row small{margin-top:3px;color:#8ca7c2}
.sigma-auth-card{position:relative;width:100%;max-width:520px;justify-self:end;padding:28px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(245,249,253,.97));box-shadow:0 28px 80px rgba(0,0,0,.32),0 0 0 1px rgba(255,255,255,.5) inset;color:#10233a}
.sigma-auth-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;min-height:26px}
.auth-connection-badge{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:7px 10px;border-radius:999px;background:#edf3f8;color:#65788d}
.auth-connection-badge.connected{background:#e8f8ee;color:#167443}.auth-connection-badge.connected:before{content:"●"}
.auth-connection-badge.pending:before{content:"●";color:#c58c24}
.auth-close-btn{border:0;background:#edf2f7;color:#39506a;width:34px;height:34px;border-radius:50%;font-size:1.3rem;cursor:pointer}.auth-close-btn.hidden{display:none}
.sigma-auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#eaf0f6;border-radius:14px;padding:4px;margin-bottom:24px}
.auth-tab{border:0;background:transparent;border-radius:11px;padding:11px 12px;color:#6a7b8d;font-weight:800;cursor:pointer}
.auth-tab.active{background:#fff;color:#0f5d9b;box-shadow:0 4px 12px rgba(29,65,99,.11)}
.auth-panel{display:none}.auth-panel.active{display:block;animation:authPanelIn .2s ease-out}@keyframes authPanelIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.auth-panel-heading{margin-bottom:20px}.auth-panel-heading.centered{text-align:center}.auth-panel-heading h2{margin:.25rem 0 .45rem;font-size:1.75rem;letter-spacing:-.03em;color:#10233a}.auth-panel-heading p:last-child{margin:0;color:#6b7d91;line-height:1.55}.auth-panel-heading .eyebrow{color:#2e78ae}
.sigma-auth-form{display:grid;gap:15px}.sigma-auth-form label>span{display:block;margin-bottom:7px;font-size:.83rem;font-weight:800;color:#334b64}.sigma-auth-form input[type="email"],.sigma-auth-form input[type="password"],.sigma-auth-form input[type="text"],.sigma-auth-form select{width:100%;min-height:49px;border:1px solid #ccd8e4;border-radius:12px;background:#fff;padding:0 14px;font:inherit;color:#10233a;outline:none;transition:border-color .15s,box-shadow .15s}.sigma-auth-form input:focus,.sigma-auth-form select:focus{border-color:#4a9bd4;box-shadow:0 0 0 3px rgba(48,144,210,.12)}
.password-field{display:grid;grid-template-columns:1fr auto;border:1px solid #ccd8e4;border-radius:12px;background:#fff;overflow:hidden}.password-field:focus-within{border-color:#4a9bd4;box-shadow:0 0 0 3px rgba(48,144,210,.12)}.password-field input{border:0!important;border-radius:0!important;box-shadow:none!important}.password-toggle{border:0;background:#f3f7fa;padding:0 12px;color:#39739d;font-weight:800;cursor:pointer;font-size:.78rem}
.auth-form-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.remember-row,.auth-consent-row{display:flex!important;align-items:flex-start;gap:9px;color:#617489;font-size:.82rem!important;line-height:1.45}.remember-row span,.auth-consent-row span{margin:0!important;font-weight:600!important;color:#617489!important}.remember-row input,.auth-consent-row input{margin-top:2px;accent-color:#1c81c5}.auth-text-btn,.auth-back-btn{border:0;background:transparent;color:#1979b8;font-weight:800;cursor:pointer;padding:4px 0}.auth-back-btn{margin-bottom:18px}
.auth-primary-btn{width:100%;justify-content:center}.auth-status{min-height:20px;margin:0;font-size:.84rem;line-height:1.45;color:#63768a}.auth-status.error{color:#b63737}.auth-status.success{color:#147245}.auth-smallprint{margin:-4px 0 0;text-align:center;color:#7b8b9b;font-size:.76rem}
.auth-divider{display:flex;align-items:center;gap:12px;color:#92a0ae;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin:20px 0 14px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#dce4ec}.sigma-guest-btn{width:100%;justify-content:center}.sigma-guest-note{margin:10px 10px 0;text-align:center;color:#77889a;font-size:.76rem;line-height:1.5}
.auth-verify-icon{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;margin:6px auto 18px;background:linear-gradient(145deg,#e7f6ff,#d8ecfa);font-size:1.9rem;box-shadow:inset 0 0 0 1px #c6e4f6}
.sigma-cloud-account-card{border:1px solid rgba(50,142,203,.22)!important;background:linear-gradient(145deg,rgba(232,247,255,.88),rgba(247,251,255,.96))!important}.sigma-cloud-account-card .account-facts{margin-top:12px}.cloud-account-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.account-state-pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:900;background:#eaf1f7;color:#5f7488}.account-state-pill.cloud{background:#e7f7ed;color:#197146}.account-state-pill.guest{background:#fff3df;color:#936118}
@media(max-width:860px){.sigma-auth-shell{grid-template-columns:1fr;max-width:620px;padding:22px 16px 36px;gap:18px}.sigma-auth-brand-panel{padding:4px 4px 0;gap:16px}.sigma-auth-hero h1{font-size:clamp(2rem,9vw,3.25rem)}.sigma-auth-benefits{display:none}.sigma-auth-mascot-row{display:none}.sigma-auth-card{justify-self:stretch;max-width:none;border-radius:24px;padding:22px}.sigma-auth-brand{justify-content:center}.sigma-auth-hero{text-align:center}.sigma-auth-hero>p:last-child{font-size:.96rem;margin-left:auto;margin-right:auto}}
@media(max-width:480px){.sigma-auth-shell{padding:14px 10px 24px}.sigma-auth-card{padding:18px 16px;border-radius:21px}.sigma-auth-hero h1{font-size:2.05rem}.sigma-auth-tabs{margin-bottom:20px}.auth-form-row{align-items:flex-start}.sigma-auth-form{gap:13px}}

/* ===== V42 Sigma Identity + V43 Adult Ecosystem ===== */
.sigma-top-profile{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;border-radius:15px;padding:5px 9px 5px 6px;display:flex;align-items:center;gap:8px;min-width:0;cursor:pointer}
.sigma-top-profile>span:last-child{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.sigma-top-profile strong{font-size:.76rem;max-width:105px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sigma-top-profile small{font-size:.58rem;color:#c8d8e8}
.sigma-avatar-wrap{position:relative;display:inline-grid;place-items:center;border-radius:22%;flex:0 0 auto;padding:3px;background:#243a53;box-shadow:0 0 0 2px rgba(255,255,255,.12)}.sigma-avatar-wrap img{display:block;width:100%;height:100%;border-radius:18%;object-fit:cover}.sigma-avatar-wrap.top{width:38px;height:38px}.sigma-avatar-wrap.tiny{width:34px;height:34px}.sigma-avatar-wrap.hero{width:132px;height:132px;padding:7px;border-radius:28%}
.sigma-avatar-wrap.sigma-frame-bronze{background:linear-gradient(135deg,#6d3e1d,#c37b3d,#6b3a1c);box-shadow:0 0 0 2px #d09a65,0 8px 20px rgba(97,54,23,.22)}.sigma-avatar-wrap.sigma-frame-silver{background:linear-gradient(135deg,#7f8995,#e4e9ee,#7c8791);box-shadow:0 0 0 2px #dce5ec,0 8px 20px rgba(87,105,124,.23)}.sigma-avatar-wrap.sigma-frame-gold{background:linear-gradient(135deg,#8f6815,#f3d26d,#b7841a);box-shadow:0 0 0 2px #ffe49a,0 0 24px rgba(226,179,58,.35)}
.sigma-profile-hero{display:grid;grid-template-columns:auto 1fr minmax(300px,.8fr);gap:26px;align-items:center;border-radius:28px;padding:28px;border:1px solid #dbe4ed;background:linear-gradient(135deg,#fff,#f4f8fc);box-shadow:0 12px 34px rgba(16,36,63,.08);margin-bottom:22px}.sigma-profile-copy>span{font-size:.66rem;letter-spacing:.15em;font-weight:900;color:#8b6c24}.sigma-profile-copy h3{font-size:2rem;margin:5px 0 3px}.sigma-profile-copy p{margin:0 0 13px;color:var(--muted)}.sigma-frame-track{height:8px;background:#e5ebf1;border-radius:99px;overflow:hidden;max-width:380px}.sigma-frame-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#b87539,#d3dde7,#d7aa34);border-radius:inherit;transition:width .35s ease}.sigma-profile-copy>small{display:block;margin-top:7px;color:#647388}.sigma-profile-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.sigma-profile-stats div{padding:14px;border-radius:16px;background:#fff;border:1px solid #e2e8ef}.sigma-profile-stats strong{display:block;font-size:1.25rem}.sigma-profile-stats small{font-size:.7rem;color:#6d7b8e}.sigma-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sigma-profile-card{background:#fff;border:1px solid #e0e6ed;border-radius:22px;padding:22px}.adult-card-head,.adult-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.adult-card-head h3,.adult-panel-head h3{margin:4px 0 0}.sigma-achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.sigma-achievement{display:flex;gap:10px;align-items:center;padding:11px;border-radius:14px;background:#f6f8fb;border:1px solid #e6ebf0}.sigma-achievement>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e8edf3;color:#8b98a8;font-weight:900}.sigma-achievement div{display:flex;flex-direction:column}.sigma-achievement strong{font-size:.78rem}.sigma-achievement small{font-size:.65rem;color:#758294;line-height:1.3}.sigma-achievement.earned{background:#fffaf0;border-color:#ecdba9}.sigma-achievement.earned>span{background:#f5d67b;color:#624812}
.sigma-leaderboard{margin-top:15px}.sigma-leader-row{display:grid;grid-template-columns:26px auto 1fr auto;align-items:center;gap:9px;padding:11px 6px;border-bottom:1px solid #edf0f3}.sigma-leader-row>b{font-size:1.1rem}.sigma-leader-row>span{display:flex;flex-direction:column}.sigma-leader-row small{color:#768397;font-size:.66rem}.sigma-leader-row em{font-style:normal;font-weight:900}.sigma-leader-cloud{margin-top:12px;padding:13px;border-radius:13px;background:#f1f5f9;display:flex;flex-direction:column;gap:3px}.sigma-leader-cloud small{color:#68768a}.adult-inline-toggle{display:flex;gap:7px;align-items:center;font-size:.72rem;font-weight:800}.adult-inline-toggle input{width:18px;height:18px}
.sigma-identity-dialog{border:0;padding:0;border-radius:26px;width:min(780px,calc(100% - 24px));max-height:90vh;background:transparent}.sigma-identity-dialog::backdrop,.parent-report-dialog::backdrop{background:rgba(5,15,26,.72);backdrop-filter:blur(7px)}.sigma-identity-shell{background:#fff;border-radius:26px;padding:27px;max-height:90vh;overflow:auto;box-shadow:0 30px 90px rgba(0,0,0,.35)}.sigma-identity-head span,.sigma-identity-label{font-size:.67rem;letter-spacing:.14em;font-weight:900;color:#8d6c25}.sigma-identity-head h2{margin:5px 0}.sigma-identity-head p{color:#677588;margin:0 0 18px}.sigma-identity-field{display:flex;flex-direction:column;gap:6px;margin:15px 0}.sigma-identity-field>span{font-weight:850;font-size:.78rem}.sigma-identity-field input,.sigma-identity-field select{padding:12px 13px;border:1px solid #cfd8e2;border-radius:12px;font:inherit}.sigma-identity-field small{color:#77869a}.sigma-avatar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:9px}.sigma-avatar-choice{border:2px solid transparent;background:#f3f6f9;border-radius:16px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}.sigma-avatar-choice img{width:72px;height:72px;border-radius:18px}.sigma-avatar-choice strong{font-size:.76rem}.sigma-avatar-choice small{font-size:.62rem;color:#738195}.sigma-avatar-choice.selected{border-color:#d1a63a;background:#fff9e8;box-shadow:0 7px 20px rgba(188,143,35,.16)}.sigma-identity-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}
.adult-view{--adult-bg:#f5f8fb}.adult-preview-badge{padding:8px 11px;border-radius:999px;background:#eaf1f7;color:#486078;font-size:.67rem;font-weight:900;letter-spacing:.05em}.adult-cloud-note{display:flex;gap:15px;padding:17px 19px;border:1px solid #cdddeb;border-radius:18px;background:#eef7ff;margin-bottom:17px}.adult-cloud-note>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#fff;font-size:1.2rem}.adult-cloud-note p{margin:4px 0 0;color:#61758a}.adult-metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:17px}.adult-metric-grid article{padding:17px;border-radius:18px;background:#fff;border:1px solid #dfe6ed;box-shadow:0 7px 22px rgba(17,42,68,.05)}.adult-metric-grid small{display:block;text-transform:uppercase;letter-spacing:.08em;color:#758499;font-size:.62rem;font-weight:850}.adult-metric-grid strong{display:block;font-size:1.65rem;margin:4px 0}.adult-metric-grid span{font-size:.7rem;color:#738195}.adult-insight-card{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:20px;border-radius:21px;background:linear-gradient(135deg,#0b2038,#173c63);color:#fff;margin-bottom:17px;box-shadow:0 11px 28px rgba(12,35,59,.2)}.adult-insight-mark{width:52px;height:52px;border-radius:15px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:1.5rem;font-weight:900}.adult-insight-card span{font-size:.63rem;font-weight:900;letter-spacing:.15em;color:#f0d47e}.adult-insight-card h3{margin:4px 0}.adult-insight-card p{margin:0;color:#d5e2ef}.adult-panel{background:#fff;border:1px solid #dfe6ed;border-radius:21px;padding:20px;margin-bottom:17px}.adult-panel-head{margin-bottom:14px}.adult-panel-head small{color:#758499}.adult-table-head,.adult-learner-row{display:grid;grid-template-columns:minmax(190px,1.4fr) .55fr .5fr .55fr minmax(160px,1fr) auto;gap:10px;align-items:center}.adult-table-head{font-size:.61rem;text-transform:uppercase;letter-spacing:.07em;color:#7a8799;font-weight:850;padding:0 10px 8px}.adult-learner-row{border-top:1px solid #edf0f3;padding:11px 10px}.adult-learner-person{display:flex;gap:9px;align-items:center}.adult-learner-person>span{display:flex;flex-direction:column}.adult-learner-person small{color:#788599}.adult-module-heatmap{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.adult-module-tile{padding:13px 10px;border-radius:15px;border:1px solid #e1e6eb;display:flex;min-height:108px;flex-direction:column;gap:4px}.adult-module-tile small{font-weight:900;color:#738197}.adult-module-tile strong{font-size:.8rem}.adult-module-tile span{font-size:.67rem;color:#68778a;margin-top:auto}.adult-module-tile em{font-size:.62rem;font-style:normal;font-weight:900}.rank-starter{background:#f3f5f7!important}.rank-timber{background:#f1e2d4!important;border-color:#d6b99f!important}.rank-bronze{background:#f7e4d5!important;border-color:#c58b5b!important}.rank-silver{background:#edf2f6!important;border-color:#aebdca!important}.rank-gold{background:#fff4c9!important;border-color:#d5b24d!important}.adult-topic-details{margin-top:13px;border-top:1px solid #e7ebef;padding-top:12px}.adult-topic-details summary{cursor:pointer;font-weight:850;color:#233c56}.adult-topic-heatmap{margin-top:13px;display:grid;gap:13px}.adult-topic-heatmap section header{display:flex;justify-content:space-between;margin-bottom:6px}.adult-topic-heatmap section header small{color:#778598}.adult-topic-heatmap section>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:4px}.adult-topic-cell{height:32px;border:1px solid #dfe5eb;border-radius:7px;padding:0;font-size:.61rem;font-weight:900;cursor:pointer;color:#2a3d52}.adult-topic-cell.review-due{box-shadow:inset 0 0 0 2px #b7473e}.adult-two-col{display:grid;grid-template-columns:1fr 1fr;gap:17px}.adult-intervention-list{display:grid;gap:8px}.adult-intervention-card{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:10px;border-radius:14px;background:#f6f8fa}.adult-intervention-card>b{width:28px;height:28px;border-radius:50%;background:#e7edf3;display:grid;place-items:center}.adult-intervention-card>div{display:flex;flex-direction:column}.adult-intervention-card span,.adult-intervention-card small{color:#758397;font-size:.67rem}.adult-assignment-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.adult-assignment-form label{display:flex;flex-direction:column;gap:5px}.adult-assignment-form label span{font-size:.68rem;font-weight:850;color:#5f7083}.adult-assignment-form select{border:1px solid #d3dce5;border-radius:10px;padding:9px;background:#fff}.adult-assignment-form .btn{grid-column:1/-1}.adult-assignments{display:grid;gap:7px;margin-top:13px}.adult-assignment{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #edf0f3;padding-top:9px}.adult-assignment>div{display:flex;flex-direction:column}.adult-assignment span,.adult-assignment small{font-size:.68rem;color:#738195}.adult-privacy-note{font-size:.69rem;color:#758397;line-height:1.5}.adult-settings-actions{display:flex;gap:9px;flex-wrap:wrap;margin:13px 0}.featured-adult-card{border-color:#cbddec;background:linear-gradient(145deg,#fff,#f2f8fd)}
.parent-hero-card{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:24px;border-radius:23px;background:linear-gradient(135deg,#fff,#f6fbff);border:1px solid #dce5ee;margin-bottom:16px}.parent-hero-card>div:first-child>span{font-size:.64rem;letter-spacing:.14em;font-weight:900;color:#876b2d}.parent-hero-card h3{font-size:1.7rem;margin:5px 0}.parent-hero-card p{max-width:780px;margin:0;color:#617187;line-height:1.55}.parent-grade-pair{display:flex;align-items:center;gap:12px}.parent-grade-pair>div{min-width:100px;text-align:center;padding:13px;border-radius:15px;background:#fff;border:1px solid #e0e6ec}.parent-grade-pair small{display:block;color:#7a8798}.parent-grade-pair strong{font-size:1.35rem}.parent-grade-pair i{font-style:normal;color:#8594a7}.parent-grade-security{padding:18px 20px;border-radius:19px;background:#fff;border:1px solid #dfe6ed;margin-bottom:17px}.parent-grade-security>div:first-child{display:flex;justify-content:space-between}.parent-grade-security>div:first-child span{font-size:.67rem;font-weight:900;letter-spacing:.1em;color:#6f7c8e}.parent-grade-track{height:10px!important;border-radius:99px;background:#e6edf3;margin:9px 0;overflow:hidden}.parent-grade-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,#7897b7,#d1aa42);border-radius:inherit}.parent-grade-security p{margin:0;font-size:.72rem;color:#768496}.parent-topic-list{display:grid;gap:8px}.parent-topic-list>div{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:10px;border-radius:13px;background:#f5f8fa}.parent-topic-list span{width:29px;height:29px;border-radius:50%;background:#dfefe8;color:#236e52;display:grid;place-items:center;font-weight:900}.parent-topic-list.focus span{background:#fff1d8;color:#91641e}.parent-topic-list em{font-size:.67rem;font-style:normal;color:#718094}.parent-achievement-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.parent-achievement-list>div{padding:12px;border-radius:14px;background:#fff9e9;border:1px solid #ead7a2;display:flex;flex-direction:column;gap:3px}.parent-achievement-list>div>span{color:#bb8b17}.parent-achievement-list small{font-size:.67rem;color:#758396}.parent-report-setting{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:17px 19px;border-radius:18px;background:#eef5fb;border:1px solid #d2e0ec;margin-bottom:12px}.parent-report-setting p{margin:4px 0 0;color:#64768a}.parent-report-dialog{border:0;background:transparent;width:min(700px,calc(100% - 20px))}.adult-report-dialog-shell{max-width:none}.adult-report-sheet{padding:6px}.adult-report-brand{display:flex;gap:10px;align-items:center}.adult-report-brand>span{width:45px;height:45px;border-radius:13px;background:#102d4c;color:#fff;display:grid;place-items:center;font-size:1.3rem;font-weight:900}.adult-report-brand>div{display:flex;flex-direction:column}.adult-report-brand small{font-size:.62rem;letter-spacing:.12em;color:#806625;font-weight:900}.adult-report-sheet h3{font-size:1.6rem;margin:20px 0 12px}.adult-report-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.adult-report-metrics span{padding:11px;border-radius:12px;background:#f3f6f9}.adult-report-metrics small{display:block;color:#788698}.adult-report-metrics strong{font-size:1.2rem}.adult-report-sheet p{line-height:1.55}.adult-report-note{background:#f2f6f9;padding:11px;border-radius:11px}
[data-theme="dark"] .sigma-profile-hero,[data-theme="dark"] .sigma-profile-card,[data-theme="dark"] .adult-panel,[data-theme="dark"] .adult-metric-grid article,[data-theme="dark"] .parent-grade-security,[data-theme="dark"] .sigma-identity-shell{background:#101d2c;border-color:#2a3b4d;color:#e7eef5}[data-theme="dark"] .sigma-profile-stats div,[data-theme="dark"] .parent-grade-pair>div{background:#172638;border-color:#304458}[data-theme="dark"] .adult-cloud-note,[data-theme="dark"] .featured-adult-card,[data-theme="dark"] .parent-report-setting{background:#14283a;border-color:#29445c}[data-theme="dark"] .parent-hero-card{background:linear-gradient(135deg,#101d2c,#13283a);border-color:#2b4053}
@media(max-width:900px){.sigma-profile-hero{grid-template-columns:auto 1fr}.sigma-profile-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.sigma-profile-grid,.adult-two-col{grid-template-columns:1fr}.adult-module-heatmap{grid-template-columns:repeat(4,1fr)}.adult-metric-grid{grid-template-columns:repeat(2,1fr)}.adult-table-head{display:none}.adult-learner-row{grid-template-columns:1fr auto auto}.adult-learner-row>span,.adult-learner-row>b:nth-of-type(2){display:none}.parent-achievement-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.sigma-top-profile>span:last-child{display:none}.sigma-top-profile{padding:4px}.sigma-avatar-wrap.top{width:34px;height:34px}.top-actions{gap:5px}.privacy-pill{display:none}.sigma-profile-hero{grid-template-columns:1fr;text-align:center}.sigma-profile-hero-avatar{display:flex;justify-content:center}.sigma-profile-stats{grid-column:auto;grid-template-columns:repeat(2,1fr)}.sigma-frame-track{margin:auto}.sigma-achievement-grid{grid-template-columns:1fr}.sigma-avatar-grid{grid-template-columns:repeat(2,1fr)}.sigma-avatar-choice img{width:82px;height:82px}.sigma-identity-actions{flex-direction:column}.adult-metric-grid{grid-template-columns:1fr 1fr}.adult-insight-card{grid-template-columns:auto 1fr}.adult-insight-card .btn{grid-column:1/-1}.adult-module-heatmap{grid-template-columns:repeat(2,1fr)}.adult-learner-row{grid-template-columns:1fr auto}.adult-learner-row>b,.adult-learner-row>span{display:none}.adult-assignment-form{grid-template-columns:1fr}.parent-hero-card{grid-template-columns:1fr}.parent-grade-pair{justify-content:center}.parent-achievement-list{grid-template-columns:1fr 1fr}.adult-report-metrics{grid-template-columns:1fr 1fr}.section-head{align-items:flex-start}.adult-preview-badge{display:none}}


/* ============================================================
   V44 • Sigma App Controls — version, updates and device removal
   ============================================================ */
.sigma-version-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 9px;border-radius:999px;border:1px solid rgba(80,173,235,.3);background:rgba(26,96,150,.12);color:var(--brand,#1778b5);font-size:.66rem;font-weight:950;letter-spacing:.08em;white-space:nowrap}
.sigma-app-controls-card{border-color:rgba(57,144,204,.34);background:linear-gradient(145deg,var(--surface),var(--surface-soft))}
.sigma-app-version-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.sigma-app-version-row h3{margin-bottom:5px}.sigma-app-version-row p{margin:0}.sigma-installed-version{min-width:86px;padding:10px 13px;border:1px solid var(--stroke);border-radius:14px;background:var(--surface);text-align:center}.sigma-installed-version small,.sigma-installed-version strong{display:block}.sigma-installed-version small{font-size:.61rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.sigma-installed-version strong{font-size:1.15rem;margin-top:2px}.sigma-app-update-status{margin:14px 0 12px;padding:10px 12px;border-radius:12px;border:1px solid var(--stroke);background:var(--surface-soft);font-size:.78rem;color:var(--muted)}.sigma-app-update-status[data-tone="available"]{border-color:rgba(25,143,94,.38);background:rgba(25,143,94,.08);color:#16704d;font-weight:800}.sigma-app-update-status[data-tone="checking"]{border-color:rgba(55,137,196,.38);color:var(--text)}.sigma-app-update-status[data-tone="warning"]{border-color:rgba(203,126,26,.38);background:rgba(203,126,26,.07);color:#8f5b13}.sigma-app-control-actions{align-items:center}.sigma-app-removal-dialog{border:0;background:transparent;width:min(650px,calc(100% - 22px))}.sigma-app-removal-dialog::backdrop{background:rgba(4,13,24,.72);backdrop-filter:blur(4px)}.sigma-app-removal-shell{max-width:none}.sigma-removal-instructions{margin:15px 0;padding:15px 17px;border:1px solid var(--stroke);border-radius:15px;background:var(--surface-soft)}.sigma-removal-instructions ol{margin:0;padding-left:22px;display:grid;gap:8px}.sigma-removal-instructions p{margin:12px 0 0;color:var(--muted);font-size:.78rem}.sigma-removal-warning{padding:12px 14px;border-radius:13px;background:rgba(190,57,57,.07);border:1px solid rgba(190,57,57,.23);font-size:.75rem;line-height:1.5}
[data-theme="dark"] .sigma-app-update-status[data-tone="available"]{color:#8ce0b7}.top-actions .sigma-version-badge{flex:none}
@media(max-width:650px){.sigma-version-badge{padding:3px 7px;font-size:.6rem}.sigma-app-version-row{align-items:stretch}.sigma-installed-version{min-width:70px}.sigma-app-control-actions{display:grid;grid-template-columns:1fr}.sigma-app-control-actions .btn{width:100%}}


/* ======================================================================
   V46 • Sigma World Visual Upgrade
   The Modules tab now uses a premium illustrated world map that matches the
   original concept more closely, while the module/topic logic remains intact.
   ====================================================================== */
.sigma-world-screen{padding:2px 0 28px}
.sigma-world-title-row{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin:6px 0 20px}
.sigma-world-title-row h2{margin:3px 0 4px;font-size:clamp(2rem,5vw,3.15rem);letter-spacing:-.045em}
.sigma-world-title-row p{margin:0}
.sigma-world-overall{width:min(270px,36vw);padding:15px 17px;border:1px solid #dbe5ef;border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 14px 34px rgba(21,52,88,.08);backdrop-filter:blur(10px);display:grid;grid-template-columns:1fr auto;gap:3px 12px}
.sigma-world-overall>span{font-size:.65rem;font-weight:900;letter-spacing:.12em;color:#69809a}
.sigma-world-overall>strong{grid-row:1/3;grid-column:2;font-size:1.8rem;color:#6649dd;align-self:center}
.sigma-world-overall>small{font-weight:750;color:#506479}
.sigma-world-overall-bar{height:7px;background:#e6ebf3;border-radius:99px;overflow:hidden;grid-column:1/-1;margin-top:8px}
.sigma-world-overall-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#377be8,#7752e8);border-radius:inherit;transition:width .45s ease}
.sigma-world-map-shell{position:relative;aspect-ratio:4/3;min-height:760px;border:1px solid #dbe7f0;border-radius:34px;overflow:hidden;background-image:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.08)),url("./assets/sigma-world-map-v46.png");background-size:cover;background-position:center center;box-shadow:0 18px 48px rgba(17,57,91,.09)}
.sigma-world-map-shell:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 0 32%,rgba(255,255,255,.08) 48%,rgba(230,245,255,.12) 63%,rgba(255,255,255,.22) 100%),linear-gradient(180deg,rgba(245,250,255,.16),rgba(7,44,82,.04));pointer-events:none}
.sigma-world-map-shell:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.38), inset 0 0 120px rgba(255,255,255,.18);pointer-events:none}
.sigma-world-sky,.sigma-world-routes,.sigma-world-hub{display:none}
.sigma-world-zone{position:absolute;width:210px;height:165px;transform:translate(-50%,-50%);border:0;background:none;padding:0;cursor:pointer;color:var(--navy);z-index:3;transition:transform .22s ease,filter .22s ease}
.sigma-world-zone:hover,.sigma-world-zone:focus-visible{transform:translate(-50%,-50%) translateY(-6px) scale(1.03);filter:drop-shadow(0 18px 24px rgba(30,74,110,.18));outline:none}
.sigma-world-zone-1{left:17%;top:22%}
.sigma-world-zone-2{left:50%;top:22%}
.sigma-world-zone-3{left:82%;top:24%}
.sigma-world-zone-4{left:12%;top:57%}
.sigma-world-zone-5{left:86%;top:57%}
.sigma-world-zone-6{left:33%;top:82%}
.sigma-world-zone-7{left:67%;top:82%}
.sigma-zone-hit,.sigma-zone-pulse{position:absolute;left:50%;top:55%;transform:translate(-50%,-50%);border-radius:999px;pointer-events:none}
.sigma-zone-hit{width:144px;height:96px;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent) 24%,rgba(255,255,255,.2)) 0%,rgba(255,255,255,0) 72%);border:2px solid color-mix(in srgb,var(--accent) 48%,rgba(255,255,255,.8));box-shadow:0 0 0 10px color-mix(in srgb,var(--accent) 10%,transparent);opacity:.12;transition:opacity .22s ease,transform .22s ease,box-shadow .22s ease}
.sigma-zone-pulse{width:24px;height:24px;border:3px solid color-mix(in srgb,var(--accent) 72%,#fff);background:rgba(255,255,255,.88);box-shadow:0 8px 18px rgba(0,0,0,.12);opacity:.92;top:52%}
.sigma-zone-pulse:before{content:"";position:absolute;inset:-8px;border-radius:inherit;border:2px solid color-mix(in srgb,var(--accent) 40%,transparent);opacity:.55}
.sigma-world-zone:hover .sigma-zone-hit,.sigma-world-zone:focus-visible .sigma-zone-hit,.sigma-world-zone.has-progress .sigma-zone-hit{opacity:.33;transform:translate(-50%,-50%) scale(1.04);box-shadow:0 0 0 16px color-mix(in srgb,var(--accent) 14%,transparent)}
.sigma-world-zone.is-complete .sigma-zone-hit{opacity:.48;box-shadow:0 0 0 18px color-mix(in srgb,var(--accent) 18%,transparent)}
.sigma-world-zone.is-complete .sigma-zone-pulse{background:color-mix(in srgb,var(--accent) 16%,#fff)}
.sigma-zone-chip{position:absolute;left:50%;top:8px;transform:translateX(-50%);width:188px;padding:11px 12px 10px;border-radius:19px;background:rgba(255,255,255,.90);border:1px solid color-mix(in srgb,var(--accent) 28%,#d7e1eb);box-shadow:0 10px 24px rgba(22,55,84,.16);backdrop-filter:blur(10px);text-align:left}
.sigma-zone-chip-top{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}
.sigma-zone-number{width:34px;height:40px;display:grid;place-items:center;color:#fff;font-size:1rem;font-weight:950;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 76%,#fff),var(--accent));clip-path:polygon(50% 0,93% 22%,93% 76%,50% 100%,7% 76%,7% 22%)}
.sigma-zone-copy{display:flex;flex-direction:column;min-width:0}
.sigma-zone-copy small{font-size:.54rem;line-height:1.1;font-weight:900;letter-spacing:.08em;color:var(--accent);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sigma-zone-copy strong{font-size:.95rem;line-height:1.1;margin-top:2px}
.sigma-zone-stage{font-size:1rem;text-align:center;align-self:start;line-height:1.2}
.sigma-zone-meta{display:block;margin-top:7px;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--accent) 15%,#e6edf4);font-size:.72rem;font-weight:800;color:#5d7286}
.sigma-world-footnote{display:flex;gap:11px;align-items:flex-start;margin:16px 4px 0;padding:13px 15px;border-radius:18px;background:#f7fbff;border:1px solid #dfe9f2;color:#587087}
.sigma-world-footnote span{color:#527ee0;font-weight:950}
.sigma-world-footnote p{margin:0;font-size:.78rem;line-height:1.45}
.sigma-world-footnote strong{color:var(--navy)}
.sigma-module-screen{padding-bottom:28px}
.sigma-module-hero{--accent:#3b82f6;margin:4px 0 16px;padding:18px 20px 16px;border-radius:28px;border:1px solid color-mix(in srgb,var(--accent) 25%,#dce5ed);background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,#fff),#fff);box-shadow:0 9px 0 #e1e8ee,0 18px 34px rgba(17,54,86,.07)}
.sigma-world-back{border:0;background:transparent;color:var(--accent);font-weight:850;font-size:.78rem;padding:3px 0 11px;cursor:pointer}
.sigma-module-hero-main{display:grid;grid-template-columns:68px 1fr auto;gap:16px;align-items:center}
.sigma-module-hero-icon{width:64px;height:64px;border-radius:21px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 11%,#fff);border:1px solid color-mix(in srgb,var(--accent) 28%,#d8e1ea);box-shadow:0 5px 15px rgba(24,57,86,.07)}
.sigma-module-hero-icon svg{width:37px;height:37px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sigma-module-hero-copy span{display:block;font-size:.63rem;font-weight:950;letter-spacing:.1em;color:var(--accent)}
.sigma-module-hero-copy h2{margin:3px 0 3px;font-size:1.8rem}
.sigma-module-hero-copy p{margin:0;color:#687b8e;font-size:.8rem;line-height:1.4}
.sigma-module-hero-score{text-align:right}
.sigma-module-hero-score strong{display:block;font-size:1.75rem;color:var(--accent)}
.sigma-module-hero-score small{font-size:.67rem;font-weight:800;color:#6b7f92}
.sigma-module-hero-progress{height:8px;background:#e8edf3;border-radius:99px;overflow:hidden;margin-top:15px}
.sigma-module-hero-progress i{display:block;height:100%;width:0;background:var(--accent);border-radius:inherit;transition:width .4s ease}
.sigma-module-filter-head{margin-bottom:14px;padding:12px 0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px)}
.sigma-module-filter-head h3{margin:1px 0 0}
.sigma-module-detail{border-color:color-mix(in srgb,var(--accent) 20%,#d9e4ec)}
.sigma-module-detail .journey-topic .topic-open{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 48%,#d9e1ea);background:color-mix(in srgb,var(--accent) 4%,#fff);box-shadow:0 3px 0 color-mix(in srgb,var(--accent) 18%,#d8e1e8)}
.sigma-module-detail .journey-topic .topic-open:hover{background:var(--accent);color:#fff}
.sigma-module-detail .journey-node{border-color:color-mix(in srgb,var(--accent) 28%,#d9e2e9)}
.sigma-module-detail .journey-node span{color:var(--accent)}
html[data-theme="dark"] .sigma-world-overall,html[data-theme="dark"] .sigma-zone-chip{background:rgba(13,28,46,.90);border-color:#29445f;color:#eef5fb}
html[data-theme="dark"] .sigma-world-overall>small,html[data-theme="dark"] .sigma-zone-meta{color:#a9bbcc}
html[data-theme="dark"] .sigma-world-map-shell{border-color:#29445f;box-shadow:0 18px 48px rgba(2,12,24,.45)}
html[data-theme="dark"] .sigma-world-map-shell:before{background:radial-gradient(circle at 50% 50%,transparent 0 32%,rgba(8,18,30,.08) 48%,rgba(8,18,30,.14) 63%,rgba(8,18,30,.32) 100%),linear-gradient(180deg,rgba(10,23,38,.08),rgba(6,16,28,.22))}
html[data-theme="dark"] .sigma-world-footnote{background:#0e2033;border-color:#29415a;color:#a9bbcc}
html[data-theme="dark"] .sigma-world-footnote strong{color:#eef5fb}
html[data-theme="dark"] .sigma-module-hero{background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 28%),#0d1c2e;border-color:#29445f;box-shadow:0 7px 0 #172a3e;color:#edf4fb}
html[data-theme="dark"] .sigma-module-hero-copy p,html[data-theme="dark"] .sigma-module-hero-score small{color:#a9bbcc}
html[data-theme="dark"] .sigma-module-detail .journey-topic .topic-open{background:#10243a;border-color:color-mix(in srgb,var(--accent) 55%,#29415a)}
@media(max-width:980px){.sigma-world-map-shell{min-height:700px}.sigma-world-zone{width:188px;height:155px}.sigma-zone-chip{width:172px}}
@media(max-width:760px){.sigma-world-screen{padding-top:0}.sigma-world-title-row{align-items:stretch;flex-direction:column;gap:12px}.sigma-world-title-row h2{font-size:2.25rem}.sigma-world-overall{width:100%;box-sizing:border-box}.sigma-world-map-shell{min-height:790px;border-radius:26px;background-position:center top}.sigma-world-zone{width:170px;height:148px}.sigma-zone-hit{width:126px;height:86px}.sigma-zone-chip{width:162px;padding:10px 11px}.sigma-zone-chip-top{grid-template-columns:32px 1fr auto;gap:8px}.sigma-zone-number{width:30px;height:36px;font-size:.88rem}.sigma-zone-copy small{font-size:.49rem}.sigma-zone-copy strong{font-size:.82rem}.sigma-zone-meta{font-size:.64rem}.sigma-world-zone-1{left:17%;top:20%}.sigma-world-zone-2{left:50%;top:20%}.sigma-world-zone-3{left:82%;top:24%}.sigma-world-zone-4{left:12%;top:54%}.sigma-world-zone-5{left:86%;top:55%}.sigma-world-zone-6{left:34%;top:80%}.sigma-world-zone-7{left:67%;top:80%}.sigma-module-hero{padding:15px;border-radius:23px}.sigma-module-hero-main{grid-template-columns:52px 1fr;gap:11px}.sigma-module-hero-icon{width:50px;height:50px;border-radius:17px}.sigma-module-hero-icon svg{width:29px;height:29px}.sigma-module-hero-copy h2{font-size:1.45rem}.sigma-module-hero-copy p{font-size:.72rem}.sigma-module-hero-score{grid-column:1/-1;text-align:left;display:flex;gap:9px;align-items:baseline}.sigma-module-hero-score strong{font-size:1.25rem}.sigma-module-filter-head{position:static!important}.sigma-module-filter-head .filters{display:grid;grid-template-columns:1fr 1fr}.sigma-module-filter-head .filters input,.sigma-module-filter-head .filters select{width:100%}}
@media(max-width:520px){.sigma-world-map-shell{min-height:830px}.sigma-world-zone{width:158px;height:140px}.sigma-zone-chip{width:150px;padding:9px 10px}.sigma-zone-copy small{display:none}.sigma-zone-copy strong{font-size:.79rem}.sigma-zone-stage{font-size:.9rem}.sigma-zone-meta{font-size:.61rem}.sigma-zone-hit{width:118px;height:80px}.sigma-world-zone-1{left:16%;top:18%}.sigma-world-zone-2{left:50%;top:19%}.sigma-world-zone-3{left:83%;top:26%}.sigma-world-zone-4{left:11%;top:50%}.sigma-world-zone-5{left:86%;top:53%}.sigma-world-zone-6{left:33%;top:77%}.sigma-world-zone-7{left:67%;top:77%}}
@media(max-width:430px){.sigma-world-map-shell{min-height:780px}.sigma-world-zone{width:148px;height:134px}.sigma-zone-chip{width:140px}.sigma-zone-number{width:28px;height:34px}.sigma-zone-copy strong{font-size:.72rem}.sigma-zone-meta{font-size:.56rem}.sigma-world-zone-1{left:17%;top:18%}.sigma-world-zone-2{left:50%;top:18%}.sigma-world-zone-3{left:84%;top:27%}.sigma-world-zone-4{left:12%;top:50%}.sigma-world-zone-5{left:86%;top:52%}.sigma-world-zone-6{left:34%;top:76%}.sigma-world-zone-7{left:68%;top:76%}}


/* ======================================================================
   V47 • Sigma World Labels + Modules Area
   Clearer module labelling and a secondary modules area under the map.
   ====================================================================== */
.sigma-world-module-area{margin-top:18px;padding:18px;border:1px solid #dfe8f1;border-radius:24px;background:linear-gradient(180deg,#ffffff,#f7fbff);box-shadow:0 12px 28px rgba(17,54,86,.05)}
.sigma-world-module-area-head h3{margin:3px 0 4px;font-size:1.35rem}
.sigma-world-module-area-head p{margin:0}
.sigma-world-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.sigma-world-legend-card{border:1px solid color-mix(in srgb,var(--accent) 25%,#dde7f0);border-radius:20px;background:#fff;padding:14px;text-align:left;box-shadow:0 8px 18px rgba(17,54,86,.06);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.sigma-world-legend-card:hover,.sigma-world-legend-card:focus-visible{transform:translateY(-2px);box-shadow:0 14px 22px rgba(17,54,86,.10);border-color:color-mix(in srgb,var(--accent) 40%,#cfddea);outline:none}
.sigma-world-legend-top{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center}
.sigma-world-legend-copy{display:flex;flex-direction:column;min-width:0}.sigma-world-legend-copy small{font-size:.6rem;font-weight:900;letter-spacing:.08em;color:var(--accent);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigma-world-legend-copy strong{font-size:1rem;line-height:1.15;margin-top:2px}.sigma-world-legend-stage{font-size:1rem}.sigma-world-legend-meta{display:block;margin-top:10px;color:#607386;font-size:.76rem;font-weight:800}.sigma-world-legend-open{display:inline-block;margin-top:10px;color:var(--accent);font-size:.75rem;font-weight:900}
html[data-theme="dark"] .sigma-world-module-area{background:linear-gradient(180deg,#0f1f31,#13283d);border-color:#29415a}.sigma-world-module-area-head .muted{color:inherit;opacity:.9}html[data-theme="dark"] .sigma-world-legend-card{background:#0d1c2e;border-color:#29445f;color:#eef5fb}html[data-theme="dark"] .sigma-world-legend-meta{color:#a9bbcc}
@media(max-width:760px){.sigma-world-legend{grid-template-columns:1fr}.sigma-world-module-area{padding:15px;border-radius:20px}}


/* ======================================================================
   V48 • Sigma World Premium Polish
   Refines V47 into anchored location callouts with stronger hierarchy,
   better progress states and a cleaner quick-access module panel.
   ====================================================================== */
.sigma-world-map-shell{border-radius:36px;box-shadow:0 24px 60px rgba(17,57,91,.13);isolation:isolate}
.sigma-world-map-shell:before{background:radial-gradient(circle at 50% 46%,transparent 0 34%,rgba(4,35,67,.035) 55%,rgba(255,255,255,.16) 78%,rgba(255,255,255,.28) 100%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(2,40,73,.035));z-index:1}
.sigma-world-map-shell:after{z-index:1}
.sigma-world-zone{width:190px;height:150px;z-index:4;filter:none}
.sigma-world-zone:hover,.sigma-world-zone:focus-visible{transform:translate(-50%,-50%) translateY(-5px) scale(1.025);filter:drop-shadow(0 18px 26px rgba(16,45,75,.22))}
.sigma-zone-aura{position:absolute;left:50%;top:61%;transform:translate(-50%,-50%);width:124px;height:78px;border-radius:50%;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 28%,rgba(255,255,255,.75)) 0%,color-mix(in srgb,var(--accent) 12%,transparent) 48%,transparent 72%);opacity:.18;transition:opacity .22s ease,transform .22s ease;pointer-events:none}
.sigma-world-zone.has-progress .sigma-zone-aura{opacity:.45}.sigma-world-zone.is-complete .sigma-zone-aura{opacity:.68}.sigma-world-zone:hover .sigma-zone-aura,.sigma-world-zone:focus-visible .sigma-zone-aura{opacity:.62;transform:translate(-50%,-50%) scale(1.08)}
.sigma-zone-pin{position:absolute;left:50%;top:59%;transform:translate(-50%,-50%);width:33px;height:41px;border-radius:18px 18px 18px 4px;rotate:-45deg;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 70%,#fff),var(--accent));box-shadow:0 7px 14px rgba(15,45,74,.24),0 0 0 4px rgba(255,255,255,.76);display:grid;place-items:center;transition:transform .2s ease,box-shadow .2s ease;pointer-events:none}
.sigma-zone-pin>span{rotate:45deg;color:#fff;font-weight:950;font-size:.84rem;line-height:1}
.sigma-world-zone:hover .sigma-zone-pin,.sigma-world-zone:focus-visible .sigma-zone-pin{transform:translate(-50%,-50%) translateY(-3px);box-shadow:0 11px 20px rgba(15,45,74,.28),0 0 0 5px rgba(255,255,255,.86)}
.sigma-world-zone.is-complete .sigma-zone-pin:after{content:"✓";position:absolute;right:-9px;top:-9px;rotate:45deg;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--accent);font-size:.7rem;font-weight:950;box-shadow:0 3px 9px rgba(0,0,0,.18)}
.sigma-zone-callout{position:absolute;left:50%;top:4px;transform:translateX(-50%);width:176px;padding:10px 12px 9px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,251,255,.90));border:1px solid color-mix(in srgb,var(--accent) 27%,#dce7f0);box-shadow:0 10px 24px rgba(17,53,84,.15),inset 0 1px 0 rgba(255,255,255,.9);backdrop-filter:blur(12px);text-align:left;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.sigma-zone-callout:after{content:"";position:absolute;left:50%;bottom:-8px;transform:translateX(-50%) rotate(45deg);width:14px;height:14px;background:rgba(249,252,255,.96);border-right:1px solid color-mix(in srgb,var(--accent) 27%,#dce7f0);border-bottom:1px solid color-mix(in srgb,var(--accent) 27%,#dce7f0)}
.sigma-world-zone:hover .sigma-zone-callout,.sigma-world-zone:focus-visible .sigma-zone-callout{border-color:color-mix(in srgb,var(--accent) 52%,#dce7f0);box-shadow:0 16px 30px rgba(17,53,84,.20),0 0 0 2px color-mix(in srgb,var(--accent) 10%,transparent);transform:translateX(-50%) translateY(-2px)}
.sigma-zone-callout-head{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start}.sigma-zone-callout .sigma-zone-copy small{font-size:.54rem;letter-spacing:.1em}.sigma-zone-callout .sigma-zone-copy strong{font-size:.93rem;line-height:1.1;margin-top:3px}.sigma-zone-callout .sigma-zone-stage{width:24px;height:24px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 8%,#f3f7fb);font-size:.82rem}
.sigma-zone-callout-foot{display:flex;justify-content:space-between;gap:8px;align-items:baseline;margin-top:8px;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--accent) 14%,#edf2f6)}.sigma-zone-callout-foot em{font-style:normal;font-size:.62rem;font-weight:800;color:#62768a}.sigma-zone-callout-foot b{font-size:.72rem;color:var(--accent)}
.sigma-world-zone.has-progress .sigma-zone-callout{box-shadow:0 13px 28px rgba(17,53,84,.18),0 0 0 2px color-mix(in srgb,var(--accent) 7%,transparent)}.sigma-world-zone.is-complete .sigma-zone-callout{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 5%,#fff),#fff);border-color:color-mix(in srgb,var(--accent) 40%,#dce7f0)}
/* Offset selected labels so they follow the art rather than forming a rigid grid. */
.sigma-world-zone-1 .sigma-zone-callout{left:48%;top:0}.sigma-world-zone-2 .sigma-zone-callout{top:-2px}.sigma-world-zone-3 .sigma-zone-callout{left:52%;top:3px}.sigma-world-zone-4 .sigma-zone-callout{left:56%;top:5px}.sigma-world-zone-5 .sigma-zone-callout{left:45%;top:4px}.sigma-world-zone-6 .sigma-zone-callout{left:47%;top:8px}.sigma-world-zone-7 .sigma-zone-callout{left:52%;top:8px}
.sigma-world-module-area{margin-top:20px;padding:20px;border-radius:26px;background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border-color:#dbe7f1;box-shadow:0 16px 36px rgba(17,54,86,.07)}
.sigma-world-module-area-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end}.sigma-world-module-area-head h3{font-size:1.45rem}.sigma-world-legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.sigma-world-legend-card{position:relative;overflow:hidden;padding:13px 14px 12px;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:none}
.sigma-world-legend-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent);opacity:.8}.sigma-world-legend-card:hover,.sigma-world-legend-card:focus-visible{transform:translateY(-1px);box-shadow:0 9px 18px rgba(17,54,86,.08)}
.sigma-world-legend-top{grid-template-columns:32px 1fr auto}.sigma-world-legend-card .sigma-zone-number{width:29px;height:34px;font-size:.8rem}.sigma-world-legend-copy small{font-size:.55rem}.sigma-world-legend-copy strong{font-size:.94rem}.sigma-world-legend-meta{margin-top:8px;font-size:.7rem}.sigma-world-legend-open{margin-top:7px;font-size:.7rem}
html[data-theme="dark"] .sigma-zone-callout{background:linear-gradient(180deg,rgba(14,31,49,.96),rgba(12,28,45,.93));border-color:#31506d;color:#eef5fb}html[data-theme="dark"] .sigma-zone-callout:after{background:#0e2033;border-color:#31506d}html[data-theme="dark"] .sigma-zone-callout-foot em{color:#a9bbcc}html[data-theme="dark"] .sigma-world-module-area{background:linear-gradient(180deg,#0f1f31,#11263a)}html[data-theme="dark"] .sigma-world-legend-card{background:linear-gradient(180deg,#0d1c2e,#10243a)}
@media(max-width:760px){.sigma-world-map-shell{min-height:800px}.sigma-world-zone{width:164px;height:142px}.sigma-zone-callout{width:150px;padding:9px 10px 8px}.sigma-zone-callout .sigma-zone-copy small{font-size:.47rem}.sigma-zone-callout .sigma-zone-copy strong{font-size:.78rem}.sigma-zone-callout-foot em{font-size:.55rem}.sigma-zone-callout-foot b{font-size:.64rem}.sigma-zone-pin{width:29px;height:36px}.sigma-world-legend{grid-template-columns:1fr 1fr}.sigma-world-module-area{padding:16px}}
@media(max-width:520px){.sigma-world-map-shell{min-height:835px}.sigma-world-zone{width:152px;height:135px}.sigma-zone-callout{width:138px}.sigma-zone-callout .sigma-zone-copy small{display:block}.sigma-zone-callout .sigma-zone-copy strong{font-size:.73rem}.sigma-zone-callout-foot em{font-size:.52rem}.sigma-zone-callout-foot b{font-size:.6rem}.sigma-world-legend{grid-template-columns:1fr}.sigma-world-module-area-head p.muted{font-size:.72rem}}
@media(max-width:430px){.sigma-world-map-shell{min-height:790px}.sigma-world-zone{width:144px;height:128px}.sigma-zone-callout{width:130px;padding:8px 9px}.sigma-zone-callout .sigma-zone-copy small{font-size:.43rem}.sigma-zone-callout .sigma-zone-copy strong{font-size:.68rem}.sigma-zone-callout-foot{margin-top:6px;padding-top:6px}.sigma-zone-callout-foot em{font-size:.48rem}}

/* ======================================================================
   V48 R4 • Mobile Sigma World Map Fit Hotfix
   Keep the complete illustrated world inside the phone viewport. The map
   becomes a true responsive 4:3 canvas; compact labels remain tappable and
   the full module cards below carry the detailed navigation on small screens.
   ====================================================================== */
@media(max-width:760px){
  #courseView,.sigma-world-screen{max-width:100%;overflow-x:hidden}
  .sigma-world-map-shell{
    width:100%;
    min-height:0!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    border-radius:24px;
    background-size:100% 100%!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
  .sigma-world-zone{width:118px!important;height:88px!important}
  .sigma-zone-aura{width:82px;height:48px;top:67%}
  .sigma-zone-pin{width:23px!important;height:29px!important;top:67%;box-shadow:0 4px 9px rgba(15,45,74,.22),0 0 0 3px rgba(255,255,255,.8)}
  .sigma-zone-pin>span{font-size:.62rem}
  .sigma-zone-callout{
    width:108px!important;
    top:-1px!important;
    padding:6px 7px 5px!important;
    border-radius:12px;
    box-shadow:0 5px 12px rgba(17,53,84,.14);
    backdrop-filter:blur(8px)
  }
  .sigma-zone-callout:after{width:9px;height:9px;bottom:-5px}
  .sigma-zone-callout-head{gap:4px}
  .sigma-zone-callout .sigma-zone-copy small{display:none!important}
  .sigma-zone-callout .sigma-zone-copy strong{font-size:.62rem!important;line-height:1.08;margin:0}
  .sigma-zone-callout .sigma-zone-stage{width:17px;height:17px;border-radius:6px;font-size:.58rem}
  .sigma-zone-callout-foot{margin-top:4px!important;padding-top:4px!important;gap:4px}
  .sigma-zone-callout-foot em{font-size:.43rem!important;white-space:nowrap}
  .sigma-zone-callout-foot b{font-size:.49rem!important}
  .sigma-world-zone-1{left:17%!important;top:23%!important}
  .sigma-world-zone-2{left:50%!important;top:23%!important}
  .sigma-world-zone-3{left:82%!important;top:25%!important}
  .sigma-world-zone-4{left:13%!important;top:57%!important}
  .sigma-world-zone-5{left:86%!important;top:57%!important}
  .sigma-world-zone-6{left:34%!important;top:81%!important}
  .sigma-world-zone-7{left:67%!important;top:81%!important}
  .sigma-world-zone-1 .sigma-zone-callout,.sigma-world-zone-2 .sigma-zone-callout,.sigma-world-zone-3 .sigma-zone-callout,
  .sigma-world-zone-4 .sigma-zone-callout,.sigma-world-zone-5 .sigma-zone-callout,.sigma-world-zone-6 .sigma-zone-callout,.sigma-world-zone-7 .sigma-zone-callout{left:50%!important}
  .sigma-world-module-area{margin-top:14px}
}
@media(max-width:520px){
  .sigma-world-map-shell{min-height:0!important;aspect-ratio:4/3!important;border-radius:20px}
  .sigma-world-zone{width:104px!important;height:78px!important}
  .sigma-zone-callout{width:94px!important;padding:5px 6px 4px!important}
  .sigma-zone-callout .sigma-zone-copy strong{font-size:.55rem!important}
  .sigma-zone-callout-foot em{font-size:.39rem!important}
  .sigma-zone-callout-foot b{font-size:.45rem!important}
  .sigma-zone-pin{width:20px!important;height:25px!important}
  .sigma-zone-pin>span{font-size:.55rem}
  .sigma-world-legend{grid-template-columns:1fr!important}
}
@media(max-width:390px){
  .sigma-world-zone{width:96px!important;height:73px!important}
  .sigma-zone-callout{width:87px!important}
  .sigma-zone-callout .sigma-zone-copy strong{font-size:.51rem!important}
  .sigma-zone-callout-foot em{font-size:.36rem!important}
  .sigma-zone-callout-foot b{font-size:.42rem!important}
}


/* ============================================================
   V49 • Conversational Sigma Tutor
   ============================================================ */
.sigma-chat-card{position:relative;overflow:hidden;border:1px solid rgba(56,189,248,.24);background:linear-gradient(145deg,rgba(8,18,35,.98),rgba(19,31,55,.97));color:#eaf4ff;box-shadow:0 20px 50px rgba(2,8,23,.22)}
.sigma-chat-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 0%,rgba(99,102,241,.16),transparent 36%),radial-gradient(circle at 0% 100%,rgba(34,211,238,.09),transparent 30%)}
.sigma-chat-card>*{position:relative;z-index:1}
.sigma-chat-head{align-items:center}.sigma-chat-head>div{display:flex;align-items:center;gap:10px}.sigma-chat-head small{display:block;color:#67e8f9;font-weight:800;letter-spacing:.12em;font-size:.68rem;margin-bottom:2px}.sigma-chat-head h3{margin:0;color:#f8fafc}
.sigma-chat-live-dot{width:11px;height:11px;border-radius:50%;background:#22d3ee;box-shadow:0 0 0 5px rgba(34,211,238,.11),0 0 18px rgba(34,211,238,.75);flex:0 0 auto}
.sigma-chat-topic-pill{max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid rgba(148,163,184,.22);border-radius:999px;padding:6px 10px;color:#cbd5e1;background:rgba(15,23,42,.64);font-size:.72rem;font-weight:700}
.sigma-chat-intro{color:#cbd5e1!important;margin-top:2px!important;line-height:1.55}
.sigma-chat-quick-prompts{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.sigma-chat-quick-prompts button{appearance:none;border:1px solid rgba(103,232,249,.22);background:rgba(15,23,42,.72);color:#dff8ff;border-radius:999px;padding:8px 11px;font:inherit;font-size:.76rem;font-weight:700;cursor:pointer;transition:.18s ease}
.sigma-chat-quick-prompts button:hover{border-color:rgba(103,232,249,.55);background:rgba(8,145,178,.15);transform:translateY(-1px)}
.sigma-chat-window{height:min(360px,43vh);min-height:220px;overflow:auto;scroll-behavior:smooth;border:1px solid rgba(148,163,184,.16);border-radius:18px;padding:14px;background:rgba(2,8,23,.48);display:flex;flex-direction:column;gap:12px;overscroll-behavior:contain}
.sigma-chat-message{display:flex;align-items:flex-end;gap:8px;max-width:92%}.sigma-chat-message.learner{align-self:flex-end;flex-direction:row-reverse}.sigma-chat-message.sigma{align-self:flex-start}
.sigma-chat-sigma-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#0c4a6e,#312e81);border:1px solid rgba(103,232,249,.4);overflow:hidden}.sigma-chat-sigma-avatar img{width:31px;height:31px;object-fit:contain}.sigma-chat-fallback-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#334155;font-size:.72rem;font-weight:900}
.sigma-chat-message .sigma-avatar-wrap.tiny{width:31px;height:31px;flex:0 0 31px}
.sigma-chat-bubble{border-radius:17px 17px 17px 5px;padding:10px 12px;background:rgba(30,41,59,.94);border:1px solid rgba(148,163,184,.17);box-shadow:0 8px 18px rgba(2,8,23,.12)}.sigma-chat-message.learner .sigma-chat-bubble{border-radius:17px 17px 5px 17px;background:linear-gradient(145deg,rgba(3,105,161,.88),rgba(67,56,202,.88));border-color:rgba(125,211,252,.23)}
.sigma-chat-speaker{display:flex;align-items:center;gap:7px;margin-bottom:3px}.sigma-chat-speaker strong{font-size:.72rem;color:#e0f2fe}.sigma-chat-source{font-size:.56rem;letter-spacing:.1em;border-radius:999px;padding:2px 5px;background:rgba(148,163,184,.13);color:#94a3b8}.sigma-chat-source.ai{background:rgba(34,211,238,.13);color:#67e8f9}
.sigma-chat-bubble p{margin:0;color:#eef6ff;line-height:1.52;font-size:.91rem;white-space:normal}
.sigma-chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;margin-top:12px}.sigma-chat-compose textarea{width:100%;resize:none;min-height:52px;max-height:130px;border-radius:15px;border:1px solid rgba(148,163,184,.24);background:rgba(2,8,23,.58);color:#f8fafc;padding:12px 13px;font:inherit;line-height:1.4;outline:none}.sigma-chat-compose textarea:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.12)}.sigma-chat-compose textarea::placeholder{color:#64748b}.sigma-chat-send{min-width:84px;align-self:stretch}
.sigma-chat-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:.7rem;color:#94a3b8}.sigma-chat-footer [data-mode="thinking"]{color:#fde68a}.sigma-chat-footer [data-mode="ai"]{color:#67e8f9}.sigma-chat-footer [data-mode="local"]{color:#cbd5e1}.sigma-chat-clear{appearance:none;border:0;background:transparent;color:#94a3b8;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;padding:3px 0}
html[data-theme="light"] .sigma-chat-card{background:linear-gradient(145deg,#f8fbff,#eef5ff);color:#0f172a;border-color:#c7ddf4}.light .sigma-chat-card{color:#0f172a}html[data-theme="light"] .sigma-chat-intro{color:#475569!important}html[data-theme="light"] .sigma-chat-window{background:rgba(255,255,255,.72);border-color:#dbe7f4}html[data-theme="light"] .sigma-chat-bubble{background:#fff;border-color:#dbe7f4}html[data-theme="light"] .sigma-chat-bubble p{color:#172033}html[data-theme="light"] .sigma-chat-speaker strong{color:#0f3d58}html[data-theme="light"] .sigma-chat-quick-prompts button{background:#fff;color:#17405d;border-color:#c7ddf4}html[data-theme="light"] .sigma-chat-compose textarea{background:#fff;color:#172033;border-color:#c7ddf4}
@media(max-width:640px){.sigma-chat-topic-pill{display:none}.sigma-chat-window{height:300px;min-height:200px;padding:10px}.sigma-chat-message{max-width:96%}.sigma-chat-compose{grid-template-columns:1fr}.sigma-chat-send{width:100%;min-height:44px}.sigma-chat-quick-prompts{display:grid;grid-template-columns:1fr 1fr}.sigma-chat-quick-prompts button{border-radius:12px;text-align:left;padding:9px}.sigma-chat-footer{align-items:flex-start}.sigma-chat-card{padding-left:12px!important;padding-right:12px!important}}


/* ============================================================
   V50 • Sigma Storm mobile live-fit + evolving drone classes
   ============================================================ */
.times-mobile-live-controls{display:none}

/* New drone silhouettes / palettes */
.blaster-target.enemy-splitter{width:60px;height:48px;border:2px solid #c878ff;border-radius:12px 24px 12px 24px;background:radial-gradient(circle at 50% 45%,#fff 0 8%,#e89bff 9% 18%,#7a2ed1 19% 50%,#20103f 51%);box-shadow:0 0 28px rgba(190,91,255,.58);animation-name:blasterSplitter}
.blaster-target.enemy-splitter:before,.blaster-target.enemy-splitter:after{background:#d780ff;box-shadow:0 0 10px #ba55ff}.blaster-target.enemy-splitter i{background:#77f5ff;box-shadow:0 0 11px #77f5ff}.blaster-target.enemy-splitter .enemy-label{color:#e7b9ff}
.blaster-target.enemy-shard{width:30px;height:24px;margin:-12px 0 0 -15px;border-color:#ff8ef0;border-radius:50% 10% 50% 10%;background:linear-gradient(135deg,#fff,#fc74df 24%,#7928a8 55%,#160826);box-shadow:0 0 18px rgba(255,92,222,.68);animation-name:blasterShard}.blaster-target.enemy-shard:before,.blaster-target.enemy-shard:after{display:none}.blaster-target.enemy-shard i{left:11px;top:6px;width:7px;height:7px;background:#fff}.blaster-target.enemy-shard span{display:none}.blaster-target.enemy-shard .enemy-label{bottom:-10px;font-size:.34rem;color:#ffb8ef}
.blaster-target.enemy-dodger{width:50px;height:38px;border-color:#a8ff59;background:radial-gradient(circle at 50% 40%,#faffd7 0 9%,#b7ff63 10% 20%,#26744c 21% 56%,#071f22 57%);box-shadow:0 0 24px rgba(151,255,86,.56);animation-name:blasterDodger}.blaster-target.enemy-dodger:before,.blaster-target.enemy-dodger:after{background:#a8ff59;box-shadow:0 0 9px #a8ff59}.blaster-target.enemy-dodger .enemy-label{color:#c8ff9d}
.blaster-target.enemy-tank{width:82px;height:58px;margin:-29px 0 0 -41px;border:3px solid #ff9a37;border-radius:9px;background:linear-gradient(145deg,#ffcc62 0 12%,#7a3916 13% 42%,#151a25 43% 100%);box-shadow:0 0 0 4px rgba(255,132,36,.11),0 0 30px rgba(255,120,30,.5);animation-name:blasterTank}.blaster-target.enemy-tank:before,.blaster-target.enemy-tank:after{width:23px;height:10px;top:20px;background:#ff8d2d;box-shadow:0 0 10px #ff7a21}.blaster-target.enemy-tank i{left:34px;top:17px;width:12px;height:12px;background:#ffd35a;box-shadow:0 0 12px #ff8a1f}.blaster-target.enemy-tank.damaged{filter:brightness(1.45) saturate(1.35)}.blaster-target.enemy-tank .enemy-hp{display:block;position:absolute;left:50%;top:-12px;transform:translateX(-50%);font:1000 .43rem/1 ui-monospace;color:#ffcd71;white-space:nowrap}.blaster-target.enemy-tank .enemy-label{color:#ffbd75}
.blaster-target.enemy-cloaker{width:56px;height:42px;border-color:#8e75ff;background:radial-gradient(circle at 50% 40%,#fff 0 8%,#a98dff 9% 19%,#30246a 20% 54%,#09091e 55%);box-shadow:0 0 26px rgba(125,91,255,.58);animation-name:blasterCloaker}.blaster-target.enemy-cloaker:before,.blaster-target.enemy-cloaker:after{background:#886eff;box-shadow:0 0 9px #7c62ff}.blaster-target.enemy-cloaker .enemy-label{color:#c2b8ff}
.blaster-target.enemy-charger{width:54px;height:44px;border:2px solid #ffe45d;border-radius:50% 50% 16% 16%;background:radial-gradient(circle at 50% 34%,#fffbd4 0 9%,#ffe94f 10% 21%,#9e5c08 22% 51%,#251400 52%);box-shadow:0 0 30px rgba(255,226,61,.66);animation-name:blasterCharger}.blaster-target.enemy-charger:before,.blaster-target.enemy-charger:after{background:#ffe54f;box-shadow:0 0 10px #ffd82f}.blaster-target.enemy-charger i{background:#ff6a2c;box-shadow:0 0 12px #ff6a2c}.blaster-target.enemy-charger .enemy-label{color:#fff19b}

.split-warning{position:absolute;z-index:18;transform:translate(-50%,-50%);pointer-events:none;color:#ff9ef0;font:1000 .58rem/1 ui-monospace;letter-spacing:.12em;text-shadow:0 0 12px #d64cff;animation:splitPop .62s ease-out forwards}
@keyframes splitPop{to{transform:translate(-50%,-150%) scale(1.18);opacity:0}}
@keyframes blasterSplitter{0%{transform:translate(0,-28px) rotate(0deg) scale(.78);opacity:0}14%{opacity:1}50%{transform:translate(calc(var(--drift) * -.35),40px) rotate(12deg)}100%{transform:translate(var(--drift),126px) rotate(-15deg) scale(1.12);opacity:.90}}
@keyframes blasterShard{0%{transform:translate(0,0) scale(.7);opacity:1}35%{transform:translate(calc(var(--drift) * .5),34px) scale(1.05)}100%{transform:translate(var(--drift),120px) scale(1.22);opacity:.88}}
@keyframes blasterDodger{0%{transform:translate(-80px,-28px) scale(.78);opacity:0}12%{opacity:1}28%{transform:translate(75px,24px) scale(.94)}48%{transform:translate(-70px,48px) scale(1)}70%{transform:translate(72px,76px) scale(1.06)}100%{transform:translate(var(--drift),125px) scale(1.12);opacity:.90}}
@keyframes blasterTank{0%{transform:translate(0,-22px) scale(.72);opacity:0}14%{opacity:1}75%{transform:translate(calc(var(--drift) * .28),72px) scale(1.02)}100%{transform:translate(calc(var(--drift) * .42),118px) scale(1.08);opacity:.94}}
@keyframes blasterCloaker{0%{transform:translate(-28px,-26px) scale(.8);opacity:0}12%{opacity:1}28%{opacity:.14}42%{transform:translate(45px,40px) scale(.96);opacity:.92}58%{opacity:.08}72%{transform:translate(-42px,73px) scale(1.03);opacity:.94}100%{transform:translate(var(--drift),122px) scale(1.12);opacity:.86}}
@keyframes blasterCharger{0%{transform:translate(0,-34px) scale(.62);opacity:0}12%{opacity:1}48%{transform:translate(calc(var(--drift) * .22),28px) scale(.82)}100%{transform:translate(var(--drift),155px) scale(1.42);opacity:.92}}

/* During an active mobile run Sigma Storm becomes a compact arcade viewport.
   The setup/records area disappears, lives stay in the top HUD and the keypad
   remains docked above the bottom navigation. */
@media(max-width:1100px){
  #timesGameView.storm-running .times-game-hero{display:none}
  #timesGameView.storm-running{scroll-margin-top:82px}
  #timesGameView.storm-running .times-game-shell{padding-bottom:252px}
  #timesGameView.storm-running .times-game-hud{position:sticky;top:78px;z-index:27;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:0 0 4px;padding:4px;border:1px solid #244766;border-radius:13px;background:rgba(3,13,26,.96);backdrop-filter:blur(10px);box-shadow:0 8px 20px rgba(0,0,0,.22)}
  #timesGameView.storm-running .times-hud-item{min-width:0;min-height:42px;padding:5px 6px;border-radius:9px;gap:1px}
  #timesGameView.storm-running .times-hud-item:nth-child(4),#timesGameView.storm-running .times-hud-item:nth-child(5),#timesGameView.storm-running .times-hud-item:nth-child(6){display:none}
  #timesGameView.storm-running .times-hud-item span{font-size:.43rem}
  #timesGameView.storm-running .times-hud-item strong{font-size:.76rem;overflow:visible;text-overflow:clip}
  #timesGameView.storm-running .times-hud-item.lives strong{font-size:.82rem;letter-spacing:0}
  #timesGameView.storm-running .times-record-chase,#timesGameView.storm-running .times-overdrive-meter{display:none}
  #timesGameView.storm-running .times-mobile-live-controls{display:flex;justify-content:flex-end;gap:6px;margin:0 0 4px}
  #timesGameView.storm-running .times-mobile-live-controls button{min-height:30px;padding:5px 10px;border:1px solid #315773;border-radius:9px;background:#081a2d;color:#c9efff;font:900 .56rem/1 system-ui;letter-spacing:.04em}
  #timesGameView.storm-running .times-tier-strip{display:none}
  #timesGameView.storm-running .times-wave-strip{grid-template-columns:minmax(120px,.65fr) 1fr auto;gap:6px;margin:0 0 5px;padding:5px 8px;border-radius:10px}
  #timesGameView.storm-running .times-wave-copy span{font-size:.46rem}
  #timesGameView.storm-running .times-wave-copy strong{font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #timesGameView.storm-running .times-wave-track{height:6px}
  #timesGameView.storm-running .times-wave-strip>small{grid-column:auto;text-align:right;font-size:.55rem}
  #timesGameView.storm-running .times-arena{height:clamp(205px,29dvh,285px);border-radius:16px}
  #timesGameView.storm-running .times-mission-banner{top:7px;left:9px;padding:5px 7px}
  #timesGameView.storm-running .times-mission-banner small{font-size:.39rem}#timesGameView.storm-running .times-mission-banner strong{font-size:.5rem}
  #timesGameView.storm-running .times-sector-badge{top:7px;right:9px;padding:5px 7px}
  #timesGameView.storm-running .times-sector-badge small{font-size:.38rem}#timesGameView.storm-running .times-sector-badge strong{font-size:.5rem}
  #timesGameView.storm-running .times-comms{right:8px;bottom:8px;width:min(285px,64%);grid-template-columns:30px 1fr;padding:6px 8px;border-radius:10px}
  #timesGameView.storm-running .times-comms-avatar{width:28px;height:28px;font-size:.95rem;border-radius:8px}
  #timesGameView.storm-running .times-comms small{font-size:.38rem}#timesGameView.storm-running .times-comms strong{font-size:.54rem}
  #timesGameView.storm-running .times-retro-lives{min-width:112px;padding:5px 7px;right:7px;bottom:6px}
  #timesGameView.storm-running .times-retro-lives small{font-size:.38rem;margin-bottom:3px}.retro-life-icons i{transform:scale(.88);transform-origin:left center}
  #timesGameView.storm-running .times-answer-deck{position:fixed;left:50%;right:auto;bottom:calc(78px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(860px,calc(100vw - 14px));z-index:28;grid-template-columns:1fr;gap:4px;margin:0;padding:6px;border-radius:13px;background:#07131f;border-color:#28465f;box-shadow:0 -9px 28px rgba(0,0,0,.34),0 0 0 1px rgba(90,220,255,.08)}
  #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 66px;gap:5px}
  #timesGameView.storm-running .times-answer-form input{min-height:36px;height:36px;padding:0 9px;font-size:.95rem;border-radius:9px}
  #timesGameView.storm-running .times-answer-form .btn{min-height:36px;padding:5px 6px;border-radius:9px;font-size:.68rem}
  #timesGameView.storm-running .times-feedback{display:none}
  #timesGameView.storm-running .times-number-pad{padding:5px;border-radius:13px;border-width:1px;box-shadow:inset 0 0 0 2px #18283a,0 5px 13px rgba(0,0,0,.28)}
  #timesGameView.storm-running .times-number-pad:before,#timesGameView.storm-running .times-number-pad:after,#timesGameView.storm-running .times-pad-label{display:none}
  #timesGameView.storm-running .times-pad-grid{grid-template-columns:repeat(4,minmax(42px,1fr));grid-template-rows:repeat(4,34px);gap:4px;padding:2px}
  #timesGameView.storm-running .times-pad-key{min-height:34px;height:34px;border-width:1px;border-bottom-width:3px;border-radius:12px;box-shadow:inset 0 1px 2px rgba(255,255,255,.13),0 3px 0 #07121d}
  #timesGameView.storm-running .times-pad-key>span{font-size:.9rem}
  #timesGameView.storm-running .times-pad-key>small{display:none}
  #timesGameView.storm-running .times-pad-action{border-radius:10px}#timesGameView.storm-running .times-pad-zero{border-radius:10px}#timesGameView.storm-running .times-pad-fire{border-radius:12px}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:4px;gap:3px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:38px;grid-template-columns:30px 1fr auto;gap:7px;padding:4px 7px;border-radius:10px}
  #timesGameView.storm-running .times-bonus-icon{width:28px;height:28px;border-radius:8px;font-size:1rem}
  #timesGameView.storm-running .times-bonus-copy small{font-size:.37rem}#timesGameView.storm-running .times-bonus-copy strong{font-size:.72rem}#timesGameView.storm-running .times-bonus-copy em{display:none}
  #timesGameView.storm-running .times-bonus-count{min-width:46px;padding:5px;font-size:.5rem}
  #timesGameView.storm-running .times-bonus-charge{height:4px}
  #timesGameView.storm-running .times-power-grid,#timesGameView.storm-running .times-game-status,#timesGameView.storm-running .times-game-rules{display:none}
  #timesGameView.storm-running.blaster-active .times-answer-deck{display:none}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(340px,52dvh,500px)}
  #timesGameView.storm-running.blaster-active .blaster-tip{bottom:58px;max-width:88%;white-space:normal;text-align:center;font-size:.52rem}
  #timesGameView.storm-running .blaster-pattern-badge{top:65px;max-width:82%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  #timesGameView.storm-running .blaster-pattern-badge b{color:#79f2ff}
}
@media(max-width:1100px) and (max-height:760px){
  #timesGameView.storm-running .times-arena{height:190px}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,31px)}
  #timesGameView.storm-running .times-pad-key{height:31px;min-height:31px}
  #timesGameView.storm-running .times-answer-form input,#timesGameView.storm-running .times-answer-form .btn{height:33px;min-height:33px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:37px}
  #timesGameView.storm-running.blaster-active .times-arena{height:300px}
}
@media(max-width:520px){
  #timesGameView.storm-running .times-game-hud{top:76px}
  #timesGameView.storm-running .times-wave-strip{grid-template-columns:1fr auto}
  #timesGameView.storm-running .times-wave-track{grid-column:1/-1;grid-row:2}
  #timesGameView.storm-running .times-wave-strip>small{grid-column:2;grid-row:1}
  #timesGameView.storm-running .times-arena{height:clamp(190px,27dvh,240px)}
  #timesGameView.storm-running .times-answer-deck{bottom:calc(72px + env(safe-area-inset-bottom))}
}


/* ============================================================
   V50.1 • Arcade Neon + Tablet Fit
   ============================================================ */
#timesGameView{
  --arcade-neon:#54e7ff;
  --arcade-neon-2:#7c6cff;
  --arcade-neon-soft:rgba(84,231,255,.22);
}
#timesGameView .times-arena-wrap{position:relative}
#timesGameView .times-arena-wrap::before{
  content:"";position:absolute;z-index:8;left:5%;right:5%;top:-3px;height:4px;border-radius:999px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--arcade-neon),#fff,var(--arcade-neon-2),transparent);
  box-shadow:0 0 8px var(--arcade-neon),0 0 22px var(--arcade-neon-soft);opacity:.56;
  transition:background .18s ease,box-shadow .18s ease,opacity .18s ease;
}
#timesGameView .storm-side-rail{
  background:linear-gradient(180deg,transparent,var(--arcade-neon) 25%,var(--arcade-neon-2) 74%,transparent);
  box-shadow:0 0 12px var(--arcade-neon),0 0 24px var(--arcade-neon-soft);
  transition:background .18s ease,box-shadow .18s ease,opacity .18s ease;
}
#timesGameView .times-core{
  background:linear-gradient(90deg,var(--arcade-neon),var(--arcade-neon-2),var(--sector-warm,#ffd45a),var(--arcade-neon));
  background-size:220% 100%;animation:arcadeCoreDrift 5.5s linear infinite;
  box-shadow:0 -5px 15px var(--arcade-neon-soft);
}
#timesGameView .times-number-pad,#timesGameView .times-answer-deck{
  transition:border-color .18s ease,box-shadow .18s ease;
}
#timesGameView.neon-good{--arcade-neon:#62ffac;--arcade-neon-2:#4feaff;--arcade-neon-soft:rgba(83,255,168,.38)}
#timesGameView.neon-danger{--arcade-neon:#ff536f;--arcade-neon-2:#ff9b3d;--arcade-neon-soft:rgba(255,66,96,.45)}
#timesGameView.neon-wave{--arcade-neon:#45e8ff;--arcade-neon-2:#735dff;--arcade-neon-soft:rgba(69,232,255,.36)}
#timesGameView.neon-boss{--arcade-neon:#ff4dc4;--arcade-neon-2:#8f5cff;--arcade-neon-soft:rgba(255,70,194,.48)}
#timesGameView.neon-gold{--arcade-neon:#ffe25a;--arcade-neon-2:#ff8c35;--arcade-neon-soft:rgba(255,210,64,.45)}
#timesGameView.neon-split{--arcade-neon:#df72ff;--arcade-neon-2:#ff72d9;--arcade-neon-soft:rgba(205,91,255,.46)}
#timesGameView.neon-shield{--arcade-neon:#77aaff;--arcade-neon-2:#66f5ff;--arcade-neon-soft:rgba(91,154,255,.42)}
#timesGameView.neon-nova{--arcade-neon:#fff174;--arcade-neon-2:#ff4fd2;--arcade-neon-soft:rgba(255,81,211,.5)}
#timesGameView.neon-good .times-arena-wrap::before,
#timesGameView.neon-danger .times-arena-wrap::before,
#timesGameView.neon-wave .times-arena-wrap::before,
#timesGameView.neon-boss .times-arena-wrap::before,
#timesGameView.neon-gold .times-arena-wrap::before,
#timesGameView.neon-split .times-arena-wrap::before,
#timesGameView.neon-shield .times-arena-wrap::before,
#timesGameView.neon-nova .times-arena-wrap::before{animation:arcadeEventFlash .7s ease-out}
#timesGameView.neon-good .storm-side-rail,
#timesGameView.neon-danger .storm-side-rail,
#timesGameView.neon-wave .storm-side-rail,
#timesGameView.neon-boss .storm-side-rail,
#timesGameView.neon-gold .storm-side-rail,
#timesGameView.neon-split .storm-side-rail,
#timesGameView.neon-shield .storm-side-rail,
#timesGameView.neon-nova .storm-side-rail{animation:arcadeRailFlash .72s ease-out}
#timesGameView.neon-danger .times-number-pad,#timesGameView.neon-danger .times-answer-deck{border-color:rgba(255,83,111,.75);box-shadow:0 0 20px rgba(255,83,111,.14)}
#timesGameView.neon-good .times-number-pad,#timesGameView.neon-good .times-answer-deck{border-color:rgba(98,255,172,.68);box-shadow:0 0 18px rgba(98,255,172,.12)}
@keyframes arcadeEventFlash{0%{opacity:.45;filter:brightness(1)}28%{opacity:1;filter:brightness(1.9)}62%{opacity:.72;filter:brightness(1.35)}100%{opacity:.56;filter:brightness(1)}}
@keyframes arcadeRailFlash{0%{opacity:.48}22%{opacity:1;filter:brightness(2)}100%{opacity:.58;filter:brightness(1)}}
@keyframes arcadeCoreDrift{to{background-position:220% 0}}

/* Tablet portrait / compact laptop: make the idle cabinet fit as one coherent game unit. */
@media(min-width:651px) and (max-width:1100px){
  body:has(#timesGameView.active) main{width:calc(100% - 24px);padding-top:12px}
  body:has(#timesGameView.active) .topbar{min-height:72px;padding:10px 14px}
  body:has(#timesGameView.active) .compact-mark{width:38px;height:38px;border-radius:11px}
  body:has(#timesGameView.active) .app-back-btn{min-height:38px}
  body:has(#timesGameView.active) .top-actions{gap:7px}
  body:has(#timesGameView.active) .sigma-top-profile{padding-top:3px;padding-bottom:3px}
  #timesGameView:not(.storm-running) .times-game-hero{gap:10px;margin-bottom:9px}
  #timesGameView:not(.storm-running) .times-game-hud{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:6px}
  #timesGameView:not(.storm-running) .times-hud-item{min-width:0;padding:7px 8px;border-radius:11px}
  #timesGameView:not(.storm-running) .times-hud-item span{font-size:.5rem}
  #timesGameView:not(.storm-running) .times-hud-item strong{font-size:.8rem}
  #timesGameView:not(.storm-running) .times-record-chase,#timesGameView:not(.storm-running) .times-overdrive-meter{display:none}
  #timesGameView:not(.storm-running) .times-tier-strip{margin-bottom:6px;padding:7px 10px;border-radius:11px}
  #timesGameView:not(.storm-running) .times-wave-strip{margin-bottom:7px;padding:7px 10px;border-radius:11px}
  #timesGameView:not(.storm-running) .times-arena{height:clamp(270px,27dvh,330px);border-radius:19px}
  #timesGameView:not(.storm-running) .times-answer-deck{padding:8px;gap:5px;margin-top:7px;border-radius:14px}
  #timesGameView:not(.storm-running) .times-answer-form{grid-template-columns:minmax(0,1fr) 86px;gap:6px}
  #timesGameView:not(.storm-running) .times-answer-form input,#timesGameView:not(.storm-running) .times-answer-form .btn{min-height:40px;height:40px}
  #timesGameView:not(.storm-running) .times-feedback{padding:5px 7px;font-size:.66rem}
  #timesGameView:not(.storm-running) .times-number-pad{padding:7px;border-radius:14px;box-shadow:inset 0 0 0 2px #18283a,0 6px 14px rgba(0,0,0,.28)}
  #timesGameView:not(.storm-running) .times-pad-label{display:none}
  #timesGameView:not(.storm-running) .times-pad-grid{grid-template-rows:repeat(4,44px);gap:5px;padding:2px}
  #timesGameView:not(.storm-running) .times-pad-key{min-height:44px;height:44px;border-width:1px;border-bottom-width:3px;border-radius:12px;box-shadow:inset 0 1px 2px rgba(255,255,255,.13),0 3px 0 #07121d}
  #timesGameView:not(.storm-running) .times-pad-key>span{font-size:1rem}
  #timesGameView:not(.storm-running) .times-pad-key>small{display:none}
  #timesGameView:not(.storm-running) .times-pad-action,#timesGameView:not(.storm-running) .times-pad-zero,#timesGameView:not(.storm-running) .times-pad-fire{border-radius:11px}
  #timesGameView:not(.storm-running) .times-bonus-weapon-row{margin-top:4px;gap:3px}
  #timesGameView:not(.storm-running) .times-bonus-weapon{min-height:44px;grid-template-columns:32px 1fr auto;gap:7px;padding:5px 8px;border-radius:11px}
  #timesGameView:not(.storm-running) .times-bonus-icon{width:30px;height:30px;border-radius:8px;font-size:1rem}
  #timesGameView:not(.storm-running) .times-bonus-copy small{font-size:.4rem}#timesGameView:not(.storm-running) .times-bonus-copy strong{font-size:.75rem}#timesGameView:not(.storm-running) .times-bonus-copy em{display:none}
  #timesGameView:not(.storm-running) .times-bonus-count{min-width:48px;padding:5px;font-size:.52rem}
  #timesGameView:not(.storm-running) .times-bonus-charge{height:4px}
  #timesGameView:not(.storm-running) .times-power-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:7px}
  #timesGameView:not(.storm-running) .times-power-btn{min-height:50px;padding:7px 8px;gap:7px;border-radius:12px}
  #timesGameView:not(.storm-running) .times-power-icon{width:30px;height:30px;font-size:1rem}
  #timesGameView:not(.storm-running) .times-power-copy strong{font-size:.7rem}#timesGameView:not(.storm-running) .times-power-copy small{display:none}
  #timesGameView:not(.storm-running) .times-power-count{min-width:30px;height:30px}
}

/* Live tablet mode: same arcade layout logic as phones, but tuned to 7-item tablet nav. */
@media(min-width:651px) and (max-width:1100px){
  body.sigma-storm-live .topbar{min-height:64px;padding:7px 12px}
  body.sigma-storm-live .topbar-title .eyebrow{display:none}
  body.sigma-storm-live .topbar-title h1{font-size:1rem}
  body.sigma-storm-live .compact-mark{width:34px;height:34px;border-radius:10px}
  body.sigma-storm-live .app-back-btn{min-height:34px;padding:0 9px}
  body.sigma-storm-live .icon-btn,body.sigma-storm-live #installBtn{min-height:34px}
  #timesGameView.storm-running .times-game-hud{top:66px}
  #timesGameView.storm-running .times-arena{height:clamp(235px,24dvh,300px)}
  #timesGameView.storm-running .times-answer-deck{bottom:calc(74px + env(safe-area-inset-bottom));width:min(930px,calc(100vw - 12px))}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,32px);gap:3px}
  #timesGameView.storm-running .times-pad-key{height:32px;min-height:32px;border-radius:10px;border-bottom-width:2px}
  #timesGameView.storm-running .times-pad-key>span{font-size:.86rem}
  #timesGameView.storm-running .times-answer-form input,#timesGameView.storm-running .times-answer-form .btn{height:32px;min-height:32px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:35px}
  #timesGameView.storm-running .times-bonus-icon{width:26px;height:26px}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(320px,45dvh,430px)}
}

@media(prefers-reduced-motion:reduce){
  #timesGameView .times-core,#timesGameView .times-arena-wrap::before,#timesGameView .storm-side-rail{animation:none!important}
}


/* ============================================================
   V50.2 • Dynamic Arena Fit + Larger Keypad
   Expand the live tablet arena into unused space while slightly
   increasing keypad size and keeping the full one-screen layout.
   ============================================================ */
@media(min-width:651px) and (max-width:1100px){
  body.sigma-storm-live .topbar{min-height:64px;padding:7px 12px}
  #timesGameView.storm-running .times-game-shell{padding-bottom:286px}
  #timesGameView.storm-running .times-arena{height:clamp(320px,calc(100dvh - 505px),460px)}
  #timesGameView.storm-running .times-answer-deck{bottom:calc(74px + env(safe-area-inset-bottom));width:min(940px,calc(100vw - 12px));padding:8px;gap:5px;border-radius:14px}
  #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 76px;gap:6px}
  #timesGameView.storm-running .times-answer-form input{min-height:40px;height:40px;padding:0 11px;font-size:1.04rem;border-radius:10px}
  #timesGameView.storm-running .times-answer-form .btn{min-height:40px;height:40px;padding:5px 8px;border-radius:10px;font-size:.72rem}
  #timesGameView.storm-running .times-number-pad{padding:7px;border-radius:14px}
  #timesGameView.storm-running .times-pad-grid{grid-template-columns:repeat(4,minmax(48px,1fr));grid-template-rows:repeat(4,38px);gap:5px;padding:2px}
  #timesGameView.storm-running .times-pad-key{min-height:38px;height:38px;border-radius:11px}
  #timesGameView.storm-running .times-pad-key>span{font-size:.96rem}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:5px;gap:4px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:40px;grid-template-columns:32px 1fr auto;gap:8px;padding:5px 8px;border-radius:11px}
  #timesGameView.storm-running .times-bonus-icon{width:28px;height:28px}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(360px,50dvh,500px)}
}
@media(min-width:651px) and (max-width:1100px) and (max-height:900px){
  #timesGameView.storm-running .times-game-shell{padding-bottom:274px}
  #timesGameView.storm-running .times-arena{height:clamp(290px,calc(100dvh - 500px),400px)}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{min-height:38px;height:38px}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,36px)}
  #timesGameView.storm-running .times-pad-key{min-height:36px;height:36px}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(330px,46dvh,430px)}
}


/* V50.3 • Maths difficulty selector */
#timesMathDifficultyLabel{min-width:205px}
#timesMathDifficulty{border-color:rgba(84,231,255,.45);box-shadow:inset 0 0 0 1px rgba(84,231,255,.05)}
@media(min-width:651px) and (max-width:1100px){
  #timesGameView:not(.storm-running) .times-game-launch-row{gap:8px}
  #timesGameView:not(.storm-running) .times-game-launch-row label{min-width:190px}
}


/* ============================================================
   V50.4 • Visible Maths Difficulty Dock
   ============================================================ */
.times-tier-strip{grid-template-columns:minmax(150px,.28fr) minmax(220px,1fr) auto}
.times-range-progress-block{min-width:0}
.times-difficulty-dock{display:grid;grid-template-columns:auto repeat(4,auto);align-items:center;gap:4px;padding:4px;border:1px solid rgba(84,231,255,.25);border-radius:11px;background:rgba(3,15,28,.58);white-space:nowrap}
.times-difficulty-label{padding:0 4px 0 3px;font:950 .45rem/1 system-ui;letter-spacing:.12em;color:#80abc4}
.times-difficulty-dock button{min-height:30px;padding:5px 8px;border:1px solid #315671;border-radius:8px;background:linear-gradient(180deg,#102a42,#091a2b);color:#a9c7d9;font:900 .58rem/1 system-ui;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);transition:.15s ease}
.times-difficulty-dock button:hover:not(:disabled){border-color:#57dff5;color:#e8fbff}
.times-difficulty-dock button.active{color:#06141f;background:linear-gradient(135deg,#63efff,#7f9cff);border-color:#8cf5ff;box-shadow:0 0 15px rgba(84,231,255,.28);text-shadow:none}
.times-difficulty-dock button[data-math-difficulty="hard"].active{background:linear-gradient(135deg,#ffcb54,#ff7a45);border-color:#ffe084}
.times-difficulty-dock button[data-math-difficulty="easy"].active{background:linear-gradient(135deg,#6fffc1,#54e7ff);border-color:#92ffd2}
.times-difficulty-dock button:disabled{cursor:default;opacity:.62}
@media(min-width:651px) and (max-width:1100px){
  #timesGameView:not(.storm-running) .times-tier-strip{grid-template-columns:minmax(180px,.34fr) minmax(180px,1fr) auto;gap:8px}
  #timesGameView:not(.storm-running) .times-difficulty-dock{gap:3px;padding:3px}
  #timesGameView:not(.storm-running) .times-difficulty-dock button{min-height:28px;padding:5px 7px;font-size:.55rem}
}
@media(max-width:720px){
  .times-tier-strip{grid-template-columns:1fr}
  .times-difficulty-dock{grid-template-columns:auto repeat(4,1fr);width:100%}
  .times-difficulty-dock button{width:100%}
}


/* ============================================================
   V50.5 • Sigma Difficulty Forms + Σ OMEGA
   ============================================================ */
.times-difficulty-dock button[data-math-difficulty="omega"]{color:#ff99b8;border-color:rgba(255,76,112,.55);background:linear-gradient(180deg,#35101d,#170812);text-shadow:0 0 9px rgba(255,70,105,.45)}
.times-difficulty-dock button[data-math-difficulty="omega"].active{color:#fff;background:linear-gradient(135deg,#ff3c61,#8b164f 55%,#27102f);border-color:#ff7892;box-shadow:0 0 20px rgba(255,49,92,.52),inset 0 0 12px rgba(255,255,255,.09)}
#timesGameView[data-math-difficulty="easy"]{--difficulty-a:#62ffac;--difficulty-b:#54e7ff}
#timesGameView[data-math-difficulty="medium"]{--difficulty-a:#45c8ff;--difficulty-b:#526dff}
#timesGameView[data-math-difficulty="hard"]{--difficulty-a:#ffbd42;--difficulty-b:#ff6a2f}
#timesGameView[data-math-difficulty="omega"]{--difficulty-a:#ff466b;--difficulty-b:#9f2aff;--arcade-neon:#ff466b;--arcade-neon-2:#9f2aff;--arcade-neon-soft:rgba(255,55,100,.38)}
#timesGameView[data-math-difficulty="medium"] .times-defender img{border-color:#58cfff;box-shadow:0 0 0 4px rgba(60,158,255,.12),0 0 28px rgba(60,168,255,.34)}
#timesGameView[data-math-difficulty="hard"] .times-defender img{border-color:#ffb23f;box-shadow:0 0 0 4px rgba(255,155,50,.13),0 0 30px rgba(255,120,38,.42)}
#timesGameView[data-math-difficulty="omega"] .times-defender img{border-color:#ff496c;box-shadow:0 0 0 4px rgba(255,55,91,.18),0 0 33px rgba(255,44,88,.58),0 0 54px rgba(130,36,255,.24)}
#timesGameView[data-math-difficulty="hard"] .sigma-nameplate{border-color:#b66b20;color:#ffd285;box-shadow:0 0 12px rgba(255,143,45,.28)}
#timesGameView[data-math-difficulty="omega"] .sigma-nameplate{border-color:#a52a50;color:#ff91a9;box-shadow:0 0 16px rgba(255,55,95,.42)}
#timesGameView[data-math-difficulty="omega"] .times-tier-strip{border-color:rgba(255,64,102,.55);box-shadow:0 0 18px rgba(255,45,89,.12)}
#timesGameView[data-math-difficulty="omega"] .times-mission-banner{border-left-color:#ff4f72}
#timesGameView[data-math-difficulty="omega"] .times-mission-banner small,#timesGameView[data-math-difficulty="omega"] .times-sector-badge small{color:#ff738f}
#timesGameView[data-math-difficulty="omega"] .times-arena-wrap::before{opacity:.82;box-shadow:0 0 12px #ff466b,0 0 30px rgba(255,55,100,.5)}
#timesGameView[data-math-difficulty="omega"] .times-arena{box-shadow:0 0 0 2px rgba(255,61,102,.28),0 0 34px rgba(255,37,82,.19),inset 0 0 90px rgba(111,18,91,.14)}
@media(min-width:651px) and (max-width:1100px){
  .times-difficulty-dock{gap:3px}
  .times-difficulty-dock button{padding-left:7px;padding-right:7px}
  .times-difficulty-dock button[data-math-difficulty="omega"]{font-size:.53rem}
}
@media(max-width:720px){
  .times-difficulty-label{grid-column:1/-1;text-align:center;padding:2px 0 3px}
  .times-difficulty-dock{grid-template-columns:repeat(4,1fr)}
}


/* ============================================================
   V50.9 • Tutor Navigation Bar
   Dedicated sticky navigation row prevents the return control from
   covering Sigma, lesson artwork or lesson copy while scrolling.
   ============================================================ */
#topicDialog .topic-dialog-nav{
  position:sticky;top:0;z-index:100;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  min-height:56px;margin:-8px -8px 16px;padding:8px;
  border-bottom:1px solid color-mix(in srgb,var(--stroke) 75%,transparent);
  border-radius:14px 14px 10px 10px;
  background:color-mix(in srgb,var(--surface) 94%,transparent);
  box-shadow:0 10px 22px rgba(7,20,38,.10);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
}
#topicDialog .topic-dialog-nav .dialog-back{
  position:static;top:auto;z-index:auto;
  width:max-content;max-width:calc(100% - 52px);
  margin:0;
  background:var(--surface-2);
  box-shadow:none;
}
#topicDialog .topic-dialog-nav .dialog-close{
  position:static;right:auto;top:auto;flex:0 0 36px;margin:0;
}
#topicDialog .topic-dialog-nav .dialog-back.back-to-worksheet{
  border-color:rgba(57,190,235,.55);
  background:linear-gradient(135deg,rgba(9,37,61,.96),rgba(13,71,95,.94));
  color:#eaffff;box-shadow:0 0 18px rgba(54,214,255,.12);
}
#topicDialog .topic-dialog-nav .dialog-back.back-to-worksheet:hover{background:linear-gradient(135deg,rgba(12,50,80,.98),rgba(16,87,112,.96))}
@media(max-width:650px){
  #topicDialog .topic-dialog-nav{min-height:52px;margin:-5px -3px 14px;padding:6px}
  #topicDialog .topic-dialog-nav .dialog-back{padding:9px 12px;font-size:.78rem}
}


/* ============================================================
   V51 • On-demand worksheet tutor
   Keep worksheets clean; open Sigma only when help is requested.
   ============================================================ */
.sigma-chat-launch{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:0;border-radius:16px;background:linear-gradient(135deg,#071b31,#0d3556);color:#effbff;text-align:left;box-shadow:inset 0 0 0 1px rgba(83,220,255,.22);cursor:pointer}
.sigma-chat-launch-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#4de5ff,#7768ff);color:#07101f;font-weight:1000;font-size:1.25rem;box-shadow:0 0 20px rgba(77,229,255,.25)}
.sigma-chat-launch-copy{display:flex;flex-direction:column;min-width:0}.sigma-chat-launch-copy small{font-size:.52rem;letter-spacing:.14em;color:#65e9ff;font-weight:950}.sigma-chat-launch-copy strong{font-size:.95rem}.sigma-chat-launch-copy em{font-style:normal;color:#a9c5da;font-size:.68rem;margin-top:2px}.sigma-chat-launch-action{font-size:.68rem;font-weight:900;color:#8defff;white-space:nowrap}
.sigma-chat-card.sigma-chat-collapsed{padding:7px!important;margin-top:12px;margin-bottom:12px;overflow:visible}.sigma-chat-card.sigma-chat-collapsed:before{display:none}.sigma-chat-card.sigma-chat-collapsed .sigma-chat-panel{display:none}.sigma-chat-card.sigma-chat-expanded .sigma-chat-launch{display:none}.sigma-chat-panel{display:block}
.sigma-chat-footer-actions{display:flex;align-items:center;gap:12px}.sigma-chat-collapse{appearance:none;border:1px solid rgba(103,232,249,.22);background:rgba(15,23,42,.72);color:#dff8ff;border-radius:10px;padding:6px 9px;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}
.sigma-chat-worksheet-context{margin:10px 0 4px;padding:10px 12px;border-radius:13px;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.18)}.sigma-chat-worksheet-context small{display:block;color:#67e8f9;font-size:.52rem;font-weight:950;letter-spacing:.12em;margin-bottom:4px}.sigma-chat-worksheet-context strong{display:block;color:#eefaff;font-size:.92rem;line-height:1.4}
html[data-theme="light"] .sigma-chat-launch{background:linear-gradient(135deg,#f1fbff,#e8f4ff);color:#10243f;box-shadow:inset 0 0 0 1px #c1e5f4}.light .sigma-chat-launch{color:#10243f}html[data-theme="light"] .sigma-chat-launch-copy em{color:#58758c}html[data-theme="light"] .sigma-chat-collapse{background:#fff;color:#17405d;border-color:#c7ddf4}html[data-theme="light"] .sigma-chat-worksheet-context{background:#eefaff;border-color:#c5e9f4}html[data-theme="light"] .sigma-chat-worksheet-context strong{color:#10243f}
.worksheet-sigma-help-fab{position:fixed;z-index:24;right:18px;bottom:calc(92px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:7px;min-height:46px;padding:8px 14px 8px 9px;border:1px solid rgba(81,224,255,.52);border-radius:999px;background:linear-gradient(135deg,#08223b,#0d4d70);color:#fff;box-shadow:0 10px 28px rgba(4,21,38,.26),0 0 18px rgba(65,218,255,.16);font-weight:900}.worksheet-sigma-help-fab span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#55e6ff,#776aff);color:#07121e;font-size:1rem}.worksheet-sigma-help-fab:hover{filter:brightness(1.08);transform:translateY(-1px)}
#topicDialog.worksheet-help-mode{width:min(620px,calc(100% - 28px));max-height:min(76dvh,720px);margin:auto 16px calc(88px + env(safe-area-inset-bottom)) auto;border-radius:22px;background:transparent}#topicDialog.worksheet-help-mode::backdrop{background:rgba(4,18,32,.22);backdrop-filter:blur(1.5px)}#topicDialog.worksheet-help-mode .dialog-shell{padding:10px;background:linear-gradient(180deg,#f8fbff,#eef4f8);border-radius:22px}html[data-theme="dark"] #topicDialog.worksheet-help-mode .dialog-shell{background:#07131f}
#topicDialog.worksheet-help-mode .topic-dialog-nav{position:sticky;top:0;z-index:8;margin:0 0 8px;padding:5px;background:rgba(7,19,31,.96);border-radius:14px}#topicDialog.worksheet-help-mode #topicDialogBody>:not(#sigmaConversationTutor){display:none!important}#topicDialog.worksheet-help-mode #sigmaConversationTutor{margin:0;padding:12px;max-height:calc(76dvh - 78px);overflow:hidden}#topicDialog.worksheet-help-mode .sigma-chat-panel{display:flex;flex-direction:column;max-height:calc(76dvh - 104px)}#topicDialog.worksheet-help-mode .sigma-chat-window{height:min(310px,34dvh);min-height:160px;flex:1}
@media(max-width:640px){.sigma-chat-launch{grid-template-columns:40px 1fr;padding:10px}.sigma-chat-launch-icon{width:38px;height:38px}.sigma-chat-launch-action{display:none}.sigma-chat-footer{gap:6px}.sigma-chat-footer-actions{gap:7px}.worksheet-sigma-help-fab{right:10px;bottom:calc(82px + env(safe-area-inset-bottom));min-height:44px;padding:7px 12px 7px 8px}#topicDialog.worksheet-help-mode{width:calc(100% - 12px);margin:auto 6px calc(76px + env(safe-area-inset-bottom));max-height:82dvh}#topicDialog.worksheet-help-mode .sigma-chat-panel{max-height:calc(82dvh - 100px)}#topicDialog.worksheet-help-mode .sigma-chat-window{height:300px;min-height:170px}}
@media print{.worksheet-sigma-help-fab{display:none!important}}

/* V51.3 • Profile sign-out access */
.sigma-profile-actions{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.sigma-profile-actions .btn{white-space:nowrap}
@media(max-width:650px){.sigma-profile-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.sigma-profile-actions .btn{width:100%;min-width:0}}


/* V51.4 • Live opt-in cloud leaderboard */
.sigma-leader-row.current{margin:5px 0;padding:11px 8px;border:1px solid rgba(31,111,235,.28);border-radius:12px;background:linear-gradient(90deg,rgba(31,111,235,.08),rgba(124,58,237,.05))}
.sigma-leader-row.current>b{font-weight:950}.sigma-leader-row.current span strong::after{content:" • YOU";font-size:.58rem;letter-spacing:.08em;color:#586a84}
.sigma-leader-cloud.live{border:1px solid rgba(16,185,129,.22);background:rgba(236,253,245,.72)}
.sigma-leader-cloud.error{border:1px solid rgba(220,38,38,.18);background:rgba(254,242,242,.78)}
.sigma-leader-divider{padding:10px 6px 5px;color:#6b7280;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px dashed #d8dee8}
[data-theme="dark"] .sigma-leader-row.current{background:linear-gradient(90deg,rgba(56,189,248,.12),rgba(168,85,247,.08));border-color:rgba(125,211,252,.28)}
[data-theme="dark"] .sigma-leader-row.current span strong::after{color:#9fb0c8}
[data-theme="dark"] .sigma-leader-cloud.live{background:rgba(6,78,59,.18);border-color:rgba(52,211,153,.22)}
[data-theme="dark"] .sigma-leader-cloud.error{background:rgba(127,29,29,.18);border-color:rgba(248,113,113,.2)}


/* ============================================================
   V51.6 • Desktop Viewport Fit
   DESKTOP ONLY: these rules begin at 1101px, deliberately above
   Sigma's established phone/tablet breakpoint (max-width:1100px).
   Tablet/mobile layouts are therefore unchanged.
   ============================================================ */
@media(min-width:1101px){
  /* Sigma World: keep the complete 4:3 city map inside a desktop viewport. */
  body:has(#courseView.active) main{padding-top:16px}
  #courseView.active .sigma-world-title-row{margin-top:2px;margin-bottom:12px}
  #courseView.active .sigma-world-map-shell{
    width:min(100%,1013px,calc((100dvh - 305px) * 1.333333));
    min-height:0;
    height:auto;
    aspect-ratio:4/3;
    margin-inline:auto;
    background-size:100% 100%;
    background-position:center;
    background-repeat:no-repeat;
  }

  /* Sigma Storm: desktop arcade cockpit puts the arena and keypad side-by-side. */
  body.sigma-storm-live .topbar{min-height:64px;padding-top:7px;padding-bottom:7px}
  body.sigma-storm-live main{width:min(1460px,calc(100% - 24px));padding-top:8px;padding-bottom:92px}
  #timesGameView.storm-running .times-game-shell{
    max-width:1460px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 330px;
    grid-template-areas:
      "hud hud"
      "controls controls"
      "wave wave"
      "arena answer"
      "powers answer"
      "status status";
    gap:7px 12px;
    align-items:start;
  }
  #timesGameView.storm-running .times-game-hero,
  #timesGameView.storm-running .times-tier-strip,
  #timesGameView.storm-running .times-game-rules,
  #timesGameView.storm-running .times-analysis{display:none!important}
  #timesGameView.storm-running .times-game-hud{grid-area:hud;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:0}
  #timesGameView.storm-running .times-hud-item{min-width:0;min-height:44px;padding:6px 8px;border-radius:10px}
  #timesGameView.storm-running .times-hud-item span{font-size:.48rem}
  #timesGameView.storm-running .times-hud-item strong{font-size:.78rem}
  #timesGameView.storm-running .times-record-chase,#timesGameView.storm-running .times-overdrive-meter{display:none}
  #timesGameView.storm-running .times-mobile-live-controls{grid-area:controls;display:flex;justify-content:flex-end;gap:6px;margin:0}
  #timesGameView.storm-running .times-mobile-live-controls button{min-height:30px;padding:5px 10px;border:1px solid #315773;border-radius:9px;background:#081a2d;color:#c9efff;font:900 .56rem/1 system-ui;letter-spacing:.04em}
  #timesGameView.storm-running .times-wave-strip{grid-area:wave;grid-template-columns:minmax(170px,.55fr) 1fr auto;gap:8px;margin:0;padding:6px 9px;border-radius:11px}
  #timesGameView.storm-running .times-wave-copy span{font-size:.48rem}
  #timesGameView.storm-running .times-wave-copy strong{font-size:.68rem}
  #timesGameView.storm-running .times-wave-strip>small{grid-column:auto;text-align:right;font-size:.58rem}
  #timesGameView.storm-running .times-arena-wrap{grid-area:arena;min-width:0}
  #timesGameView.storm-running .times-arena{height:clamp(320px,calc(100dvh - 390px),500px);border-radius:20px}
  #timesGameView.storm-running .times-answer-deck{
    grid-area:answer;
    position:static;
    width:auto;
    transform:none;
    margin:0;
    padding:8px;
    display:flex;
    flex-direction:column;
    gap:7px;
    border-radius:15px;
    background:#07131f;
    border-color:#28465f;
    box-shadow:0 8px 24px rgba(0,0,0,.24),0 0 0 1px rgba(90,220,255,.08);
  }
  #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 70px;gap:6px}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{min-height:40px;height:40px;border-radius:10px}
  #timesGameView.storm-running .times-feedback{padding:5px 7px;font-size:.64rem}
  #timesGameView.storm-running .times-number-pad{padding:7px;gap:5px;border-radius:13px}
  #timesGameView.storm-running .times-pad-label{display:none}
  #timesGameView.storm-running .times-pad-grid{grid-template-columns:repeat(4,minmax(48px,1fr));grid-template-rows:repeat(4,44px);gap:5px}
  #timesGameView.storm-running .times-pad-key{min-height:44px;height:44px;border-radius:10px;border-bottom-width:3px}
  #timesGameView.storm-running .times-pad-key>span{font-size:1rem}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:1px;gap:4px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:48px;grid-template-columns:36px 1fr auto;gap:7px;padding:5px 8px;border-radius:11px}
  #timesGameView.storm-running .times-bonus-icon{width:32px;height:32px;border-radius:9px;font-size:1rem}
  #timesGameView.storm-running .times-bonus-copy small{font-size:.39rem}
  #timesGameView.storm-running .times-bonus-copy strong{font-size:.78rem}
  #timesGameView.storm-running .times-bonus-copy em{display:none}
  #timesGameView.storm-running .times-bonus-count{min-width:48px;padding:5px;font-size:.52rem}
  #timesGameView.storm-running .times-bonus-charge{height:4px}
  #timesGameView.storm-running .times-power-grid{grid-area:powers;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}
  #timesGameView.storm-running .times-power-btn{min-height:48px;padding:6px 8px;grid-template-columns:30px 1fr auto;gap:6px;border-radius:11px}
  #timesGameView.storm-running .times-power-icon{width:29px;height:29px;border-radius:9px;font-size:.9rem}
  #timesGameView.storm-running .times-power-copy strong{font-size:.67rem}
  #timesGameView.storm-running .times-power-copy small{display:none}
  #timesGameView.storm-running .times-power-count{min-width:28px;height:28px}
  #timesGameView.storm-running .times-game-status{grid-area:status;margin:0;padding:6px 9px;font-size:.66rem}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(350px,calc(100dvh - 390px),520px)}
}

/* Short desktop/laptop screens: scale the city labels with the smaller map. */
@media(min-width:1101px) and (max-height:850px){
  #courseView.active .sigma-world-title-row h2{font-size:clamp(1.75rem,3.2vw,2.5rem)}
  #courseView.active .sigma-world-overall{padding:10px 13px}
  #courseView.active .sigma-world-zone{width:160px;height:124px}
  #courseView.active .sigma-zone-callout{width:148px;padding:8px 9px 7px;border-radius:14px}
  #courseView.active .sigma-zone-callout .sigma-zone-copy small{font-size:.46rem}
  #courseView.active .sigma-zone-callout .sigma-zone-copy strong{font-size:.78rem}
  #courseView.active .sigma-zone-callout-foot{margin-top:6px;padding-top:5px}
  #courseView.active .sigma-zone-callout-foot em{font-size:.52rem}
  #courseView.active .sigma-zone-callout-foot b{font-size:.62rem}
  #courseView.active .sigma-zone-aura{width:105px;height:64px}
  #courseView.active .sigma-zone-pin{width:28px;height:35px}
  #courseView.active .sigma-zone-pin>span{font-size:.7rem}
}
@media(min-width:1101px) and (max-height:740px){
  #courseView.active .sigma-world-title-row{margin-bottom:8px}
  #courseView.active .sigma-world-title-row p{font-size:.75rem}
  #courseView.active .sigma-world-zone{width:148px;height:114px}
  #courseView.active .sigma-zone-callout{width:136px;padding:7px 8px 6px}
  #timesGameView.storm-running .times-arena{height:clamp(300px,calc(100dvh - 400px),400px)}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(320px,calc(100dvh - 390px),430px)}
}

/* ============================================================
   V51.6 • Legal & Privacy Foundation
   Account-gate + full legal/privacy reader. No game/module layout changes.
   ============================================================ */
.auth-legal-gate{display:grid;gap:7px;padding:10px;border:1px solid #d8e5ef;border-radius:14px;background:linear-gradient(180deg,#f8fbfe,#f1f6fa)}
.auth-legal-open{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;padding:2px;text-align:left;cursor:pointer;color:#163b59}
.auth-legal-open span{font-size:.68rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:#50708a}
.auth-legal-open strong{font-size:.78rem;color:#1676b3;text-align:right}
.auth-legal-state{margin:0;font-size:.72rem;line-height:1.42;color:#718398}
.auth-legal-state.accepted{color:#13734b;font-weight:800}
.auth-consent-row.optional-consent{padding:9px 10px;border-radius:12px;background:#f7fafc;border:1px solid #e1e9f0}
.auth-consent-row.optional-consent span strong{color:#284b66!important}
.auth-legal-footer-link{display:block;width:100%;border:0;background:transparent;color:#58748d;font:inherit;font-size:.72rem;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;margin-top:10px;padding:4px}
.auth-primary-btn:disabled,.sigma-guest-btn:disabled{opacity:.5;cursor:not-allowed;filter:saturate(.65)}

.sigma-legal-dialog{width:min(980px,calc(100% - 28px));max-height:min(94dvh,940px);border:0;border-radius:26px;padding:0;background:#f8fbfe;color:#14283b;box-shadow:0 36px 100px rgba(0,0,0,.38)}
.sigma-legal-dialog::backdrop{background:rgba(3,12,24,.72);backdrop-filter:blur(5px)}
.sigma-legal-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;max-height:min(94dvh,940px);overflow:hidden;background:linear-gradient(180deg,#fbfdff,#f3f7fa)}
.sigma-legal-header{position:relative;display:flex;justify-content:space-between;gap:18px;padding:24px 26px 15px;border-bottom:1px solid #dce6ee;background:rgba(250,253,255,.98)}
.sigma-legal-header h2{margin:5px 48px 4px 0;font-size:clamp(1.45rem,3vw,2.15rem);letter-spacing:-.035em;color:#10243a}
.sigma-legal-header p{margin:0;color:#6b7f92;font-size:.82rem}
.sigma-legal-close{position:absolute;right:18px;top:18px}
.sigma-legal-jump{display:flex;gap:8px;overflow-x:auto;padding:10px 26px;border-bottom:1px solid #e2eaf0;background:#f6f9fc;scrollbar-width:thin}
.sigma-legal-jump a{flex:0 0 auto;text-decoration:none;border:1px solid #d3e0ea;border-radius:999px;padding:7px 11px;background:#fff;color:#2b5978;font-size:.72rem;font-weight:900}
.sigma-legal-scroll{overflow:auto;padding:8px 26px 30px;scroll-behavior:smooth;overscroll-behavior:contain}
.sigma-legal-section{scroll-margin-top:18px;padding:22px 4px;border-bottom:1px solid #dfe8ef}
.sigma-legal-section:last-child{border-bottom:0}
.sigma-legal-label{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:#e8f4fb;color:#176894;font-size:.64rem;font-weight:950;letter-spacing:.11em}
.sigma-legal-section h3{margin:14px 0 7px;font-size:1.02rem;line-height:1.3;color:#153550}
.sigma-legal-section p,.sigma-legal-section li{font-size:.88rem;line-height:1.65;color:#445d72}
.sigma-legal-section p{margin:7px 0}
.sigma-legal-section ul{margin:9px 0 5px;padding-left:22px}
.sigma-legal-section li+li{margin-top:5px}
.sigma-legal-section code{padding:1px 5px;border-radius:6px;background:#eaf0f5;color:#244a66;font-size:.82em}
.sigma-legal-section.child-summary{margin-top:10px;padding:20px;border:1px solid #c9e2f1;border-radius:18px;background:linear-gradient(145deg,#eef9ff,#f8fcff)}
.sigma-legal-section.child-summary h3{font-size:1.3rem}
.sigma-legal-age-note{margin-top:14px;padding:12px 13px;border-left:4px solid #d99d2b;border-radius:10px;background:#fff8e7;color:#5d4a28;font-size:.84rem;line-height:1.55}
.sigma-legal-table-wrap{overflow-x:auto;margin:12px 0;border:1px solid #dbe5ed;border-radius:14px;background:#fff}
.sigma-legal-table{width:100%;border-collapse:collapse;min-width:720px}
.sigma-legal-table th,.sigma-legal-table td{padding:11px 12px;text-align:left;vertical-align:top;border-bottom:1px solid #e7edf2;font-size:.79rem;line-height:1.45}
.sigma-legal-table th{background:#edf5fa;color:#294c66;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
.sigma-legal-table tr:last-child td{border-bottom:0}
.legal-contact-section{padding-bottom:12px}
.sigma-legal-acceptance{padding:15px 22px calc(15px + env(safe-area-inset-bottom));border-top:1px solid #d7e2ea;background:#fff;box-shadow:0 -10px 28px rgba(24,55,80,.06)}
.sigma-legal-check-row{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:flex-start;color:#314d64;font-size:.78rem;font-weight:700;line-height:1.48;cursor:pointer}
.sigma-legal-check-row input{width:18px;height:18px;margin-top:1px;accent-color:#147ab9}
.sigma-legal-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px}
.sigma-legal-actions span{color:#788b9d;font-size:.72rem;line-height:1.35}
.sigma-legal-actions span.accepted{color:#13734b;font-weight:900}
.sigma-legal-actions .btn{min-width:170px}
.sigma-legal-settings-card{border-color:#cfe1ec!important;background:linear-gradient(145deg,#f9fdff,#f1f8fc)!important}

html[data-theme="dark"] .sigma-legal-dialog{background:#091522;color:#e7f0f7}
html[data-theme="dark"] .sigma-legal-shell{background:linear-gradient(180deg,#0c1927,#08131e)}
html[data-theme="dark"] .sigma-legal-header{background:#0d1b29;border-color:#24394a}
html[data-theme="dark"] .sigma-legal-header h2{color:#f2f8fc}
html[data-theme="dark"] .sigma-legal-header p{color:#91a9bc}
html[data-theme="dark"] .sigma-legal-jump{background:#0a1723;border-color:#213747}
html[data-theme="dark"] .sigma-legal-jump a{background:#102334;border-color:#29445a;color:#bce8ff}
html[data-theme="dark"] .sigma-legal-section{border-color:#213646}
html[data-theme="dark"] .sigma-legal-section h3{color:#dff3ff}
html[data-theme="dark"] .sigma-legal-section p,html[data-theme="dark"] .sigma-legal-section li{color:#afc1cf}
html[data-theme="dark"] .sigma-legal-label{background:#15344a;color:#7ed6ff}
html[data-theme="dark"] .sigma-legal-section.child-summary{background:linear-gradient(145deg,#0d2638,#0c1e2d);border-color:#24506b}
html[data-theme="dark"] .sigma-legal-age-note{background:#2c2618;color:#f1dca2;border-left-color:#d7a343}
html[data-theme="dark"] .sigma-legal-table-wrap{background:#0d1c29;border-color:#284053}
html[data-theme="dark"] .sigma-legal-table th{background:#122b3d;color:#bfe8ff}
html[data-theme="dark"] .sigma-legal-table th,html[data-theme="dark"] .sigma-legal-table td{border-color:#223a4c;color:#b7cad8}
html[data-theme="dark"] .sigma-legal-section code{background:#152b3d;color:#c4e8ff}
html[data-theme="dark"] .sigma-legal-acceptance{background:#0d1b29;border-color:#294153}
html[data-theme="dark"] .sigma-legal-check-row{color:#d0e0eb}

@media(max-width:640px){
  .sigma-legal-dialog{width:calc(100% - 12px);max-height:96dvh;border-radius:20px}
  .sigma-legal-shell{max-height:96dvh}
  .sigma-legal-header{padding:18px 18px 12px}.sigma-legal-header h2{font-size:1.45rem;margin-right:42px}
  .sigma-legal-jump{padding:9px 15px}.sigma-legal-scroll{padding:5px 15px 24px}
  .sigma-legal-section{padding:18px 2px}.sigma-legal-section.child-summary{padding:16px}
  .sigma-legal-acceptance{padding:12px 14px calc(12px + env(safe-area-inset-bottom))}
  .sigma-legal-actions{align-items:stretch;flex-direction:column}.sigma-legal-actions .btn{width:100%;min-width:0}
  .sigma-legal-check-row{font-size:.74rem}
  .auth-legal-open{align-items:flex-start;flex-direction:column;gap:3px}.auth-legal-open strong{text-align:left}
}

/* === Sigma V51.7 Launch Readiness: privacy/account controls only === */
.sigma-age-band-fieldset{border:1px solid rgba(124,211,255,.22);border-radius:16px;padding:14px;margin:18px 0 12px;background:rgba(8,19,35,.62)}
.sigma-age-band-fieldset legend{padding:0 8px;font-weight:800;letter-spacing:.03em}
.sigma-age-band-options{display:grid;gap:10px;margin-top:6px}
.sigma-age-band-options label{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;cursor:pointer;background:rgba(255,255,255,.035)}
.sigma-age-band-options label:has(input:checked){border-color:rgba(91,219,255,.75);box-shadow:0 0 0 1px rgba(91,219,255,.18) inset;background:rgba(38,162,218,.10)}
.sigma-age-band-options input{margin-top:3px;accent-color:#62d7ff}
.sigma-age-band-options span{display:grid;gap:3px}
.sigma-age-band-options small{opacity:.78;line-height:1.35}
.sigma-delete-account-dialog{width:min(560px,calc(100vw - 28px));border:1px solid rgba(255,111,111,.35);border-radius:20px;background:#091321;color:#eef9ff;padding:0;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.sigma-delete-account-dialog::backdrop{background:rgba(0,5,12,.78);backdrop-filter:blur(5px)}
.sigma-delete-account-shell{padding:24px;position:relative}
.sigma-delete-account-dialog h2{margin:6px 42px 8px 0}
.sigma-delete-account-dialog p{line-height:1.55;color:rgba(238,249,255,.82)}
.sigma-delete-account-dialog label{display:grid;gap:7px;margin-top:16px;font-weight:700}
.sigma-delete-account-dialog input{width:100%;box-sizing:border-box;padding:12px 14px;border-radius:11px;border:1px solid rgba(255,255,255,.18);background:#050d18;color:#fff;font:inherit}
.sigma-delete-account-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:18px}
.btn.danger{border-color:rgba(255,95,95,.55);color:#ffd9d9}
.btn.danger:not(:disabled):hover{border-color:#ff6a6a;background:rgba(255,80,80,.10)}
.btn.danger:disabled{opacity:.42;cursor:not-allowed}

/* ============================================================
   V51.8 • Mobile Viewport Fit
   PHONE ONLY: keep Sigma inside narrow mobile viewports, reduce the
   chrome footprint, keep the 7-item nav on one row and prevent the
   live Storm answer deck from colliding with navigation or arena.
   ============================================================ */
@media(max-width:650px){
  html,body,#appShell{max-width:100%;overflow-x:hidden}
  body{min-width:0}
  .topbar{
    min-height:60px;
    padding:8px max(8px,env(safe-area-inset-right)) 8px max(8px,env(safe-area-inset-left));
    gap:6px;
  }
  .topbar-brand,.top-actions,.topbar-title{min-width:0}
  .topbar-brand{gap:5px;flex:1 1 auto;overflow:hidden}
  .top-actions{gap:4px;flex:0 0 auto}
  .app-back-btn{width:34px;min-width:34px;min-height:34px;height:34px;padding:0;justify-content:center;border-radius:10px;flex:0 0 34px}
  .app-back-label{display:none}
  .compact-mark{width:34px;height:34px;border-radius:10px;font-size:.72rem;flex:0 0 34px}
  .topbar-title .eyebrow{display:none}
  .topbar-title h1{max-width:92px;margin:0;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sigma-top-profile{padding:2px;border-radius:10px;flex:0 0 auto}
  .sigma-avatar-wrap.top{width:30px;height:30px}
  .sigma-version-badge{min-height:24px;padding:2px 5px;font-size:.5rem;letter-spacing:.04em}
  .icon-btn{width:34px;height:34px;border-radius:10px;font-size:.95rem;flex:0 0 34px}
  #installBtn{display:none!important}

  main{width:calc(100% - 12px);max-width:100%;padding-top:12px;padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .view,.view.active,.dashboard-hero,.sigma-daily-card,.sigma-world-screen,.times-game-shell,.settings-card,.course-module{max-width:100%;min-width:0}
  .dashboard-hero{padding:17px;border-radius:22px}
  .dashboard-hero .progress-orb{width:120px;height:120px}
  .hero h2,.dashboard-hero h2{overflow-wrap:anywhere}
  .filters,.button-row,.resource-row,.tool-chips{min-width:0}
  input,select,textarea{max-width:100%}

  .bottom-nav{
    grid-template-columns:repeat(7,minmax(0,1fr));
    width:calc(100% - 8px);
    bottom:max(4px,env(safe-area-inset-bottom));
    padding:4px 3px;
    gap:1px;
    border-radius:14px;
  }
  .nav-item{min-width:0;padding:5px 0 4px;gap:0;border-radius:9px;overflow:hidden}
  .nav-item span{font-size:.9rem;line-height:1.05}
  .nav-item small{display:block;width:100%;font-size:.45rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}

  #courseView,.sigma-world-screen{width:100%;max-width:100%;overflow-x:hidden}
  #courseView.active .sigma-world-title-row{margin:2px 0 10px;gap:8px}
  #courseView.active .sigma-world-title-row h2{font-size:clamp(1.65rem,8vw,2rem)}
  #courseView.active .sigma-world-title-row p{font-size:.74rem;line-height:1.42}
  #courseView.active .sigma-world-overall{padding:10px 12px;border-radius:15px}
  #courseView.active .sigma-world-overall>strong{font-size:1.35rem}
  #courseView.active .sigma-world-map-shell{width:100%;max-width:100%;min-height:0!important;height:auto!important;aspect-ratio:4/3!important}
  #courseView.active .sigma-world-module-area{padding:12px;margin-top:10px;border-radius:17px}

  body:has(#timesGameView.active) main{width:calc(100% - 8px);padding-top:6px}
  body:has(#timesGameView.active) .topbar{min-height:58px;padding-top:6px;padding-bottom:6px}
  #timesGameView{width:100%;max-width:100%;overflow-x:hidden}
  #timesGameView .times-game-shell,#timesGameView .times-game-hud,#timesGameView .times-wave-strip,#timesGameView .times-tier-strip,#timesGameView .times-answer-deck,#timesGameView .times-number-pad,#timesGameView .times-power-grid{max-width:100%;min-width:0}
  #timesGameView:not(.storm-running) .times-game-hero{gap:8px;margin-bottom:8px}
  #timesGameView:not(.storm-running) .times-game-launch-row{gap:7px}
  #timesGameView:not(.storm-running) .times-game-launch-row>*{width:100%;min-width:0}
  #timesGameView:not(.storm-running) .times-tier-strip{grid-template-columns:1fr;gap:6px}
  #timesGameView:not(.storm-running) .times-difficulty-dock{grid-template-columns:auto repeat(4,minmax(0,1fr));width:100%;min-width:0;white-space:normal}
  #timesGameView:not(.storm-running) .times-difficulty-dock button{min-width:0;padding-left:3px;padding-right:3px;font-size:.5rem}
  #timesGameView:not(.storm-running) .times-arena{height:clamp(250px,43dvh,360px)}
  #timesGameView:not(.storm-running) .times-answer-deck{grid-template-columns:1fr}

  body.sigma-storm-live{overflow-x:hidden}
  body.sigma-storm-live main{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
  #timesGameView.storm-running{scroll-margin-top:60px}
  #timesGameView.storm-running .times-game-shell{padding-bottom:210px}
  #timesGameView.storm-running .times-game-hud{top:58px;grid-template-columns:repeat(4,minmax(0,1fr));padding:3px;gap:3px;border-radius:10px}
  #timesGameView.storm-running .times-hud-item{min-height:36px;padding:4px;border-radius:8px}
  #timesGameView.storm-running .times-hud-item span{font-size:.38rem}
  #timesGameView.storm-running .times-hud-item strong{font-size:.66rem}
  #timesGameView.storm-running .times-mobile-live-controls{gap:4px;margin-bottom:3px}
  #timesGameView.storm-running .times-mobile-live-controls button{min-height:26px;padding:4px 8px;font-size:.5rem}
  #timesGameView.storm-running .times-wave-strip{gap:4px;margin-bottom:4px;padding:4px 6px}
  #timesGameView.storm-running .times-wave-copy strong{font-size:.56rem}
  #timesGameView.storm-running .times-arena{height:clamp(150px,calc(100dvh - 410px),215px);min-height:150px;border-radius:13px}
  #timesGameView.storm-running .times-answer-deck{
    bottom:calc(56px + env(safe-area-inset-bottom));
    width:calc(100vw - 8px);
    max-width:calc(100vw - 8px);
    padding:4px;
    gap:3px;
    border-radius:11px;
  }
  #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 58px;gap:4px}
  #timesGameView.storm-running .times-answer-form input,#timesGameView.storm-running .times-answer-form .btn{height:30px;min-height:30px}
  #timesGameView.storm-running .times-answer-form input{font-size:.86rem;padding:0 7px}
  #timesGameView.storm-running .times-answer-form .btn{font-size:.6rem;padding:3px 4px}
  #timesGameView.storm-running .times-number-pad{padding:4px;border-radius:10px}
  #timesGameView.storm-running .times-pad-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,29px);gap:3px;padding:1px}
  #timesGameView.storm-running .times-pad-key{height:29px;min-height:29px;border-radius:9px;border-bottom-width:2px}
  #timesGameView.storm-running .times-pad-key>span{font-size:.78rem}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:3px;gap:2px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:32px;grid-template-columns:25px 1fr auto;gap:5px;padding:3px 5px;border-radius:9px}
  #timesGameView.storm-running .times-bonus-icon{width:24px;height:24px;border-radius:7px;font-size:.82rem}
  #timesGameView.storm-running .times-bonus-copy small{font-size:.32rem}
  #timesGameView.storm-running .times-bonus-copy strong{font-size:.62rem}
  #timesGameView.storm-running .times-bonus-count{min-width:40px;padding:4px;font-size:.44rem}
  #timesGameView.storm-running.blaster-active .times-arena{height:clamp(230px,calc(100dvh - 255px),390px)}
}

@media(max-width:380px){
  .topbar-title h1{display:none}
  .compact-mark{width:32px;height:32px;flex-basis:32px}
  .app-back-btn,.icon-btn{width:32px;min-width:32px;height:32px;min-height:32px;flex-basis:32px}
  .sigma-avatar-wrap.top{width:28px;height:28px}
  .sigma-version-badge{font-size:.46rem;padding-inline:4px}
  main{width:calc(100% - 8px)}
  .bottom-nav{width:calc(100% - 4px);padding-inline:2px}
  .nav-item small{font-size:.41rem}
  #timesGameView.storm-running .times-arena{height:clamp(145px,calc(100dvh - 405px),195px)}
  #timesGameView.storm-running .times-answer-deck{width:calc(100vw - 4px);max-width:calc(100vw - 4px)}
}

/* ============================================================
   V51.9 • Mobile Legal Reader Fit
   PHONE ONLY: keep the legal document readable. While the learner
   is still reading, the acceptance controls collapse to a compact
   instruction strip. The age-band, confirmation and accept button
   appear only after the legal reader reaches the end.
   ============================================================ */
@media(max-width:650px){
  .sigma-legal-dialog{max-height:96dvh}
  .sigma-legal-shell{max-height:96dvh;grid-template-rows:auto auto minmax(0,1fr) auto}
  .sigma-legal-scroll{min-height:0}

  /* Reading mode: do not let the acceptance form cover most of the phone. */
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-legal-acceptance{
    padding:9px 12px calc(9px + env(safe-area-inset-bottom));
  }
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-age-band-fieldset,
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-legal-check-row,
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-legal-actions .btn{
    display:none;
  }
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-legal-actions{
    display:block;
    margin:0;
  }
  .sigma-legal-dialog:not(.sigma-legal-at-end) .sigma-legal-actions span{
    display:block;
    font-size:.74rem;
    line-height:1.35;
    font-weight:800;
    text-align:center;
  }

  /* Completion mode: compact controls still leave useful document context visible. */
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-acceptance{
    max-height:min(43dvh,310px);
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:9px 12px calc(10px + env(safe-area-inset-bottom));
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-fieldset{
    margin:4px 0 8px;
    padding:8px;
    border-radius:13px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-fieldset legend{
    padding:0 5px;
    font-size:.78rem;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px;
    margin-top:3px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options label{
    min-width:0;
    gap:6px;
    padding:8px;
    border-radius:10px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options input{
    flex:0 0 auto;
    margin-top:2px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options span{
    min-width:0;
    gap:2px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options strong{
    font-size:.78rem;
    line-height:1.18;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options small{
    font-size:.62rem;
    line-height:1.22;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-check-row{
    grid-template-columns:18px 1fr;
    gap:7px;
    font-size:.68rem;
    line-height:1.3;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-check-row input{
    width:17px;
    height:17px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-actions{
    gap:7px;
    margin-top:8px;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-actions span{
    font-size:.65rem;
  }
  .sigma-legal-dialog.sigma-legal-at-end .sigma-legal-actions .btn{
    min-height:44px;
    padding:9px 14px;
  }
}

/* ===== V51.10 • Clear Leaderboard Access ===== */
.home-leaderboard-btn{
  background:linear-gradient(135deg,#fff9df,#f3e4ad);
  color:#4c3b0e;
  border:1px solid #e3c665;
  box-shadow:0 5px 0 rgba(111,84,18,.14);
}
.home-leaderboard-btn:hover{background:linear-gradient(135deg,#fffdf1,#f6e9bb)}
.sigma-leaderboard-page-head{align-items:center}
.sigma-leaderboard-page-toggle{
  flex:0 0 auto;padding:12px 15px;border-radius:14px;background:#fff;border:1px solid #e0e6ed;
  box-shadow:0 8px 22px rgba(16,36,63,.06);font-size:.82rem;
}
.sigma-leaderboard-page-card{
  background:#fff;border:1px solid #e0e6ed;border-radius:24px;padding:24px;
  box-shadow:0 12px 34px rgba(16,36,63,.07);
}
.sigma-leaderboard-page-summary{
  display:grid;grid-template-columns:minmax(170px,.34fr) 1fr;gap:20px;align-items:center;
  padding:17px 18px;border-radius:18px;background:linear-gradient(135deg,#f8fbff,#fffaf0);border:1px solid #e5eaf0;
}
.sigma-leaderboard-page-summary>div{display:flex;flex-direction:column;gap:2px}
.sigma-leaderboard-page-summary span{font-size:.66rem;letter-spacing:.12em;font-weight:900;color:#8b6c24}
.sigma-leaderboard-page-summary strong{font-size:2rem;letter-spacing:-.04em;color:var(--navy)}
.sigma-leaderboard-page-summary p{margin:0;color:var(--muted);line-height:1.55;font-size:.88rem}
.sigma-leaderboard-page-rows{margin-top:18px}
html[data-theme="dark"] .home-leaderboard-btn{background:linear-gradient(135deg,#463b1f,#66562b);color:#fff2ba;border-color:#806d34}
html[data-theme="dark"] .sigma-leaderboard-page-toggle,
html[data-theme="dark"] .sigma-leaderboard-page-card{background:#12243b;border-color:#2a4058;color:#eef6ff}
html[data-theme="dark"] .sigma-leaderboard-page-summary{background:linear-gradient(135deg,#172c45,#332d1d);border-color:#33465b}
html[data-theme="dark"] .sigma-leaderboard-page-summary strong{color:#f5f9ff}
@media(max-width:760px){
  .sigma-leaderboard-page-head{align-items:stretch}
  .sigma-leaderboard-page-toggle{width:100%;justify-content:space-between}
  .sigma-leaderboard-page-card{padding:17px;border-radius:20px}
  .sigma-leaderboard-page-summary{grid-template-columns:1fr;gap:8px;padding:15px}
  .sigma-leaderboard-page-summary strong{font-size:1.7rem}
}


/* ===== V51.13 • Editable Country + Leaderboard Flags ===== */
.auth-country-field select{appearance:auto}
.auth-country-field>small{display:block;margin-top:7px;color:#6b7d91;font-size:.7rem;line-height:1.45}
.sigma-leader-row strong{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}
.sigma-country-flag{display:inline-flex;align-items:center;justify-content:center;font-size:1.18rem;line-height:1;filter:saturate(1.05);transform:translateY(-1px)}
@media(max-width:480px){.sigma-country-flag{font-size:1.08rem}}


/* ============================================================
   V51.13 • Desktop Storm Viewport Fit
   Keeps the LIVE Sigma Storm cockpit inside the visible desktop
   browser viewport. Phone/tablet rules are intentionally untouched.
   ============================================================ */
@media(min-width:1101px){
  body.sigma-storm-live{
    height:100dvh;
    overflow:hidden;
  }
  body.sigma-storm-live main{
    height:calc(100dvh - 64px);
    min-height:0;
    padding-top:6px;
    padding-bottom:76px;
    overflow:hidden;
  }
  #timesGameView.storm-running{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  #timesGameView.storm-running .times-game-shell{
    height:100%;
    min-height:0;
    grid-template-rows:auto auto auto minmax(0,1fr) auto auto;
    align-items:stretch;
  }
  #timesGameView.storm-running .times-arena-wrap{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  #timesGameView.storm-running .times-arena,
  #timesGameView.storm-running.blaster-active .times-arena{
    height:100%;
    min-height:0;
    max-height:none;
  }
  #timesGameView.storm-running .times-answer-deck{
    align-self:start;
    max-height:100%;
    overflow:hidden;
  }
}

/* Common 1366×768 / 1440×768 laptops: compact the controller instead
   of allowing the fixed bottom navigation to cover game controls. */
@media(min-width:1101px) and (max-height:820px){
  body.sigma-storm-live main{padding-bottom:70px}
  #timesGameView.storm-running .times-game-shell{gap:5px 10px}
  #timesGameView.storm-running .times-hud-item{min-height:38px;padding:4px 7px}
  #timesGameView.storm-running .times-mobile-live-controls button{min-height:26px;padding:4px 8px}
  #timesGameView.storm-running .times-wave-strip{padding:4px 8px}
  #timesGameView.storm-running .times-answer-deck{padding:6px;gap:5px}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{min-height:34px;height:34px}
  #timesGameView.storm-running .times-feedback{padding:4px 6px;font-size:.6rem}
  #timesGameView.storm-running .times-number-pad{padding:5px}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,36px);gap:4px}
  #timesGameView.storm-running .times-pad-key{min-height:36px;height:36px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:40px;padding:4px 7px}
  #timesGameView.storm-running .times-bonus-icon{width:28px;height:28px}
  #timesGameView.storm-running .times-power-btn{min-height:40px;padding:4px 7px}
  #timesGameView.storm-running .times-power-icon{width:25px;height:25px}
  #timesGameView.storm-running .times-power-count{height:25px;min-width:25px}
  #timesGameView.storm-running .times-game-status{padding:4px 8px;font-size:.61rem}
}

/* Very short desktop windows remain playable without vertical page scroll. */
@media(min-width:1101px) and (max-height:700px){
  body.sigma-storm-live .topbar{min-height:56px;padding-top:4px;padding-bottom:4px}
  body.sigma-storm-live main{height:calc(100dvh - 56px);padding-top:4px;padding-bottom:64px}
  #timesGameView.storm-running .times-game-shell{gap:4px 8px}
  #timesGameView.storm-running .times-game-hud{gap:3px}
  #timesGameView.storm-running .times-hud-item{min-height:32px;padding:3px 6px}
  #timesGameView.storm-running .times-hud-item span{font-size:.42rem}
  #timesGameView.storm-running .times-hud-item strong{font-size:.68rem}
  #timesGameView.storm-running .times-wave-strip{padding:3px 7px}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{min-height:30px;height:30px}
  #timesGameView.storm-running .times-feedback{display:none}
  #timesGameView.storm-running .times-number-pad{padding:4px}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,30px);gap:3px}
  #timesGameView.storm-running .times-pad-key{min-height:30px;height:30px;border-bottom-width:2px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:34px}
  #timesGameView.storm-running .times-power-btn{min-height:34px}
  #timesGameView.storm-running .times-game-status{display:none}
}


/* ============================================================
   V51.17 • Desktop Storm TRUE viewport fit
   V51.13 used a width-only desktop breakpoint (>1100 CSS px).
   On many Windows laptops, browser zoom/display scaling makes a
   desktop viewport report 900–1100 CSS px, so tablet rules won.
   This desktop-class landscape rule catches scaled laptop viewports and
   forces the LIVE cockpit into one visible viewport.
   ============================================================ */
@media (min-width:820px) and (min-height:500px) and (orientation:landscape){
  body.sigma-storm-live{
    height:100dvh;
    min-height:0;
    overflow:hidden;
  }
  body.sigma-storm-live .topbar{
    min-height:58px;
    height:58px;
    padding:5px 12px;
  }
  body.sigma-storm-live .topbar-title .eyebrow{display:none}
  body.sigma-storm-live .topbar-title h1{font-size:1rem}
  body.sigma-storm-live .compact-mark{width:34px;height:34px;border-radius:10px}
  body.sigma-storm-live .app-back-btn,
  body.sigma-storm-live .icon-btn,
  body.sigma-storm-live #installBtn{min-height:34px}
  body.sigma-storm-live main{
    width:min(1460px,calc(100vw - 14px));
    height:calc(100dvh - 58px);
    min-height:0;
    padding:5px 0 calc(66px + env(safe-area-inset-bottom));
    overflow:hidden;
  }
  #timesGameView.storm-running{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  #timesGameView.storm-running .times-game-shell{
    width:100%;
    max-width:1460px;
    height:100%;
    min-height:0;
    padding-bottom:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) clamp(250px,28vw,320px);
    grid-template-rows:auto auto auto minmax(0,1fr) auto;
    grid-template-areas:
      "hud hud"
      "controls controls"
      "wave wave"
      "arena answer"
      "powers answer";
    gap:4px 8px;
    align-items:stretch;
  }
  #timesGameView.storm-running .times-game-hero,
  #timesGameView.storm-running .times-tier-strip,
  #timesGameView.storm-running .times-game-rules,
  #timesGameView.storm-running .times-analysis,
  #timesGameView.storm-running .times-game-status{display:none!important}
  #timesGameView.storm-running .times-game-hud{
    grid-area:hud;
    position:static;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:3px;
    margin:0;
  }
  #timesGameView.storm-running .times-hud-item{
    min-width:0;
    min-height:34px;
    padding:3px 6px;
    border-radius:9px;
  }
  #timesGameView.storm-running .times-hud-item span{font-size:.42rem}
  #timesGameView.storm-running .times-hud-item strong{font-size:.68rem}
  #timesGameView.storm-running .times-record-chase,
  #timesGameView.storm-running .times-overdrive-meter{display:none}
  #timesGameView.storm-running .times-mobile-live-controls{
    grid-area:controls;
    display:flex;
    justify-content:flex-end;
    gap:5px;
    margin:0;
  }
  #timesGameView.storm-running .times-mobile-live-controls button{
    min-height:26px;
    padding:3px 8px;
    border-radius:8px;
    font-size:.52rem;
  }
  #timesGameView.storm-running .times-wave-strip{
    grid-area:wave;
    grid-template-columns:minmax(130px,.45fr) 1fr auto;
    gap:6px;
    margin:0;
    padding:3px 7px;
    border-radius:9px;
  }
  #timesGameView.storm-running .times-wave-copy span{font-size:.42rem}
  #timesGameView.storm-running .times-wave-copy strong{font-size:.6rem}
  #timesGameView.storm-running .times-wave-strip>small{grid-column:auto;grid-row:auto;text-align:right;font-size:.5rem}
  #timesGameView.storm-running .times-arena-wrap{
    grid-area:arena;
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  #timesGameView.storm-running .times-arena,
  #timesGameView.storm-running.blaster-active .times-arena{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    border-radius:15px;
  }
  #timesGameView.storm-running .times-answer-deck{
    grid-area:answer;
    position:static;
    inset:auto;
    width:auto;
    height:100%;
    min-height:0;
    max-height:none;
    transform:none;
    margin:0;
    padding:5px;
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    gap:4px;
    overflow:hidden;
    border-radius:12px;
  }
  #timesGameView.storm-running .times-answer-form{
    grid-template-columns:minmax(0,1fr) 62px;
    gap:4px;
  }
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{
    min-height:30px;
    height:30px;
    padding-top:3px;
    padding-bottom:3px;
    border-radius:8px;
  }
  #timesGameView.storm-running .times-feedback{
    min-height:0;
    padding:3px 5px;
    font-size:.55rem;
    line-height:1.2;
  }
  #timesGameView.storm-running .times-number-pad{
    min-height:0;
    padding:4px;
    gap:3px;
    border-radius:10px;
    overflow:hidden;
  }
  #timesGameView.storm-running .times-pad-label{display:none}
  #timesGameView.storm-running .times-pad-grid{
    height:100%;
    min-height:0;
    grid-template-columns:repeat(4,minmax(36px,1fr));
    grid-template-rows:repeat(4,minmax(26px,1fr));
    gap:3px;
    padding:0;
  }
  #timesGameView.storm-running .times-pad-key{
    min-height:26px;
    height:auto;
    border-radius:8px;
    border-bottom-width:2px;
  }
  #timesGameView.storm-running .times-pad-key>span{font-size:.82rem}
  #timesGameView.storm-running .times-pad-key>small{display:none}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:0;gap:2px}
  #timesGameView.storm-running .times-bonus-weapon{
    min-height:32px;
    grid-template-columns:25px 1fr auto;
    gap:5px;
    padding:3px 5px;
    border-radius:9px;
  }
  #timesGameView.storm-running .times-bonus-icon{width:23px;height:23px;border-radius:7px;font-size:.8rem}
  #timesGameView.storm-running .times-bonus-copy small{font-size:.34rem}
  #timesGameView.storm-running .times-bonus-copy strong{font-size:.62rem}
  #timesGameView.storm-running .times-bonus-copy em{display:none}
  #timesGameView.storm-running .times-bonus-count{min-width:38px;padding:3px;font-size:.45rem}
  #timesGameView.storm-running .times-bonus-charge{height:3px}
  #timesGameView.storm-running .times-power-grid{
    grid-area:powers;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px;
    margin:0;
  }
  #timesGameView.storm-running .times-power-btn{
    min-height:34px;
    padding:3px 5px;
    grid-template-columns:24px 1fr auto;
    gap:4px;
    border-radius:9px;
  }
  #timesGameView.storm-running .times-power-icon{width:23px;height:23px;border-radius:7px;font-size:.75rem}
  #timesGameView.storm-running .times-power-copy strong{font-size:.56rem}
  #timesGameView.storm-running .times-power-copy small{display:none}
  #timesGameView.storm-running .times-power-count{min-width:23px;height:23px;font-size:.5rem}
}

/* Extra-tight laptop heights (including 125–150% Windows display scaling). */
@media (min-width:820px) and (min-height:500px) and (orientation:landscape) and (max-height:720px){
  body.sigma-storm-live .topbar{min-height:52px;height:52px;padding:3px 10px}
  body.sigma-storm-live main{height:calc(100dvh - 52px);padding-top:3px;padding-bottom:60px}
  #timesGameView.storm-running .times-game-shell{gap:3px 7px}
  #timesGameView.storm-running .times-feedback{display:none}
  #timesGameView.storm-running .times-hud-item{min-height:30px;padding:2px 5px}
  #timesGameView.storm-running .times-mobile-live-controls button{min-height:23px;padding:2px 7px}
  #timesGameView.storm-running .times-wave-strip{padding:2px 6px}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{min-height:27px;height:27px}
  #timesGameView.storm-running .times-answer-deck{grid-template-rows:auto minmax(0,1fr) auto}
  #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,minmax(23px,1fr));gap:2px}
  #timesGameView.storm-running .times-pad-key{min-height:23px}
  #timesGameView.storm-running .times-bonus-weapon{min-height:28px}
  #timesGameView.storm-running .times-power-btn{min-height:29px}
}

/* ============================================================
   V51.17 • Desktop Storm Immersive Fit
   V51.16 still required a >=500px CSS viewport height. On short
   Windows laptop viewports (display scaling + browser chrome) that
   condition can fail, causing the older tall/tablet cockpit to win.
   During a live run, landscape screens >=700px now use a true fixed
   viewport cockpit with app chrome hidden until Storm Menu is opened.
   ============================================================ */
@media (min-width:700px) and (orientation:landscape){
  body.sigma-storm-live{
    width:100vw;
    height:100vh;
    height:100dvh;
    min-height:0;
    overflow:hidden!important;
  }
  body.sigma-storm-live .topbar,
  body.sigma-storm-live .bottom-nav{
    display:none!important;
  }
  body.sigma-storm-live main{
    position:fixed!important;
    inset:0!important;
    z-index:40;
    width:100vw!important;
    max-width:none!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:0!important;
    margin:0!important;
    padding:4px!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#061326,#0a2038);
  }
  #timesGameView.storm-running{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  #timesGameView.storm-running .times-game-shell{
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) clamp(220px,29vw,330px)!important;
    grid-template-rows:auto auto auto minmax(0,1fr) auto!important;
    grid-template-areas:
      "hud hud"
      "controls controls"
      "wave wave"
      "arena answer"
      "powers answer"!important;
    gap:3px 6px!important;
    overflow:hidden!important;
  }
  #timesGameView.storm-running .times-game-hero,
  #timesGameView.storm-running .times-tier-strip,
  #timesGameView.storm-running .times-game-rules,
  #timesGameView.storm-running .times-analysis,
  #timesGameView.storm-running .times-game-status{
    display:none!important;
  }
  #timesGameView.storm-running .times-game-hud{
    grid-area:hud!important;
    position:static!important;
    display:grid!important;
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:2px!important;
    margin:0!important;
    min-width:0!important;
  }
  #timesGameView.storm-running .times-hud-item{
    min-width:0!important;
    min-height:26px!important;
    padding:2px 5px!important;
    border-radius:7px!important;
    gap:0!important;
  }
  #timesGameView.storm-running .times-hud-item span{font-size:.38rem!important}
  #timesGameView.storm-running .times-hud-item strong{font-size:.62rem!important;line-height:1.05!important}
  #timesGameView.storm-running .times-record-chase,
  #timesGameView.storm-running .times-overdrive-meter{display:none!important}

  #timesGameView.storm-running .times-mobile-live-controls{
    grid-area:controls!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:4px!important;
    margin:0!important;
    min-height:0!important;
  }
  #timesGameView.storm-running .times-mobile-live-controls button{
    min-height:22px!important;
    height:22px!important;
    padding:1px 7px!important;
    border-radius:7px!important;
    font-size:.48rem!important;
  }
  #timesGameView.storm-running .times-wave-strip{
    grid-area:wave!important;
    grid-template-columns:minmax(100px,.4fr) 1fr auto!important;
    gap:5px!important;
    margin:0!important;
    padding:2px 6px!important;
    min-height:22px!important;
    border-radius:7px!important;
  }
  #timesGameView.storm-running .times-wave-copy span{font-size:.36rem!important}
  #timesGameView.storm-running .times-wave-copy strong{font-size:.54rem!important}
  #timesGameView.storm-running .times-wave-strip>small{font-size:.43rem!important;grid-column:auto!important;grid-row:auto!important}

  #timesGameView.storm-running .times-arena-wrap{
    grid-area:arena!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
  }
  #timesGameView.storm-running .times-arena,
  #timesGameView.storm-running.blaster-active .times-arena{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-height:none!important;
    border-radius:12px!important;
  }

  #timesGameView.storm-running .times-answer-deck{
    grid-area:answer!important;
    position:static!important;
    inset:auto!important;
    transform:none!important;
    width:auto!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:4px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
    gap:3px!important;
    overflow:hidden!important;
    border-radius:10px!important;
  }
  #timesGameView.storm-running .times-answer-form{
    grid-template-columns:minmax(0,1fr) 56px!important;
    gap:3px!important;
  }
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{
    min-height:25px!important;
    height:25px!important;
    padding:1px 5px!important;
    border-radius:6px!important;
    font-size:.72rem!important;
  }
  #timesGameView.storm-running .times-feedback{
    min-height:0!important;
    padding:2px 4px!important;
    font-size:.48rem!important;
    line-height:1.05!important;
  }
  #timesGameView.storm-running .times-number-pad{
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    padding:3px!important;
    gap:2px!important;
    border-radius:8px!important;
    overflow:hidden!important;
  }
  #timesGameView.storm-running .times-pad-label{display:none!important}
  #timesGameView.storm-running .times-pad-grid{
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    grid-template-columns:repeat(4,minmax(28px,1fr))!important;
    grid-template-rows:repeat(4,minmax(18px,1fr))!important;
    gap:2px!important;
    padding:0!important;
  }
  #timesGameView.storm-running .times-pad-key{
    min-width:0!important;
    min-height:18px!important;
    height:auto!important;
    padding:0!important;
    border-radius:6px!important;
    border-bottom-width:1px!important;
  }
  #timesGameView.storm-running .times-pad-key>span{font-size:.72rem!important;line-height:1!important}
  #timesGameView.storm-running .times-pad-key>small{display:none!important}
  #timesGameView.storm-running .times-bonus-weapon-row{margin-top:0!important;gap:1px!important}
  #timesGameView.storm-running .times-bonus-weapon{
    min-height:26px!important;
    grid-template-columns:21px 1fr auto!important;
    gap:4px!important;
    padding:2px 4px!important;
    border-radius:7px!important;
  }
  #timesGameView.storm-running .times-bonus-icon{width:20px!important;height:20px!important;border-radius:6px!important;font-size:.68rem!important}
  #timesGameView.storm-running .times-bonus-copy small{font-size:.3rem!important}
  #timesGameView.storm-running .times-bonus-copy strong{font-size:.54rem!important}
  #timesGameView.storm-running .times-bonus-copy em{display:none!important}
  #timesGameView.storm-running .times-bonus-count{min-width:34px!important;padding:2px!important;font-size:.4rem!important}
  #timesGameView.storm-running .times-bonus-charge{height:2px!important}

  #timesGameView.storm-running .times-power-grid{
    grid-area:powers!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:3px!important;
    margin:0!important;
    min-width:0!important;
  }
  #timesGameView.storm-running .times-power-btn{
    min-width:0!important;
    min-height:27px!important;
    padding:2px 4px!important;
    grid-template-columns:20px 1fr auto!important;
    gap:3px!important;
    border-radius:7px!important;
    box-shadow:none!important;
  }
  #timesGameView.storm-running .times-power-icon{width:19px!important;height:19px!important;border-radius:5px!important;font-size:.62rem!important}
  #timesGameView.storm-running .times-power-copy strong{font-size:.48rem!important}
  #timesGameView.storm-running .times-power-copy small{display:none!important}
  #timesGameView.storm-running .times-power-count{min-width:20px!important;height:20px!important;padding:0 3px!important;font-size:.43rem!important}
}

/* Extremely short desktop content viewports: preserve the core play loop first. */
@media (min-width:700px) and (orientation:landscape) and (max-height:499px){
  #timesGameView.storm-running .times-game-shell{gap:2px 5px!important}
  #timesGameView.storm-running .times-game-hud{grid-template-columns:repeat(7,minmax(0,1fr))!important}
  #timesGameView.storm-running .times-hud-item{min-height:22px!important;padding:1px 4px!important}
  #timesGameView.storm-running .times-mobile-live-controls button{height:19px!important;min-height:19px!important}
  #timesGameView.storm-running .times-wave-strip{min-height:19px!important;padding:1px 5px!important}
  #timesGameView.storm-running .times-feedback{display:none!important}
  #timesGameView.storm-running .times-answer-deck{grid-template-rows:auto minmax(0,1fr) auto!important}
  #timesGameView.storm-running .times-answer-form input,
  #timesGameView.storm-running .times-answer-form .btn{height:22px!important;min-height:22px!important}
  #timesGameView.storm-running .times-bonus-weapon{min-height:22px!important}
  #timesGameView.storm-running .times-power-btn{min-height:23px!important}
}


/* ============================================================
   V51.18 • Display Modes + Deterministic Desktop Storm Fit
   Display selection is explicit. The effective layout is stored on
   <html data-display-layout="..."> so it no longer depends solely on
   browser CSS-pixel breakpoints. Desktop Storm uses the measured visual
   viewport and a fixed five-row cockpit: nothing can sit underneath nav.
   ============================================================ */
.sigma-display-settings-card{grid-column:1/-1}
.sigma-display-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:16px 0 10px}
.sigma-display-mode-btn{min-width:0;min-height:92px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:12px;border:1px solid #d5e1eb;border-radius:15px;background:linear-gradient(180deg,#fff,#f5f9fc);color:#18334c;text-align:left;transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease}
.sigma-display-mode-btn>span{font-size:1.25rem;line-height:1;color:#47758f}.sigma-display-mode-btn>strong{font-size:.86rem}.sigma-display-mode-btn>small{font-size:.66rem;line-height:1.3;color:#718499}
.sigma-display-mode-btn.active{border-color:#2c9fd0;background:linear-gradient(180deg,#eefaff,#e7f5fb);box-shadow:0 0 0 2px rgba(44,159,208,.10),0 7px 18px rgba(29,97,135,.08)}
.sigma-display-mode-btn.active>span{color:#167bab}.sigma-display-mode-btn:focus-visible{outline:3px solid rgba(44,159,208,.28);outline-offset:2px}
.sigma-display-mode-status{margin:0;padding:9px 11px;border-radius:11px;background:#eef4f8;color:#3d6078;font-size:.72rem;font-weight:850}
html[data-theme="dark"] .sigma-display-mode-btn{background:#0a1a2a;border-color:#2b435a;color:#edf7ff}html[data-theme="dark"] .sigma-display-mode-btn>small{color:#9bb3c9}html[data-theme="dark"] .sigma-display-mode-btn.active{background:#0d3047;border-color:#43bfe9}html[data-theme="dark"] .sigma-display-mode-status{background:#0e2438;color:#b9d7e9}
@media(max-width:720px){.sigma-display-mode-grid{grid-template-columns:1fr 1fr}.sigma-display-mode-btn{min-height:82px}}

/* Forced layout shells. Auto writes one of these same effective values. */
html[data-display-layout="mobile"] body:not(.sigma-storm-live){width:min(430px,100%);margin-inline:auto}
html[data-display-layout="mobile"] .topbar{min-height:68px;padding:9px 10px}
html[data-display-layout="mobile"] .topbar h1{font-size:1rem}
html[data-display-layout="mobile"] .privacy-pill{display:none}
html[data-display-layout="mobile"] .topbar-brand{gap:7px}
html[data-display-layout="mobile"] .top-actions{gap:5px}
html[data-display-layout="mobile"] .app-back-btn{padding-inline:7px}
html[data-display-layout="mobile"] main{width:calc(100% - 12px);padding-top:12px;padding-bottom:86px}
html[data-display-layout="mobile"] .hero,html[data-display-layout="mobile"] .review-card{align-items:stretch;flex-direction:column}
html[data-display-layout="mobile"] .dashboard-hero{grid-template-columns:1fr;padding:18px;gap:18px}
html[data-display-layout="mobile"] .progress-orb{width:126px;height:126px;justify-self:center;grid-row:1}
html[data-display-layout="mobile"] .hero-copy{grid-row:2}
html[data-display-layout="mobile"] .hero-actions{display:grid;grid-template-columns:1fr}
html[data-display-layout="mobile"] .stats-grid{grid-template-columns:1fr 1fr;gap:8px}
html[data-display-layout="mobile"] .quick-grid,html[data-display-layout="mobile"] .module-grid,html[data-display-layout="mobile"] .settings-grid{grid-template-columns:1fr}
html[data-display-layout="mobile"] .toolkit-grid,html[data-display-layout="mobile"] .study-path{grid-template-columns:1fr 1fr}
html[data-display-layout="mobile"] .section-head{align-items:stretch;flex-direction:column;gap:10px}
html[data-display-layout="mobile"] .sticky-head{top:68px}
html[data-display-layout="mobile"] .filters{width:100%}html[data-display-layout="mobile"] .filters input,html[data-display-layout="mobile"] .filters select{flex:1;min-width:0}
html[data-display-layout="mobile"] .topic-row{grid-template-columns:1fr auto}html[data-display-layout="mobile"] .topic-open{grid-column:2;grid-row:1/3}
html[data-display-layout="mobile"] .form-grid{grid-template-columns:1fr}html[data-display-layout="mobile"] .full{grid-column:1}
html[data-display-layout="mobile"] .sigma-display-mode-grid{grid-template-columns:1fr 1fr}
html[data-display-layout="mobile"] .bottom-nav{width:min(420px,calc(100vw - 8px));padding:4px;grid-template-columns:repeat(7,minmax(0,1fr));border-radius:14px}
html[data-display-layout="mobile"] .nav-item{min-width:0;padding:6px 1px}html[data-display-layout="mobile"] .nav-item span{font-size:.92rem}html[data-display-layout="mobile"] .nav-item small{font-size:.5rem}

html[data-display-layout="tablet"] body:not(.sigma-storm-live){width:min(920px,100%);margin-inline:auto}
html[data-display-layout="tablet"] .topbar{min-height:72px;padding:11px 14px}
html[data-display-layout="tablet"] main{width:calc(100% - 24px);padding-top:16px}
html[data-display-layout="tablet"] .dashboard-hero{grid-template-columns:minmax(0,1fr) 150px;gap:18px;padding:24px}
html[data-display-layout="tablet"] .progress-orb{width:145px;height:145px}
html[data-display-layout="tablet"] .quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
html[data-display-layout="tablet"] .settings-grid{grid-template-columns:1fr 1fr}
html[data-display-layout="tablet"] .bottom-nav{width:min(720px,calc(100vw - 16px));grid-template-columns:repeat(7,minmax(0,1fr))}

html[data-display-layout="desktop"] body:not(.sigma-storm-live){width:100%;max-width:none;margin:0}

/* Desktop Storm is now keyed to the chosen/effective desktop mode rather
   than an arbitrary min-width breakpoint. This is the authoritative live
   desktop cockpit and intentionally overrides V51.13–V51.17 rules. */
html[data-display-layout="desktop"] body.sigma-storm-live{
  position:fixed!important;inset:0!important;width:100%!important;height:var(--storm-viewport-height,var(--sigma-viewport-height,100dvh))!important;min-height:0!important;overflow:hidden!important;background:#061326
}
html[data-display-layout="desktop"] body.sigma-storm-live .topbar,
html[data-display-layout="desktop"] body.sigma-storm-live .bottom-nav{display:none!important}
html[data-display-layout="desktop"] body.sigma-storm-live main{
  position:fixed!important;inset:0!important;z-index:40!important;width:var(--sigma-viewport-width,100vw)!important;max-width:none!important;height:var(--sigma-viewport-height,100dvh)!important;min-height:0!important;margin:0!important;padding:6px!important;overflow:hidden!important;background:linear-gradient(180deg,#061326,#0a2038)
}
html[data-display-layout="desktop"] #timesGameView.storm-running{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;overflow:hidden!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-game-shell{
  width:100%!important;max-width:none!important;height:100%!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;display:grid!important;
  grid-template-columns:minmax(0,1fr) clamp(230px,27vw,340px)!important;
  grid-template-rows:30px 24px 26px minmax(0,1fr) 34px!important;
  grid-template-areas:"hud hud" "controls controls" "wave wave" "arena answer" "powers answer"!important;
  gap:4px 7px!important;overflow:hidden!important;align-items:stretch!important
}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-game-hero,
html[data-display-layout="desktop"] #timesGameView.storm-running .times-tier-strip,
html[data-display-layout="desktop"] #timesGameView.storm-running .times-game-rules,
html[data-display-layout="desktop"] #timesGameView.storm-running .times-analysis,
html[data-display-layout="desktop"] #timesGameView.storm-running .times-game-status{display:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-game-hud{grid-area:hud!important;position:static!important;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;margin:0!important;padding:0!important;min-width:0!important;min-height:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-hud-item{display:flex!important;min-width:0!important;min-height:0!important;height:30px!important;padding:2px 6px!important;border-radius:8px!important;gap:0!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-hud-item span{font-size:.4rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-hud-item strong{font-size:.66rem!important;line-height:1.05!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-record-chase,html[data-display-layout="desktop"] #timesGameView.storm-running .times-overdrive-meter{display:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-mobile-live-controls{grid-area:controls!important;display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:5px!important;margin:0!important;min-height:0!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-mobile-live-controls button{height:24px!important;min-height:24px!important;padding:2px 8px!important;border-radius:7px!important;font-size:.5rem!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-wave-strip{grid-area:wave!important;display:grid!important;grid-template-columns:minmax(120px,.42fr) 1fr auto!important;gap:6px!important;margin:0!important;padding:2px 7px!important;height:26px!important;min-height:0!important;border-radius:8px!important;overflow:hidden!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-wave-copy span{font-size:.38rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-wave-copy strong{font-size:.56rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-wave-strip>small{grid-column:auto!important;grid-row:auto!important;font-size:.46rem!important;text-align:right!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-arena-wrap{grid-area:arena!important;min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;overflow:hidden!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-arena,html[data-display-layout="desktop"] #timesGameView.storm-running.blaster-active .times-arena{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-height:none!important;border-radius:12px!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-answer-deck{grid-area:answer!important;position:static!important;inset:auto!important;transform:none!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-height:100%!important;margin:0!important;padding:4px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:28px 18px clamp(150px,42dvh,280px) 30px!important;gap:3px!important;overflow:hidden!important;border-radius:10px!important;box-shadow:none!important;align-self:start!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 58px!important;gap:3px!important;min-height:0!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-answer-form input,html[data-display-layout="desktop"] #timesGameView.storm-running .times-answer-form .btn{height:28px!important;min-height:28px!important;padding:1px 5px!important;border-radius:6px!important;font-size:.72rem!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-feedback{height:18px!important;min-height:0!important;padding:2px 4px!important;font-size:.46rem!important;line-height:1.05!important;overflow:hidden!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-number-pad{min-width:0!important;min-height:0!important;height:100%!important;padding:3px!important;display:block!important;border-radius:8px!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px #18283a!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-number-pad:before,html[data-display-layout="desktop"] #timesGameView.storm-running .times-number-pad:after,html[data-display-layout="desktop"] #timesGameView.storm-running .times-pad-label{display:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-pad-grid{width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,minmax(18px,1fr))!important;gap:3px!important;padding:0!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-pad-key{min-width:0!important;min-height:18px!important;height:auto!important;padding:0!important;border-radius:6px!important;border-bottom-width:1px!important;box-shadow:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-pad-key>span{font-size:.76rem!important;line-height:1!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-pad-key>small{display:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-weapon-row{height:30px!important;min-height:0!important;margin:0!important;gap:1px!important;overflow:hidden!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-weapon{height:28px!important;min-height:28px!important;grid-template-columns:22px 1fr auto!important;gap:4px!important;padding:2px 4px!important;border-radius:7px!important;box-shadow:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-icon{width:20px!important;height:20px!important;border-radius:6px!important;font-size:.68rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-copy small{font-size:.3rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-copy strong{font-size:.54rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-copy em{display:none!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-count{min-width:34px!important;padding:2px!important;font-size:.4rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-bonus-charge{height:2px!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-grid{grid-area:powers!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:4px!important;margin:0!important;min-width:0!important;min-height:0!important;height:34px!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-btn{min-width:0!important;height:34px!important;min-height:34px!important;padding:2px 5px!important;grid-template-columns:22px 1fr auto!important;gap:4px!important;border-radius:8px!important;box-shadow:none!important}
html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-icon{width:21px!important;height:21px!important;border-radius:6px!important;font-size:.68rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-copy strong{font-size:.52rem!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-copy small{display:none!important}html[data-display-layout="desktop"] #timesGameView.storm-running .times-power-count{min-width:21px!important;height:21px!important;padding:0 3px!important;font-size:.45rem!important}

/* The play surface gets priority on very short desktop windows. */
html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-game-shell{grid-template-rows:27px 22px 23px minmax(0,1fr) 30px!important;gap:3px 6px!important}
html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-hud-item{height:27px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-mobile-live-controls button{height:22px!important;min-height:22px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-wave-strip{height:23px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-answer-deck{grid-template-rows:26px clamp(140px,42dvh,240px) 27px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-feedback{display:none!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-answer-form input,html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-answer-form .btn{height:26px!important;min-height:26px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-bonus-weapon-row{height:27px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-bonus-weapon{height:25px!important;min-height:25px!important}html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-power-grid,html[data-display-layout="desktop"][data-storm-height-band="sm"] #timesGameView.storm-running .times-power-btn{height:30px!important;min-height:30px!important}
html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-game-shell{grid-template-rows:24px 20px 21px minmax(0,1fr) 27px!important;gap:2px 5px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-hud-item{height:24px!important;padding:1px 4px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-hud-item span{font-size:.34rem!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-hud-item strong{font-size:.56rem!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-mobile-live-controls button{height:20px!important;min-height:20px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-wave-strip{height:21px!important;padding:1px 5px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-answer-deck{grid-template-rows:23px clamp(115px,42dvh,190px) 24px!important;padding:3px!important;gap:2px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-feedback{display:none!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-answer-form input,html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-answer-form .btn{height:23px!important;min-height:23px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-bonus-weapon-row{height:24px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-bonus-weapon{height:22px!important;min-height:22px!important}html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-power-grid,html[data-display-layout="desktop"][data-storm-height-band="xs"] #timesGameView.storm-running .times-power-btn{height:27px!important;min-height:27px!important}

/* ======================================================================
   V51.19 • Sigma World ambience + Home cleanup
   ====================================================================== */
.sigma-world-title-actions{display:flex;align-items:stretch;gap:10px}
.sigma-world-audio{width:225px;padding:11px 12px;border:1px solid #dbe5ef;border-radius:20px;background:rgba(255,255,255,.88);box-shadow:0 14px 34px rgba(21,52,88,.07);backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;gap:8px}
.sigma-world-music-btn{min-height:38px;border:1px solid rgba(93,81,211,.22);border-radius:13px;background:linear-gradient(135deg,rgba(96,83,222,.10),rgba(44,151,207,.08));color:#293d55;display:flex;align-items:center;justify-content:center;gap:8px;font:inherit;cursor:pointer;padding:7px 10px}
.sigma-world-music-btn span{font-size:1.05rem;color:#6551d8}.sigma-world-music-btn strong{font-size:.76rem;letter-spacing:.01em}
.sigma-world-music-btn.audio-off{background:#f4f7fa;color:#75869a;border-color:#dce5ed}.sigma-world-music-btn.audio-off span{color:#8b98a7}
.sigma-world-volume label{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#718399;font-size:.56rem;font-weight:800;line-height:1.2}.sigma-world-volume label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigma-world-volume label b{font-size:.57rem;color:#5e7186}
.sigma-world-volume input{width:100%;height:20px;accent-color:#6551d8;margin:1px 0 0}
html[data-theme="dark"] .sigma-world-audio{background:rgba(13,28,46,.90);border-color:#29445f}.sigma-world-music-btn{color:#eef5fb}html:not([data-theme="dark"]) .sigma-world-music-btn{color:#293d55}html[data-theme="dark"] .sigma-world-music-btn.audio-off{background:#13283c;border-color:#30475d;color:#93a8bc}html[data-theme="dark"] .sigma-world-volume label{color:#a9bbcc}
.worksheet-tool-strip{margin:12px 0 14px;padding:11px 13px;border:1px solid #dbe6ef;border-radius:16px;background:linear-gradient(180deg,#fbfdff,#f5f9fd);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.worksheet-tool-strip-copy{display:flex;flex-direction:column;gap:2px;min-width:160px}.worksheet-tool-strip-copy strong{font-size:.78rem;color:var(--navy)}.worksheet-tool-strip-copy small{font-size:.65rem;color:#718399}
.worksheet-tool-strip-actions{display:flex;gap:7px;flex-wrap:wrap}.worksheet-tool-strip .bt-tool-chip{min-height:36px;padding:7px 10px}
html[data-theme="dark"] .worksheet-tool-strip{background:linear-gradient(180deg,#0e2033,#10263b);border-color:#29445f}.worksheet-tool-strip-copy strong{color:inherit}html[data-theme="dark"] .worksheet-tool-strip-copy small{color:#a9bbcc}
@media(max-width:900px){.sigma-world-title-actions{width:100%;flex-wrap:wrap}.sigma-world-audio{width:min(100%,225px)}.sigma-world-overall{flex:1;min-width:240px}}
@media(max-width:760px){.sigma-world-title-actions{display:grid;grid-template-columns:1fr}.sigma-world-audio,.sigma-world-overall{width:100%!important;min-width:0;box-sizing:border-box}.sigma-world-audio{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px}.sigma-world-volume{min-width:0}.sigma-world-music-btn{min-height:42px}.worksheet-tool-strip{align-items:flex-start}.worksheet-tool-strip-actions{width:100%}}
@media(max-width:430px){.sigma-world-audio{grid-template-columns:1fr}.sigma-world-volume label span{white-space:normal}.worksheet-tool-strip .bt-tool-chip{flex:1 1 calc(50% - 7px)}}


/* V51.20 — private Admin Analytics */
.sigma-admin-analytics-card{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--brand,#5c6cff) 46%,transparent);background:linear-gradient(145deg,color-mix(in srgb,var(--card,#111827) 94%,#64748b 6%),var(--card,#111827));}
.sigma-admin-analytics-card::after{content:"Σ";position:absolute;right:-14px;bottom:-38px;font-size:9rem;font-weight:900;opacity:.045;pointer-events:none}
.sigma-admin-card-heading,.sigma-admin-dialog-title-row,.sigma-analytics-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.sigma-admin-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:900;letter-spacing:.12em;white-space:nowrap;opacity:.88}
.sigma-admin-summary-strip{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.sigma-admin-summary-strip span{font-size:.72rem;font-weight:800;padding:5px 8px;border-radius:999px;background:color-mix(in srgb,currentColor 7%,transparent)}
.sigma-admin-analytics-dialog{width:min(1120px,calc(100vw - 22px));max-width:none;border:0;padding:0;background:transparent;color:inherit}
.sigma-admin-analytics-dialog::backdrop{background:rgba(2,6,23,.76);backdrop-filter:blur(8px)}
.sigma-admin-analytics-shell{position:relative;max-height:min(90dvh,940px);overflow:auto;border-radius:24px;padding:26px;background:var(--surface,#0f172a);border:1px solid rgba(148,163,184,.24);box-shadow:0 24px 80px rgba(0,0,0,.42)}
.sigma-analytics-range{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.sigma-analytics-range-btn.active{outline:2px solid currentColor;outline-offset:2px}
.sigma-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:20px 0 8px}.sigma-control-head h3{margin:0 0 4px}.sigma-control-head p{margin:0}.sigma-control-head .btn{flex:0 0 auto}
.sigma-control-kpis{margin-top:12px}.sigma-control-kpis article{min-height:112px}.sigma-admin-section-divider{display:flex;align-items:center;gap:10px;margin:24px 0 4px;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;opacity:.66}.sigma-admin-section-divider::before,.sigma-admin-section-divider::after{content:"";height:1px;flex:1;background:rgba(148,163,184,.2)}
.sigma-analytics-status{min-height:24px;margin-bottom:12px;font-weight:700}.sigma-analytics-status.error{color:#ef4444}
.sigma-analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.sigma-analytics-kpis article{padding:16px;border-radius:18px;background:color-mix(in srgb,var(--card,#111827) 92%,#94a3b8 8%);border:1px solid rgba(148,163,184,.16)}.sigma-analytics-kpis small{display:block;font-size:.68rem;letter-spacing:.09em;font-weight:900;opacity:.66}.sigma-analytics-kpis strong{display:block;font-size:clamp(1.55rem,3vw,2.4rem);line-height:1.1;margin:7px 0}.sigma-analytics-kpis span{font-size:.72rem;opacity:.66}
.sigma-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sigma-analytics-panel{border-radius:18px;padding:16px;background:color-mix(in srgb,var(--card,#111827) 94%,transparent);border:1px solid rgba(148,163,184,.15)}.sigma-analytics-wide{grid-column:1/-1}.sigma-analytics-panel h3{margin:0 0 12px}.sigma-analytics-panel-head span{font-size:.75rem;opacity:.62}
.sigma-analytics-bars,.sigma-analytics-hourly{display:grid;gap:7px}.sigma-analytics-bar-row{display:grid;grid-template-columns:minmax(72px,120px) 1fr 42px;gap:9px;align-items:center;font-size:.76rem}.sigma-analytics-bar-row>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigma-analytics-bar-row>div,.sigma-analytics-mini-track{height:9px;border-radius:999px;background:rgba(148,163,184,.12);overflow:hidden}.sigma-analytics-bar-row i,.sigma-analytics-mini-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,currentColor,color-mix(in srgb,currentColor 55%,#38bdf8 45%));opacity:.75}.sigma-analytics-bar-row strong{text-align:right}
.sigma-analytics-list{display:grid;gap:11px}.sigma-analytics-list-row>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:.82rem;margin-bottom:5px}.sigma-analytics-list-row span{opacity:.65}
.sigma-analytics-privacy-note{margin:18px 0 0;padding:12px 14px;border-radius:14px;background:rgba(148,163,184,.08);font-size:.78rem;line-height:1.55;opacity:.82}
@media(max-width:760px){.sigma-admin-analytics-shell{padding:18px 14px;border-radius:18px}.sigma-control-head{align-items:center}.sigma-analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.sigma-analytics-grid{grid-template-columns:1fr}.sigma-analytics-panel,.sigma-analytics-wide{grid-column:1}.sigma-analytics-bar-row{grid-template-columns:76px 1fr 32px}.sigma-admin-dialog-title-row{padding-right:34px}}
@media(max-width:430px){.sigma-analytics-kpis{grid-template-columns:1fr 1fr;gap:8px}.sigma-analytics-kpis article{padding:12px}.sigma-analytics-kpis strong{font-size:1.45rem}.sigma-analytics-range .btn{flex:1;min-width:0;padding-inline:8px}}

/* =========================================================
   V51.23 • DAILY RETENTION ENGINE
   ========================================================= */
.sigma-retention-hub{margin:20px 0 24px;padding:20px;border:1px solid #dbe6f0;border-radius:28px;background:linear-gradient(145deg,#f8fbff,#f4f1ff 56%,#f9fcff);box-shadow:0 18px 42px rgba(17,54,86,.07)}
.sigma-retention-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px}.sigma-retention-head h3{margin:3px 0 5px;font-size:1.5rem;letter-spacing:-.025em}.sigma-retention-head p{margin:0;color:#62788e;font-size:.8rem;line-height:1.45}.sigma-retention-streak-chip{display:flex;gap:9px;align-items:center;min-width:190px;padding:10px 13px;border:1px solid #ead9af;border-radius:18px;background:linear-gradient(145deg,#fff9e8,#fff);box-shadow:0 8px 20px rgba(99,73,15,.08)}.sigma-retention-streak-chip>span{font-size:1.45rem}.sigma-retention-streak-chip small,.sigma-retention-streak-chip strong{display:block}.sigma-retention-streak-chip small{font-size:.54rem;font-weight:900;letter-spacing:.11em;color:#98751e}.sigma-retention-streak-chip strong{font-size:.72rem;color:#3f4d5e}
.sigma-retention-top-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:14px}.sigma-quest-card,.sigma-daily-storm-card,.sigma-retention-mini{border:1px solid #dce6ef;border-radius:23px;background:rgba(255,255,255,.92);box-shadow:0 10px 25px rgba(17,54,86,.05)}.sigma-quest-card{padding:16px}.sigma-retention-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sigma-retention-card-head h4,.sigma-daily-storm-card h4,.sigma-retention-mini h4{margin:3px 0 4px;font-size:1.1rem;letter-spacing:-.015em}.sigma-retention-count{display:grid;place-items:center;min-width:52px;height:36px;padding:0 8px;border-radius:12px;background:#edf2ff;color:#5b48cb;font-size:.95rem}.sigma-quest-rows{display:grid;gap:8px;margin:12px 0}.sigma-quest-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;padding:10px 11px;border-radius:15px;background:#f6f9fc;border:1px solid #e2e9f0}.sigma-quest-row>span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#e8edf4;color:#657b91;font-weight:950}.sigma-quest-row strong,.sigma-quest-row small{display:block}.sigma-quest-row strong{font-size:.79rem;color:#263c52}.sigma-quest-row small{margin-top:2px;font-size:.64rem;color:#708398;line-height:1.35}.sigma-quest-row em{font-style:normal;font-size:.55rem;font-weight:950;letter-spacing:.1em;color:#8798a8}.sigma-quest-row.done{background:linear-gradient(145deg,#effbf5,#f8fffb);border-color:#bfe8d2}.sigma-quest-row.done>span{background:#22a565;color:#fff}.sigma-quest-row.done em{color:#1f9b60}
.sigma-daily-chest{display:grid;grid-template-columns:45px 1fr auto;gap:11px;align-items:center;padding:12px;border-radius:17px;background:linear-gradient(135deg,#fff6ce,#fffdf4);border:1px solid #f0daa0}.sigma-chest-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:#fff1ad;font-size:1.35rem}.sigma-daily-chest strong,.sigma-daily-chest small{display:block}.sigma-daily-chest strong{font-size:.8rem;color:#654e12}.sigma-daily-chest small{margin-top:2px;font-size:.62rem;line-height:1.35;color:#86703b}.sigma-daily-chest .btn{white-space:nowrap}
.sigma-daily-storm-card{position:relative;overflow:hidden;padding:17px;background:radial-gradient(circle at 85% 14%,rgba(84,73,214,.22),transparent 34%),linear-gradient(145deg,#111d34,#172941 70%,#102136);color:#f3f7ff}.sigma-storm-bolt{position:absolute;right:-7px;top:-14px;font-size:5.2rem;opacity:.13;transform:rotate(8deg)}.sigma-daily-storm-card .interactive-kicker{color:#a8b9ff}.sigma-daily-storm-card h4{font-size:1.35rem}.sigma-daily-storm-card p{margin:6px 0 13px;color:#c5d2e2;font-size:.76rem;line-height:1.45}.sigma-storm-goal{padding:11px 12px;border:1px solid rgba(160,177,255,.2);border-radius:15px;background:rgba(255,255,255,.06)}.sigma-storm-goal small,.sigma-storm-goal strong{display:block}.sigma-storm-goal small{font-size:.52rem;letter-spacing:.12em;color:#91a6d0;font-weight:900}.sigma-storm-goal strong{margin-top:3px;font-size:.88rem}.sigma-storm-progress{margin:10px 0;font-size:.65rem;color:#9fb2c9}.sigma-daily-storm-card .btn{width:100%}
.sigma-retention-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.sigma-retention-mini{padding:14px;min-height:188px;display:flex;flex-direction:column}.sigma-retention-mini p{margin:6px 0;color:#677d91;font-size:.68rem;line-height:1.44}.sigma-retention-mini>.btn{margin-top:auto;align-self:flex-start}.sigma-mastery-challenge-card{border-top:3px solid #6d57df}.sigma-league-card{border-top:3px solid #d5a72a}.sigma-world-event-home-card{border-top:3px solid #32a3ce}.sigma-collection-card{border-top:3px solid #8657d8}.sigma-league-card #sigmaLeagueXp{font-size:.7rem;color:#7a5c12;white-space:nowrap}.sigma-retention-track{height:7px;border-radius:99px;background:#e6ebf2;overflow:hidden}.sigma-retention-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5a69dc,#7b52d9);transition:width .4s ease}.sigma-league-card>small{display:block;margin:2px 0 10px;color:#8796a4;font-size:.55rem;line-height:1.35}.sigma-world-event-home-card>strong{font-size:.72rem;color:#2f718a;margin:1px 0 10px}.sigma-collection-preview{display:flex;gap:8px;margin:8px 0}.sigma-collection-preview span{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;background:linear-gradient(145deg,#f1edff,#fff);border:1px solid #ded7fa;font-size:1.15rem}.sigma-collection-preview span.empty{color:#9c9ab2;font-weight:950}.sigma-tomorrow-teaser{display:flex;gap:12px;align-items:center;margin-top:12px;padding:12px 14px;border-radius:18px;border:1px dashed #c8d4df;background:rgba(255,255,255,.65)}.sigma-tomorrow-teaser>span{font-size:1.5rem}.sigma-tomorrow-teaser small,.sigma-tomorrow-teaser strong,.sigma-tomorrow-teaser p{display:block}.sigma-tomorrow-teaser small{font-size:.52rem;font-weight:950;letter-spacing:.12em;color:#667d95}.sigma-tomorrow-teaser strong{margin-top:2px;font-size:.78rem;color:#263d53}.sigma-tomorrow-teaser p{margin:2px 0 0;font-size:.64rem;color:#718396}
.sigma-world-event-banner{display:grid;grid-template-columns:48px 1fr minmax(150px,220px) auto;gap:12px;align-items:center;margin:-4px 0 14px;padding:12px 14px;border:1px solid #bcdce9;border-radius:20px;background:linear-gradient(135deg,#eefaff,#f6fbff 55%,#f0efff);box-shadow:0 10px 24px rgba(17,74,98,.06)}.sigma-world-event-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:#dff5ff;font-size:1.4rem}.sigma-world-event-copy span{font-size:.52rem;font-weight:950;letter-spacing:.12em;color:#3781a0}.sigma-world-event-copy h3{margin:2px 0;font-size:.96rem}.sigma-world-event-copy p{margin:0;font-size:.64rem;color:#6d8192;line-height:1.35}.sigma-world-event-progress strong{display:block;margin-bottom:5px;font-size:.66rem;color:#39758a}.sigma-world-event-progress .sigma-retention-track i{background:linear-gradient(90deg,#34a9d1,#6a5bd8)}.sigma-world-zone.sigma-world-event-active .sigma-zone-callout{box-shadow:0 0 0 3px rgba(50,174,215,.25),0 16px 32px rgba(27,115,150,.2)!important}.sigma-world-zone.sigma-world-event-active .sigma-zone-pin{filter:drop-shadow(0 0 10px rgba(44,186,227,.7))}.sigma-zone-event-badge{position:absolute;z-index:8;left:50%;top:-18px;transform:translateX(-50%);padding:4px 7px;border-radius:999px;background:#173f59;color:#dff8ff;font-size:.48rem;font-weight:950;letter-spacing:.08em;white-space:nowrap;box-shadow:0 5px 12px rgba(12,57,80,.2)}
.sigma-collection-dialog{border:0;background:transparent;padding:16px;width:min(920px,96vw);max-width:none}.sigma-collection-dialog::backdrop{background:rgba(3,12,23,.72);backdrop-filter:blur(4px)}.sigma-collection-shell{position:relative;max-height:88vh;overflow:auto;padding:22px;border-radius:26px;background:#f8fbff;box-shadow:0 30px 80px rgba(0,0,0,.34)}.sigma-collection-shell h2{margin:4px 0 5px}.sigma-collection-shell>p{margin:0 0 15px;color:#6d7f90;font-size:.75rem}.sigma-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sigma-artifact{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid #dce5ee;border-radius:17px;background:#fff}.sigma-artifact-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,#f0edff,#eef8ff);font-size:1.25rem}.sigma-artifact span,.sigma-artifact strong,.sigma-artifact small{display:block}.sigma-artifact span{font-size:.47rem;letter-spacing:.11em;font-weight:950;color:#7a65c4}.sigma-artifact strong{margin:2px 0;font-size:.73rem}.sigma-artifact small{font-size:.56rem;color:#7f8f9c}.sigma-artifact.locked{filter:saturate(.25);opacity:.65}.sigma-artifact.locked .sigma-artifact-icon{color:#8795a1;font-weight:950}
html[data-theme="dark"] .sigma-retention-hub{background:linear-gradient(145deg,#0d1b2b,#111d34 56%,#0c2030);border-color:#29415a}.sigma-retention-hub .sigma-quest-card,.sigma-retention-hub .sigma-retention-mini{background:rgba(14,30,47,.94);border-color:#2c455d;color:#eef5fb}.sigma-retention-hub .sigma-retention-head p,.sigma-retention-mini p{color:#9db0c1}.sigma-retention-hub .sigma-quest-row{background:#12263b;border-color:#2b4359}.sigma-retention-hub .sigma-quest-row strong{color:#eef5fb}.sigma-retention-hub .sigma-quest-row small{color:#9cafbf}.sigma-retention-hub .sigma-quest-row.done{background:#102d24;border-color:#235f49}.sigma-retention-hub .sigma-daily-chest{background:linear-gradient(135deg,#302a15,#221f16);border-color:#5a4b20}.sigma-retention-hub .sigma-daily-chest strong{color:#f7df8c}.sigma-retention-hub .sigma-daily-chest small{color:#c7b77e}.sigma-retention-hub .sigma-retention-track{background:#24364a}.sigma-retention-hub .sigma-tomorrow-teaser{background:rgba(13,29,45,.8);border-color:#354d63}.sigma-retention-hub .sigma-tomorrow-teaser strong{color:#edf5fb}.sigma-world-event-banner{background:linear-gradient(135deg,#102a3b,#132a42 55%,#1b2242);border-color:#31566f;color:#eef5fb}.sigma-world-event-copy p{color:#a7b9c7}.sigma-collection-shell{background:#0f1f31;color:#eef5fb}.sigma-artifact{background:#13283d;border-color:#30475d}.sigma-artifact small{color:#9fb1c0}
@media(max-width:1050px){.sigma-retention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sigma-world-event-banner{grid-template-columns:48px 1fr minmax(150px,210px)}.sigma-world-event-banner>.btn{grid-column:2/4;justify-self:start}.sigma-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.sigma-retention-hub{padding:14px;border-radius:21px}.sigma-retention-head{flex-direction:column}.sigma-retention-streak-chip{width:100%;box-sizing:border-box}.sigma-retention-top-grid{grid-template-columns:1fr}.sigma-retention-grid{grid-template-columns:1fr 1fr}.sigma-daily-chest{grid-template-columns:42px 1fr}.sigma-daily-chest .btn{grid-column:1/-1;width:100%}.sigma-world-event-banner{grid-template-columns:42px 1fr}.sigma-world-event-progress{grid-column:1/-1}.sigma-world-event-banner>.btn{grid-column:1/-1}.sigma-zone-event-badge{top:-15px;font-size:.42rem}.sigma-collection-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.sigma-retention-grid{grid-template-columns:1fr}.sigma-retention-mini{min-height:0}.sigma-quest-row{grid-template-columns:30px 1fr}.sigma-quest-row em{grid-column:2}.sigma-collection-grid{grid-template-columns:1fr}.sigma-world-event-banner{padding:10px}.sigma-world-event-icon{width:40px;height:40px}.sigma-retention-head h3{font-size:1.25rem}}


/* ======================================================================
   V51.24 • STORM FULLSCREEN FIRST
   Game view becomes an arcade-first viewport. Normal app chrome is reduced
   to Back only; setup/records/audio move below the playable surface and
   explanatory rule cards are removed from the page.
   ====================================================================== */
body.storm-focus{background:#04101c;overflow-x:hidden}
body.storm-focus .topbar{
  min-height:52px!important;height:52px!important;padding:5px max(8px,calc((100vw - 1180px)/2))!important;
  position:sticky!important;top:0!important;z-index:60!important;background:rgba(4,16,28,.98)!important;
  border-bottom:1px solid #173955!important;box-shadow:0 6px 18px rgba(0,0,0,.28)!important;
}
body.storm-focus .topbar-brand{width:100%;justify-content:flex-start!important;position:relative}
body.storm-focus .topbar-brand::after{content:"Σ  STORM";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:950 .72rem/1 system-ui;letter-spacing:.14em;color:#bfefff;pointer-events:none}
body.storm-focus .topbar .sigma-mark,
body.storm-focus .topbar .topbar-title,
body.storm-focus .topbar .top-actions{display:none!important}
body.storm-focus #appBackBtn{display:inline-flex!important;min-height:38px!important;height:38px!important;padding:0 12px!important;border-radius:10px!important;background:#0a2238!important;border:1px solid #2a5270!important;color:#e9f7ff!important;align-items:center!important;gap:6px!important;z-index:2}
body.storm-focus .bottom-nav{display:none!important}
body.storm-focus main{width:100%!important;max-width:none!important;margin:0!important;padding:6px 6px calc(18px + env(safe-area-inset-bottom))!important}
body.storm-focus #timesGameView{width:100%!important;max-width:none!important;overflow:visible!important;margin:0!important;padding:0!important}
body.storm-focus #timesGameView .times-game-shell{width:min(1180px,100%)!important;max-width:1180px!important;margin:0 auto!important;padding:0!important;display:flex!important;flex-direction:column!important;gap:5px!important}

/* First-screen ordering: only the information needed to play. */
body.storm-focus #timesGameView .times-game-hud{order:1!important}
body.storm-focus #timesGameView .times-mobile-live-controls{order:2!important}
body.storm-focus #timesGameView .times-tier-strip{order:10!important;display:none!important}
body.storm-focus #timesGameView .times-wave-strip{order:3!important}
body.storm-focus #timesGameView .times-arena-wrap{order:4!important}
body.storm-focus #timesGameView .times-game-launch-row{order:5!important}
body.storm-focus #timesGameView .times-answer-deck{order:6!important}
body.storm-focus #timesGameView .times-power-grid{order:7!important}
body.storm-focus #timesGameView .times-game-status{order:8!important;display:none!important}
body.storm-focus #timesGameView .times-analysis{order:9!important}
body.storm-focus #timesGameView .times-game-hero{order:20!important;margin:14px 0 0!important}

/* Compact HUD: Score, Lives, Combo and Wave are the live essentials. */
body.storm-focus #timesGameView .times-game-hud{
  position:static!important;display:grid!important;grid-template-columns:1.15fr 1.2fr 1.25fr .9fr!important;
  gap:4px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;
}
body.storm-focus #timesGameView .times-hud-item{display:none!important}
body.storm-focus #timesGameView .times-hud-item:nth-child(1),
body.storm-focus #timesGameView .times-hud-item:nth-child(2),
body.storm-focus #timesGameView .times-hud-item:nth-child(3),
body.storm-focus #timesGameView .times-hud-item:nth-child(7){
  display:flex!important;min-width:0!important;min-height:46px!important;height:46px!important;padding:5px 8px!important;border-radius:10px!important;justify-content:center!important;
}
body.storm-focus #timesGameView .times-hud-item span{font-size:.42rem!important}
body.storm-focus #timesGameView .times-hud-item strong{font-size:.74rem!important;overflow:visible!important;text-overflow:clip!important}
body.storm-focus #timesGameView .times-record-chase{display:none!important}
body.storm-focus #timesGameView .times-overdrive-meter{height:3px!important;margin-top:2px!important}

body.storm-focus #timesGameView .times-wave-strip{
  min-height:43px!important;height:auto!important;margin:0!important;padding:5px 8px!important;border-radius:10px!important;
  grid-template-columns:minmax(120px,.55fr) 1fr auto!important;gap:7px!important;
}
body.storm-focus #timesGameView .times-wave-copy span{font-size:.43rem!important}
body.storm-focus #timesGameView .times-wave-copy strong{font-size:.62rem!important}
body.storm-focus #timesGameView .times-wave-track{height:6px!important}
body.storm-focus #timesGameView .times-wave-strip>small{grid-column:auto!important;text-align:right!important;font-size:.55rem!important}

/* The arena gets the largest share of the screen. */
body.storm-focus #timesGameView .times-arena-wrap{margin:0!important;min-height:0!important}
body.storm-focus #timesGameView .times-arena{
  width:100%!important;height:clamp(280px,36dvh,520px)!important;min-height:0!important;max-height:520px!important;
  border-radius:15px!important;margin:0!important;
}
body.storm-focus #timesGameView .times-mission-banner{top:8px!important;left:10px!important;padding:5px 8px!important}
body.storm-focus #timesGameView .times-sector-badge{top:8px!important;right:10px!important;padding:5px 8px!important}
body.storm-focus #timesGameView .times-comms{right:10px!important;bottom:10px!important;width:min(330px,62%)!important;padding:7px 9px!important;border-radius:10px!important}

/* Before launch, show only the genuinely necessary setup directly under the arena. */
body.storm-focus #timesGameView .times-game-launch-row{
  width:100%!important;margin:0!important;padding:6px!important;display:grid!important;
  grid-template-columns:minmax(145px,1fr) minmax(145px,1fr) auto auto!important;gap:5px!important;
  align-items:end!important;border:1px solid #254a68!important;border-radius:11px!important;background:#071827!important;
}
body.storm-focus #timesGameView .times-game-launch-row label{min-width:0!important;width:auto!important;gap:2px!important;font-size:.44rem!important;color:#8cb1ca!important}
body.storm-focus #timesGameView .times-game-launch-row select{width:100%!important;min-height:34px!important;height:34px!important;padding:0 8px!important;border-radius:8px!important;font-size:.7rem!important;background:#061522!important;color:#eaf8ff!important;border-color:#315773!important}
body.storm-focus #timesGameView .times-game-launch-row .btn{min-height:34px!important;height:34px!important;padding:4px 10px!important;border-radius:8px!important;font-size:.65rem!important;white-space:nowrap!important}
body.storm-focus #timesGameView.storm-running .times-game-launch-row{display:none!important}

/* Live pause/menu replaces the launch controls after a run begins. */
body.storm-focus #timesGameView .times-mobile-live-controls{display:none!important;margin:0!important;justify-content:flex-end!important;gap:5px!important}
body.storm-focus #timesGameView.storm-running .times-mobile-live-controls{display:flex!important}
body.storm-focus #timesGameView .times-mobile-live-controls button{min-height:28px!important;height:28px!important;padding:3px 9px!important;border-radius:8px!important;font-size:.5rem!important}

/* Answer deck is always in normal document flow: never fixed over the game. */
body.storm-focus #timesGameView .times-answer-deck{
  position:static!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:6px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,.3fr)!important;grid-template-rows:auto auto auto!important;
  gap:5px!important;border-radius:11px!important;box-shadow:none!important;overflow:visible!important;
}
body.storm-focus #timesGameView .times-answer-form{grid-column:1!important;grid-row:1!important;grid-template-columns:minmax(0,1fr) 70px!important;gap:5px!important}
body.storm-focus #timesGameView .times-answer-form input,
body.storm-focus #timesGameView .times-answer-form .btn{height:38px!important;min-height:38px!important;border-radius:8px!important;font-size:.82rem!important}
body.storm-focus #timesGameView .times-feedback{grid-column:2!important;grid-row:1!important;height:38px!important;min-height:38px!important;display:flex!important;align-items:center!important;padding:4px 7px!important;font-size:.55rem!important;overflow:hidden!important}
body.storm-focus #timesGameView .times-number-pad{grid-column:1/-1!important;grid-row:2!important;width:100%!important;height:auto!important;min-height:0!important;padding:5px!important;border-radius:10px!important;display:block!important;overflow:visible!important;box-shadow:inset 0 0 0 1px #18283a!important}
body.storm-focus #timesGameView .times-number-pad:before,
body.storm-focus #timesGameView .times-number-pad:after,
body.storm-focus #timesGameView .times-pad-label{display:none!important}
body.storm-focus #timesGameView .times-pad-grid{width:100%!important;height:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,46px)!important;gap:5px!important;padding:0!important}
body.storm-focus #timesGameView .times-pad-key{height:46px!important;min-height:46px!important;padding:0!important;border-radius:9px!important;border-bottom-width:2px!important;box-shadow:none!important}
body.storm-focus #timesGameView .times-pad-key>span{font-size:1rem!important;line-height:1!important}
body.storm-focus #timesGameView .times-pad-key>small{display:none!important}
body.storm-focus #timesGameView .times-bonus-weapon-row{grid-column:1/-1!important;grid-row:3!important;height:38px!important;margin:0!important;gap:2px!important;overflow:hidden!important}
body.storm-focus #timesGameView .times-bonus-weapon{height:36px!important;min-height:36px!important;grid-template-columns:28px 1fr auto!important;gap:5px!important;padding:3px 6px!important;border-radius:8px!important;box-shadow:none!important}
body.storm-focus #timesGameView .times-bonus-icon{width:26px!important;height:26px!important;border-radius:7px!important;font-size:.85rem!important}
body.storm-focus #timesGameView .times-bonus-copy small{font-size:.34rem!important}
body.storm-focus #timesGameView .times-bonus-copy strong{font-size:.64rem!important}
body.storm-focus #timesGameView .times-bonus-copy em{display:none!important}
body.storm-focus #timesGameView .times-bonus-count{min-width:42px!important;padding:4px!important;font-size:.46rem!important}
body.storm-focus #timesGameView .times-bonus-charge{height:3px!important}

/* Power-ups remain available during a run but disappear before launch. */
body.storm-focus #timesGameView .times-power-grid{display:none!important;margin:0!important;gap:5px!important}
body.storm-focus #timesGameView.storm-running .times-power-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;height:auto!important}
body.storm-focus #timesGameView .times-power-btn{height:42px!important;min-height:42px!important;padding:4px 6px!important;grid-template-columns:26px 1fr auto!important;gap:5px!important;border-radius:9px!important;box-shadow:none!important}
body.storm-focus #timesGameView .times-power-icon{width:25px!important;height:25px!important;border-radius:7px!important;font-size:.75rem!important}
body.storm-focus #timesGameView .times-power-copy strong{font-size:.56rem!important}
body.storm-focus #timesGameView .times-power-copy small{display:none!important}
body.storm-focus #timesGameView .times-power-count{min-width:24px!important;height:24px!important;padding:0 4px!important;font-size:.48rem!important}

/* Setup, mode choices, records and audio deliberately live after the game. */
body.storm-focus #timesGameView .times-game-hero{
  display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr)!important;gap:8px!important;align-items:start!important;
  padding-top:10px!important;border-top:1px solid #173955!important;
}
body.storm-focus #timesGameView .times-game-intro,
body.storm-focus #timesGameView .times-record-card{padding:12px!important;border-radius:14px!important}
body.storm-focus #timesGameView .times-game-intro>p.eyebrow,
body.storm-focus #timesGameView .times-game-intro>h2,
body.storm-focus #timesGameView .times-game-intro>h2+p{display:none!important}
body.storm-focus #timesGameView .times-mode-select{margin-top:0!important}
body.storm-focus #timesGameView .times-audio-controls{margin-top:8px!important}
body.storm-focus #timesGameView .times-record-card img{width:76px!important;height:76px!important}

/* Explicitly kill the old explanatory cards, even on cached markup. */
body.storm-focus #timesGameView .times-game-rules{display:none!important}

@media(max-width:700px){
  body.storm-focus .topbar{height:48px!important;min-height:48px!important;padding:4px 6px!important}
  body.storm-focus #appBackBtn{height:34px!important;min-height:34px!important;padding:0 9px!important}
  body.storm-focus main{padding:4px 4px calc(12px + env(safe-area-inset-bottom))!important}
  body.storm-focus #timesGameView .times-game-shell{gap:3px!important}
  body.storm-focus #timesGameView .times-game-hud{grid-template-columns:1fr 1.1fr 1.1fr .8fr!important;gap:3px!important}
  body.storm-focus #timesGameView .times-hud-item:nth-child(1),
  body.storm-focus #timesGameView .times-hud-item:nth-child(2),
  body.storm-focus #timesGameView .times-hud-item:nth-child(3),
  body.storm-focus #timesGameView .times-hud-item:nth-child(7){height:38px!important;min-height:38px!important;padding:3px 5px!important}
  body.storm-focus #timesGameView .times-hud-item span{font-size:.36rem!important}
  body.storm-focus #timesGameView .times-hud-item strong{font-size:.62rem!important}
  body.storm-focus #timesGameView .times-wave-strip{min-height:36px!important;padding:3px 5px!important}
  body.storm-focus #timesGameView .times-arena{height:clamp(210px,32dvh,340px)!important;border-radius:12px!important}
  body.storm-focus #timesGameView .times-comms{width:calc(100% - 16px)!important;right:8px!important;bottom:8px!important}
  body.storm-focus #timesGameView .times-game-launch-row{grid-template-columns:1fr 1fr!important;padding:5px!important}
  body.storm-focus #timesGameView .times-game-launch-row .btn{width:100%!important}
  body.storm-focus #timesGameView .times-answer-deck{grid-template-columns:1fr!important;padding:5px!important}
  body.storm-focus #timesGameView .times-answer-form{grid-column:1!important;grid-row:1!important}
  body.storm-focus #timesGameView .times-feedback{display:none!important}
  body.storm-focus #timesGameView .times-number-pad{grid-column:1!important;grid-row:2!important}
  body.storm-focus #timesGameView .times-pad-grid{grid-template-rows:repeat(4,40px)!important;gap:4px!important}
  body.storm-focus #timesGameView .times-pad-key{height:40px!important;min-height:40px!important}
  body.storm-focus #timesGameView .times-bonus-weapon-row{grid-column:1!important;grid-row:3!important;height:34px!important}
  body.storm-focus #timesGameView .times-bonus-weapon{height:32px!important;min-height:32px!important}
  body.storm-focus #timesGameView.storm-running .times-power-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.storm-focus #timesGameView .times-power-btn{height:38px!important;min-height:38px!important;padding:3px!important;grid-template-columns:22px 1fr auto!important}
  body.storm-focus #timesGameView .times-power-icon{width:21px!important;height:21px!important}
  body.storm-focus #timesGameView .times-game-hero{grid-template-columns:1fr!important}
}

@media(min-width:701px) and (max-width:1100px){
  body.storm-focus #timesGameView .times-arena{height:clamp(340px,38dvh,500px)!important}
  body.storm-focus #timesGameView .times-pad-grid{grid-template-rows:repeat(4,50px)!important}
  body.storm-focus #timesGameView .times-pad-key{height:50px!important;min-height:50px!important}
}

@media(min-width:1101px){
  body.storm-focus #timesGameView .times-game-shell{width:min(1480px,100%)!important;max-width:1480px!important}
  body.storm-focus #timesGameView .times-arena{height:clamp(360px,46dvh,600px)!important;max-height:600px!important}
  body.storm-focus #timesGameView .times-answer-deck{grid-template-columns:minmax(0,1fr) 260px!important}
  body.storm-focus #timesGameView .times-pad-grid{grid-template-rows:repeat(4,44px)!important}
  body.storm-focus #timesGameView .times-pad-key{height:44px!important;min-height:44px!important}
}

/* V51.24 final desktop specificity guard: supersedes V51.17/V51.18 cockpit rules. */
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-game-shell,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-game-shell{
  display:flex!important;flex-direction:column!important;height:auto!important;min-height:0!important;max-height:none!important;
  grid-template-columns:none!important;grid-template-rows:none!important;grid-template-areas:none!important;gap:5px!important;overflow:visible!important;padding:0!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-game-hud,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-game-hud{
  position:static!important;display:grid!important;grid-template-columns:1.15fr 1.2fr 1.25fr .9fr!important;gap:4px!important;margin:0!important;padding:0!important;height:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-mobile-live-controls,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-mobile-live-controls{
  position:static!important;display:flex!important;height:auto!important;min-height:0!important;margin:0!important;justify-content:flex-end!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-wave-strip,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-wave-strip{
  position:static!important;height:auto!important;min-height:43px!important;margin:0!important;padding:5px 8px!important;display:grid!important;grid-template-columns:minmax(120px,.55fr) 1fr auto!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-arena-wrap,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-arena-wrap{
  grid-area:auto!important;position:static!important;min-height:0!important;height:auto!important;overflow:visible!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-arena,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-arena{
  height:clamp(360px,46dvh,600px)!important;min-height:0!important;max-height:600px!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-answer-deck,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-answer-deck{
  grid-area:auto!important;position:static!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:6px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) 260px!important;grid-template-rows:auto auto auto!important;gap:5px!important;overflow:visible!important;border-radius:11px!important;box-shadow:none!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-number-pad,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-number-pad{
  grid-column:1/-1!important;grid-row:2!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;padding:5px!important;display:block!important;overflow:visible!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-pad-grid,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-pad-grid{
  height:auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,44px)!important;gap:5px!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-pad-key,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-pad-key{height:44px!important;min-height:44px!important}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-bonus-weapon-row,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-bonus-weapon-row{height:38px!important;min-height:0!important;margin:0!important}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-bonus-weapon,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-bonus-weapon{height:36px!important;min-height:36px!important}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-power-grid,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-power-grid{
  grid-area:auto!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;height:auto!important;min-height:0!important;margin:0!important;gap:5px!important;
}
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running .times-power-btn,
html[data-display-layout="desktop"][data-storm-height-band] body.storm-focus #timesGameView.storm-running .times-power-btn{height:42px!important;min-height:42px!important}

/* ============================================================
   V51.25 • Crisp Legal Inline Cards
   Presentation-only legal reader refinement. Legal wording/version unchanged.
   ============================================================ */
.sigma-legal-dialog{
  width:min(1040px,calc(100% - 24px));
  border-radius:22px;
  background:#f7fafc;
  box-shadow:0 28px 70px rgba(3,18,34,.32),0 0 0 1px rgba(21,70,105,.08);
}
.sigma-legal-shell{background:#f7fafc}
.sigma-legal-header{
  padding:20px 24px 14px;
  border-bottom:1px solid #cfdbe5;
  background:#fff;
}
.sigma-legal-header h2{margin-top:3px;margin-bottom:2px;letter-spacing:-.025em}
.sigma-legal-jump{
  gap:7px;padding:9px 24px;background:#eef4f8;border-bottom:1px solid #d5e0e8;
}
.sigma-legal-jump a{
  border-radius:9px;padding:7px 12px;border-color:#c6d5e1;background:#fff;
  color:#244e6a;box-shadow:0 1px 2px rgba(16,46,70,.04);
}
.sigma-legal-scroll{padding:10px 24px 24px;background:#f7fafc}
.sigma-legal-section{padding:18px 0;border-bottom:1px solid #d9e3ea}
.sigma-legal-label{border-radius:7px;padding:5px 8px;background:#e3f0f8;color:#17668f}
.sigma-legal-section h3{margin:10px 0 6px}
.sigma-legal-section p,.sigma-legal-section li{line-height:1.48;color:#334f64}

/* Quick summary becomes a crisp inline card grid on larger screens. */
.sigma-legal-section.child-summary{
  margin-top:4px;padding:16px;border:1px solid #bdd7e7;border-radius:14px;
  background:#eef7fc;box-shadow:0 2px 8px rgba(28,76,108,.05);
}
.sigma-legal-section.child-summary>p{margin:8px 0 10px;color:#29475d}
.sigma-legal-section.child-summary ul{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
  margin:10px 0 6px;padding:0;list-style:none;
}
.sigma-legal-section.child-summary li{
  position:relative;margin:0!important;padding:10px 11px 10px 30px;
  border:1px solid #c8dce9;border-radius:10px;background:#fff;
  font-size:.79rem;line-height:1.4;box-shadow:0 1px 3px rgba(18,52,77,.04);
}
.sigma-legal-section.child-summary li::before{
  content:'✓';position:absolute;left:10px;top:10px;width:14px;height:14px;
  display:grid;place-items:center;border-radius:4px;background:#dff2fb;color:#1473a6;
  font-size:.62rem;font-weight:950;
}
.sigma-legal-age-note{
  margin-top:10px;padding:10px 12px;border:1px solid #ead59f;border-left:4px solid #d99d2b;
  border-radius:9px;background:#fffaf0;font-size:.78rem;line-height:1.42;
}

/* Full legal text: each paragraph is a defined reading block rather than loose copy. */
.sigma-legal-section:not(.child-summary) p{
  padding:9px 11px;margin:6px 0;border:1px solid #dbe5ec;border-radius:9px;background:#fff;
}
.sigma-legal-section:not(.child-summary) h3+p{border-top:2px solid #9fc9df}
.sigma-legal-table-wrap{border-radius:10px;border-color:#ccdbe5}

/* Acceptance area: light, compact, aligned. */
.sigma-legal-acceptance{
  padding:11px 18px calc(11px + env(safe-area-inset-bottom));
  border-top:1px solid #cddae4;background:#fff;box-shadow:0 -5px 14px rgba(20,54,79,.05);
}
.sigma-age-band-fieldset{
  border:1px solid #c8d9e5;border-radius:11px;padding:9px 10px;margin:0 0 8px;background:#f3f8fb;color:#24465d;
}
.sigma-age-band-fieldset legend{padding:0 6px;font-size:.75rem;color:#294d66}
.sigma-age-band-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px}
.sigma-age-band-options label{
  min-width:0;gap:9px;align-items:center;padding:8px 10px;border:1px solid #ccdbe5;
  border-radius:9px;background:#fff;color:#27465b;
}
.sigma-age-band-options label:has(input:checked){
  border-color:#43a6d4;background:#eaf8ff;box-shadow:0 0 0 1px rgba(67,166,212,.13) inset;
}
.sigma-age-band-options input{margin:0;accent-color:#1684bd}
.sigma-age-band-options span{gap:1px}
.sigma-age-band-options strong{font-size:.82rem;line-height:1.15}
.sigma-age-band-options small{font-size:.68rem;line-height:1.25;color:#61788a;opacity:1}
.sigma-legal-check-row{
  grid-template-columns:18px 1fr;gap:8px;padding:8px 10px;border:1px solid #d7e2e9;
  border-radius:9px;background:#f8fafc;font-size:.72rem;line-height:1.35;
}
.sigma-legal-actions{margin-top:8px;gap:10px}
.sigma-legal-actions .btn{min-width:165px;min-height:42px;border-radius:10px}

html[data-theme="dark"] .sigma-legal-section:not(.child-summary) p{background:#0e1e2b;border-color:#284153;color:#b9cad6}
html[data-theme="dark"] .sigma-age-band-fieldset{background:#0d1e2c;border-color:#2c485c;color:#d8e8f2}
html[data-theme="dark"] .sigma-age-band-fieldset legend{color:#cce7f6}
html[data-theme="dark"] .sigma-age-band-options label{background:#102534;border-color:#2a4559;color:#dcebf4}
html[data-theme="dark"] .sigma-age-band-options label:has(input:checked){background:#123449;border-color:#55bbe5}
html[data-theme="dark"] .sigma-age-band-options small{color:#9fb7c7}
html[data-theme="dark"] .sigma-legal-check-row{background:#102330;border-color:#294456;color:#d2e2ec}

@media(max-width:720px){
  .sigma-legal-section.child-summary ul{grid-template-columns:1fr}
  .sigma-legal-section.child-summary li{font-size:.77rem;padding:9px 10px 9px 29px}
}

@media(max-width:650px){
  .sigma-legal-dialog{width:calc(100% - 10px);border-radius:16px}
  .sigma-legal-header{padding:15px 15px 10px}
  .sigma-legal-jump{padding:7px 12px;gap:6px}
  .sigma-legal-jump a{padding:6px 9px;font-size:.67rem}
  .sigma-legal-scroll{padding:6px 12px 18px}
  .sigma-legal-section.child-summary{padding:12px}
  .sigma-legal-section.child-summary h3{font-size:1.15rem}
  .sigma-legal-section:not(.child-summary) p{padding:8px 9px}
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-fieldset{background:#f3f8fb;border-color:#c8d9e5}
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options label{background:#fff;border-color:#ccdbe5}
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options label:has(input:checked){background:#eaf8ff;border-color:#43a6d4}
  .sigma-legal-dialog.sigma-legal-at-end .sigma-age-band-options small{color:#61788a;opacity:1}
}

/* ============================================================
   V51.26 • Learner Achievement System
   ============================================================ */
.sigma-profile-identity-rail{display:flex;flex-direction:column;align-items:center;gap:13px;min-width:158px}
.sigma-achievement-showcase-card{width:100%;max-width:190px;padding:11px;border:1px solid #e4d59e;border-radius:16px;background:linear-gradient(145deg,#fffaf0,#fff);box-shadow:0 8px 20px rgba(53,42,17,.05)}
.sigma-achievement-showcase-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.sigma-achievement-showcase-card>div:first-child small{font-size:.58rem;letter-spacing:.11em;font-weight:950;color:#8b6c24}
.sigma-achievement-showcase-card>div:first-child strong{font-size:.72rem;color:#5f4a1b}
.sigma-achievement-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sigma-showcase-badge{min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 3px;border-radius:11px;background:#fff;border:1px solid #eadfbf;text-align:center}
.sigma-showcase-badge b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ffe9a7,#e8bd49);color:#5b4312;font-size:.92rem;box-shadow:inset 0 0 0 1px rgba(118,82,13,.12)}
.sigma-showcase-badge small{max-width:100%;font-size:.52rem;line-height:1.1;color:#6f5a2d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sigma-showcase-empty{grid-column:1/-1;padding:8px 4px;font-size:.63rem;color:#7b8795;text-align:center}
.sigma-achievement-summary{color:#7b6a3d!important;font-size:.68rem!important;font-weight:850}
.sigma-achievements-card{grid-column:1/-1}
.sigma-achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sigma-achievement{align-items:flex-start;min-height:102px;padding:12px}
.sigma-achievement>span{flex:0 0 36px;width:36px;height:36px;font-size:.9rem}
.sigma-achievement>div{min-width:0;flex:1}
.sigma-achievement strong{font-size:.8rem;line-height:1.2}
.sigma-achievement small{margin-top:3px;min-height:2.6em}
.sigma-achievement em{margin-top:6px;font-size:.57rem;line-height:1.1;font-style:normal;font-weight:900;letter-spacing:.05em;color:#8a7040;text-transform:uppercase}
.sigma-achievement-progress{height:5px;margin-top:8px;border-radius:99px;background:#e3e8ee;overflow:hidden}
.sigma-achievement-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8098b2,#d6ad42);transition:width .3s ease}
.sigma-achievement.earned{box-shadow:0 5px 14px rgba(156,111,17,.07)}
.sigma-achievement.earned>span{background:linear-gradient(145deg,#ffe7a0,#e8bd48);font-size:.87rem}
.sigma-achievement.earned em{color:#8b6818}
[data-theme="dark"] .sigma-achievement-showcase-card{background:linear-gradient(145deg,#211d13,#142130);border-color:#5a4b28}
[data-theme="dark"] .sigma-showcase-badge{background:#172638;border-color:#594b2b}
[data-theme="dark"] .sigma-showcase-badge small,[data-theme="dark"] .sigma-achievement-showcase-card>div:first-child strong{color:#d7c792}
[data-theme="dark"] .sigma-achievement{background:#152334;border-color:#2e4053}
[data-theme="dark"] .sigma-achievement.earned{background:#2a2518;border-color:#5b4b26}
[data-theme="dark"] .sigma-achievement-progress{background:#27384a}
@media(max-width:1050px){.sigma-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sigma-profile-identity-rail{width:100%}.sigma-achievement-showcase-card{max-width:300px}.sigma-achievement-grid{grid-template-columns:1fr}.sigma-achievement{min-height:0}.sigma-achievement small{min-height:0}}


/* ===== V51.28 • Support, legal entity placeholder & Sigma-only branding ===== */
.sigma-support-card{border-color:rgba(56,118,174,.28);background:linear-gradient(145deg,var(--surface),rgba(74,144,204,.07))}
.sigma-support-email-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.sigma-support-address,.sigma-legal-email{color:var(--brand-navy-2);font-weight:850;text-decoration:underline;text-underline-offset:2px}
html[data-theme="dark"] .sigma-support-address,html[data-theme="dark"] .sigma-legal-email{color:#9dc8f3}
@media(max-width:650px){.sigma-support-email-btn{width:100%}}

/* V51.28 pre-launch legal entity status */
.sigma-legal-prelaunch-notice{margin:.55rem 0 0;padding:.65rem .8rem;border:1px solid rgba(215,170,82,.45);border-radius:12px;background:rgba(215,170,82,.08);font-size:.88rem;line-height:1.35}.sigma-legal-prelaunch{font-size:.9em;opacity:.86}

/* V51.30 Deeper Ratio Tutor */
.sigma-ratio-lab .ratio-lab-controls{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0 14px}.sigma-ratio-lab .ratio-lab-controls label{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(148,163,184,.2)}.sigma-ratio-lab .ratio-lab-controls strong{display:block;margin-top:3px;color:#fff}.ratio-lab-bars{display:grid;gap:10px;margin:12px 0}.ratio-lab-bars>div{display:grid;grid-template-columns:28px 1fr;gap:10px;align-items:center}.ratio-lab-bars>div>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.08);font-weight:900;color:#f8fafc}.ratio-blocks{display:flex;gap:6px;flex-wrap:wrap;min-height:34px;align-items:center}.ratio-blocks i{display:block;width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,#22d3ee,#3b82f6);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 5px 12px rgba(34,211,238,.12)}.ratio-blocks-b i{background:linear-gradient(135deg,#a78bfa,#ec4899);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),0 5px 12px rgba(236,72,153,.12)}
@media(max-width:640px){.sigma-ratio-lab .ratio-lab-controls{grid-template-columns:1fr}.ratio-blocks i{width:27px;height:27px}}

/* V51.31: make the first ratio-sharing operation impossible to miss. */
.sigma-ratio-total-rule{margin:14px 0 16px;padding:18px;border:2px solid rgba(250,204,21,.7);border-radius:20px;background:linear-gradient(135deg,rgba(66,32,6,.96),rgba(15,23,42,.97));color:#fff7d6;box-shadow:0 14px 34px rgba(0,0,0,.2)}
.sigma-ratio-rule-label{display:inline-block;padding:5px 9px;border-radius:999px;background:#facc15;color:#241700;font-weight:900;font-size:.72rem;letter-spacing:.08em}
.sigma-ratio-rule-equation{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:13px 0 8px;font-size:1.45rem}.sigma-ratio-rule-equation strong:last-child{font-size:1.7rem;color:#fde047}.sigma-ratio-total-rule h3{margin:4px 0 7px;font-size:1.22rem;color:#fff}.sigma-ratio-total-rule p{margin:0;line-height:1.58;color:#fef3c7}.sigma-ratio-rule-memory{margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(250,204,21,.12);border:1px solid rgba(250,204,21,.35);font-weight:850;color:#fde68a}
@media(max-width:640px){.sigma-ratio-total-rule{padding:15px}.sigma-ratio-rule-equation{font-size:1.2rem}.sigma-ratio-rule-equation strong:last-child{font-size:1.42rem}.sigma-ratio-rule-memory{font-size:.9rem}}


/* ===== V51.34 New-student worksheet clarity ===== */
.worksheet-clarity-note{display:flex;gap:8px;align-items:flex-start;margin:10px 0 2px;padding:10px 12px;border:1px solid rgba(32,171,218,.24);border-radius:12px;background:rgba(32,171,218,.07);font-size:.82rem;line-height:1.45;color:var(--text-soft)}
.worksheet-clarity-note strong{flex:0 0 auto;color:var(--text);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}
.worksheet-clarity-note span{min-width:0}
html[data-theme="dark"] .worksheet-clarity-note{background:rgba(62,197,239,.08);border-color:rgba(92,211,247,.22)}
@media(max-width:560px){.worksheet-clarity-note{display:grid;gap:4px;padding:9px 10px}}


/* ===== V51.34 Assessment Ladder ===== */
.sigma-practice-nudge{margin:14px 0 2px;border:1px solid rgba(29,78,216,.18);border-radius:14px;background:rgba(239,246,255,.72);overflow:hidden}
.sigma-practice-nudge summary{cursor:pointer;list-style:none;padding:11px 14px;font-weight:800;color:#1e3a8a;display:flex;align-items:center;gap:8px}
.sigma-practice-nudge summary::-webkit-details-marker{display:none}
.sigma-practice-nudge summary::before{content:'?';display:inline-grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#dbeafe;color:#1d4ed8;font-weight:900}
.sigma-practice-nudge[open] summary{border-bottom:1px solid rgba(29,78,216,.12)}
.sigma-practice-nudge.used summary::after{content:'ASSISTED';margin-left:auto;font-size:.68rem;letter-spacing:.08em;color:#7c3aed}
.sigma-practice-nudge-body{padding:12px 14px 14px;color:#1f2937}
.sigma-practice-nudge-body strong{display:block;margin-bottom:4px}
.sigma-practice-nudge-body p{margin:0 0 8px;line-height:1.5}
.sigma-practice-nudge-body small{color:#64748b;line-height:1.4}
.sigma-exam-hidden-clue{display:none!important}
.sigma-paper-mode-status{margin-top:9px;font-size:.78rem;color:#64748b}
.sigma-paper-mode-status strong{color:#0f172a}
.question-marks{white-space:nowrap}
@media print{
  .sigma-practice-nudge{display:none!important}
  .sigma-assessment-exam .question-topic,.sigma-assessment-exam .sigma-exam-grade{display:none!important}
}


/* ===== V51.35 Premium Assessment Lab ===== */
.sigma-test-section-head{align-items:center;margin-bottom:18px}
.sigma-test-head-badge{max-width:320px;padding:14px 16px;border-radius:18px;border:1px solid rgba(23,59,99,.12);background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(241,247,255,.98));box-shadow:0 12px 28px rgba(11,31,54,.06)}
.sigma-test-head-badge strong{display:block;font-size:.9rem;color:var(--brand-navy)}
.sigma-test-head-badge span{display:block;margin-top:4px;font-size:.75rem;line-height:1.45;color:var(--text-soft)}

.sigma-test-lab-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.95fr);align-items:stretch;gap:24px;padding:26px;border-radius:28px;overflow:hidden;border:1px solid rgba(110,142,179,.22);background:radial-gradient(circle at top right,rgba(101,137,255,.16),transparent 33%),linear-gradient(135deg,#0b2038 0%,#143558 57%,#1d4f7c 100%);box-shadow:0 20px 45px rgba(9,28,48,.16)}
.sigma-test-lab-hero:before{content:"";position:absolute;inset:auto -90px -130px auto;width:270px;height:270px;border-radius:50%;background:radial-gradient(circle,rgba(255,210,93,.26),rgba(255,210,93,0));pointer-events:none}
.sigma-test-lab-hero>*{position:relative;z-index:1}
.sigma-test-lab-hero h3{margin:8px 0 10px;font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.05;letter-spacing:-.04em;color:#fff}
.sigma-test-lab-hero p{color:#d8e3f1;max-width:780px}
.sigma-test-hero-copy{display:flex;flex-direction:column;justify-content:center}
.sigma-test-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.sigma-test-hero-stats article{padding:14px 15px;border-radius:18px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.sigma-test-hero-stats strong{display:block;color:#fff;font-size:.9rem}
.sigma-test-hero-stats span{display:block;margin-top:4px;font-size:.74rem;line-height:1.4;color:#c8d6e7}
.sigma-test-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.sigma-test-hero-actions .btn{min-width:210px}
.sigma-soft-button{background:rgba(255,255,255,.14)!important;color:#fff!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 12px 28px rgba(8,23,41,.18)!important}
.sigma-soft-button:hover{background:rgba(255,255,255,.18)!important}

.sigma-paper-mode-panel{padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:14px}
.sigma-mode-panel-head span{display:block;font-size:.66rem;font-weight:900;letter-spacing:.14em;color:#a8bde0}
.sigma-mode-panel-head strong{display:block;margin-top:4px;font-size:1.08rem;color:#fff}
.sigma-mode-panel-head small{display:block;margin-top:4px;color:#c3d1e4;line-height:1.4}
.sigma-mode-card-grid{display:grid;gap:10px}
.sigma-mode-card{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#edf4fb;border-radius:20px;padding:14px;display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;text-align:left;box-shadow:inset 0 1px 0 rgba(255,255,255,.03);transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease}
.sigma-mode-card:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.09)}
.sigma-mode-card-icon{width:42px;height:42px;border-radius:14px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:1.2rem}
.sigma-mode-card-copy strong{display:block;font-size:.92rem;color:#fff}
.sigma-mode-card-copy small{display:block;margin-top:4px;font-size:.74rem;line-height:1.45;color:#c8d6e7}
.sigma-mode-card.active{border-color:#f1cb6a;background:linear-gradient(145deg,rgba(255,233,175,.17),rgba(255,255,255,.08));box-shadow:0 14px 30px rgba(8,24,41,.22),inset 0 0 0 1px rgba(241,203,106,.25)}
.sigma-test-lab-hero[data-mode="adaptive"] .sigma-mode-card[data-test-mode="adaptive"],
.sigma-test-lab-hero[data-mode="practice"] .sigma-mode-card[data-test-mode="practice"],
.sigma-test-lab-hero[data-mode="exam"] .sigma-mode-card[data-test-mode="exam"]{border-color:#f1cb6a;background:linear-gradient(145deg,rgba(255,233,175,.17),rgba(255,255,255,.08));box-shadow:0 14px 30px rgba(8,24,41,.22),inset 0 0 0 1px rgba(241,203,106,.25)}
.sigma-test-lab-hero[data-mode="adaptive"] #testAdaptivityModeNote{color:#d8e3f1}
.sigma-test-lab-hero[data-mode="practice"]{background:radial-gradient(circle at top right,rgba(121,145,255,.18),transparent 33%),linear-gradient(135deg,#0d2137 0%,#194467 56%,#275e7f 100%)}
.sigma-test-lab-hero[data-mode="exam"]{background:radial-gradient(circle at top right,rgba(255,210,93,.22),transparent 33%),linear-gradient(135deg,#071a2e 0%,#103152 56%,#1a4464 100%)}
.sigma-test-mode-select{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.sigma-rank-explainer.compact{margin:16px 0 22px;padding:18px;border-radius:22px;border:1px solid rgba(215,170,82,.28);background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(248,250,252,.98));box-shadow:0 10px 26px rgba(11,31,54,.05)}
.sigma-rank-explainer.compact .sigma-rank-rule{margin-top:11px;font-size:.8rem;color:#66768a}
.sigma-rank-explainer.compact .sigma-rank-legend{gap:10px}
.sigma-rank-explainer.compact .sigma-rank-legend span{min-height:58px;border-radius:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}

.sigma-premium-builder-grid{gap:20px}
.premium-test-card{position:relative;padding:24px;border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,253,.98));border:1px solid rgba(208,219,231,.9);box-shadow:0 18px 40px rgba(11,31,54,.08)}
.premium-test-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#173b63,#3f82c4,#f1cb6a);opacity:.88}
.premium-test-card .test-builder-icon{width:58px;height:58px;border-radius:18px;box-shadow:0 14px 26px rgba(10,30,50,.16)}
.premium-test-card-copy{align-self:start}
.premium-test-card h3{font-size:1.45rem;margin:4px 0 8px;color:#0b2139}
.premium-test-card .muted{font-size:.95rem;line-height:1.58}
.test-builder-benefits{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.test-builder-benefits span{padding:8px 11px;border-radius:999px;background:#eef4fa;border:1px solid #d7e2ef;font-size:.74rem;font-weight:850;color:#294562}
.premium-test-form{gap:16px;margin-top:10px}
.premium-test-form select{min-height:54px;border-radius:16px;border:1px solid #d5e0eb;background:#fbfdff;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.premium-test-form select:focus{outline:none;border-color:#7aa5d6;box-shadow:0 0 0 4px rgba(122,165,214,.18)}
.premium-test-form .question-count-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1px solid #d8e3ee;border-radius:18px;background:#f7fafc}
.premium-test-form .question-count-group legend{margin:0 10px 0 0;padding:0}
.premium-test-form .question-count-group label{margin-right:0}
.premium-test-form .question-count-group label span{min-width:76px;padding:12px 16px;border-radius:14px;border:1px solid #d1dde9;background:#fff;box-shadow:0 3px 10px rgba(10,30,50,.04)}
.premium-test-card-actions{display:grid;gap:9px}
.premium-test-card-actions .btn{width:100%;min-height:56px;border-radius:17px;font-weight:900;letter-spacing:.01em}
.premium-test-card-actions small{font-size:.75rem;line-height:1.45;color:#66768a}

.sigma-premium-feature-strip{gap:12px;background:transparent;border:0;overflow:visible;margin:20px 0 30px}
.sigma-premium-feature-strip>div{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:start;padding:16px 17px;border-radius:20px;border:1px solid #dbe5ef;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(247,250,253,.98));box-shadow:0 10px 24px rgba(11,31,54,.05)}
.sigma-premium-feature-strip>div>b{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#133255,#1c4d79);color:#fff;font-size:1rem;box-shadow:0 10px 20px rgba(10,30,50,.15)}
.sigma-premium-feature-strip>div strong{font-size:.88rem;color:#10243f}
.sigma-premium-feature-strip>div span{margin-top:4px;font-size:.76rem;line-height:1.45;color:#68788a}

#moduleMasteryRankStatus{margin-top:2px;padding:12px 14px;border-radius:16px;background:linear-gradient(145deg,#f8fbfe,#eff5fa);border:1px solid #d8e3ee;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
#moduleMasteryRankStatus span{font-size:.82rem;color:#163555}
#moduleMasteryRankStatus small{font-size:.72rem;line-height:1.45;color:#66788c}

.premium-test-card .btn.brand-primary,.sigma-test-hero-actions .btn.brand-primary{box-shadow:0 12px 26px rgba(11,31,54,.22),0 4px 0 rgba(9,26,46,.08)!important}
.premium-test-card .btn.secondary,.sigma-test-hero-actions .btn.secondary{border-radius:16px}

@media(max-width:980px){
  .sigma-test-section-head{align-items:flex-start;flex-direction:column}
  .sigma-test-head-badge{max-width:none;width:100%}
  .sigma-test-lab-hero{grid-template-columns:1fr}
}
@media(max-width:760px){
  .sigma-test-lab-hero{padding:20px;border-radius:24px}
  .sigma-test-hero-stats{grid-template-columns:1fr}
  .sigma-test-hero-actions{display:grid;grid-template-columns:1fr}
  .sigma-test-hero-actions .btn{width:100%;min-width:0}
  .sigma-mode-card{grid-template-columns:38px 1fr;padding:13px}
  .sigma-mode-card-icon{width:38px;height:38px;border-radius:12px}
  .premium-test-form .question-count-group{display:grid;grid-template-columns:1fr 1fr 1fr}
  .premium-test-form .question-count-group legend{grid-column:1/-1;margin:0}
  .sigma-premium-feature-strip>div{grid-template-columns:38px 1fr}
}
@media(max-width:520px){
  .premium-test-card{padding:20px}
  .premium-test-card h3{font-size:1.28rem}
  .premium-test-form .question-count-group{grid-template-columns:1fr 1fr}
  .premium-test-form .question-count-group label:last-child{grid-column:1/-1}
}


/* ============================================================
   V51.36 • Unified Premium UI System
   Makes Sigma feel like one product rather than a collection of
   differently-aged screens. Functional layout is preserved.
   ============================================================ */
:root{
  --sigma-premium-navy:#091d33;
  --sigma-premium-blue:#1c4e7b;
  --sigma-premium-blue-soft:#edf5fc;
  --sigma-premium-gold:#e2b956;
  --sigma-premium-gold-soft:#fff6dc;
  --sigma-premium-edge:#d8e3ed;
  --sigma-premium-shadow:0 18px 42px rgba(10,31,52,.08);
  --sigma-premium-shadow-strong:0 24px 58px rgba(7,24,43,.14);
}

body{
  background:
    radial-gradient(circle at 14% 0%,rgba(68,139,204,.10),transparent 24rem),
    radial-gradient(circle at 88% 8%,rgba(226,185,86,.08),transparent 21rem),
    linear-gradient(180deg,#edf4fb 0,#f8fafc 340px,#f3f6fa 100%);
}
main{width:min(1200px,calc(100% - 32px));padding-top:26px}
.view.active{animation:sigmaPremiumViewIn .22s ease-out both}
@keyframes sigmaPremiumViewIn{from{opacity:.72;transform:translateY(4px)}to{opacity:1;transform:none}}

/* --- App chrome --- */
.topbar{
  min-height:86px;
  background:
    radial-gradient(circle at 78% -80%,rgba(89,163,223,.22),transparent 45%),
    linear-gradient(135deg,#081b30 0%,#0d2d4d 52%,#123f66 100%);
  border-bottom:1px solid rgba(255,255,255,.10);
  box-shadow:0 14px 35px rgba(5,19,34,.18);
  backdrop-filter:blur(16px);
}
.compact-mark,.mini-mark{
  background:linear-gradient(145deg,#f8fbff,#dfeaf6)!important;
  color:#102e4d!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 9px 22px rgba(3,18,34,.22)!important;
}
.topbar-title h1{letter-spacing:-.035em}
.app-back-btn,.icon-btn,.sigma-version-badge,.sigma-top-profile{
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.07)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.app-back-btn:hover,.icon-btn:hover,.sigma-top-profile:hover{background:rgba(255,255,255,.12)!important}
.sigma-version-badge{color:#8bdaf6!important}
.topbar .btn.ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}

.bottom-nav{
  width:min(790px,calc(100% - 24px));
  padding:8px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(8,27,48,.97),rgba(13,45,77,.96));
  box-shadow:0 20px 48px rgba(5,20,36,.28),inset 0 1px 0 rgba(255,255,255,.05);
}
.nav-item{position:relative;min-height:56px;border-radius:16px;transition:transform .16s ease,background .16s ease,color .16s ease}
.nav-item:hover{background:rgba(255,255,255,.07);transform:translateY(-1px)}
.nav-item span{font-size:1.06rem}
.nav-item small{font-weight:800;letter-spacing:.01em}
.nav-item.active{
  color:#0b2947;
  background:linear-gradient(145deg,#fff,#eef5fb);
  box-shadow:0 9px 22px rgba(0,0,0,.16),inset 0 1px 0 #fff;
}
.nav-item.active:after{content:"";position:absolute;left:30%;right:30%;bottom:5px;height:3px;border-radius:99px;background:linear-gradient(90deg,#d5a840,#f0cf77)}

/* --- Typography and section hierarchy --- */
.section-head{margin:26px 0 18px;align-items:center}
.section-head h2{font-size:clamp(1.7rem,3.4vw,2.3rem);letter-spacing:-.04em;color:#0d233b}
.section-head .muted{max-width:800px}
.eyebrow{font-size:.69rem;letter-spacing:.16em;font-weight:900}
.gold-eyebrow{color:#a57a19!important}
.interactive-kicker,.settings-card-kicker{font-weight:950;letter-spacing:.13em}

/* --- One premium button language everywhere --- */
.btn{
  min-height:43px;
  border-radius:15px;
  padding:11px 16px;
  font-weight:850;
  letter-spacing:.005em;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease,background .16s ease,border-color .16s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(1px)!important}
.btn.primary,.btn.brand-primary{
  background:linear-gradient(145deg,#0a2541,#174c78 72%,#205b8d)!important;
  border:1px solid rgba(8,32,56,.20)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(8,31,55,.20),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.btn.primary:hover,.btn.brand-primary:hover{filter:brightness(1.07);box-shadow:0 16px 32px rgba(8,31,55,.25),inset 0 1px 0 rgba(255,255,255,.14)!important}
.btn.secondary{
  background:linear-gradient(145deg,#f8fbfe,#eaf2f9)!important;
  color:#123657!important;
  border:1px solid #d5e1ec!important;
  box-shadow:0 7px 16px rgba(17,46,74,.06),inset 0 1px 0 #fff!important;
}
.btn.secondary:hover{background:linear-gradient(145deg,#fff,#edf5fb)!important;border-color:#bbcfdf!important}
.btn.large{min-height:52px;padding:13px 20px;border-radius:17px}
.btn:focus-visible,.nav-item:focus-visible,button:focus-visible{outline:3px solid rgba(75,156,218,.32);outline-offset:3px}

/* --- Inputs, selects and controls --- */
input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),select,textarea{
  border-radius:14px!important;
  border:1px solid #d3dfeb!important;
  background:linear-gradient(180deg,#fff,#f9fbfd)!important;
  color:#13283e!important;
  box-shadow:inset 0 1px 2px rgba(14,39,62,.025);
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
input:not([type="range"]):not([type="checkbox"]):not([type="radio"]):focus,select:focus,textarea:focus{
  outline:none!important;
  border-color:#74a8d2!important;
  box-shadow:0 0 0 4px rgba(74,142,199,.13)!important;
  background:#fff!important;
}

/* --- Home flagship treatment --- */
.dashboard-hero{
  position:relative;
  overflow:hidden;
  padding:32px;
  border-radius:30px;
  border:1px solid rgba(91,144,187,.20);
  background:
    radial-gradient(circle at 84% 16%,rgba(85,167,225,.28),transparent 30%),
    radial-gradient(circle at 12% 120%,rgba(226,185,86,.18),transparent 34%),
    linear-gradient(135deg,#081d34 0%,#0e3153 58%,#164d77 100%);
  color:#f8fbff;
  box-shadow:var(--sigma-premium-shadow-strong);
}
.dashboard-hero:after{content:"Σ";position:absolute;right:-20px;bottom:-70px;font:900 250px/1 system-ui;color:rgba(255,255,255,.025);pointer-events:none}
.dashboard-hero .hero-copy,.dashboard-hero .progress-orb{position:relative;z-index:1}
.dashboard-hero h2{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.12)}
.dashboard-hero .muted,.dashboard-greeting{color:#c8d8e8!important}
.dashboard-hero .gold-eyebrow{color:#f0cf77!important}
.dashboard-hero .btn.secondary{background:rgba(255,255,255,.11)!important;color:#fff!important;border-color:rgba(255,255,255,.16)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important}
.dashboard-hero .btn.secondary:hover{background:rgba(255,255,255,.16)!important}
.dashboard-hero .orb-track{stroke:rgba(255,255,255,.14)}
.dashboard-hero .orb-progress{stroke:#f0cf77;filter:drop-shadow(0 0 7px rgba(240,207,119,.25))}
.dashboard-hero .orb-label strong{color:#fff}
.dashboard-hero .orb-label span{color:#c8d8e8}
.home-audio-controls{border-radius:17px!important;border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.07)!important;color:#d9e8f4!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.home-audio-btn{border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.08)!important;color:#fff!important}

.sigma-daily-card{border-radius:28px;box-shadow:0 22px 48px rgba(7,18,40,.22),inset 0 1px 0 rgba(255,255,255,.06)}
.sigma-retention-hub{border-radius:30px!important;border-color:#d4e1ed!important;background:linear-gradient(145deg,#fbfdff,#f3f7fc 58%,#fdf9ef)!important;box-shadow:var(--sigma-premium-shadow)!important}
.sigma-retention-hub .sigma-quest-card,.sigma-retention-hub .sigma-retention-mini{border-radius:20px;box-shadow:0 8px 20px rgba(16,48,75,.045)}
.home-game-launch,.progress-panel,.v19-readiness-card,.v19-journey-card,.v19-mission-card{
  border-radius:24px!important;
  box-shadow:var(--sigma-premium-shadow)!important;
}

/* --- Sigma World and module journey --- */
.sigma-world-title-row{
  padding:20px 22px;
  border:1px solid var(--sigma-premium-edge);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,249,253,.96));
  box-shadow:var(--sigma-premium-shadow);
}
.sigma-world-title-row h2{color:#0c2945}
.sigma-world-overall,.sigma-world-audio{box-shadow:0 9px 20px rgba(12,39,64,.06)}
.sigma-world-map-shell{box-shadow:0 25px 55px rgba(7,29,48,.15)!important}
.sigma-module-hero{box-shadow:0 16px 36px rgba(14,42,68,.09)!important}
.sigma-module-filter-head{border-radius:18px;padding-inline:14px!important}
.journey-topic{
  margin:6px 0;
  border:1px solid #e0e8f0!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.90);
  box-shadow:0 6px 18px rgba(12,39,64,.035);
}
.journey-topic:after{bottom:-30px!important}
.journey-topic.current-topic{background:linear-gradient(90deg,#eef7ff,#fff)!important;border-color:#c6ddec!important;box-shadow:0 10px 24px rgba(40,104,155,.08)}
.journey-topic .topic-open{min-height:40px;border-radius:13px!important;font-weight:850}

/* --- Worksheets, Review and Maths Tools --- */
.worksheet-builder-card,.recent-test-history,.test-workspace-toolbar,.interactive-test-status,.test-result-summary{
  border-radius:24px!important;
  border-color:var(--sigma-premium-edge)!important;
  box-shadow:var(--sigma-premium-shadow)!important;
}
.worksheet-builder-card{padding:24px!important;background:linear-gradient(145deg,#fff,#f7fafc)!important}
.worksheet-builder-icon,.test-builder-icon{box-shadow:0 12px 25px rgba(7,29,50,.16)}
.worksheet-feature-strip>div{border-radius:16px}
.review-list{gap:14px}
.review-card{
  border:1px solid #e3d7d4!important;
  border-left:4px solid #cf675f!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#fff,#fdf9f8)!important;
  box-shadow:0 10px 24px rgba(69,35,31,.045);
}
.empty{border-radius:22px;background:linear-gradient(145deg,#fff,#f7fafc);box-shadow:0 10px 25px rgba(13,42,68,.045)}
.bt-tool-tabs{gap:12px}
.bt-tool-tabs button{border-radius:19px!important;box-shadow:0 8px 20px rgba(11,36,60,.045);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.bt-tool-tabs button:hover{transform:translateY(-2px);box-shadow:0 13px 24px rgba(11,36,60,.08);border-color:#c1d3e3}
.bt-tool-tabs button.active{background:linear-gradient(145deg,#09243f,#18517d)!important;box-shadow:0 15px 30px rgba(8,31,55,.20)!important}
.bt-tool-panel{border-radius:26px!important;box-shadow:var(--sigma-premium-shadow)!important}

/* --- Profile, leaderboard and adult views --- */
.sigma-profile-hero{
  border-radius:30px!important;
  background:
    radial-gradient(circle at 89% 10%,rgba(79,151,208,.12),transparent 28%),
    linear-gradient(145deg,#fff,#f3f8fc)!important;
  border-color:#d5e2ec!important;
  box-shadow:var(--sigma-premium-shadow)!important;
}
.sigma-profile-stats div,.sigma-profile-card,.sigma-leaderboard-page-card,.adult-panel,.adult-metric-grid article,.parent-grade-security{
  border-radius:20px!important;
  border-color:#dbe5ee!important;
  box-shadow:0 10px 25px rgba(11,38,62,.055)!important;
}
.sigma-profile-card,.sigma-leaderboard-page-card,.adult-panel{background:linear-gradient(145deg,#fff,#f8fafc)!important}
.sigma-achievement{border-radius:16px!important}
.sigma-leader-row{border-radius:15px!important}
.adult-insight-card,.parent-hero-card{border-radius:25px!important;box-shadow:0 18px 40px rgba(9,32,54,.13)!important}

/* --- Install and Settings --- */
.install-hero-card{
  border-radius:28px!important;
  background:linear-gradient(145deg,#fff,#f1f7fc)!important;
  border-color:#d4e1ec!important;
  box-shadow:var(--sigma-premium-shadow)!important;
}
.install-app-mark{box-shadow:0 14px 28px rgba(7,29,50,.18)}
.platform-install-grid{gap:16px}
.platform-card{
  position:relative;
  overflow:hidden;
  border-radius:23px!important;
  background:linear-gradient(145deg,#fff,#f8fafc)!important;
  border-color:#dbe5ee!important;
  box-shadow:0 10px 25px rgba(12,39,64,.055);
}
.platform-card.active-platform{border-color:#d6ae4e!important;box-shadow:0 14px 30px rgba(69,53,18,.08),inset 0 0 0 1px rgba(214,174,78,.22)!important}
.platform-card.active-platform:before{content:"THIS DEVICE";position:absolute;right:12px;top:12px;padding:5px 8px;border-radius:999px;background:#fff2c8;color:#745512;font-size:.57rem;font-weight:950;letter-spacing:.08em}

.settings-grid{gap:18px}
.settings-card{
  border-radius:24px!important;
  border:1px solid #dbe4ed!important;
  background:linear-gradient(145deg,#fff,#f8fafc)!important;
  box-shadow:0 10px 27px rgba(12,39,64,.055);
  padding:23px!important;
}
.settings-card h3{font-size:1.12rem;letter-spacing:-.02em;color:#102a44}
.settings-card>p{line-height:1.56;color:#68788b}
.featured-account-card,.featured-adult-card,.featured-reward-card,.sigma-legal-settings-card,.sigma-display-settings-card{
  border-color:#c9ddea!important;
  box-shadow:0 15px 32px rgba(12,45,73,.07)!important;
}
.settings-toggle-row,.email-preference,.profile-settings-summary,.sigma-app-update-status{
  border-radius:16px!important;
}
.sigma-display-mode-btn{border-radius:18px!important;box-shadow:0 8px 18px rgba(12,39,64,.045)}
.sigma-display-mode-btn[aria-pressed="true"]{box-shadow:0 12px 26px rgba(9,38,64,.12),inset 0 0 0 1px rgba(226,185,86,.35)!important}
.sigma-version-history-details{margin-top:14px;border:1px solid #dbe5ee;border-radius:16px;background:#f7fafc;overflow:hidden}
.sigma-version-history-details summary{cursor:pointer;padding:13px 15px;color:#163a5b;font-weight:850;list-style:none}
.sigma-version-history-details summary::-webkit-details-marker{display:none}
.sigma-version-history-details summary:after{content:"+";float:right;font-size:1.1rem;color:#6b8195}
.sigma-version-history-details[open] summary:after{content:"−"}
.sigma-version-history-details[open] summary{border-bottom:1px solid #dbe5ee;background:#fff}
.sigma-version-history-details p{margin:0;padding:15px;color:#718094;font-size:.78rem;line-height:1.62}

/* --- Dark mode: same premium hierarchy, not a different product --- */
html[data-theme="dark"] body{
  background:
    radial-gradient(circle at 14% 0%,rgba(55,118,174,.10),transparent 25rem),
    radial-gradient(circle at 88% 8%,rgba(205,163,62,.07),transparent 22rem),
    linear-gradient(180deg,#07131f,#0b1725 340px,#091520 100%);
}
html[data-theme="dark"] .section-head h2{color:#eff6fc}
html[data-theme="dark"] .sigma-world-title-row,
html[data-theme="dark"] .worksheet-builder-card,
html[data-theme="dark"] .sigma-profile-hero,
html[data-theme="dark"] .sigma-profile-card,
html[data-theme="dark"] .sigma-leaderboard-page-card,
html[data-theme="dark"] .adult-panel,
html[data-theme="dark"] .install-hero-card,
html[data-theme="dark"] .platform-card,
html[data-theme="dark"] .settings-card,
html[data-theme="dark"] .empty{
  background:linear-gradient(145deg,#0f1f30,#0c1928)!important;
  border-color:#294159!important;
  color:#edf5fb!important;
  box-shadow:0 16px 34px rgba(2,10,18,.20)!important;
}
html[data-theme="dark"] .sigma-world-title-row h2,html[data-theme="dark"] .settings-card h3{color:#edf5fb}
html[data-theme="dark"] .settings-card>p,html[data-theme="dark"] .sigma-version-history-details p{color:#a3b4c6}
html[data-theme="dark"] .sigma-retention-hub{background:linear-gradient(145deg,#0d1b2b,#111d34 56%,#0c2030)!important;border-color:#29415a!important}
html[data-theme="dark"] .journey-topic{background:#0e1d2c!important;border-color:#294158!important}
html[data-theme="dark"] .journey-topic.current-topic{background:linear-gradient(90deg,#102840,#0e1d2c)!important;border-color:#315a78!important}
html[data-theme="dark"] .btn.secondary{background:linear-gradient(145deg,#14283b,#102236)!important;color:#e4eef7!important;border-color:#2c455d!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
html[data-theme="dark"] input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#0c1b2a!important;border-color:#30485f!important;color:#eef5fb!important}
html[data-theme="dark"] .sigma-version-history-details{background:#0c1b2a;border-color:#2b4258}
html[data-theme="dark"] .sigma-version-history-details summary{color:#cce8f8}
html[data-theme="dark"] .sigma-version-history-details[open] summary{background:#102337;border-color:#2b4258}

@media(max-width:760px){
  main{width:min(100% - 18px,1200px);padding-top:18px}
  .topbar{min-height:74px;padding:12px 12px}
  .bottom-nav{width:calc(100% - 12px);border-radius:19px;padding:6px}
  .nav-item{min-height:52px;border-radius:13px}
  .dashboard-hero{padding:23px;border-radius:25px}
  .sigma-world-title-row{padding:16px;border-radius:21px}
  .settings-card{padding:19px!important}
  .section-head h2{font-size:1.72rem}
}
@media(max-width:440px){
  .bottom-nav{gap:1px}
  .nav-item small{font-size:.56rem}
  .nav-item span{font-size:.96rem}
}


/* ===== V51.38 Premium Answer Deck + Maths Keys ===== */
.question-paper-list>li .student-answer-label,
#worksheetQuestionList>li .student-answer-label,
#generatedQuestionList>li .student-answer-label{
  position:relative;
  display:flex;
  align-items:center;
  gap:8px;
  margin:18px 0 8px;
  color:#344d69;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.09em;
}
.question-paper-list>li .student-answer-label::before,
#worksheetQuestionList>li .student-answer-label::before,
#generatedQuestionList>li .student-answer-label::before{
  content:'Σ';
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:8px;
  background:linear-gradient(145deg,#113154,#1b537f);
  color:#fff;
  font-size:.72rem;
  box-shadow:0 5px 12px rgba(13,45,76,.18);
}
.question-paper-list>li .student-answer-label::after,
#worksheetQuestionList>li .student-answer-label::after,
#generatedQuestionList>li .student-answer-label::after{
  content:'Use Maths Keys for symbols and powers';
  margin-left:auto;
  color:#7a8b9e;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}

.student-answer-input{
  min-height:58px!important;
  margin:0!important;
  padding:14px 16px!important;
  border:1.5px solid #b7cada!important;
  border-radius:17px 17px 10px 10px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  color:#0d2238!important;
  font-size:1.08rem!important;
  font-weight:760!important;
  letter-spacing:.01em;
  box-shadow:0 8px 18px rgba(11,31,54,.05),inset 0 1px 0 rgba(255,255,255,.9)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.student-answer-input::placeholder{color:#9aabba;font-weight:650}
.student-answer-input:focus{
  border-color:#4e90c7!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(78,144,199,.15),0 12px 26px rgba(11,31,54,.08),inset 0 1px 0 rgba(255,255,255,.95)!important;
  outline:none!important;
}
.student-answer-input[readonly]{background:#f6f8fb!important;color:#33475c!important}

.student-answer-input + .maths-keys{
  margin-top:-5px!important;
  border-top-color:rgba(92,139,177,.28)!important;
  border-radius:8px 8px 18px 18px!important;
}
.maths-keys{
  padding:11px 12px 13px!important;
  background:linear-gradient(180deg,#f3f8fc 0%,#edf5fa 100%)!important;
  border:1px solid #cbdbe8!important;
  box-shadow:0 10px 22px rgba(8,35,60,.055),inset 0 1px 0 rgba(255,255,255,.86)!important;
}
.maths-keys-label{
  display:flex!important;
  align-items:center;
  gap:7px;
  min-height:20px;
  color:#587087!important;
  font-size:.61rem!important;
}
.maths-keys-label::before{
  content:'⌨';
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:7px;
  background:#dbeaf5;
  color:#23557f;
  font-size:.68rem;
}
.maths-keys-label::after{
  content:'operators • inequalities • powers';
  margin-left:auto;
  color:#8a9aac;
  font-size:.58rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:none;
}
.maths-keys-grid{
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:7px!important;
}
.maths-key{
  position:relative;
  height:41px!important;
  border-radius:12px!important;
  border:1px solid #c4d4e2!important;
  background:linear-gradient(180deg,#ffffff,#f8fbfe)!important;
  color:#17324d!important;
  font-weight:950!important;
  box-shadow:0 4px 10px rgba(8,35,60,.07),inset 0 1px 0 rgba(255,255,255,.96)!important;
  transition:transform .1s ease,box-shadow .14s ease,border-color .14s ease,filter .14s ease!important;
}
.maths-key:hover{transform:translateY(-1px);border-color:#83aacb!important;box-shadow:0 7px 14px rgba(8,35,60,.10),inset 0 1px 0 rgba(255,255,255,.96)!important}
.maths-key:active{transform:translateY(1px)!important;box-shadow:0 2px 5px rgba(8,35,60,.07)!important}
.maths-key-special{background:linear-gradient(180deg,#eaf7ff,#dcedfa)!important;border-color:#99c6e5!important;color:#0d5687!important}
.maths-key-operator{background:linear-gradient(180deg,#f8fbfe,#eaf1f7)!important;color:#173b5f!important}
.maths-key-compare{background:linear-gradient(180deg,#fff9e8,#fff1c7)!important;border-color:#e7cc81!important;color:#6b500e!important}
.maths-key-power{background:linear-gradient(180deg,#183e65,#102f50)!important;border-color:#274f77!important;color:#fff!important;box-shadow:0 5px 11px rgba(13,47,79,.17),inset 0 1px 0 rgba(255,255,255,.12)!important}
.maths-key-power:hover{border-color:#4f85b3!important;filter:brightness(1.05)}
.maths-key-structure{background:linear-gradient(180deg,#edf2ff,#e3e9fb)!important;border-color:#b8c4ea!important;color:#34488c!important}
.maths-key-measure{background:linear-gradient(180deg,#f3fbf8,#e7f5ef)!important;border-color:#b6ddce!important;color:#2c6955!important}

.question-paper-list>li:has(.student-answer-input:focus) .student-answer-label,
#worksheetQuestionList>li:has(.student-answer-input:focus) .student-answer-label,
#generatedQuestionList>li:has(.student-answer-input:focus) .student-answer-label{color:#174c76}
.question-paper-list>li:has(.student-answer-input:focus) .maths-keys,
#worksheetQuestionList>li:has(.student-answer-input:focus) .maths-keys,
#generatedQuestionList>li:has(.student-answer-input:focus) .maths-keys{border-color:#a9c8df!important;box-shadow:0 13px 26px rgba(8,35,60,.075),inset 0 1px 0 rgba(255,255,255,.9)!important}

html[data-theme="dark"] .student-answer-input{background:linear-gradient(180deg,#0d1f31,#0a1928)!important;color:#f3f7fb!important;border-color:#36516c!important;box-shadow:0 10px 20px rgba(0,0,0,.18)!important}
html[data-theme="dark"] .student-answer-input:focus{border-color:#5aa4d8!important;box-shadow:0 0 0 4px rgba(90,164,216,.14),0 12px 24px rgba(0,0,0,.22)!important}
html[data-theme="dark"] .maths-keys{background:linear-gradient(180deg,#12283b,#0e2031)!important;border-color:#314c65!important}
html[data-theme="dark"] .maths-key{background:linear-gradient(180deg,#173047,#112538)!important;border-color:#3b5870!important;color:#eef5fb!important}
html[data-theme="dark"] .maths-key-compare{background:linear-gradient(180deg,#4a3a13,#382d10)!important;color:#ffe7a1!important;border-color:#806a2d!important}
html[data-theme="dark"] .maths-key-power{background:linear-gradient(180deg,#295a86,#173d63)!important;border-color:#477aa4!important}
html[data-theme="dark"] .maths-key-special{background:linear-gradient(180deg,#164a6c,#103b58)!important;color:#bfe9ff!important;border-color:#34789f!important}
html[data-theme="dark"] .maths-key-structure{background:linear-gradient(180deg,#28355d,#1e294b)!important;color:#d9e0ff!important;border-color:#475787!important}
html[data-theme="dark"] .maths-key-measure{background:linear-gradient(180deg,#183e34,#123128)!important;color:#c9f2df!important;border-color:#356a59!important}

@media(max-width:760px){
  .question-paper-list>li .student-answer-label::after,
  #worksheetQuestionList>li .student-answer-label::after,
  #generatedQuestionList>li .student-answer-label::after{display:none}
  .maths-keys-label::after{display:none}
  .maths-keys-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important}
}
@media(min-width:761px) and (max-width:1100px){
  .maths-keys-grid{grid-template-columns:repeat(12,minmax(0,1fr))!important}
}
@media(max-width:440px){
  .maths-keys{padding:9px!important}
  .maths-keys-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:6px!important}
  .maths-key{height:40px!important;border-radius:10px!important}
}
@media print{
  .student-answer-label::before,.student-answer-label::after{display:none!important}
}


/* ===== V51.39 Premium Mastery Rank Surfaces ===== */
.sigma-rank-explainer.compact{
  padding:20px!important;
  border:1px solid rgba(186,151,73,.22)!important;
  border-radius:26px!important;
  background:linear-gradient(145deg,#ffffff 0%,#f8fafc 100%)!important;
  box-shadow:0 18px 42px rgba(13,34,56,.08),inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.sigma-premium-rank-legend{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.sigma-premium-rank-legend>span{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  min-height:76px!important;
  padding:14px 18px!important;
  border-radius:19px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  font-size:1rem!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
  text-shadow:none!important;
  transform:translateZ(0);
  box-shadow:0 9px 19px rgba(17,42,68,.13),inset 0 1px 0 rgba(255,255,255,.85),inset 0 -1px 0 rgba(0,0,0,.08)!important;
}
.sigma-premium-rank-legend>span::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:1px;
  border-radius:17px;
  background:linear-gradient(105deg,transparent 4%,rgba(255,255,255,.58) 22%,rgba(255,255,255,.08) 43%,transparent 62%);
  transform:translateX(-110%);
  opacity:.75;
}
.sigma-premium-rank-legend>span::after{
  content:"";
  position:absolute;
  z-index:-2;
  left:10%;right:10%;top:2px;
  height:1px;
  background:rgba(255,255,255,.78);
  border-radius:999px;
}
.sigma-premium-rank-legend .rank-emblem{
  font-style:normal!important;
  font-size:1.08rem!important;
  font-weight:1000!important;
  letter-spacing:.02em!important;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.5));
}
.sigma-premium-rank-legend strong{font:inherit!important;color:inherit!important}
.sigma-premium-rank-legend .rank-flourish{display:none;font-style:normal!important;font-size:1rem!important}

/* Porcelain / chrome Starter */
.sigma-rank-explainer .sigma-premium-rank-legend .rank-starter{
  color:#102a47!important;
  border:1px solid #c8d4e0!important;
  background:
    linear-gradient(100deg,rgba(255,255,255,.9) 0 18%,rgba(218,227,237,.62) 38%,rgba(255,255,255,.98) 58%,rgba(224,232,241,.78) 100%),
    #edf2f7!important;
  box-shadow:0 9px 20px rgba(68,88,110,.14),inset 0 0 0 2px rgba(255,255,255,.55),inset 0 -2px 4px rgba(94,111,130,.10)!important;
}
/* Timber: warm polished wood with grain */
.sigma-rank-explainer .sigma-premium-rank-legend .rank-timber{
  color:#3b230e!important;
  border:1px solid #c18a4e!important;
  background:
    linear-gradient(100deg,rgba(255,244,210,.68),transparent 25%,rgba(117,64,24,.12) 48%,rgba(255,235,188,.54) 74%,transparent),
    repeating-linear-gradient(2deg,rgba(95,52,22,.08) 0 1px,transparent 1px 5px),
    linear-gradient(135deg,#c98c4e 0%,#e5b979 36%,#bd783e 66%,#dca765 100%)!important;
  box-shadow:0 10px 22px rgba(117,72,35,.19),inset 0 0 0 2px rgba(255,229,181,.34),inset 0 -2px 5px rgba(88,46,18,.14)!important;
}
/* Bronze: richer copper / medal metal */
.sigma-rank-explainer .sigma-premium-rank-legend .rank-bronze{
  color:#fff8f1!important;
  border:1px solid #b96c38!important;
  background:
    linear-gradient(105deg,rgba(255,226,190,.65),transparent 22%,rgba(96,44,18,.14) 43%,rgba(255,221,177,.42) 64%,transparent 80%),
    linear-gradient(135deg,#995329 0%,#d8915d 31%,#a85b31 58%,#d79a69 84%,#8c4824 100%)!important;
  text-shadow:0 1px 1px rgba(82,34,11,.30)!important;
  box-shadow:0 10px 22px rgba(128,63,29,.22),inset 0 0 0 2px rgba(255,205,163,.23),inset 0 -2px 5px rgba(80,33,13,.17)!important;
}
/* Silver: cool brushed chrome */
.sigma-rank-explainer .sigma-premium-rank-legend .rank-silver{
  color:#102c4d!important;
  border:1px solid #9eb1c5!important;
  background:
    linear-gradient(104deg,rgba(255,255,255,.90),transparent 18%,rgba(124,145,166,.16) 38%,rgba(255,255,255,.74) 57%,rgba(142,160,178,.16) 79%,rgba(255,255,255,.60)),
    linear-gradient(135deg,#aabccc 0%,#eef4f8 35%,#a7bacb 62%,#e3ebf1 85%,#93a8bb 100%)!important;
  box-shadow:0 10px 22px rgba(71,95,119,.18),inset 0 0 0 2px rgba(255,255,255,.42),inset 0 -2px 5px rgba(71,91,111,.12)!important;
}
/* Gold spans the full width and gets the prestige treatment */
.sigma-rank-explainer .sigma-premium-rank-legend .rank-gold{
  grid-column:1/-1!important;
  min-height:82px!important;
  color:#4a3100!important;
  border:1px solid #d09b1d!important;
  background:
    radial-gradient(circle at 15% 20%,rgba(255,255,255,.70),transparent 18%),
    linear-gradient(105deg,rgba(255,248,199,.76),transparent 24%,rgba(160,103,0,.08) 42%,rgba(255,247,183,.72) 62%,transparent 78%),
    linear-gradient(135deg,#bd8110 0%,#f7d866 28%,#e5ad25 51%,#ffe990 75%,#c88b13 100%)!important;
  box-shadow:0 0 0 2px rgba(255,220,91,.32),0 13px 30px rgba(181,126,13,.22),inset 0 0 0 2px rgba(255,248,196,.50),inset 0 -3px 7px rgba(132,88,0,.12)!important;
}
.sigma-premium-rank-legend .rank-gold .rank-emblem{font-size:1.35rem!important;color:#8d5b00!important}
.sigma-premium-rank-legend .rank-gold .rank-flourish{display:inline!important;color:#a76f08!important;opacity:.75}

/* Premium active rank controls elsewhere: keep the same material language */
.sigma-rank-control.sigma-rank-starter{background:linear-gradient(135deg,#ffffff,#eaf0f6)!important;color:#102a47!important;border:1px solid #c8d4e0!important;box-shadow:0 9px 18px rgba(68,88,110,.12)!important}
.sigma-rank-control.sigma-rank-timber{background:linear-gradient(135deg,#b8793f,#e0af70,#ad6c34)!important;color:#35200e!important;border:1px solid #bd7e43!important;box-shadow:0 9px 20px rgba(117,72,35,.18)!important;text-shadow:none!important}
.sigma-rank-control.sigma-rank-bronze{background:linear-gradient(135deg,#925027,#d58d59,#9c542c)!important;color:#fff8f1!important;border:1px solid #b96c38!important;box-shadow:0 9px 20px rgba(128,63,29,.20)!important}
.sigma-rank-control.sigma-rank-silver{background:linear-gradient(135deg,#9fb2c3,#f1f5f8,#9eb2c4)!important;color:#102c4d!important;border:1px solid #9eb1c5!important;box-shadow:0 9px 20px rgba(71,95,119,.16)!important}
.sigma-rank-control.sigma-rank-gold{background:linear-gradient(135deg,#c38813,#f7d865,#d69f1f,#ffeb92)!important;color:#4a3100!important;border:1px solid #d09b1d!important;box-shadow:0 0 0 2px rgba(255,220,91,.24),0 11px 24px rgba(181,126,13,.20)!important;text-shadow:none!important}

html[data-theme="dark"] .sigma-rank-explainer.compact{background:linear-gradient(145deg,#12253a,#0d1d2f)!important;border-color:rgba(220,180,86,.28)!important}
html[data-theme="dark"] .sigma-rank-rule{color:#b7c5d5!important}

@media(max-width:560px){
  .sigma-rank-explainer.compact{padding:14px!important}
  .sigma-premium-rank-legend{gap:10px!important}
  .sigma-premium-rank-legend>span{min-height:66px!important;padding:11px 10px!important;font-size:.86rem!important;border-radius:16px!important}
  .sigma-rank-explainer .sigma-premium-rank-legend .rank-gold{min-height:72px!important}
}


/* ============================================================
   V51.41 • Sigma Tutor Intelligence 2.0 + Premium AI Launcher
   ============================================================ */
.sigma-ai-premium-launch{
  position:relative;isolation:isolate;overflow:hidden;
  grid-template-columns:64px minmax(0,1fr) auto!important;
  min-height:94px;padding:14px 16px!important;border-radius:24px!important;
  border:1px solid rgba(101,224,255,.44)!important;
  background:
    radial-gradient(circle at 82% 12%,rgba(117,104,255,.28),transparent 30%),
    radial-gradient(circle at 10% 100%,rgba(68,224,255,.18),transparent 34%),
    linear-gradient(135deg,#06182d 0%,#0b3152 54%,#10294b 100%)!important;
  box-shadow:0 18px 44px rgba(3,19,36,.28),inset 0 1px 0 rgba(255,255,255,.08),inset 0 0 0 1px rgba(74,218,255,.08)!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important
}
.sigma-ai-premium-launch:before{
  content:"";position:absolute;z-index:-1;top:-110%;left:-25%;width:34%;height:320%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  transform:rotate(18deg);animation:sigmaAiShine 5.8s ease-in-out infinite
}
.sigma-ai-premium-launch:after{
  content:"";position:absolute;z-index:-1;right:-42px;bottom:-70px;width:190px;height:190px;border-radius:50%;
  border:1px solid rgba(94,225,255,.13);box-shadow:0 0 50px rgba(94,225,255,.09)
}
.sigma-ai-premium-launch:hover{transform:translateY(-2px);border-color:rgba(126,238,255,.72)!important;box-shadow:0 22px 52px rgba(3,19,36,.34),0 0 28px rgba(53,208,255,.13)!important}
@keyframes sigmaAiShine{0%,58%{left:-34%;opacity:0}66%{opacity:1}84%,100%{left:118%;opacity:0}}
.sigma-ai-launch-orb{
  position:relative;width:58px;height:58px;border-radius:19px;display:grid;place-items:center;
  background:radial-gradient(circle at 38% 30%,#e9fbff 0 8%,#55dffc 28%,#4b67e5 62%,#1a2459 100%);
  box-shadow:0 11px 25px rgba(34,211,238,.26),inset 0 1px 2px rgba(255,255,255,.72);
  border:1px solid rgba(218,250,255,.7)
}
.sigma-ai-launch-orb img{width:48px;height:48px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 4px 7px rgba(2,8,23,.3))}
.sigma-ai-orbit{position:absolute;inset:-6px;border-radius:24px;border:1px solid rgba(99,229,255,.42);animation:sigmaAiPulse 2.6s ease-in-out infinite}
.sigma-ai-orbit:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;right:5px;top:3px;background:#d8fbff;box-shadow:0 0 11px #5ee7ff}
@keyframes sigmaAiPulse{0%,100%{transform:scale(.96);opacity:.45}50%{transform:scale(1.06);opacity:1}}
.sigma-ai-premium-launch .sigma-chat-launch-copy small{font-size:.58rem!important;color:#7feaff!important;letter-spacing:.16em!important}
.sigma-ai-premium-launch .sigma-chat-launch-copy strong{font-size:1.08rem!important;letter-spacing:-.015em;color:#fff}
.sigma-ai-premium-launch .sigma-chat-launch-copy em{color:#b9ccdf!important;font-size:.73rem!important;line-height:1.4;max-width:620px}
.sigma-ai-launch-action{display:flex;align-items:center;gap:9px;padding:7px 8px 7px 10px;border-radius:999px;border:1px solid rgba(105,226,255,.22);background:rgba(1,12,28,.34);white-space:nowrap}
.sigma-ai-launch-action b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#59ebff,#8e7cff);color:#06111f;font-size:.58rem;letter-spacing:.03em;box-shadow:0 0 14px rgba(89,235,255,.28)}
.sigma-ai-launch-action span{font-size:.72rem;font-weight:900;color:#b9f3ff}
.sigma-ai-context-strip{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 12px}
.sigma-ai-context-strip span{padding:5px 8px;border-radius:999px;border:1px solid rgba(103,232,249,.16);background:rgba(15,23,42,.44);color:#a9c9dd;font-size:.6rem;font-weight:800;letter-spacing:.02em}
.sigma-ai-quick-prompts{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
.sigma-ai-quick-prompts button{display:grid!important;grid-template-columns:27px 1fr;align-items:center;gap:8px;text-align:left;border-radius:14px!important;padding:9px 10px!important}
.sigma-ai-quick-prompts button b{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:rgba(80,220,255,.1);border:1px solid rgba(103,232,249,.15);font-size:.55rem;color:#72eaff}
.sigma-ai-quick-prompts button span{font-size:.73rem;line-height:1.25}
.sigma-ai-send{display:flex!important;align-items:center;justify-content:center;gap:9px;padding-inline:16px!important}
.sigma-ai-send b{font-size:1.1rem}
.sigma-chat-footer [data-mode="ai"]{font-weight:800}
html[data-theme="light"] .sigma-ai-premium-launch{
  background:
    radial-gradient(circle at 82% 12%,rgba(103,117,255,.12),transparent 30%),
    radial-gradient(circle at 10% 100%,rgba(68,224,255,.14),transparent 34%),
    linear-gradient(135deg,#f6fcff 0%,#eaf6ff 55%,#eef0ff 100%)!important;
  border-color:#a7d9ec!important;box-shadow:0 16px 36px rgba(15,58,91,.12),inset 0 1px 0 #fff!important
}
html[data-theme="light"] .sigma-ai-premium-launch .sigma-chat-launch-copy strong{color:#0a2944}
html[data-theme="light"] .sigma-ai-premium-launch .sigma-chat-launch-copy em{color:#58758c!important}
html[data-theme="light"] .sigma-ai-launch-action{background:#fff;border-color:#b8ddec}
html[data-theme="light"] .sigma-ai-launch-action span{color:#15506e}
html[data-theme="light"] .sigma-ai-context-strip span{background:#f3f9fd;border-color:#d3e7f2;color:#526f83}

/* Worksheet floating AI summon control */
.worksheet-sigma-help-fab.sigma-ai-fab{
  min-width:174px;min-height:58px;padding:7px 10px 7px 7px!important;gap:9px!important;
  border-radius:22px!important;border:1px solid rgba(99,230,255,.58)!important;
  background:
    radial-gradient(circle at 86% 10%,rgba(124,104,255,.28),transparent 35%),
    linear-gradient(135deg,#06192f,#0b3f64)!important;
  box-shadow:0 15px 38px rgba(2,18,34,.34),0 0 24px rgba(59,218,255,.14),inset 0 1px 0 rgba(255,255,255,.08)!important
}
.sigma-ai-fab-orb{width:43px!important;height:43px!important;border-radius:15px!important;background:linear-gradient(145deg,#59eaff,#6c6cf3)!important;overflow:hidden;display:grid!important;place-items:center!important;box-shadow:0 7px 17px rgba(50,210,255,.25)}
.sigma-ai-fab-orb img{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 3px 4px rgba(2,8,23,.25))}
.sigma-ai-fab-copy{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}
.sigma-ai-fab-copy small{font-size:.48rem;letter-spacing:.14em;color:#78eaff;font-weight:950}
.sigma-ai-fab-copy strong{font-size:.8rem;color:#fff;margin-top:4px}
.sigma-ai-fab-arrow{margin-left:auto;color:#9df1ff;font-size:1rem;font-weight:900}
.worksheet-sigma-help-fab.sigma-ai-fab:hover{transform:translateY(-2px);filter:none!important;box-shadow:0 19px 42px rgba(2,18,34,.38),0 0 30px rgba(59,218,255,.2)!important}

@media(max-width:640px){
  .sigma-ai-premium-launch{grid-template-columns:52px 1fr!important;min-height:82px;padding:11px!important}
  .sigma-ai-launch-orb{width:49px;height:49px;border-radius:16px}.sigma-ai-launch-orb img{width:41px;height:41px}
  .sigma-ai-launch-action{display:none}
  .sigma-ai-quick-prompts{grid-template-columns:1fr!important}
  .sigma-ai-context-strip{gap:5px}.sigma-ai-context-strip span{font-size:.55rem}
  .worksheet-sigma-help-fab.sigma-ai-fab{min-width:154px;min-height:52px!important;padding:6px 9px 6px 6px!important}
  .sigma-ai-fab-orb{width:39px!important;height:39px!important}.sigma-ai-fab-orb img{width:35px;height:35px}
  .sigma-ai-fab-copy strong{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){
  .sigma-ai-premium-launch:before,.sigma-ai-orbit{animation:none!important}
}


/* ============================================================
   V51.42 • Sigma Tutor Vision — handwritten working photo input
   ============================================================ */
.sigma-handwriting-upload{display:grid;gap:8px;margin:10px 0 12px}
.sigma-handwriting-button{width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;padding:12px 14px;border:1px solid rgba(77,229,255,.24);border-radius:17px;background:linear-gradient(135deg,rgba(12,31,53,.94),rgba(22,55,87,.9));color:#eefaff;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 20px rgba(2,10,22,.12);cursor:pointer;transition:.18s transform,.18s border-color,.18s box-shadow}
.sigma-handwriting-button:hover{transform:translateY(-1px);border-color:rgba(115,235,255,.48);box-shadow:0 12px 26px rgba(2,10,22,.18),0 0 18px rgba(77,229,255,.08)}
.sigma-handwriting-button:disabled{opacity:.6;cursor:wait;transform:none}
.sigma-handwriting-button.has-photo{border-color:rgba(250,204,21,.46);box-shadow:inset 0 0 0 1px rgba(250,204,21,.13)}
.sigma-handwriting-camera{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#48dff7,#6d67f6);color:#06131f;font-size:1.2rem;font-weight:1000;box-shadow:0 8px 20px rgba(54,210,239,.17)}
.sigma-handwriting-button>span:nth-child(2){display:flex;flex-direction:column;min-width:0}
.sigma-handwriting-button small{font-size:.51rem;letter-spacing:.13em;font-weight:950;color:#6ee7f9}.sigma-handwriting-button strong{font-size:.9rem;margin-top:2px}.sigma-handwriting-button em{font-style:normal;font-size:.66rem;color:#a9c7da;margin-top:2px}.sigma-handwriting-button>b{font-size:1.3rem;color:#9af3ff}
.sigma-handwriting-preview{display:grid;grid-template-columns:70px minmax(0,1fr) 30px;gap:11px;align-items:center;padding:10px;border:1px solid rgba(250,204,21,.3);border-radius:16px;background:linear-gradient(135deg,rgba(54,43,10,.4),rgba(17,35,54,.78));overflow:hidden}
.sigma-handwriting-preview img{width:70px;height:64px;object-fit:cover;border-radius:11px;border:1px solid rgba(255,255,255,.16);background:#fff}.sigma-handwriting-preview>div{display:flex;flex-direction:column;min-width:0}.sigma-handwriting-preview small{font-size:.48rem;letter-spacing:.11em;font-weight:950;color:#f6d66f}.sigma-handwriting-preview strong{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.sigma-handwriting-preview span{font-size:.62rem;line-height:1.35;color:#c8d8e7}.sigma-handwriting-preview>button{width:30px;height:30px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(255,255,255,.07);color:#fff;font-size:1.1rem}
.sigma-handwriting-privacy{margin:0 3px!important;font-size:.57rem!important;line-height:1.4!important;color:#879daf!important}.sigma-chat-photo-chip{display:inline-flex;align-items:center;gap:5px;margin:2px 0 5px;padding:5px 8px;border-radius:999px;background:rgba(59,130,246,.12);border:1px solid rgba(96,165,250,.2);color:#7dd3fc;font-size:.58rem;font-weight:900;letter-spacing:.03em}
html[data-theme="light"] .sigma-handwriting-button{background:linear-gradient(135deg,#eefaff,#e8f3ff);color:#0f2943;border-color:#c5e7f3}html[data-theme="light"] .sigma-handwriting-button em{color:#5d768d}html[data-theme="light"] .sigma-handwriting-button small{color:#087b9d}html[data-theme="light"] .sigma-handwriting-preview{background:linear-gradient(135deg,#fff9df,#f3f8fd);border-color:#ead58b;color:#17263a}html[data-theme="light"] .sigma-handwriting-preview span{color:#617385}html[data-theme="light"] .sigma-handwriting-preview>button{background:#fff;color:#334155;border-color:#d7e0e8}html[data-theme="light"] .sigma-chat-photo-chip{color:#075985;background:#eef8ff;border-color:#c6e7f8}
@media(max-width:640px){.sigma-handwriting-button{grid-template-columns:42px 1fr auto;padding:10px}.sigma-handwriting-camera{width:38px;height:38px}.sigma-handwriting-preview{grid-template-columns:58px 1fr 28px}.sigma-handwriting-preview img{width:58px;height:56px}}

/* ============================================================
   V51.44 • Premium Achievement Medals
   ============================================================ */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.sigma-achievement-grid{gap:14px}
.sigma-achievement{
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  gap:15px;
  align-items:center;
  min-height:126px;
  padding:15px 17px;
  border-radius:20px;
  border:1px solid #dde4eb;
  background:linear-gradient(145deg,#fbfcfe 0%,#f5f7fa 100%);
  box-shadow:0 7px 18px rgba(20,39,60,.045),inset 0 1px 0 rgba(255,255,255,.82);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.sigma-achievement:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(20,39,60,.07),inset 0 1px 0 rgba(255,255,255,.9)}
.sigma-achievement>.sigma-premium-medal{
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:transparent;
  color:inherit;
  overflow:visible;
}
.sigma-achievement>.sigma-premium-medal img{
  width:76px;
  height:76px;
  display:block;
  object-fit:contain;
  filter:drop-shadow(0 5px 5px rgba(37,30,17,.17));
  transform:translateZ(0);
}
.sigma-achievement.locked>.sigma-premium-medal img{filter:saturate(.91) drop-shadow(0 4px 5px rgba(37,30,17,.14))}
.sigma-achievement.earned{
  background:linear-gradient(135deg,#fffdf8 0%,#fff9eb 58%,#fffdf8 100%);
  border-color:#efd58f;
  box-shadow:0 9px 24px rgba(178,126,24,.09),inset 0 1px 0 rgba(255,255,255,.96);
}
.sigma-achievement.earned>.sigma-premium-medal img{filter:saturate(1.05) drop-shadow(0 6px 7px rgba(168,112,14,.23))}
.sigma-achievement>div{min-width:0;display:flex;flex-direction:column}
.sigma-achievement strong{font-size:.92rem;line-height:1.15;color:#17273a;letter-spacing:-.01em}
.sigma-achievement small{font-size:.72rem;line-height:1.38;color:#788696;margin-top:4px;min-height:0}
.sigma-achievement-series-note{display:block;margin-top:7px;font-size:.58rem;line-height:1.2;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#8a6c2a}
.sigma-achievement em{margin-top:9px;font-size:.61rem;line-height:1.1;font-style:normal;font-weight:950;letter-spacing:.06em;color:#87691f;text-transform:uppercase}
.sigma-achievement-progress{height:7px;margin-top:11px;border-radius:999px;background:linear-gradient(180deg,#e5eaf0,#dbe2e9);overflow:hidden;box-shadow:inset 0 1px 2px rgba(30,47,65,.06)}
.sigma-achievement-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8299ae 0%,#b5a76e 48%,#d8ae3f 100%);box-shadow:0 0 8px rgba(202,157,49,.22);transition:width .3s ease}
.sigma-showcase-badge{padding:6px 4px 7px;background:linear-gradient(145deg,#fffdf9,#fff8e9);border-color:#e8d59b;box-shadow:0 4px 10px rgba(109,78,20,.05)}
.sigma-showcase-badge>.sigma-premium-medal.showcase{width:43px;height:43px;display:block;border-radius:50%}
.sigma-showcase-badge>.sigma-premium-medal.showcase img{width:43px;height:43px;display:block;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(55,39,15,.18))}
.sigma-showcase-badge small{margin-top:1px;font-size:.53rem;color:#715a28;font-weight:800}
[data-theme="dark"] .sigma-achievement{background:linear-gradient(145deg,#152334,#111e2d);border-color:#304356;box-shadow:0 8px 22px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025)}
[data-theme="dark"] .sigma-achievement.earned{background:linear-gradient(145deg,#282315,#1b1d1e);border-color:#6a572b}
[data-theme="dark"] .sigma-achievement strong{color:#eef3f8}
[data-theme="dark"] .sigma-achievement small{color:#93a2b2}
[data-theme="dark"] .sigma-achievement-series-note{color:#d6c58f}
[data-theme="dark"] .sigma-achievement-progress{background:#26384a}
[data-theme="dark"] .sigma-showcase-badge{background:linear-gradient(145deg,#201d16,#172332);border-color:#5c4c2a}
@media(max-width:1050px){.sigma-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
  .sigma-achievement-grid{grid-template-columns:1fr;gap:10px}
  .sigma-achievement{grid-template-columns:66px minmax(0,1fr);min-height:112px;padding:13px 14px;gap:12px;border-radius:18px}
  .sigma-achievement>.sigma-premium-medal,.sigma-achievement>.sigma-premium-medal img{width:66px;height:66px}
  .sigma-achievement strong{font-size:.88rem}
  .sigma-achievement small{font-size:.7rem}
}


/* ============================================================
   V51.47 • Trophy Cabinet + Featured Medals
   ============================================================ */
.sigma-trophy-cabinet-card{margin-top:18px}
.sigma-trophy-cabinet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:15px}
.sigma-trophy-medal-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:14px 12px;border-radius:18px;border:1px solid #e2e8ef;background:linear-gradient(145deg,#fffdf9,#f8fafc);box-shadow:0 6px 16px rgba(20,39,60,.05),inset 0 1px 0 rgba(255,255,255,.92)}
.sigma-trophy-medal-card.featured{border-color:#edd58e;background:linear-gradient(145deg,#fffdf6,#fff8ea);box-shadow:0 8px 20px rgba(174,123,22,.09),inset 0 1px 0 rgba(255,255,255,.95)}
.sigma-premium-medal.cabinet{width:78px;height:78px;display:grid;place-items:center}
.sigma-premium-medal.cabinet img{width:78px;height:78px;display:block;object-fit:contain;filter:drop-shadow(0 5px 6px rgba(55,39,15,.2))}
.sigma-trophy-medal-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.sigma-trophy-medal-copy strong{font-size:.83rem;line-height:1.15;color:#17273a}
.sigma-trophy-medal-copy small{font-size:.67rem;line-height:1.35;color:#758294}
.sigma-trophy-pin-btn{appearance:none;border:1px solid #d6e0ea;background:#fff;color:#27405b;border-radius:999px;padding:8px 10px;font-size:.63rem;font-weight:900;letter-spacing:.03em;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.sigma-trophy-pin-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(20,39,60,.08)}
.sigma-trophy-medal-card.featured .sigma-trophy-pin-btn{border-color:#e4c96d;background:#fff8e1;color:#7a5c17}
.sigma-trophy-empty{grid-column:1/-1;padding:18px;border:1px dashed #d9e2eb;border-radius:18px;background:linear-gradient(145deg,#fbfcfe,#f6f8fb);text-align:center;color:#5f6f82}
.sigma-trophy-empty strong{display:block;margin-bottom:4px;color:#203247}
[data-theme="dark"] .sigma-trophy-medal-card{background:linear-gradient(145deg,#152334,#111e2d);border-color:#304356;box-shadow:0 8px 22px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025)}
[data-theme="dark"] .sigma-trophy-medal-card.featured{background:linear-gradient(145deg,#282315,#1b1d1e);border-color:#6a572b}
[data-theme="dark"] .sigma-trophy-medal-copy strong{color:#edf3f8}
[data-theme="dark"] .sigma-trophy-medal-copy small{color:#94a3b3}
[data-theme="dark"] .sigma-trophy-pin-btn{background:#172534;border-color:#33485d;color:#e6edf4}
[data-theme="dark"] .sigma-trophy-medal-card.featured .sigma-trophy-pin-btn{background:#2a2618;border-color:#6a572b;color:#e5d291}
[data-theme="dark"] .sigma-trophy-empty{background:linear-gradient(145deg,#142130,#101a26);border-color:#34475a;color:#9badc0}
@media(max-width:1050px){.sigma-trophy-cabinet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sigma-trophy-cabinet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sigma-profile-actions{flex-wrap:wrap}.sigma-trophy-cabinet-grid{grid-template-columns:1fr 1fr;gap:10px}.sigma-premium-medal.cabinet,.sigma-premium-medal.cabinet img{width:70px;height:70px}.sigma-trophy-pin-btn{width:100%}}


/* ============================================================
   V51.48 • Exam-style maths notation + power entry
   ============================================================ */
.sigma-exam-fraction{display:inline-grid;grid-template-rows:auto auto;vertical-align:middle;position:relative;top:-.06em;min-width:1.45em;margin:0 .09em;text-align:center;line-height:1.02;font-variant-numeric:lining-nums tabular-nums}
.sigma-exam-fraction-num{display:block;padding:0 .18em .08em;border-bottom:1.6px solid currentColor}
.sigma-exam-fraction-den{display:block;padding:.08em .18em 0}
.question-text .sigma-exam-fraction{font-size:1.02em;margin-inline:.12em}
.sigma-exam-power{font-size:.68em;line-height:0;vertical-align:super;margin-left:.02em}
.maths-key-power-glyph{display:inline-flex;align-items:flex-start;justify-content:center;font-size:1.08rem;font-weight:950;line-height:1}
.maths-key-power-glyph sup{font-size:.62em;line-height:1;position:relative;top:-.28em;margin-left:.04em}
.maths-key-power{font-family:inherit!important}
.maths-keys-hint{display:block;grid-column:1/-1;margin:7px 2px 0;color:#72869a;font-size:.58rem;font-weight:750;letter-spacing:.01em}
.student-answer-input.math-power-mode{border-color:#cda43e!important;box-shadow:0 0 0 3px rgba(205,164,62,.14)!important}
.student-answer-input.math-power-mode::placeholder{color:#a27c20}
[data-theme="dark"] .maths-keys-hint{color:#8ca4b8}

/* ============================================================
   V51.48 • Trophy Cabinet category + recent unlock polish
   ============================================================ */
.sigma-recent-unlocks{margin-top:15px;padding:13px;border:1px solid #ead89f;border-radius:18px;background:linear-gradient(135deg,#fffdf7,#fff8e9 58%,#fbfdff);box-shadow:0 7px 20px rgba(137,94,14,.06)}
.sigma-recent-unlocks-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.sigma-recent-unlocks-head span{font-size:.64rem;font-weight:950;letter-spacing:.11em;color:#8a681d}
.sigma-recent-unlocks-head small{font-size:.61rem;color:#8b7b54}
.sigma-recent-unlocks-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.sigma-recent-medal{appearance:none;display:grid;grid-template-columns:52px minmax(0,1fr);gap:9px;align-items:center;text-align:left;border:1px solid #e6dfc8;border-radius:14px;padding:8px 10px;background:rgba(255,255,255,.82);cursor:pointer;color:inherit}
.sigma-recent-medal>.sigma-premium-medal.recent,.sigma-recent-medal>.sigma-premium-medal.recent img{width:52px;height:52px;display:block;object-fit:contain}
.sigma-recent-medal>.sigma-premium-medal.recent img{filter:drop-shadow(0 4px 5px rgba(92,61,11,.18))}
.sigma-recent-medal>span:last-child{display:flex;flex-direction:column;min-width:0}
.sigma-recent-medal strong{font-size:.72rem;color:#203247;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sigma-recent-medal small{font-size:.59rem;color:#877242;margin-top:2px}
.sigma-recent-medal.featured{border-color:#dcb94d;background:linear-gradient(145deg,#fff9df,#fffef9);box-shadow:0 0 0 2px rgba(224,184,67,.13),0 7px 18px rgba(174,123,22,.1)}
.sigma-trophy-cabinet-grid{display:block;margin-top:15px}
.sigma-trophy-category{margin-top:15px}
.sigma-trophy-category:first-child{margin-top:0}
.sigma-trophy-category-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 8px;border-bottom:1px solid #e8edf2}
.sigma-trophy-category-head span{font-size:.69rem;font-weight:950;letter-spacing:.09em;text-transform:uppercase;color:#31475e}
.sigma-trophy-category-head small{font-size:.62rem;color:#8391a0}
.sigma-trophy-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:10px}
.sigma-trophy-medal-card.featured{position:relative;box-shadow:0 0 0 2px rgba(221,181,60,.16),0 0 24px rgba(232,190,66,.18),0 10px 24px rgba(174,123,22,.12)}
.sigma-trophy-medal-card.featured:before{content:"FEATURED";position:absolute;top:8px;right:8px;padding:3px 6px;border-radius:999px;background:linear-gradient(135deg,#f5d36b,#d4a833);color:#5f4510;font-size:.47rem;font-weight:950;letter-spacing:.08em;box-shadow:0 3px 8px rgba(103,74,12,.15)}
.sigma-trophy-medal-card.featured .sigma-premium-medal.cabinet img{filter:saturate(1.08) drop-shadow(0 0 8px rgba(229,183,50,.28)) drop-shadow(0 5px 6px rgba(55,39,15,.2))}
[data-theme="dark"] .sigma-recent-unlocks{background:linear-gradient(135deg,#262216,#182433);border-color:#655328}
[data-theme="dark"] .sigma-recent-medal{background:#152334;border-color:#35485a}
[data-theme="dark"] .sigma-recent-medal strong,[data-theme="dark"] .sigma-trophy-category-head span{color:#eef3f8}
[data-theme="dark"] .sigma-recent-medal small{color:#cabd91}
[data-theme="dark"] .sigma-trophy-category-head{border-color:#304356}
@media(max-width:1050px){.sigma-trophy-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.sigma-trophy-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sigma-recent-unlocks-row{grid-template-columns:1fr}}
@media(max-width:650px){.sigma-exam-fraction{min-width:1.35em}.maths-key-power-glyph{font-size:1rem}.sigma-trophy-category-grid{grid-template-columns:1fr 1fr;gap:9px}.sigma-recent-medal{grid-template-columns:48px minmax(0,1fr)}.sigma-recent-medal>.sigma-premium-medal.recent,.sigma-recent-medal>.sigma-premium-medal.recent img{width:48px;height:48px}}


/* ===== V51.52 5 / 10 / 25 / 50 worksheet lengths ===== */
.worksheet-count-group .quick-fire-option span{min-width:128px;font-weight:900;letter-spacing:.01em}
.worksheet-count-group .quick-fire-option input:checked+span{box-shadow:inset 0 0 0 1px var(--brand-gold),0 5px 16px rgba(215,170,82,.16)}
.quick-fire-btn{white-space:nowrap}
.worksheet-feature-strip{grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.worksheet-feature-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.worksheet-count-group{display:flex;flex-wrap:wrap;gap:8px}.worksheet-count-group label{margin-right:0}.worksheet-count-group label span{min-width:58px}.worksheet-count-group .quick-fire-option{flex:1 1 100%}.worksheet-count-group .quick-fire-option span{width:100%;min-width:0}.worksheet-feature-strip{grid-template-columns:1fr}}

/* ============================================================
   V51.53 • Cleaner worksheet controls
   Native status selects are replaced with stable segmented controls,
   Maths Keys stay collapsed until requested, and marked papers surface
   a clear Correct Answers action.
   ============================================================ */
.progress-status-field{margin-bottom:2px}
.progress-status-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:5px;border:1px solid #d8e2ec;border-radius:15px;background:#eef3f7}
.progress-status-option{min-height:42px;border:1px solid transparent;border-radius:11px;background:transparent;color:#52677c;font:850 .74rem/1.1 system-ui,-apple-system,sans-serif;cursor:pointer;padding:8px 6px;transition:.14s ease}
.progress-status-option:hover{background:rgba(255,255,255,.7);color:#173b5d}
.progress-status-option.active{background:#fff;border-color:#a8c7dc;color:#0f486d;box-shadow:0 4px 12px rgba(12,53,83,.08),inset 0 1px 0 #fff}
html[data-theme="dark"] .progress-status-options{background:#0c1d2d;border-color:#2d465c}
html[data-theme="dark"] .progress-status-option{color:#9eb3c5}
html[data-theme="dark"] .progress-status-option:hover{background:#142b3e;color:#e6f5ff}
html[data-theme="dark"] .progress-status-option.active{background:#17354d;border-color:#43769b;color:#e8f7ff;box-shadow:none}

.maths-keys-shell{margin:7px 0 12px}
.student-answer-input + .maths-keys-shell{margin-top:7px!important}
.maths-keys-toggle{width:100%;min-height:42px;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;padding:8px 11px;border:1px solid #d2dfeb;border-radius:12px;background:#f8fbfd;color:#24435f;text-align:left;cursor:pointer;box-shadow:0 3px 10px rgba(8,35,60,.035)}
.maths-keys-toggle>span{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;background:#e6f2f9;color:#1f5a82;font-size:.76rem}
.maths-keys-toggle strong{font-size:.72rem;font-weight:900}
.maths-keys-toggle small{justify-self:end;color:#73879a;font-size:.62rem;font-weight:800}
.maths-keys-toggle[aria-expanded="true"]{border-color:#9cbfd8;background:#f1f8fc;color:#164b70;border-radius:12px 12px 7px 7px}
.maths-keys-toggle[aria-expanded="true"]+ .maths-keys{border-radius:7px 7px 18px 18px!important;margin-top:4px!important}
html[data-theme="dark"] .maths-keys-toggle{background:#0d2031;border-color:#304a60;color:#dcecf7;box-shadow:none}
html[data-theme="dark"] .maths-keys-toggle>span{background:#17374f;color:#bde8ff}
html[data-theme="dark"] .maths-keys-toggle small{color:#8ca4b8}
html[data-theme="dark"] .maths-keys-toggle[aria-expanded="true"]{background:#122a3d;border-color:#477393;color:#eef9ff}

.answer-reveal-ready:not(:disabled){border-color:#7cb7d9!important;background:linear-gradient(180deg,#eef9ff,#e4f3fb)!important;color:#0d567e!important;box-shadow:0 5px 14px rgba(25,104,145,.10)!important;font-weight:900}
.answer-reveal-ready:not(:disabled)::before{content:'✓ ';font-weight:1000}
html[data-theme="dark"] .answer-reveal-ready:not(:disabled){background:linear-gradient(180deg,#16415d,#11344d)!important;border-color:#3c789d!important;color:#d9f4ff!important}

@media(max-width:620px){
  .progress-status-options{grid-template-columns:repeat(2,minmax(0,1fr))}
  .progress-status-option{min-height:40px}
  .maths-keys-toggle{grid-template-columns:auto 1fr}.maths-keys-toggle small{grid-column:2;justify-self:start;margin-top:-4px}
}

/* ============================================================
   V51.55 • Tutor Camera + Mobile Tidy Pass
   Keeps the lesson launcher readable, separates camera/gallery actions,
   fixes the worksheet Sigma button position, and removes duplicate marked-state clutter.
   ============================================================ */
.sigma-chat-card.sigma-chat-collapsed{
  padding:0!important;margin:12px 0 14px!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important
}
.sigma-chat-card.sigma-chat-collapsed:before{display:none!important}
.sigma-chat-card.sigma-chat-collapsed .sigma-chat-panel{display:none!important}
.sigma-chat-card.sigma-chat-expanded .sigma-chat-launch{display:none!important}
.sigma-chat-launch-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;gap:2px!important}
.sigma-chat-launch-copy small,.sigma-chat-launch-copy strong,.sigma-chat-launch-copy em{display:block!important;width:100%!important;position:static!important;transform:none!important;margin:0!important}
.sigma-ai-premium-launch .sigma-chat-launch-copy strong{line-height:1.15!important}
.sigma-ai-premium-launch .sigma-chat-launch-copy em{line-height:1.35!important}

.sigma-handwriting-upload{display:grid;gap:8px;margin:9px 0 11px;padding:10px;border:1px solid #dbe8f1;border-radius:16px;background:rgba(248,252,255,.86)}
.sigma-handwriting-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px}
.sigma-handwriting-head>div{display:flex;flex-direction:column;min-width:0}
.sigma-handwriting-head small{font-size:.52rem;letter-spacing:.12em;font-weight:950;color:#1282a7}
.sigma-handwriting-head strong{font-size:.83rem;color:#17344e;margin-top:1px}
.sigma-handwriting-head>span{font-size:.58rem;font-weight:850;color:#7a8da0;background:#eef4f8;border-radius:999px;padding:4px 7px;white-space:nowrap}
.sigma-handwriting-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sigma-handwriting-action{min-width:0;min-height:58px;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;padding:9px 10px;border:1px solid #cfe1ed;border-radius:13px;background:#fff;color:#17344e;text-align:left;font:inherit;cursor:pointer;box-shadow:0 4px 12px rgba(15,55,83,.04);transition:.15s ease}
.sigma-handwriting-action:hover{transform:translateY(-1px);border-color:#9fc8df;box-shadow:0 7px 17px rgba(15,55,83,.08)}
.sigma-handwriting-action:disabled{opacity:.58;cursor:wait;transform:none}
.sigma-handwriting-action.camera{background:linear-gradient(135deg,#ecfaff,#eff5ff);border-color:#a9d9ea}
.sigma-handwriting-action.has-photo{border-color:#d8b65a;box-shadow:inset 0 0 0 1px rgba(216,182,90,.16)}
.sigma-handwriting-action>span:last-child{display:flex;flex-direction:column;min-width:0}
.sigma-handwriting-action strong{font-size:.78rem;line-height:1.15}
.sigma-handwriting-action em{font-style:normal;font-size:.61rem;color:#71869a;margin-top:2px;line-height:1.25}
.sigma-handwriting-camera{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#48dff7,#6d67f6);color:#07131f;font-size:1rem;font-weight:1000;box-shadow:0 6px 14px rgba(54,210,239,.15)}
.sigma-handwriting-camera.attach-icon{background:linear-gradient(145deg,#e9eef5,#dce7f2);color:#214c69;box-shadow:none;font-size:1.15rem}
.sigma-handwriting-preview{grid-template-columns:58px minmax(0,1fr) 30px!important;padding:8px!important;border-radius:13px!important}
.sigma-handwriting-preview img{width:58px!important;height:54px!important;border-radius:9px!important}
.sigma-handwriting-privacy{font-size:.55rem!important;margin:0 2px!important}
html[data-theme="dark"] .sigma-handwriting-upload{background:rgba(11,28,43,.88);border-color:#2b465c}
html[data-theme="dark"] .sigma-handwriting-head strong{color:#e8f4fc}
html[data-theme="dark"] .sigma-handwriting-head small{color:#75e9ff}
html[data-theme="dark"] .sigma-handwriting-head>span{background:#152a3d;color:#9cb1c3}
html[data-theme="dark"] .sigma-handwriting-action{background:#0f2234;color:#e9f5fd;border-color:#2e4a61}
html[data-theme="dark"] .sigma-handwriting-action.camera{background:linear-gradient(135deg,#102a40,#182d4a);border-color:#3b6682}
html[data-theme="dark"] .sigma-handwriting-action em{color:#9db1c2}

/* The older on-demand Tutor CSS block contains escaped newlines, so these are the authoritative live rules. */
.worksheet-sigma-help-fab.sigma-ai-fab{
  position:fixed!important;z-index:60!important;right:14px!important;bottom:calc(86px + env(safe-area-inset-bottom))!important;
  width:auto!important;min-width:0!important;max-width:150px!important;min-height:48px!important;padding:5px 8px 5px 5px!important;gap:7px!important;
  border-radius:999px!important
}
.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-orb{width:38px!important;height:38px!important;border-radius:50%!important;flex:0 0 38px!important}
.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-orb img{width:34px!important;height:34px!important}
.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-copy small{display:none!important}
.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-copy strong{font-size:.72rem!important;margin:0!important;white-space:nowrap}
.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-arrow{font-size:.82rem!important;margin-left:1px!important}
#worksheetWorkspace.worksheet-submitted .worksheet-tool-strip{display:none!important}
#worksheetWorkspace.worksheet-submitted .worksheet-interactive-status{display:none!important}
#worksheetWorkspace.worksheet-submitted .test-result-summary{margin-top:10px!important}

#topicDialog.worksheet-help-mode{width:min(650px,calc(100% - 16px))!important;max-height:84dvh!important;margin:auto 8px calc(76px + env(safe-area-inset-bottom)) auto!important;border-radius:22px!important;background:transparent!important}
#topicDialog.worksheet-help-mode::backdrop{background:rgba(4,18,32,.28)!important;backdrop-filter:blur(2px)!important}
#topicDialog.worksheet-help-mode #topicDialogBody>:not(#sigmaConversationTutor){display:none!important}
#topicDialog.worksheet-help-mode #sigmaConversationTutor{margin:0!important;padding:9px!important;max-height:calc(84dvh - 72px)!important;overflow:auto!important}
#topicDialog.worksheet-help-mode .sigma-chat-panel{display:flex!important;flex-direction:column!important;max-height:none!important;overflow:visible!important}
#topicDialog.worksheet-help-mode .sigma-chat-window{height:min(250px,28dvh)!important;min-height:130px!important}
#topicDialog.worksheet-help-mode .sigma-chat-compose{position:sticky;bottom:0;z-index:4;padding-top:8px;background:linear-gradient(180deg,rgba(255,255,255,0),#f7fbfe 22%)}
html[data-theme="dark"] #topicDialog.worksheet-help-mode .sigma-chat-compose{background:linear-gradient(180deg,rgba(7,19,31,0),#07131f 22%)}

@media(max-width:760px){
  #worksheetWorkspace .test-workspace-toolbar{padding:13px!important;border-radius:18px!important;margin-bottom:10px!important}
  #worksheetWorkspace .test-toolbar-actions{gap:7px!important}
  #worksheetWorkspace .test-toolbar-actions .btn{min-height:44px!important;padding:8px 9px!important;font-size:.76rem!important;line-height:1.15!important}
  #worksheetWorkspace.worksheet-submitted .test-workspace-toolbar h3{font-size:1.12rem!important}
}
@media(max-width:640px){
  .sigma-ai-premium-launch{grid-template-columns:48px minmax(0,1fr)!important;min-height:72px!important;padding:10px 11px!important;border-radius:18px!important;gap:10px!important}
  .sigma-ai-launch-orb{width:46px!important;height:46px!important;border-radius:15px!important}.sigma-ai-launch-orb img{width:39px!important;height:39px!important}
  .sigma-ai-premium-launch .sigma-chat-launch-copy small{font-size:.49rem!important;letter-spacing:.12em!important}
  .sigma-ai-premium-launch .sigma-chat-launch-copy strong{font-size:.92rem!important}
  .sigma-ai-premium-launch .sigma-chat-launch-copy em{font-size:.62rem!important;line-height:1.28!important;margin-top:1px!important}
  .sigma-ai-launch-action{display:none!important}
  .sigma-ai-quick-prompts{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .sigma-ai-quick-prompts button{min-width:0!important;padding:8px!important;grid-template-columns:24px minmax(0,1fr)!important}
  .sigma-ai-quick-prompts button b{width:24px!important;height:24px!important}
  .sigma-ai-quick-prompts button span{font-size:.68rem!important}
  .sigma-ai-context-strip{display:none!important}
  .sigma-chat-intro{font-size:.68rem!important;line-height:1.4!important;margin:5px 0 9px!important}
  .sigma-handwriting-upload{padding:8px!important;margin:8px 0!important}
  .worksheet-sigma-help-fab.sigma-ai-fab{right:9px!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;max-width:132px!important;min-height:44px!important}
  .worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-orb{width:34px!important;height:34px!important;flex-basis:34px!important}.worksheet-sigma-help-fab.sigma-ai-fab .sigma-ai-fab-orb img{width:31px!important;height:31px!important}
  #topicDialog.worksheet-help-mode{width:calc(100% - 10px)!important;margin:auto 5px calc(70px + env(safe-area-inset-bottom)) auto!important;max-height:86dvh!important}
  #topicDialog.worksheet-help-mode #sigmaConversationTutor{max-height:calc(86dvh - 68px)!important}
  #topicDialog.worksheet-help-mode .sigma-chat-window{height:min(220px,25dvh)!important;min-height:118px!important}
}
@media(max-width:400px){
  .sigma-ai-quick-prompts{grid-template-columns:1fr!important}
  .sigma-handwriting-actions{grid-template-columns:1fr!important}
  .sigma-handwriting-action{min-height:52px!important}
}
@media print{.worksheet-sigma-help-fab{display:none!important}}


/* V51.59 • Sigma Gems + award-specific premium medal identity + Sigma Supreme max tier */
.sigma-gem-vault-card{position:relative;overflow:hidden;background:radial-gradient(circle at 90% 0%,rgba(67,231,255,.14),transparent 42%),linear-gradient(145deg,rgba(8,20,37,.98),rgba(12,31,48,.96));border-color:rgba(86,226,255,.28)}
.sigma-gem-balance{display:flex;align-items:center;gap:.35rem;font-size:1.05rem;color:#c9f7ff}.sigma-gem-balance span{filter:drop-shadow(0 0 8px rgba(75,223,255,.65))}.sigma-gem-balance b{font-size:1.28rem}
.sigma-gem-radar{display:flex;align-items:center;gap:.65rem;padding:.7rem .8rem;margin:.75rem 0;border:1px solid rgba(83,225,255,.18);border-radius:14px;background:rgba(4,18,31,.62)}.sigma-gem-radar>span{font-size:1.3rem;color:#66e5ff}.sigma-gem-radar div{display:flex;flex-direction:column;gap:.08rem}.sigma-gem-radar strong{font-size:.72rem;letter-spacing:.09em}.sigma-gem-radar small,#sigmaGemEarnRules{color:var(--muted)}
.sigma-gem-hunt-zone{position:relative!important}.sigma-hidden-gem{position:absolute;z-index:25;top:18px;right:18px;display:flex;align-items:center;gap:.3rem;border:1px solid rgba(134,239,255,.5);border-radius:999px;padding:.42rem .58rem;background:linear-gradient(145deg,rgba(7,27,45,.96),rgba(21,65,78,.96));box-shadow:0 0 0 1px rgba(255,255,255,.04),0 0 22px rgba(54,220,255,.28);cursor:pointer;animation:sigmaGemPulse 2.2s ease-in-out infinite}.sigma-hidden-gem span{font-size:1.25rem;filter:drop-shadow(0 0 8px rgba(82,228,255,.9))}.sigma-hidden-gem small{font-size:.56rem;letter-spacing:.12em;color:#dcfbff;font-weight:900}.sigma-hidden-gem:hover{transform:translateY(-2px) scale(1.04)}
@keyframes sigmaGemPulse{0%,100%{box-shadow:0 0 0 1px rgba(255,255,255,.04),0 0 14px rgba(54,220,255,.2)}50%{box-shadow:0 0 0 4px rgba(72,222,255,.06),0 0 30px rgba(54,220,255,.45)}}
.times-gem-forge{margin:14px 0 18px;padding:16px;border:1px solid rgba(83,226,255,.25);border-radius:18px;background:radial-gradient(circle at 95% 0%,rgba(74,223,255,.13),transparent 36%),linear-gradient(145deg,rgba(8,19,35,.98),rgba(12,31,48,.98));box-shadow:inset 0 0 25px rgba(41,203,255,.05)}
.times-gem-forge-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.times-gem-forge-head>div:first-child{display:flex;flex-direction:column;gap:2px}.times-gem-forge-head span{font-size:.68rem;font-weight:900;letter-spacing:.1em;color:#78eaff}.times-gem-forge-head strong{font-size:1rem}.times-gem-forge-head small{color:var(--muted)}.times-gem-wallet{min-width:92px;text-align:center;padding:8px 10px;border-radius:14px;background:rgba(2,15,28,.75);border:1px solid rgba(103,232,255,.22)}.times-gem-wallet span{font-size:1.15rem}.times-gem-wallet strong{display:block;font-size:1.45rem;color:#d9fbff}.times-gem-wallet small{font-size:.65rem}
.times-gem-upgrades{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.times-gem-upgrades article{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:6px 10px;align-items:center;padding:11px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(1,11,22,.52)}.times-gem-upgrade-icon{grid-row:1/2;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(72,221,255,.1);color:#83efff;font-size:1.15rem}.times-gem-upgrades article>div:nth-child(2){display:flex;flex-direction:column}.times-gem-upgrades article strong{font-size:.82rem}.times-gem-upgrades article span{font-size:.7rem;color:var(--muted);line-height:1.3}.times-gem-upgrades article small{font-size:.65rem;color:#8eefff;margin-top:3px}.times-gem-upgrades button{grid-column:1/-1;width:100%;font-size:.68rem}.times-gem-upgrades button:disabled{opacity:.45;cursor:not-allowed}
#timesGameView[data-arena-skin="crystal"] .times-arena{box-shadow:inset 0 0 70px rgba(34,211,238,.22),0 0 46px rgba(16,185,129,.18);border-color:rgba(103,232,249,.68)}#timesGameView[data-arena-skin="crystal"] .storm-grid-floor{filter:hue-rotate(70deg) saturate(1.7) brightness(1.08)}
/* Keep the high-resolution premium medal plate and make the achievement itself unmistakable. */
.sigma-premium-medal{position:relative}.sigma-premium-medal .sigma-medal-glyph{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-48%);display:grid;place-items:center;min-width:36%;max-width:68%;font-size:clamp(.58rem,1.35vw,.9rem);line-height:1;color:#fff8d4;text-shadow:0 1px 2px #000,0 0 8px rgba(255,208,77,.7);font-weight:1000;letter-spacing:-.04em;pointer-events:none}.sigma-premium-medal.showcase .sigma-medal-glyph,.sigma-premium-medal.cabinet .sigma-medal-glyph{font-size:clamp(.7rem,1.7vw,1rem)}
.sigma-premium-medal.sigma-supreme img{filter:saturate(1.35) hue-rotate(310deg) brightness(.82) contrast(1.22) drop-shadow(0 0 7px rgba(255,28,45,.72))}.sigma-premium-medal.sigma-supreme:after{content:"";position:absolute;inset:7%;border:2px solid rgba(255,42,50,.72);border-radius:50%;box-shadow:inset 0 0 12px rgba(255,18,35,.35),0 0 11px rgba(255,18,35,.3);pointer-events:none}.sigma-supreme-max{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);padding:1px 4px;border-radius:5px;background:#7b0711;color:#ffd9db;border:1px solid #ff5963;font-style:normal;font-size:.42rem;letter-spacing:.08em;font-weight:1000;box-shadow:0 0 8px rgba(255,32,47,.45)}
@media(max-width:800px){.times-gem-forge-head{align-items:flex-start}.times-gem-upgrades{grid-template-columns:1fr}.sigma-hidden-gem{top:12px;right:12px}.sigma-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* V51.59 • Gem wallet + 5-second Storm revive */
.sigma-top-gems{display:inline-flex;align-items:center;gap:3px;margin-left:2px;padding:4px 6px;border-radius:999px;border:1px solid rgba(111,239,255,.34);background:linear-gradient(135deg,rgba(24,49,79,.88),rgba(26,21,70,.82));color:#d9fbff;font-style:normal;font-size:.66rem;font-weight:1000;line-height:1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 12px rgba(62,225,255,.12)}
.sigma-top-gems b{color:#fff;font-size:.68rem}
.times-revive-overlay{position:absolute;inset:0;z-index:120;display:grid;place-items:center;padding:14px;background:radial-gradient(circle at 50% 45%,rgba(53,25,111,.4),rgba(1,4,12,.92) 62%),rgba(0,0,0,.78);backdrop-filter:blur(3px)}
.times-revive-overlay.hidden{display:none!important}
.times-revive-card{width:min(470px,94%);padding:24px 20px 20px;border:2px solid #75efff;border-radius:18px;background:linear-gradient(180deg,#081326,#050713);box-shadow:0 0 0 4px rgba(74,119,176,.24),0 0 46px rgba(77,224,255,.28),inset 0 0 40px rgba(91,63,255,.08);text-align:center;color:#eafaff;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;animation:gemReviveIn .18s ease-out}
.times-revive-card>small:first-child{display:block;color:#8cf4ff;font-weight:1000;letter-spacing:.14em;font-size:.58rem}
.times-revive-card h3{margin:7px 0 8px;color:#fff;font-size:clamp(1.65rem,7vw,3rem);letter-spacing:.06em;text-shadow:0 0 16px rgba(104,235,255,.45)}
.times-revive-card p{margin:0 auto 13px;max-width:360px;color:#c5d8ea;font:800 .75rem/1.45 system-ui,sans-serif}.times-revive-card p strong{color:#86f2ff}
.times-revive-wallet{display:flex;justify-content:center;align-items:center;gap:12px;margin:10px auto 12px}.times-revive-wallet span{font-size:.53rem;letter-spacing:.12em;color:#7e9dbb;font-weight:1000}.times-revive-wallet strong{font-size:1.08rem;color:#fff}
.times-revive-countdown{width:112px;height:112px;margin:0 auto 14px;border:2px solid #ffcf56;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#1b1933,#080c18 68%);box-shadow:0 0 24px rgba(255,197,67,.18),inset 0 0 18px rgba(255,195,69,.08)}
.times-revive-countdown span,.times-revive-countdown em{font-size:.43rem;letter-spacing:.12em;color:#9fb4c9;font-style:normal;font-weight:1000}.times-revive-countdown strong{margin:1px 0;color:#ffe46b;font-size:2rem;line-height:1;text-shadow:0 0 12px rgba(255,216,70,.48)}
.times-revive-card .retro-arcade-btn{min-width:210px;border-color:#6df2ff!important;color:#05101d!important;background:linear-gradient(#b8fbff,#5ee7ff)!important;box-shadow:0 0 18px rgba(77,231,255,.32)!important}
.times-revive-card .retro-arcade-btn:disabled{opacity:.5;filter:grayscale(.6)}
.times-revive-rule{display:block;margin-top:10px;color:#7891aa!important;font-size:.5rem!important;letter-spacing:.03em!important}
@keyframes gemReviveIn{from{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-width:650px){.sigma-top-profile>span:nth-child(2){display:none}.sigma-top-profile{gap:4px}.sigma-top-gems{padding:4px 5px;font-size:.62rem}.times-revive-card{padding:20px 13px 17px}.times-revive-countdown{width:96px;height:96px}.times-revive-countdown strong{font-size:1.72rem}}
@media(prefers-reduced-motion:reduce){.times-revive-card{animation:none!important}}

.sigma-top-profile>span:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;min-width:0}

.sigma-gem-current-use{margin-top:10px;padding:9px 10px;border-radius:12px;border:1px solid rgba(78,205,235,.2);background:rgba(30,111,151,.06);display:flex;flex-direction:column;gap:2px}.sigma-gem-current-use span{font-size:.5rem;font-weight:950;letter-spacing:.12em;color:#3785a5}.sigma-gem-current-use strong{font-size:.68rem;line-height:1.35;color:var(--text,#17324a)}
html[data-theme="dark"] .sigma-gem-current-use strong{color:#d9eff8}


/* V51.62 Premium Sigma Storm flight deck */
.times-blaster-control-deck{display:none;margin-top:10px;padding:12px;border:1px solid rgba(88,224,255,.22);border-radius:18px;background:linear-gradient(180deg,#05111d,#0b2137);box-shadow:0 12px 28px rgba(0,0,0,.22),inset 0 0 0 1px rgba(86,221,255,.06)}
.times-blaster-control-deck.hidden{display:none!important}
.times-blaster-control-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.times-blaster-control-head small{display:block;color:#68efff;font-size:.58rem;font-weight:950;letter-spacing:.15em}
.times-blaster-control-head strong{display:block;color:#f4fbff;font-size:1rem;letter-spacing:.02em}
.times-blaster-control-head span{color:#a7dfff;font-size:.72rem;font-weight:800;text-align:right}
.times-blaster-control-grid{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:stretch}
.times-blaster-dpad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,60px);gap:8px}
.times-blaster-dpad-btn{border:1px solid rgba(102,236,255,.38);border-bottom-width:3px;border-radius:14px;background:linear-gradient(180deg,#0d2944,#081522);color:#ddf9ff;font:900 1.25rem/1 system-ui;box-shadow:0 0 18px rgba(59,207,255,.12),inset 0 0 0 1px rgba(255,255,255,.03);touch-action:none;user-select:none}
.times-blaster-dpad-btn.up{grid-column:2;grid-row:1}.times-blaster-dpad-btn.left{grid-column:1;grid-row:2}.times-blaster-dpad-btn.down{grid-column:2;grid-row:2}.times-blaster-dpad-btn.right{grid-column:3;grid-row:2}
.times-blaster-dpad-btn:active,.times-blaster-dpad-btn.is-held{transform:translateY(1px);box-shadow:0 0 22px rgba(96,229,255,.22),inset 0 0 0 1px rgba(255,255,255,.06);background:linear-gradient(180deg,#12395e,#0a1930)}
.times-blaster-dpad-btn:disabled{opacity:.45;cursor:not-allowed}
.times-blaster-fire-btn{display:grid;place-items:center;gap:6px;border:1px solid rgba(255,121,95,.55);border-bottom-width:4px;border-radius:18px;background:linear-gradient(180deg,#ff7f59,#cb2647 74%,#7b1735);color:#fff6e9;font:950 1.05rem/1 system-ui;letter-spacing:.12em;box-shadow:0 0 24px rgba(255,101,84,.28),inset 0 0 20px rgba(255,255,255,.08);touch-action:none;user-select:none}
.times-blaster-fire-btn small{font-size:.6rem;letter-spacing:.12em;color:#fff1cb}
.times-blaster-fire-btn:active{transform:translateY(1px);box-shadow:0 0 32px rgba(255,101,84,.36),inset 0 0 22px rgba(255,255,255,.10)}
.times-blaster-fire-btn:disabled{opacity:.45;cursor:not-allowed}
#timesGameView.blaster-active .times-answer-deck{display:none!important}
#timesGameView.blaster-active .times-blaster-control-deck{display:grid}
#timesGameView.blaster-active .times-defender{opacity:1!important;transition:transform .08s linear,top .08s linear,left .08s linear,opacity .12s ease}
#timesGameView.blaster-active .times-defender.shooter-live{z-index:14;filter:drop-shadow(0 0 18px rgba(80,227,255,.38)) drop-shadow(0 8px 20px rgba(0,0,0,.28));animation:none}
#timesGameView.blaster-active .times-defender.shooter-live img{width:92px;height:92px;clip-path:polygon(50% 0%,86% 28%,100% 72%,50% 100%,0 72%,14% 28%);border-radius:0;background:linear-gradient(180deg,#0a1e32,#06101d);border:2px solid rgba(101,239,255,.9);box-shadow:0 0 0 4px rgba(67,190,255,.08),0 0 26px rgba(67,210,255,.28)}
#timesGameView.blaster-active .sigma-thruster{left:40px;bottom:-18px;width:24px;height:46px;background:linear-gradient(180deg,#fff8b0,#5be7ff 38%,rgba(91,231,255,.15) 72%,transparent);filter:blur(1px);opacity:.96}
#timesGameView.blaster-active .sigma-nameplate{display:none}
#timesGameView.blaster-active .times-core{left:0;right:0}
#timesGameView.blaster-active .blaster-tip{bottom:14px;max-width:min(94%,760px)}
@media(max-width:900px){.times-blaster-control-grid{grid-template-columns:1fr}.times-blaster-fire-btn{min-height:74px}.times-blaster-control-head{flex-direction:column;align-items:flex-start}.times-blaster-control-head span{text-align:left}}
@media(max-width:540px){.times-blaster-control-deck{padding:9px;border-radius:15px}.times-blaster-dpad{grid-template-rows:repeat(2,52px);gap:6px}.times-blaster-dpad-btn{border-radius:12px;font-size:1.08rem}.times-blaster-fire-btn{min-height:68px;border-radius:14px}.times-blaster-control-head strong{font-size:.92rem}.times-blaster-control-head span{font-size:.64rem}}
@media(min-width:1101px){#timesGameView.storm-running .times-blaster-control-deck{grid-area:answer;display:none;margin:0;padding:10px;gap:8px;border-radius:15px}#timesGameView.storm-running .times-blaster-control-head{margin-bottom:6px}#timesGameView.storm-running .times-blaster-control-head strong{font-size:.86rem}#timesGameView.storm-running .times-blaster-control-head small{font-size:.5rem}#timesGameView.storm-running .times-blaster-control-head span{font-size:.6rem}#timesGameView.storm-running .times-blaster-control-grid{grid-template-columns:minmax(0,1fr) 118px;gap:8px}#timesGameView.storm-running .times-blaster-dpad{grid-template-rows:repeat(2,48px);gap:6px}#timesGameView.storm-running .times-blaster-dpad-btn{font-size:1rem;border-radius:11px}#timesGameView.storm-running .times-blaster-fire-btn{min-height:auto;border-radius:14px;font-size:.92rem}#timesGameView.storm-running .times-blaster-fire-btn small{font-size:.5rem}}


/* V51.62 Premium arcade evolution */
#timesGameView .times-arena::before,#timesGameView .times-arena::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1}
#timesGameView .times-arena::before{background:radial-gradient(circle at 20% 24%,rgba(255,255,255,.18) 0 1px,transparent 2px),radial-gradient(circle at 78% 16%,rgba(255,255,255,.16) 0 1px,transparent 2px),radial-gradient(circle at 62% 34%,rgba(105,231,255,.18) 0 1.5px,transparent 3px),radial-gradient(circle at 38% 66%,rgba(255,213,89,.14) 0 1.5px,transparent 3px);background-size:260px 220px,320px 260px,210px 180px,280px 220px;animation:stormStarsFloat 18s linear infinite;opacity:.65}
#timesGameView .times-arena::after{background:linear-gradient(180deg,rgba(110,230,255,.08),transparent 20%,transparent 75%,rgba(255,100,141,.08));mix-blend-mode:screen;animation:stormScanSweep 5.8s linear infinite}
@keyframes stormStarsFloat{from{transform:translateY(0)}to{transform:translateY(28px)}}
@keyframes stormScanSweep{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
#timesGameView.impact-danger .times-arena{animation:stormImpactShake .34s linear 1;box-shadow:0 0 0 1px rgba(255,95,118,.24),0 0 36px rgba(255,95,118,.22),inset 0 0 90px rgba(255,74,119,.16)}
#timesGameView.impact-good .times-arena{animation:stormImpactPulse .34s ease-out 1;box-shadow:0 0 0 1px rgba(92,255,180,.24),0 0 28px rgba(92,255,180,.18),inset 0 0 90px rgba(92,255,180,.14)}
#timesGameView.impact-gem .times-arena{animation:stormImpactPulse .42s ease-out 1;box-shadow:0 0 0 1px rgba(108,239,255,.28),0 0 32px rgba(255,219,92,.22),inset 0 0 110px rgba(106,239,255,.14)}
@keyframes stormImpactShake{0%,100%{transform:translateX(0)}20%{transform:translateX(-5px)}40%{transform:translateX(5px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}
@keyframes stormImpactPulse{0%{transform:scale(1)}50%{transform:scale(1.012)}100%{transform:scale(1)}}
.premium-pickup{position:absolute;z-index:18;transform:translate(-50%,-50%);pointer-events:none;display:grid;place-items:center;min-width:82px;padding:8px 12px;border-radius:999px;border:1px solid rgba(112,242,255,.45);background:linear-gradient(180deg,rgba(5,23,38,.92),rgba(10,36,58,.88));box-shadow:0 0 22px rgba(83,223,255,.22);animation:premiumPickupRise .9s ease-out forwards}
.premium-pickup span{font-size:.72rem;font-weight:950;letter-spacing:.1em;color:#f6fdff;text-shadow:0 0 10px rgba(112,242,255,.35)}
.premium-pickup i{position:absolute;width:10px;height:10px;border-radius:3px;transform:rotate(45deg);background:linear-gradient(180deg,#fff5ad,#60eaff);box-shadow:0 0 10px rgba(96,234,255,.45);opacity:.95}
.premium-pickup i:nth-of-type(1){left:10px;top:50%;animation:pickupShardA .9s ease-out forwards}.premium-pickup i:nth-of-type(2){right:10px;top:40%;animation:pickupShardB .9s ease-out forwards}.premium-pickup i:nth-of-type(3){left:50%;bottom:-2px;animation:pickupShardC .9s ease-out forwards}
.premium-pickup-good{border-color:rgba(111,255,180,.48);box-shadow:0 0 24px rgba(111,255,180,.2)}
.premium-pickup-good i{background:linear-gradient(180deg,#fff3b0,#5ff2b0)}
@keyframes premiumPickupRise{0%{opacity:0;transform:translate(-50%,-20%)}15%{opacity:1}100%{opacity:0;transform:translate(-50%,-130%)}}
@keyframes pickupShardA{to{transform:translate(-16px,-20px) rotate(45deg);opacity:0}}
@keyframes pickupShardB{to{transform:translate(16px,-24px) rotate(45deg);opacity:0}}
@keyframes pickupShardC{to{transform:translate(-2px,18px) rotate(45deg);opacity:0}}
.storm-boss-intro{position:absolute;inset:18px 16px auto 16px;z-index:19;display:grid;gap:4px;padding:16px 18px;border:1px solid rgba(255,97,201,.42);border-radius:18px;background:linear-gradient(135deg,rgba(26,8,46,.92),rgba(9,21,42,.9));box-shadow:0 16px 44px rgba(0,0,0,.28),0 0 26px rgba(255,97,201,.14);transform:translateY(-10px);opacity:0;transition:opacity .22s ease,transform .22s ease}
.storm-boss-intro.show{opacity:1;transform:translateY(0)}
.storm-boss-intro small{font-size:.56rem;font-weight:950;letter-spacing:.18em;color:#ff8de1}.storm-boss-intro strong{font-size:1.24rem;letter-spacing:.08em;color:#fff7ff}.storm-boss-intro span{font-size:.76rem;font-weight:850;color:#d3b5ff}.storm-boss-intro em{font-style:normal;color:#fce7f3;font-size:.78rem;line-height:1.35}
.blaster-formation-callout{position:absolute;left:50%;top:58px;transform:translateX(-50%);z-index:17;padding:6px 12px;border-radius:999px;border:1px solid rgba(97,239,255,.4);background:rgba(5,20,34,.88);color:#dffbff;font-size:.64rem;font-weight:950;letter-spacing:.15em;box-shadow:0 0 18px rgba(82,227,255,.18);animation:formationCalloutFade .72s ease-out forwards;pointer-events:none}
@keyframes formationCalloutFade{0%{opacity:0;transform:translate(-50%,-12px)}18%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,12px)}}
#timesGameView[data-weapon-tier="1"] .times-defender.shooter-live img{box-shadow:0 0 0 4px rgba(67,190,255,.08),0 0 26px rgba(67,210,255,.28)}
#timesGameView[data-weapon-tier="2"] .times-defender.shooter-live img{box-shadow:0 0 0 4px rgba(114,231,255,.12),0 0 32px rgba(114,231,255,.28),0 0 52px rgba(115,123,255,.18)}
#timesGameView[data-weapon-tier="3"] .times-defender.shooter-live img{border-color:rgba(255,217,104,.95);box-shadow:0 0 0 4px rgba(255,223,114,.12),0 0 36px rgba(255,223,114,.3),0 0 64px rgba(255,109,167,.18)}
#timesGameView[data-weapon-tier="4"] .times-defender.shooter-live img{border-color:rgba(255,122,194,.95);box-shadow:0 0 0 5px rgba(255,119,184,.14),0 0 40px rgba(255,119,184,.32),0 0 70px rgba(93,236,255,.2);transform:scale(1.05)}
#timesGameView[data-weapon-tier="2"] .sigma-thruster{background:linear-gradient(180deg,#fff7b0,#79f0ff 32%,rgba(121,240,255,.15) 78%,transparent)}
#timesGameView[data-weapon-tier="3"] .sigma-thruster{background:linear-gradient(180deg,#fff4a8,#ffd25f 28%,#67ebff 55%,rgba(103,235,255,.15) 80%,transparent);height:50px}
#timesGameView[data-weapon-tier="4"] .sigma-thruster{background:linear-gradient(180deg,#fff5bf,#ff8ecb 28%,#75edff 58%,rgba(117,237,255,.15) 82%,transparent);height:54px;width:28px}
@media(prefers-reduced-motion:reduce){#timesGameView .times-arena::before,#timesGameView .times-arena::after,.premium-pickup,.storm-boss-intro,.blaster-formation-callout,#timesGameView.impact-danger .times-arena,#timesGameView.impact-good .times-arena,#timesGameView.impact-gem .times-arena{animation:none!important;transition:none!important}}

/* V51.62 Storm Arsenal, ranked liveries, moving bosses and arcade debrief */
.times-arsenal-panel{margin:14px 0;padding:14px;border:1px solid rgba(87,225,255,.22);border-radius:20px;background:linear-gradient(145deg,rgba(5,24,40,.96),rgba(18,13,46,.94));color:#eefbff;box-shadow:0 18px 42px rgba(0,0,0,.16),inset 0 0 0 1px rgba(255,255,255,.025)}
.times-arsenal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px}.times-arsenal-head small{display:block;color:#68eaff;font-size:.58rem;font-weight:950;letter-spacing:.15em}.times-arsenal-head strong{display:block;font-size:1.05rem;margin:2px 0}.times-arsenal-head span{display:block;color:#aec6d8;font-size:.78rem;max-width:640px}.times-arsenal-wallet{padding:7px 10px;border-radius:999px;background:rgba(7,23,39,.92);border:1px solid rgba(109,238,255,.3);color:#fff0a3;white-space:nowrap;box-shadow:0 0 16px rgba(83,224,255,.12)}
.times-arsenal-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:12px}.times-arsenal-group{display:grid;gap:7px}.times-arsenal-group>small{font-size:.52rem;font-weight:950;letter-spacing:.14em;color:#809eb4}.times-arsenal-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.times-arsenal-options.skins{grid-template-columns:repeat(4,minmax(0,1fr))}
.times-loadout-card{min-width:0;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon title" "icon copy";column-gap:8px;align-items:center;padding:9px;border:1px solid rgba(120,177,210,.24);border-radius:13px;background:linear-gradient(180deg,rgba(10,35,55,.96),rgba(5,18,31,.96));color:#eafaff;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.times-loadout-card>span{grid-area:icon;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#0e2944;border:1px solid rgba(104,225,255,.28);color:#8befff;font-weight:1000}.times-loadout-card strong{grid-area:title;font-size:.68rem;line-height:1.1}.times-loadout-card small{grid-area:copy;color:#8faabd;font-size:.52rem;line-height:1.25}.times-loadout-card:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(100,232,255,.52)}.times-loadout-card.active{border-color:#66edff;box-shadow:0 0 0 1px rgba(102,237,255,.18),0 0 19px rgba(61,209,255,.14);background:linear-gradient(180deg,#0e3552,#091c31)}.times-loadout-card.active>span{background:linear-gradient(135deg,#42e6ff,#816aff);color:#031320}.times-loadout-card.locked{opacity:.62}.times-loadout-card:disabled{cursor:not-allowed}
.times-pilot-rank-line{margin-top:10px;padding:8px 10px;border-radius:12px;border:1px solid rgba(255,211,94,.18);background:rgba(255,211,94,.045);display:flex;align-items:center;gap:10px}.times-pilot-rank-line>span{font-size:.5rem;font-weight:950;letter-spacing:.12em;color:#d6af52}.times-pilot-rank-line>strong{font-size:1.2rem;color:#ffe474}.times-pilot-rank-line>small{color:#9eb2c4;font-size:.63rem}
@media(max-width:980px){.times-arsenal-grid{grid-template-columns:1fr}.times-arsenal-options,.times-arsenal-options.skins{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.times-arsenal-head{flex-direction:column}.times-arsenal-options,.times-arsenal-options.skins{grid-template-columns:1fr 1fr}.times-loadout-card{padding:7px}.times-pilot-rank-line{align-items:flex-start;flex-wrap:wrap}}

/* Moving rival bosses */
#timesGameView .times-arena-boss-character:not(.hidden){animation:stormBossPatrol 5.6s ease-in-out infinite alternate}
#timesGameView[data-boss-phase="1"] .times-arena-boss-character:not(.hidden){animation:stormBossPatrolFast 3.8s ease-in-out infinite alternate}
#timesGameView[data-boss-phase="2"] .times-arena-boss-character:not(.hidden){animation:stormBossRagePatrol 1.75s ease-in-out infinite alternate}
@keyframes stormBossPatrol{0%{left:35%;top:88px;transform:translateX(-50%) rotate(-2deg)}45%{left:61%;top:112px;transform:translateX(-50%) rotate(2deg)}100%{left:48%;top:82px;transform:translateX(-50%) rotate(-1deg)}}
@keyframes stormBossPatrolFast{0%{left:27%;top:92px;transform:translateX(-50%) scale(1.05) rotate(-4deg)}50%{left:72%;top:118px;transform:translateX(-50%) scale(1.08) rotate(4deg)}100%{left:39%;top:78px;transform:translateX(-50%) scale(1.04) rotate(-2deg)}}
@keyframes stormBossRagePatrol{0%{left:22%;top:78px;transform:translateX(-50%) scale(1.1) rotate(-5deg);filter:drop-shadow(0 0 22px var(--boss-glow,#68eaff)) brightness(1)}50%{left:78%;top:126px;transform:translateX(-50%) scale(1.14) rotate(5deg);filter:drop-shadow(0 0 34px var(--boss-glow,#68eaff)) brightness(1.35)}100%{left:42%;top:88px;transform:translateX(-50%) scale(1.11) rotate(-3deg);filter:drop-shadow(0 0 28px var(--boss-glow,#68eaff)) brightness(1.12)}}

/* Ship liveries */
#timesGameView[data-ship-skin="ion"] .times-defender.shooter-live img{filter:hue-rotate(0deg) saturate(1.05)}
#timesGameView[data-ship-skin="solar"] .times-defender.shooter-live img{border-color:#ffd563!important;filter:sepia(.15) saturate(1.4) hue-rotate(345deg);box-shadow:0 0 0 4px rgba(255,215,99,.12),0 0 34px rgba(255,183,54,.28)!important}
#timesGameView[data-ship-skin="crimson"] .times-defender.shooter-live img{border-color:#ff516f!important;filter:saturate(1.4) hue-rotate(325deg);box-shadow:0 0 0 4px rgba(255,76,107,.13),0 0 38px rgba(255,56,104,.32)!important}
#timesGameView[data-ship-skin="phantom"] .times-defender.shooter-live img{border-color:#c18cff!important;filter:saturate(1.25) hue-rotate(36deg) brightness(1.05);box-shadow:0 0 0 4px rgba(193,140,255,.14),0 0 42px rgba(149,92,255,.35),0 0 70px rgba(82,229,255,.18)!important}
#timesGameView .times-defender.shooter-live::before,#timesGameView .times-defender.shooter-live::after{content:"";position:absolute;z-index:-1;top:37px;width:30px;height:10px;border-radius:999px;background:linear-gradient(90deg,#0c2d45,#65eaff);box-shadow:0 0 10px rgba(90,230,255,.35);opacity:.78;transition:width .2s ease,transform .2s ease,background .2s ease}
#timesGameView .times-defender.shooter-live::before{left:-13px;transform:rotate(-8deg)}#timesGameView .times-defender.shooter-live::after{right:-13px;transform:rotate(8deg)}
#timesGameView[data-weapon="twin"] .times-defender.shooter-live::before,#timesGameView[data-weapon="twin"] .times-defender.shooter-live::after{width:38px;background:linear-gradient(90deg,#0b3350,#75f4ff,#fff)}
#timesGameView[data-weapon="lance"] .times-defender.shooter-live::before{left:34px;top:-10px;width:34px;transform:rotate(90deg);background:linear-gradient(90deg,#6a2cff,#e8c6ff,#fff)}#timesGameView[data-weapon="lance"] .times-defender.shooter-live::after{opacity:0}
#timesGameView[data-weapon="scatter"] .times-defender.shooter-live::before{transform:rotate(-18deg);background:linear-gradient(90deg,#462351,#ff72ca,#fff)}#timesGameView[data-weapon="scatter"] .times-defender.shooter-live::after{transform:rotate(18deg);background:linear-gradient(90deg,#462351,#ff72ca,#fff)}

/* Rank/debrief treatment */
.times-game-over-rank,.times-debrief-rank{margin:10px auto;padding:10px 14px;border-radius:16px;border:1px solid rgba(118,225,255,.28);background:linear-gradient(145deg,rgba(7,28,44,.94),rgba(14,18,44,.92));display:grid;grid-template-columns:auto auto 1fr;gap:8px 12px;align-items:center;max-width:560px}.times-game-over-rank small,.times-debrief-rank small{font-size:.52rem;font-weight:950;letter-spacing:.13em;color:#7cdfff}.times-game-over-rank strong,.times-debrief-rank strong{font-size:2rem;line-height:1;color:#fff}.times-game-over-rank span,.times-debrief-rank span{font-size:.7rem;color:#c8deec}.rank-s{border-color:rgba(208,152,255,.58)!important;box-shadow:0 0 24px rgba(171,94,255,.16)}.rank-s strong{color:#e8c4ff!important;text-shadow:0 0 14px rgba(199,141,255,.42)}.rank-a strong{color:#7ff2ff!important}.rank-b strong{color:#ffe071!important}.rank-c strong{color:#b8c9d7!important}

@media(prefers-reduced-motion:reduce){#timesGameView .times-arena-boss-character:not(.hidden){animation:none!important}}

/* V51.62 ship damage states */
#timesGameView[data-ship-damage="damaged"] .times-defender.shooter-live{filter:drop-shadow(0 0 16px rgba(255,170,80,.24)) drop-shadow(0 8px 20px rgba(0,0,0,.28))}
#timesGameView[data-ship-damage="damaged"] .times-defender.shooter-live img{filter:saturate(.9) brightness(.92)}
#timesGameView[data-ship-damage="damaged"] .sigma-thruster{animation:thruster .16s ease-in-out infinite alternate;opacity:.78}
#timesGameView[data-ship-damage="critical"] .times-defender.shooter-live{filter:drop-shadow(0 0 20px rgba(255,65,95,.38)) drop-shadow(0 8px 20px rgba(0,0,0,.3));animation:criticalShipFlicker .55s steps(2,end) infinite}
#timesGameView[data-ship-damage="critical"] .times-defender.shooter-live img{border-color:#ff536f!important;filter:saturate(.75) brightness(.8) contrast(1.08)}
#timesGameView[data-ship-damage="critical"] .sigma-thruster{opacity:.56;height:34px;animation:criticalThruster .18s steps(2,end) infinite}
#timesGameView[data-ship-damage="critical"] .times-defender.shooter-live::before{box-shadow:0 0 12px rgba(255,85,105,.38)}
@keyframes criticalShipFlicker{0%,100%{opacity:1}50%{opacity:.78}}
@keyframes criticalThruster{0%{transform:scaleY(.65);filter:blur(1.2px)}100%{transform:scaleY(1.15);filter:blur(.4px)}}
@media(prefers-reduced-motion:reduce){#timesGameView[data-ship-damage="critical"] .times-defender.shooter-live,#timesGameView[data-ship-damage="critical"] .sigma-thruster{animation:none!important}}

/* ============================================================
   V51.63 • Authoritative Blaster UI + In-Arena Flight Deck
   Fixes V51.62 desktop/focus cascade that could keep the maths
   keypad visible and suppress the ship movement controls.
   ============================================================ */
html[data-display-layout] body #timesGameView.storm-running.blaster-active .times-answer-deck,
html[data-display-layout="desktop"] body.storm-focus #timesGameView.storm-running.blaster-active .times-answer-deck,
body.storm-focus #timesGameView.storm-running.blaster-active .times-answer-deck,
#timesGameView.storm-running.blaster-active .times-answer-deck{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

#timesGameView .times-arena>.times-blaster-control-deck{
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  bottom:10px!important;
  top:auto!important;
  z-index:42!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:8px 10px!important;
  grid-template-columns:1fr!important;
  gap:7px!important;
  border:1px solid rgba(99,231,255,.34)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(4,17,31,.82),rgba(3,12,25,.94))!important;
  box-shadow:0 10px 28px rgba(0,0,0,.36),inset 0 0 0 1px rgba(255,255,255,.03),0 0 24px rgba(70,215,255,.10)!important;
  backdrop-filter:blur(8px);
}
#timesGameView .times-arena>.times-blaster-control-deck.hidden{display:none!important}
#timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck,
html[data-display-layout="desktop"] #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck,
body.storm-focus #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-head{
  display:flex!important;
  min-width:0;
  margin:0!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 2px!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-head small{font-size:.48rem!important;letter-spacing:.15em!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-head strong{font-size:.72rem!important;letter-spacing:.035em!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-head span{font-size:.52rem!important;white-space:normal!important;line-height:1.2!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-grid{
  display:grid!important;
  grid-template-columns:minmax(150px,210px) 116px!important;
  justify-content:space-between!important;
  align-items:end!important;
  gap:12px!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad{
  width:100%!important;
  max-width:210px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(44px,1fr))!important;
  grid-template-rows:repeat(2,48px)!important;
  gap:6px!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad-btn{
  min-width:44px!important;
  min-height:44px!important;
  height:48px!important;
  padding:0!important;
  border-radius:13px!important;
  font-size:1.15rem!important;
  touch-action:none!important;
  -webkit-user-select:none!important;
  user-select:none!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{
  width:116px!important;
  min-width:116px!important;
  height:104px!important;
  min-height:104px!important;
  border-radius:50%!important;
  padding:8px!important;
  font-size:1rem!important;
  touch-action:none!important;
  -webkit-user-select:none!important;
  user-select:none!important;
  box-shadow:0 0 0 5px rgba(255,92,103,.08),0 0 25px rgba(255,82,94,.30),inset 0 0 18px rgba(255,255,255,.08)!important;
}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn span{font-size:1.06rem!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn small{font-size:.45rem!important;letter-spacing:.08em!important}
#timesGameView.blaster-active .times-defender.shooter-live{
  opacity:1!important;
  z-index:36!important;
  pointer-events:none!important;
}

@media(max-width:650px){
  #timesGameView .times-arena>.times-blaster-control-deck{
    left:6px!important;
    right:6px!important;
    bottom:6px!important;
    padding:6px!important;
    gap:5px!important;
    border-radius:14px!important;
  }
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-head{display:none!important}
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-grid{
    grid-template-columns:minmax(138px,178px) 90px!important;
    gap:8px!important;
  }
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad{
    max-width:178px!important;
    grid-template-columns:repeat(3,minmax(42px,1fr))!important;
    grid-template-rows:repeat(2,42px)!important;
    gap:5px!important;
  }
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad-btn{
    min-height:42px!important;
    height:42px!important;
    font-size:1rem!important;
    border-radius:11px!important;
  }
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{
    width:90px!important;
    min-width:90px!important;
    height:88px!important;
    min-height:88px!important;
  }
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn small{display:none!important}
  #timesGameView.storm-running.blaster-active .times-arena{min-height:360px!important}
}

@media(max-width:390px){
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:minmax(126px,158px) 80px!important}
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad{max-width:158px!important;grid-template-columns:repeat(3,minmax(38px,1fr))!important;grid-template-rows:repeat(2,40px)!important}
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-dpad-btn{min-width:38px!important;min-height:40px!important;height:40px!important}
  #timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{width:80px!important;min-width:80px!important;height:80px!important;min-height:80px!important;font-size:.9rem!important}
}
#timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{animation:v5163FlightDeckIn .2s cubic-bezier(.2,.8,.2,1)}
@keyframes v5163FlightDeckIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){#timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{animation:none!important}}

/* V51.65 • Sigma Tables Reference 0–20 */
.times-reference-shell{width:min(1180px,100%);margin:12px auto 2px;padding:0 2px}
.times-reference-pill{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 13px;border:1px solid rgba(66,183,219,.35);border-radius:999px;background:linear-gradient(180deg,#f8fdff,#edf9fc);color:#17364a;font:850 .78rem/1 system-ui;box-shadow:0 7px 18px rgba(14,64,89,.08);cursor:pointer}
.times-reference-pill span{font-size:1rem;color:#1d9ec3}.times-reference-pill small{padding:3px 7px;border-radius:999px;background:#dff4fa;color:#176c88;font-size:.6rem;letter-spacing:.06em}.times-reference-pill em{font-style:normal}.times-reference-pill.active{border-color:#2fb4d5;background:linear-gradient(180deg,#ecfbff,#dff6fb);box-shadow:0 0 0 3px rgba(56,189,224,.1)}
.times-reference-panel{margin-top:10px;border:1px solid #d7e7ef;border-radius:22px;background:linear-gradient(180deg,#fff,#f7fbfd);box-shadow:0 20px 55px rgba(22,67,91,.12);overflow:hidden}.times-reference-panel.hidden{display:none!important}
.times-reference-head{display:flex;justify-content:space-between;gap:18px;padding:18px 20px 15px;border-bottom:1px solid #e0edf2;background:linear-gradient(135deg,#eefaff,#f9fcff)}.times-reference-head>div{min-width:0}.times-reference-head small{display:block;font-size:.58rem;font-weight:950;letter-spacing:.15em;color:#2382a2}.times-reference-head h3{margin:3px 0 4px;font-size:1.08rem;color:#17324a}.times-reference-head p{margin:0;max-width:760px;color:#667e8e;font-size:.78rem;line-height:1.45}.times-reference-close{width:40px;height:40px;flex:0 0 auto;border:1px solid #d4e4eb;border-radius:50%;background:#fff;color:#466273;font-size:1.35rem;cursor:pointer}
.times-reference-tabs{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid #e3edf2;overflow-x:auto;background:#fbfdfe}.times-reference-tabs button{white-space:nowrap;min-height:38px;padding:7px 11px;border:1px solid transparent;border-radius:999px;background:transparent;color:#61798a;font:850 .7rem/1 system-ui;cursor:pointer}.times-reference-tabs button.active{background:#e5f7fb;border-color:#bde5ef;color:#176f8b}
.times-reference-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:9px;padding:12px 14px}.times-reference-toolbar label{display:grid;gap:4px;min-width:150px;color:#5c7585;font-size:.62rem;font-weight:850}.times-reference-toolbar select{min-height:40px;padding:0 10px;border:1px solid #bed5df;border-radius:11px;background:#fff;color:#17324a;font-size:.82rem;font-weight:800}.times-reference-toolbar label.muted-control{opacity:.58}.times-reference-speed{display:flex;gap:4px;padding:3px;border:1px solid #d4e6ed;border-radius:12px;background:#f4fafc}.times-reference-speed button,.times-reference-hear,.times-reference-listen-controls button,.times-reference-recall-head button{min-height:36px;padding:7px 10px;border:1px solid #c9dfe8;border-radius:9px;background:#fff;color:#33566a;font:850 .68rem/1 system-ui;cursor:pointer}.times-reference-speed button.active{border-color:#74cadf;background:#dff5fa;color:#126f8b}.times-reference-hear{min-height:40px;background:#173a50;color:#fff;border-color:#173a50}
.times-reference-zero-rule{margin:0 14px 10px;padding:9px 11px;border:1px solid #bfe7df;border-radius:12px;background:#ecfaf6;color:#275c55;font-size:.72rem;line-height:1.4}.times-reference-zero-rule strong{color:#087565}
.times-reference-selected{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"small strong" "small span";column-gap:12px;align-items:center;margin:0 14px 12px;padding:11px 13px;border:1px solid #d6e7ee;border-radius:14px;background:#fff}.times-reference-selected small{grid-area:small;color:#6b8290;font-size:.54rem;font-weight:950;letter-spacing:.11em}.times-reference-selected strong{grid-area:strong;color:#17324a;font-size:1.12rem}.times-reference-selected span{grid-area:span;color:#708491;font-size:.68rem}.times-reference-selected.zero-selected{border-color:#9eddd2;background:#f1fbf8}
.times-reference-view{padding:0 14px 16px}.times-reference-view.hidden{display:none!important}
.times-reference-grid-wrap{max-height:520px;overflow:auto;border:1px solid #d8e8ee;border-radius:14px;background:#fff}.times-reference-grid-wrap table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:.72rem}.times-reference-grid-wrap th,.times-reference-grid-wrap td{padding:0;border-right:1px solid #e4edf1;border-bottom:1px solid #e4edf1;text-align:center}.times-reference-grid-wrap th{position:sticky;z-index:3;min-width:42px;height:38px;background:#eff7fa;color:#496576;font-weight:950}.times-reference-grid-wrap thead th{top:0}.times-reference-grid-wrap tbody th{left:0;z-index:2}.times-reference-grid-wrap thead th.corner{left:0;z-index:4;background:#dfeff5}.times-reference-grid-wrap th.zero-axis{background:#dff6f1;color:#087666}.times-reference-cell{display:block;width:100%;min-width:42px;height:38px;border:0;background:#fff;color:#2b4352;font:800 .7rem/1 system-ui;cursor:pointer}.times-reference-cell.anchor-fact{background:#fbfdfe}.times-reference-cell.square-fact{font-weight:950;box-shadow:inset 0 0 0 1px rgba(221,176,61,.18)}.times-reference-cell.zero-fact{background:#effaf7;color:#087263;font-weight:950}.times-reference-cell.is-row-col{background:#edf8fc}.times-reference-cell.zero-fact.is-row-col{background:#dff6ef}.times-reference-cell.is-selected{position:relative;z-index:1;background:#173a50!important;color:#fff!important;box-shadow:inset 0 0 0 2px #55d7ef}
.times-reference-fact-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.times-reference-fact-list.compact{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px}.times-reference-fact{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;min-height:48px;padding:8px 10px;border:1px solid #dce9ee;border-radius:12px;background:#fff;color:#375466;text-align:left;cursor:pointer}.times-reference-fact span{font-size:.75rem;font-weight:800}.times-reference-fact strong{font-size:.95rem;color:#17324a}.times-reference-fact em{font-style:normal}.times-reference-fact.zero-fact{background:#effaf7;border-color:#c8e9e2}.times-reference-fact.is-current{border-color:#48bcd8;background:#e9f8fb;box-shadow:inset 0 0 0 1px #75d3e5}
.times-reference-listen-controls{display:flex;flex-wrap:wrap;gap:8px}.times-reference-listen-controls button.primary{background:#173a50;color:#fff;border-color:#173a50}.times-reference-listen-status{margin-top:9px;padding:8px 10px;border-radius:10px;background:#eef6f9;color:#57717f;font-size:.7rem}
.times-reference-recall-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.times-reference-recall-head div{display:grid;gap:2px}.times-reference-recall-head strong{color:#17324a;font-size:.82rem}.times-reference-recall-head span{color:#6e8390;font-size:.68rem}.times-reference-recall-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.times-reference-recall-card{display:grid;place-items:center;gap:4px;min-height:88px;padding:10px;border:1px solid #d9e7ed;border-radius:13px;background:#fff;color:#3d5868;cursor:pointer}.times-reference-recall-card span{font-size:.73rem;font-weight:850}.times-reference-recall-card strong{font-size:1.05rem;color:#17324a}.times-reference-recall-card strong.covered{color:#93a8b4}.times-reference-recall-card small{font-size:.52rem;color:#8195a0}.times-reference-recall-card.revealed{border-color:#70c9db;background:#edf9fc}.times-reference-recall-card.zero-fact{background:#effaf7;border-color:#c7e9e1}
.times-reference-notice{min-height:0;margin:0 14px 14px;color:#5d7381;font-size:.68rem}.times-reference-notice:not(:empty){padding:8px 10px;border-radius:10px;background:#f1f7f9}.times-reference-notice[data-type="warn"]{background:#fff5e7;color:#8d6418}.times-reference-notice[data-type="good"]{background:#ecf9f4;color:#19715b}
html[data-theme="dark"] .times-reference-pill{background:linear-gradient(180deg,#10283a,#0c1e2c);border-color:#28516b;color:#d9f3ff}.times-reference-panel{color-scheme:light}html[data-theme="dark"] .times-reference-panel{background:linear-gradient(180deg,#0b1a28,#0d2231);border-color:#29475b;color-scheme:dark}html[data-theme="dark"] .times-reference-head{background:linear-gradient(135deg,#0d2637,#101d2a);border-color:#29475b}html[data-theme="dark"] .times-reference-head h3,html[data-theme="dark"] .times-reference-selected strong,html[data-theme="dark"] .times-reference-fact strong,html[data-theme="dark"] .times-reference-recall-head strong{color:#edf9ff}html[data-theme="dark"] .times-reference-tabs{background:#0c1b28;border-color:#29475b}html[data-theme="dark"] .times-reference-selected,html[data-theme="dark"] .times-reference-fact,html[data-theme="dark"] .times-reference-recall-card{background:#102434;border-color:#29475b;color:#cbe0eb}html[data-theme="dark"] .times-reference-grid-wrap{border-color:#29475b;background:#0d1e2b}html[data-theme="dark"] .times-reference-grid-wrap th{background:#173144;color:#cde7f3}html[data-theme="dark"] .times-reference-cell{background:#102434;color:#d4e8f0}html[data-theme="dark"] .times-reference-cell.anchor-fact{background:#112838}html[data-theme="dark"] .times-reference-cell.zero-fact,html[data-theme="dark"] .times-reference-fact.zero-fact,html[data-theme="dark"] .times-reference-recall-card.zero-fact{background:#11332f;color:#aef1e3}html[data-theme="dark"] .times-reference-zero-rule{background:#11332f;border-color:#275d55;color:#bfe9df}
@media(max-width:760px){.times-reference-shell{padding:0 7px}.times-reference-pill{width:100%;justify-content:center}.times-reference-panel{border-radius:16px}.times-reference-head{padding:14px;gap:10px}.times-reference-head h3{font-size:.96rem}.times-reference-tabs{padding:8px}.times-reference-toolbar{padding:10px}.times-reference-toolbar label{min-width:125px;flex:1}.times-reference-hear{flex:1 1 180px}.times-reference-selected{grid-template-columns:1fr;grid-template-areas:"small" "strong" "span";row-gap:2px}.times-reference-fact-list,.times-reference-fact-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.times-reference-recall-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.times-reference-grid-wrap{max-height:440px}.times-reference-grid-wrap th,.times-reference-cell{min-width:40px}}
@media(max-width:430px){.times-reference-fact-list,.times-reference-fact-list.compact{grid-template-columns:1fr}.times-reference-recall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.times-reference-recall-head{align-items:flex-start;flex-direction:column}.times-reference-listen-controls button{flex:1}.times-reference-grid-wrap th,.times-reference-cell{min-width:38px;height:36px}.times-reference-grid-wrap th{height:36px}.times-reference-tabs button{font-size:.64rem}}

/* V51.68 • Tables Call & Response */
.times-reference-practice-style{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.times-reference-practice-style button{display:grid;gap:3px;min-height:58px;padding:9px 11px;border:1px solid #d2e5ec;border-radius:13px;background:#fff;color:#3b596a;text-align:left;cursor:pointer}
.times-reference-practice-style button strong{font-size:.76rem;color:#17324a}.times-reference-practice-style button small{font-size:.58rem;line-height:1.35;color:#728895}
.times-reference-practice-style button.active{border-color:#58c4db;background:linear-gradient(180deg,#eefbfe,#e2f7fb);box-shadow:inset 0 0 0 1px rgba(69,190,218,.18)}
.times-reference-callout{position:relative;display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"kicker fact count" "kicker prompt count";column-gap:12px;align-items:center;min-height:86px;margin-bottom:10px;padding:12px 14px;border:1px solid #d3e6ed;border-radius:16px;background:linear-gradient(135deg,#f8fcfe,#edf8fb);overflow:hidden}
.times-reference-callout::after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#68bfd5}
.times-reference-callout>small{grid-area:kicker;align-self:center;padding:5px 7px;border-radius:8px;background:#dff3f8;color:#17728d;font-size:.5rem;font-weight:950;letter-spacing:.13em}
.times-reference-callout>strong{grid-area:fact;color:#17324a;font-size:1.25rem;line-height:1.1}.times-reference-callout>span{grid-area:prompt;color:#647d8b;font-size:.7rem;line-height:1.35}
.times-reference-repeat-count{grid-area:count;display:grid;place-items:center;width:52px;height:52px;border:2px solid #6cc9de;border-radius:50%;background:#fff;color:#126d88;font-size:1.4rem;box-shadow:0 0 0 5px rgba(91,196,219,.08)}
.times-reference-repeat-count.hidden{display:none!important}
.times-reference-callout[data-phase="repeat"]{border-color:#efca73;background:linear-gradient(135deg,#fffaf0,#fff3d9)}.times-reference-callout[data-phase="repeat"]::after{background:#e5ad37}.times-reference-callout[data-phase="repeat"]>small{background:#ffe8ad;color:#8a6314}.times-reference-callout[data-phase="repeat"] .times-reference-repeat-count{border-color:#e7b347;color:#8d6418;animation:tablesRepeatPulse .8s ease-in-out infinite alternate}
.times-reference-callout[data-phase="reinforce"],.times-reference-callout[data-phase="check"],.times-reference-callout[data-phase="complete"]{border-color:#9fded0;background:linear-gradient(135deg,#f3fcf8,#eaf9f4)}.times-reference-callout[data-phase="reinforce"]::after,.times-reference-callout[data-phase="check"]::after,.times-reference-callout[data-phase="complete"]::after{background:#35aa8b}.times-reference-callout[data-phase="reinforce"]>small,.times-reference-callout[data-phase="check"]>small,.times-reference-callout[data-phase="complete"]>small{background:#dff5ee;color:#12745c}
.times-reference-callout[data-phase="question"]{border-color:#b8c9f0;background:linear-gradient(135deg,#f6f8ff,#edf1ff)}.times-reference-callout[data-phase="question"]::after{background:#738bd7}.times-reference-callout[data-phase="question"]>small{background:#e4e9fb;color:#4d64ac}
.times-reference-callout[data-phase="concept"]{border-color:#9fded0;background:linear-gradient(135deg,#f0fcf7,#e3f8f1)}.times-reference-callout[data-phase="concept"]::after{background:#22a887}.times-reference-callout[data-phase="concept"]>small{background:#d9f4eb;color:#08765f}
@keyframes tablesRepeatPulse{from{transform:scale(.96);box-shadow:0 0 0 4px rgba(229,173,55,.08)}to{transform:scale(1.04);box-shadow:0 0 0 8px rgba(229,173,55,.14)}}
html[data-theme="dark"] .times-reference-practice-style button{background:#102434;border-color:#29475b;color:#cbe0eb}html[data-theme="dark"] .times-reference-practice-style button strong{color:#edf9ff}html[data-theme="dark"] .times-reference-practice-style button.active{background:#113144;border-color:#3d8fa9}
html[data-theme="dark"] .times-reference-callout{background:linear-gradient(135deg,#102434,#0c1e2c);border-color:#29475b}html[data-theme="dark"] .times-reference-callout>strong{color:#edf9ff}html[data-theme="dark"] .times-reference-callout>span{color:#b6ccd7}html[data-theme="dark"] .times-reference-repeat-count{background:#0d2030}
@media(max-width:560px){.times-reference-practice-style{grid-template-columns:1fr}.times-reference-callout{grid-template-columns:1fr auto;grid-template-areas:"kicker count" "fact count" "prompt count";row-gap:3px}.times-reference-callout>small{justify-self:start}.times-reference-callout>strong{font-size:1.12rem}.times-reference-repeat-count{width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){.times-reference-callout[data-phase="repeat"] .times-reference-repeat-count{animation:none!important}}

/* ============================================================
   V51.69 • Sigma Natural Voice Identity
   ============================================================ */
.sigma-chat-speaker{flex-wrap:wrap}
.sigma-chat-speak{
  margin-left:auto;display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 8px;
  border:1px solid rgba(103,232,249,.25);border-radius:999px;background:rgba(8,145,178,.10);
  color:#bff7ff;font:inherit;font-size:.62rem;font-weight:850;cursor:pointer;transition:.16s ease
}
.sigma-chat-speak em{font-style:normal}.sigma-chat-speak:hover{background:rgba(8,145,178,.2);border-color:rgba(103,232,249,.52)}
.sigma-chat-speak.is-speaking{background:rgba(103,232,249,.18);border-color:#67e8f9;box-shadow:0 0 0 2px rgba(103,232,249,.08)}
.sigma-chat-footer-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.sigma-chat-voice-toggle{
  appearance:none;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(103,232,249,.22);
  border-radius:999px;background:rgba(15,23,42,.55);color:#a8bfd0;padding:5px 9px;font:inherit;font-weight:800;cursor:pointer
}
.sigma-chat-voice-toggle.active{color:#dffcff;background:linear-gradient(135deg,rgba(8,145,178,.24),rgba(79,70,229,.2));border-color:rgba(103,232,249,.55)}
html[data-theme="light"] .sigma-chat-speak{background:#effaff;color:#12506f;border-color:#bfe5f2}
html[data-theme="light"] .sigma-chat-voice-toggle{background:#fff;color:#557185;border-color:#c8deea}
html[data-theme="light"] .sigma-chat-voice-toggle.active{background:#e9faff;color:#0d5574;border-color:#86d4e9}
@media(max-width:640px){.sigma-chat-speak em{display:none}.sigma-chat-footer-actions{width:100%;justify-content:flex-start}.sigma-chat-voice-toggle{order:-1}}


/* ===== V51.74 • AI-first Sigma Support ===== */
.sigma-support-card{overflow:hidden}.sigma-support-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.sigma-support-card-head h3{margin-bottom:5px}.sigma-support-ai-pill{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:8px 10px;border-radius:999px;background:linear-gradient(135deg,#112943,#235a87);color:#fff;font-size:.72rem;font-weight:950;letter-spacing:.08em;box-shadow:0 7px 18px rgba(19,67,108,.16)}
.sigma-support-card-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:15px 0;color:#597088;font-size:.72rem;font-weight:800}.sigma-support-card-flow span{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:10px;background:rgba(75,143,202,.08);border:1px solid rgba(75,143,202,.15)}.sigma-support-card-flow b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#163b5d;color:white;font-size:.66rem}.sigma-support-card-flow i{font-style:normal;color:#96a6b6}.sigma-support-open-btn{min-width:190px}
.sigma-support-dialog{width:min(780px,calc(100vw - 22px));max-height:min(92vh,900px);padding:0;border:0;border-radius:22px;background:transparent;box-shadow:none}.sigma-support-dialog::backdrop{background:rgba(4,13,24,.68);backdrop-filter:blur(5px)}.sigma-support-shell{position:relative;max-height:min(92vh,900px);overflow:auto;border-radius:22px;background:var(--surface);color:var(--text);border:1px solid rgba(96,130,161,.25);box-shadow:0 30px 80px rgba(0,0,0,.34);padding:22px}.sigma-support-hero{display:grid;grid-template-columns:78px 1fr;gap:14px;align-items:center;padding:7px 42px 16px 0;border-bottom:1px solid rgba(107,137,164,.18)}.sigma-support-hero img{width:78px;height:78px;object-fit:cover;object-position:center 31%;border-radius:18px;background:#fff;box-shadow:0 10px 25px rgba(20,55,85,.12)}.sigma-support-hero h2{margin:3px 0 3px}.sigma-support-hero p{margin:0;color:var(--muted)}
.sigma-support-prompts{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.sigma-support-prompts button{border:1px solid rgba(63,126,182,.22);background:rgba(65,133,194,.07);color:var(--text);padding:9px 11px;border-radius:999px;font:inherit;font-size:.74rem;font-weight:800;cursor:pointer}.sigma-support-prompts button:hover{background:rgba(65,133,194,.13)}
.sigma-support-messages{display:flex;flex-direction:column;gap:11px;min-height:190px;max-height:360px;overflow:auto;padding:13px;border-radius:16px;background:rgba(85,125,159,.055);border:1px solid rgba(85,125,159,.14)}.sigma-support-message{max-width:88%;padding:12px 13px;border-radius:16px;background:var(--surface);border:1px solid rgba(102,136,165,.18);box-shadow:0 5px 14px rgba(9,34,55,.05)}.sigma-support-message.user{margin-left:auto;background:linear-gradient(135deg,#153c5f,#215f91);color:#fff;border-color:transparent}.sigma-support-message p{margin:7px 0 0;line-height:1.48;font-size:.86rem}.sigma-support-message-head{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.sigma-support-message-head strong{font-size:.78rem}.sigma-support-source{padding:3px 6px;border-radius:999px;background:rgba(65,133,194,.1);color:#587a99;font-size:.58rem;font-weight:950;letter-spacing:.06em}.sigma-support-source.ai{background:rgba(25,139,105,.12);color:#18795d}.sigma-support-hear{margin-left:auto;border:0;background:transparent;color:inherit;font:inherit;font-size:.66rem;font-weight:800;cursor:pointer;opacity:.74}.sigma-support-route{margin-top:10px;padding:7px 10px!important;min-height:0!important;font-size:.72rem!important}.sigma-support-message.user .sigma-support-source{display:none}
.sigma-support-compose{margin-top:13px}.sigma-support-compose>label{display:block;font-size:.72rem;font-weight:900;margin-bottom:6px}.sigma-support-compose textarea{width:100%;resize:vertical;min-height:76px;border:1px solid rgba(97,132,163,.3);border-radius:13px;background:var(--surface);color:var(--text);padding:11px 12px;font:inherit;outline:none}.sigma-support-compose textarea:focus{border-color:#4b91c9;box-shadow:0 0 0 3px rgba(75,145,201,.12)}.sigma-support-compose-actions{display:flex;gap:8px;margin-top:8px}.sigma-support-compose small{display:block;margin-top:8px;color:var(--muted);font-size:.68rem}.sigma-support-compose small[data-mode="thinking"]{color:#4a7ca5}.sigma-support-compose small[data-mode="warn"]{color:#a56820}
.sigma-support-resolution{margin-top:14px;padding:13px;border-radius:14px;border:1px solid rgba(60,135,105,.19);background:rgba(60,135,105,.06)}.sigma-support-resolution>strong{display:block;margin-bottom:9px}.sigma-support-resolution>div{display:flex;gap:8px;flex-wrap:wrap}
.sigma-human-support{margin-top:15px;padding:16px;border-radius:16px;border:1px solid rgba(178,125,49,.22);background:linear-gradient(145deg,rgba(255,248,232,.7),rgba(255,255,255,.4))}.sigma-human-support-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sigma-human-support-head h3{margin:3px 0}.sigma-human-support>p{color:var(--muted);font-size:.8rem}.sigma-human-support form{display:grid;grid-template-columns:1fr 1fr;gap:11px}.sigma-human-support form label{display:flex;flex-direction:column;gap:6px}.sigma-human-support form label.full{grid-column:1/-1}.sigma-human-support form label>span{font-size:.7rem;font-weight:900}.sigma-human-support input,.sigma-human-support select,.sigma-human-support textarea{width:100%;border:1px solid rgba(106,130,150,.3);border-radius:11px;background:var(--surface);color:var(--text);padding:10px 11px;font:inherit}.sigma-human-support .button-row,.sigma-support-safety{grid-column:1/-1}.sigma-support-safety{margin:0;color:#8a5d27;font-size:.7rem;font-weight:750}
html[data-theme="dark"] .sigma-human-support{background:linear-gradient(145deg,rgba(52,43,24,.7),rgba(15,29,45,.75));border-color:rgba(208,161,80,.28)}
@media(max-width:620px){.sigma-support-shell{padding:17px}.sigma-support-hero{grid-template-columns:58px 1fr;padding-right:36px}.sigma-support-hero img{width:58px;height:58px;border-radius:14px}.sigma-support-card-flow i{display:none}.sigma-support-message{max-width:96%}.sigma-support-compose-actions .btn{flex:1}.sigma-support-resolution>div{display:grid;grid-template-columns:1fr}.sigma-human-support form{grid-template-columns:1fr}.sigma-human-support form label.full,.sigma-human-support .button-row,.sigma-support-safety{grid-column:1}.sigma-human-support-head{flex-direction:column}.sigma-support-open-btn{width:100%}}
/* V51.74 private human-support anti-bot field */
.sigma-support-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* ============================================================
   V51.75 • Adaptive Tables Mastery
   ============================================================ */
.times-mastery-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px;border:1px solid #d8e7ed;border-radius:16px;background:linear-gradient(135deg,#f8fcfe,#eef8fb)}
.times-mastery-hero small{display:block;color:#237d9b;font-size:.56rem;font-weight:950;letter-spacing:.14em}.times-mastery-hero h4{margin:3px 0 5px;color:#17324a;font-size:1.08rem}.times-mastery-hero p{margin:0;max-width:700px;color:#607887;font-size:.7rem;line-height:1.5}
.times-mastery-rank{min-width:150px;padding:12px 14px;border:1px solid #c8dce5;border-radius:14px;background:#fff;text-align:center;box-shadow:0 7px 18px rgba(18,68,92,.06)}.times-mastery-rank small{color:#78909d;font-size:.48rem}.times-mastery-rank strong{display:block;margin:3px 0;color:#17324a;font-size:1rem}.times-mastery-rank span{display:block;color:#728895;font-size:.58rem}.times-mastery-rank[data-level="5"]{border-color:#ed4852;background:radial-gradient(circle at 50% 0,#5a1015,#24080b 72%);box-shadow:0 0 0 2px rgba(238,53,65,.14),0 10px 25px rgba(135,14,24,.28)}.times-mastery-rank[data-level="5"] small,.times-mastery-rank[data-level="5"] span{color:#ffc5c9}.times-mastery-rank[data-level="5"] strong{color:#fff;font-size:1.15rem;text-shadow:0 0 12px #ff3344}
.times-mastery-progress{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;margin:11px 0 8px}.times-mastery-progress>div{height:10px;border-radius:999px;background:#e4eef2;overflow:hidden}.times-mastery-progress>div span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#2f9fbe,#36b78f);transition:width .35s ease}.times-mastery-progress>strong{color:#547080;font-size:.62rem}
.times-mastery-stages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:10px}.times-mastery-stage{display:flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:5px 6px;border:1px solid #dce8ed;border-radius:10px;background:#f8fbfc;color:#8598a3;font-size:.5rem;font-weight:900;letter-spacing:.04em}.times-mastery-stage i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#e9f1f4;font-style:normal;font-size:.55rem}.times-mastery-stage.complete{border-color:#a9dfd1;background:#eefaf6;color:#176f5a}.times-mastery-stage.complete i{background:#ccefe4;color:#0b7258}.times-mastery-stage.current{box-shadow:inset 0 0 0 1px rgba(36,158,190,.28)}.times-mastery-stage.doom.complete{border-color:#e94450;background:linear-gradient(135deg,#3b0a0e,#7a121a);color:#fff;box-shadow:0 0 12px rgba(229,40,53,.22)}.times-mastery-stage.doom.complete i{background:#ff3343;color:#fff}
.times-mastery-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:10px}.times-mastery-metrics>div{padding:9px 10px;border:1px solid #dbe8ed;border-radius:12px;background:#fff}.times-mastery-metrics small{display:block;color:#8296a1;font-size:.48rem;font-weight:900;letter-spacing:.08em}.times-mastery-metrics strong{display:block;margin-top:2px;color:#19384a;font-size:1rem}
.times-mastery-focus{display:grid;gap:8px;padding:10px 11px;border:1px solid #dde9ee;border-radius:13px;background:#fbfdfe}.times-mastery-focus>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:baseline}.times-mastery-focus>div:first-child strong{color:#26485b;font-size:.7rem}.times-mastery-focus>div:first-child span{color:#7a8e99;font-size:.58rem}.times-mastery-weak-list{display:flex;flex-wrap:wrap;gap:6px}.times-mastery-weak-list button{display:flex;align-items:center;gap:6px;min-height:31px;padding:5px 8px;border:1px solid #d4e5eb;border-radius:999px;background:#fff;color:#37596b;cursor:pointer}.times-mastery-weak-list button strong{font-size:.62rem}.times-mastery-weak-list button span{padding:2px 5px;border-radius:999px;background:#eef6f8;color:#6c8490;font-size:.48rem;font-weight:850}.times-mastery-clear{color:#55766d;font-size:.62rem}
.times-mastery-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.times-mastery-actions button,.times-mastery-answer-row button,.times-mastery-feedback-actions button,.times-mastery-stop{min-height:39px;padding:8px 11px;border:1px solid #c8dde6;border-radius:10px;background:#fff;color:#35586b;font:850 .67rem/1 system-ui;cursor:pointer}.times-mastery-actions button.primary,.times-mastery-answer-row button.primary,.times-mastery-feedback-actions button.primary{background:#173a50;border-color:#173a50;color:#fff}.times-mastery-actions button.challenge{background:linear-gradient(135deg,#231112,#4d1116);border-color:#9b2932;color:#fff}.times-mastery-actions button:disabled{opacity:.48;cursor:not-allowed}
.times-mastery-session{margin-top:11px;padding:12px;border:1px solid #cfe2e9;border-radius:16px;background:linear-gradient(180deg,#fff,#f7fbfd)}.times-mastery-session.hidden{display:none!important}.times-mastery-session-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.times-mastery-session-head div{display:grid;gap:2px}.times-mastery-session-head small{color:#2b829e;font-size:.5rem;font-weight:950;letter-spacing:.12em}.times-mastery-session-head strong{color:#1c3b4c;font-size:.72rem}.times-mastery-session-head>span{padding:4px 7px;border-radius:999px;background:#eaf5f8;color:#537481;font-size:.56rem;font-weight:850}
.times-mastery-question-card{display:grid;place-items:center;gap:5px;min-height:145px;padding:16px;border:1px solid #d6e6ec;border-radius:15px;background:radial-gradient(circle at 50% 5%,#f5fcff,#fff 70%);text-align:center}.times-mastery-question-card small{color:#5d87a1;font-size:.52rem;font-weight:950;letter-spacing:.13em}.times-mastery-question-card strong{color:#142f41;font-size:2.1rem;line-height:1.05}.times-mastery-question-card span{padding:4px 7px;border-radius:999px;background:#edf6f9;color:#6b8491;font-size:.55rem;font-weight:800}
.times-mastery-answer-row{display:grid;gap:5px;margin-top:9px}.times-mastery-answer-row label{color:#647e8c;font-size:.56rem;font-weight:850}.times-mastery-answer-row>div{display:grid;grid-template-columns:minmax(100px,1fr) auto;gap:7px}.times-mastery-answer-row input{min-height:46px;padding:7px 12px;border:1px solid #bcd4de;border-radius:11px;background:#fff;color:#142f41;font:900 1.15rem/1 system-ui;text-align:center;outline:none}.times-mastery-answer-row input:focus{border-color:#47b6d2;box-shadow:0 0 0 3px rgba(71,182,210,.12)}
.times-mastery-feedback{display:grid;gap:7px;margin-top:9px;padding:11px;border:1px solid #bfe3d7;border-radius:13px;background:#f0faf6}.times-mastery-feedback.hidden{display:none!important}.times-mastery-feedback[data-correct="false"]{border-color:#efcf98;background:#fff8eb}.times-mastery-feedback>strong{color:#1c5d4e;font-size:.8rem}.times-mastery-feedback[data-correct="false"]>strong{color:#885d12}.times-mastery-feedback p{margin:0;color:#55736b;font-size:.66rem;line-height:1.48}.times-mastery-feedback[data-correct="false"] p{color:#715f3d}.times-mastery-strategy{display:grid;gap:3px;padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.7)}.times-mastery-strategy small{color:#6f8a80;font-size:.46rem;font-weight:950;letter-spacing:.11em}.times-mastery-strategy span{color:#31594e;font-size:.64rem;line-height:1.42}.times-mastery-feedback-actions{display:flex;flex-wrap:wrap;gap:7px}.times-mastery-feedback-actions .hidden{display:none!important}.times-mastery-stop{margin-top:8px;min-height:32px;padding:5px 8px;color:#7a8990;background:transparent;border-style:dashed}
.times-mastery-notice{min-height:31px;padding:7px 9px;border-radius:10px;background:#f2f7f9;color:#687f8c;font-size:.59rem;line-height:1.4}.times-mastery-notice[data-type="supreme"]{background:linear-gradient(135deg,#3a0a0e,#6e1118);color:#ffdadd;border:1px solid #ac2d37}.times-mastery-notice[data-type="warn"]{background:#fff5e7;color:#8d6418}
html[data-theme="dark"] .times-mastery-hero,html[data-theme="dark"] .times-mastery-session{background:linear-gradient(135deg,#102434,#0b1b29);border-color:#29475b}html[data-theme="dark"] .times-mastery-hero h4,html[data-theme="dark"] .times-mastery-rank strong,html[data-theme="dark"] .times-mastery-metrics strong,html[data-theme="dark"] .times-mastery-question-card strong,html[data-theme="dark"] .times-mastery-session-head strong{color:#edf9ff}html[data-theme="dark"] .times-mastery-rank,html[data-theme="dark"] .times-mastery-metrics>div,html[data-theme="dark"] .times-mastery-focus,html[data-theme="dark"] .times-mastery-question-card,html[data-theme="dark"] .times-mastery-answer-row input{background:#102434;border-color:#29475b;color:#d8edf5}html[data-theme="dark"] .times-mastery-stage{background:#102434;border-color:#29475b}html[data-theme="dark"] .times-mastery-feedback{background:#12342d;border-color:#2e6658}html[data-theme="dark"] .times-mastery-feedback[data-correct="false"]{background:#362b16;border-color:#66542d}html[data-theme="dark"] .times-mastery-strategy{background:rgba(0,0,0,.13)}html[data-theme="dark"] .times-mastery-notice{background:#112534;color:#b9ced8}
@media(max-width:700px){.times-mastery-hero{grid-template-columns:1fr}.times-mastery-rank{text-align:left}.times-mastery-stages{grid-template-columns:repeat(5,minmax(72px,1fr));overflow-x:auto;padding-bottom:2px}.times-mastery-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.times-mastery-focus>div:first-child{display:grid}.times-mastery-question-card strong{font-size:1.8rem}}
@media(max-width:430px){.times-mastery-actions button{flex:1 1 100%}.times-mastery-answer-row>div{grid-template-columns:1fr}.times-mastery-feedback-actions button{flex:1 1 100%}.times-mastery-question-card{min-height:125px}.times-mastery-question-card strong{font-size:1.65rem}}

/* ============================================================
   V51.85 • Premium Home Command Centre
   One-layer polish: clearer hierarchy, compact focus audio,
   tablet-safe hero composition and subscription-grade surfaces.
   ============================================================ */
.home-premium-hero{
  grid-template-columns:minmax(0,1fr) 188px;
  gap:26px;
  padding:34px 36px;
  border-color:rgba(138,190,224,.26);
  background:
    radial-gradient(circle at 88% 8%,rgba(96,190,244,.24),transparent 29%),
    radial-gradient(circle at 4% 112%,rgba(239,196,91,.15),transparent 31%),
    linear-gradient(135deg,#071a2d 0%,#0d3151 57%,#174f79 100%);
  box-shadow:0 26px 64px rgba(7,27,47,.22),0 3px 10px rgba(7,27,47,.09),inset 0 1px 0 rgba(255,255,255,.10);
}
.home-premium-hero:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.38;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(90deg,transparent 5%,#000 48%,#000 100%);
}
.home-premium-hero:after{right:-40px;bottom:-86px;font-size:280px;color:rgba(255,255,255,.022)}
.home-hero-kicker-row{display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;margin-bottom:3px}
.home-hero-kicker-row .eyebrow{margin:0}
.home-target-badge{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid rgba(240,207,119,.28);border-radius:999px;background:rgba(240,207,119,.08);color:#f6d985;font-size:.59rem;font-weight:950;letter-spacing:.08em;white-space:nowrap}
.home-premium-hero h2{max-width:680px;margin-top:7px;font-size:clamp(2rem,4vw,3.25rem);letter-spacing:-.052em}
.home-premium-hero .dashboard-greeting{margin:0 0 15px;font-size:1rem;font-weight:760;color:#e1edf6!important}
.hero-next-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;max-width:710px;margin:0 0 18px;padding:11px 13px;border:1px solid rgba(255,255,255,.10);border-radius:15px;background:rgba(4,19,34,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.hero-next-label{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border-radius:8px;background:rgba(100,207,244,.11);color:#8cdef8;font-size:.56rem;font-weight:950;letter-spacing:.11em;white-space:nowrap}
.hero-next-card #continueSummary{margin:0!important;color:#cfe0ec!important;font-size:.88rem;line-height:1.35}
.home-primary-actions{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:10px;max-width:720px;margin-top:0}
.home-primary-actions .btn{min-width:0;width:100%;min-height:54px;border-radius:16px!important;justify-content:center}
.home-primary-actions #continueBtn{background:linear-gradient(145deg,#eef9ff,#dff3fc)!important;color:#092d49!important;border:1px solid rgba(186,229,246,.85)!important;box-shadow:0 13px 28px rgba(0,15,28,.18),inset 0 1px 0 #fff!important}
.home-primary-actions #continueBtn:hover{background:linear-gradient(145deg,#fff,#e5f6fd)!important}
.home-primary-actions #heroTimesGameBtn{background:linear-gradient(145deg,#0b2742,#164e78)!important;border-color:rgba(113,192,235,.23)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 18px rgba(0,14,28,.12)!important}
.home-primary-actions #browseBtn,.home-primary-actions #homeLeaderboardBtn{background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.13)!important;color:#eef7fd!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important}
.home-primary-actions #browseBtn:hover,.home-primary-actions #homeLeaderboardBtn:hover{background:rgba(255,255,255,.12)!important}

.home-progress-card{position:relative;z-index:2;align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:220px;padding:16px 14px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 34px rgba(0,18,33,.14);backdrop-filter:blur(9px)}
.home-progress-kicker{color:#9fc4dc;font-size:.56rem;font-weight:950;letter-spacing:.12em}
.home-progress-card .progress-orb{width:132px;height:132px;grid-row:auto!important;justify-self:auto!important;filter:drop-shadow(0 12px 24px rgba(0,0,0,.16))}
.home-progress-card .orb-label strong{font-size:1.65rem}
.home-progress-card>small{color:#b8d0df;font-size:.68rem;font-weight:800}

.home-audio-premium{display:grid;grid-template-columns:auto auto minmax(180px,1fr);align-items:center;gap:10px;max-width:720px;margin-top:13px;padding:9px 10px!important;border-radius:16px!important;background:rgba(3,17,31,.27)!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.045)!important}
.home-audio-identity{display:flex;align-items:center;gap:9px;min-width:128px;padding:0 6px 0 2px}
.home-audio-identity>div{display:grid;gap:1px}
.home-audio-identity small{color:#82a7bf!important;font-size:.47rem!important;font-weight:950!important;letter-spacing:.11em}
.home-audio-identity strong{color:#edf7fc;font-size:.76rem;line-height:1.1}
.home-pulse-dot{width:9px;height:9px;border-radius:50%;background:#71d9f5;box-shadow:0 0 0 4px rgba(113,217,245,.10),0 0 13px rgba(113,217,245,.38)}
.home-audio-premium .home-audio-btn{min-height:36px;padding:7px 11px;border-radius:11px;box-shadow:none!important;font-size:.68rem}
.home-audio-premium .home-audio-btn.audio-off{background:rgba(255,255,255,.055)!important;color:#9eb5c5!important;border-color:rgba(255,255,255,.09)!important}
.home-audio-premium .audio-volume-control{display:grid;grid-template-columns:auto minmax(80px,1fr) 38px;gap:8px;align-items:center;width:100%;min-width:0;padding:6px 8px;border-radius:11px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07)}
.home-audio-premium .home-volume-icon{color:#9fc5dc!important;font-size:.8rem!important}
.home-audio-premium .audio-volume-control strong{color:#dceaf3;font-size:.64rem;font-weight:850;text-align:right}
.home-audio-premium input[type="range"]{width:100%;min-width:0}

.sigma-daily-card{margin-top:22px;padding:24px 25px;border-color:rgba(255,209,71,.30);background:radial-gradient(circle at 92% 0,rgba(105,66,189,.22),transparent 34%),linear-gradient(135deg,#0a1730 0%,#18143a 63%,#26133e 100%);box-shadow:0 24px 56px rgba(8,13,34,.22),0 5px 12px rgba(9,22,44,.08),inset 0 1px 0 rgba(255,255,255,.07)}
.sigma-daily-titleline{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sigma-daily-titleline .eyebrow{margin:0}
.sigma-daily-ready-badge{display:inline-flex;align-items:center;min-height:27px;padding:5px 9px;border:1px solid rgba(104,235,191,.24);border-radius:999px;background:rgba(68,206,158,.10);color:#8cf0cc;font-size:.55rem;font-weight:950;letter-spacing:.08em}
.sigma-daily-copy h3{letter-spacing:-.035em}
.sigma-daily-scoreboard>div{border-color:rgba(255,255,255,.10);background:rgba(3,8,24,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.sigma-daily-focus span{border-color:rgba(119,218,255,.17);background:rgba(4,12,31,.42)}
.sigma-daily-rule{opacity:.78}

/* Correct the old CSS-pixel mobile rule leaking into an explicitly selected tablet layout. */
html[data-display-layout="tablet"] .home-premium-hero{grid-template-columns:minmax(0,1fr) 168px!important;gap:20px!important;padding:27px!important}
html[data-display-layout="tablet"] .home-premium-hero .hero-copy{grid-row:auto!important}
html[data-display-layout="tablet"] .home-progress-card{grid-column:2!important;grid-row:1!important;min-height:100%!important}
html[data-display-layout="tablet"] .home-progress-card .progress-orb{grid-row:auto!important;width:124px!important;height:124px!important}
html[data-display-layout="tablet"] .home-primary-actions{grid-template-columns:1fr 1fr!important}
html[data-display-layout="tablet"] .home-audio-premium{grid-template-columns:auto auto minmax(150px,1fr)!important}

@media(max-width:760px){
  .home-premium-hero{grid-template-columns:1fr!important;padding:20px!important;gap:16px!important}
  .home-premium-hero .hero-copy{grid-row:2!important}
  .home-progress-card{grid-column:1!important;grid-row:1!important;min-height:0;display:grid;grid-template-columns:1fr 100px;grid-template-rows:auto auto;align-items:center;width:100%;padding:12px 14px;text-align:left}
  .home-progress-kicker{align-self:end}
  .home-progress-card .progress-orb{grid-column:2;grid-row:1/3!important;width:92px!important;height:92px!important;justify-self:end!important}
  .home-progress-card>small{align-self:start}
  .home-primary-actions{grid-template-columns:1fr!important;max-width:none}
  .home-primary-actions .btn{min-height:50px}
  .home-audio-premium{grid-template-columns:1fr auto!important;max-width:none}
  .home-audio-identity{min-width:0}
  .home-audio-premium .audio-volume-control{grid-column:1/-1}
  .sigma-daily-titleline{align-items:flex-start;flex-direction:column;gap:7px}
}
@media(max-width:420px){
  .home-hero-kicker-row{align-items:flex-start;flex-direction:column;gap:7px}
  .home-premium-hero h2{font-size:2.05rem}
  .hero-next-card{grid-template-columns:1fr;gap:6px}
  .hero-next-label{justify-self:start}
  .home-audio-premium{grid-template-columns:1fr!important}
  .home-audio-premium .home-audio-btn{width:100%}
  .home-audio-premium .audio-volume-control{grid-column:auto}
}

/* V51.85 explicit display-mode authority: never let CSS-pixel breakpoints undo the selected shell. */
html[data-display-layout="tablet"] .home-progress-card{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;grid-template-columns:none!important;grid-template-rows:none!important;padding:16px 14px!important;text-align:center!important}
html[data-display-layout="mobile"] .home-premium-hero{grid-template-columns:1fr!important;padding:20px!important;gap:16px!important}
html[data-display-layout="mobile"] .home-premium-hero .hero-copy{grid-row:2!important}
html[data-display-layout="mobile"] .home-progress-card{grid-column:1!important;grid-row:1!important;min-height:0!important;display:grid!important;grid-template-columns:1fr 100px!important;grid-template-rows:auto auto!important;align-items:center!important;width:100%!important;padding:12px 14px!important;text-align:left!important}
html[data-display-layout="mobile"] .home-progress-kicker{align-self:end!important}
html[data-display-layout="mobile"] .home-progress-card .progress-orb{grid-column:2!important;grid-row:1/3!important;width:92px!important;height:92px!important;justify-self:end!important}
html[data-display-layout="mobile"] .home-progress-card>small{align-self:start!important}
html[data-display-layout="mobile"] .home-primary-actions{grid-template-columns:1fr!important;max-width:none!important}
html[data-display-layout="mobile"] .home-audio-premium{grid-template-columns:1fr auto!important;max-width:none!important}
html[data-display-layout="mobile"] .home-audio-premium .audio-volume-control{grid-column:1/-1!important}

/* V51.90 — Admin user & role management */
.sigma-admin-users-panel{margin-top:10px;border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:16px;background:color-mix(in srgb,var(--card,#111827) 88%,transparent)}
.sigma-admin-users-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.sigma-admin-users-head h3{margin:0 0 4px}.sigma-admin-users-head p{margin:0}
.sigma-admin-users-tools{display:grid;grid-template-columns:auto minmax(180px,360px);align-items:center;gap:10px;margin:14px 0 10px}.sigma-admin-users-tools label{font-size:.78rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase;opacity:.72}.sigma-admin-users-tools input{width:100%;border:1px solid rgba(148,163,184,.28);border-radius:12px;padding:10px 12px;background:var(--surface,#0f172a);color:inherit}
.sigma-admin-users-list{display:grid;gap:10px;margin-top:10px}.sigma-admin-user-row{display:grid;grid-template-columns:minmax(210px,1.7fr) minmax(130px,.85fr) minmax(190px,1.15fr);gap:12px;align-items:center;border:1px solid rgba(148,163,184,.16);border-radius:15px;padding:13px;background:rgba(148,163,184,.045)}
.sigma-admin-user-main{min-width:0}.sigma-admin-user-main strong,.sigma-admin-user-main span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sigma-admin-user-main strong{font-size:.97rem}.sigma-admin-user-main span{font-size:.78rem;opacity:.68;margin-top:2px}.sigma-admin-user-meta{font-size:.76rem;line-height:1.45;opacity:.76}.sigma-admin-user-meta strong{display:block;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;opacity:.8}
.sigma-admin-user-role{display:flex;align-items:center;justify-content:flex-end;gap:8px}.sigma-admin-user-role select{min-width:130px;border:1px solid rgba(148,163,184,.28);border-radius:10px;padding:9px 10px;background:var(--surface,#0f172a);color:inherit}.sigma-admin-user-role .btn{white-space:nowrap}.sigma-admin-user-role-badge{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 10px;border-radius:999px;border:1px solid rgba(148,163,184,.25);font-size:.75rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.sigma-admin-user-role-badge.protected{border-color:color-mix(in srgb,var(--brand,#5c6cff) 55%,transparent);background:color-mix(in srgb,var(--brand,#5c6cff) 12%,transparent)}
.sigma-admin-users-note{margin:12px 2px 0;font-size:.75rem;line-height:1.45;opacity:.62}.sigma-admin-users-empty{padding:18px;text-align:center;border:1px dashed rgba(148,163,184,.25);border-radius:14px;opacity:.7}
@media(max-width:760px){.sigma-admin-users-head{align-items:center}.sigma-admin-users-tools{grid-template-columns:1fr}.sigma-admin-user-row{grid-template-columns:1fr}.sigma-admin-user-role{justify-content:flex-start;flex-wrap:wrap}.sigma-admin-user-role select{flex:1 1 150px}.sigma-admin-user-main strong,.sigma-admin-user-main span{white-space:normal;overflow-wrap:anywhere}}


/* V51.90 — School & class management */
.sigma-admin-schools-panel{margin-top:10px;border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:16px;background:color-mix(in srgb,var(--card,#111827) 88%,transparent)}
.sigma-admin-schools-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.sigma-admin-schools-head h3{margin:0 0 4px}.sigma-admin-schools-head p{margin:0}
.sigma-admin-school-create{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:9px;margin:14px 0 10px}.sigma-admin-school-create input,.sigma-admin-school-detail input,.sigma-admin-school-detail select{width:100%;border:1px solid rgba(148,163,184,.28);border-radius:11px;padding:9px 10px;background:var(--surface,#0f172a);color:inherit}
.sigma-admin-schools-layout{display:grid;grid-template-columns:minmax(190px,.72fr) minmax(0,1.6fr);gap:14px;align-items:start;margin-top:10px}.sigma-admin-school-list{display:grid;gap:8px}.sigma-admin-school-card{width:100%;text-align:left;border:1px solid rgba(148,163,184,.18);border-radius:14px;padding:12px;background:rgba(148,163,184,.045);color:inherit;cursor:pointer}.sigma-admin-school-card:hover,.sigma-admin-school-card.active{border-color:color-mix(in srgb,var(--brand,#5c6cff) 58%,transparent);background:color-mix(in srgb,var(--brand,#5c6cff) 10%,transparent)}.sigma-admin-school-card strong,.sigma-admin-school-card span{display:block}.sigma-admin-school-card span{font-size:.76rem;opacity:.7;margin-top:3px}.sigma-admin-status-pill{display:inline-flex!important;width:max-content;margin-top:7px!important;padding:4px 8px;border-radius:999px;border:1px solid rgba(148,163,184,.25);font-size:.68rem!important;font-weight:850;letter-spacing:.04em;text-transform:uppercase;opacity:.9!important}
.sigma-admin-school-detail{min-width:0;border:1px solid rgba(148,163,184,.15);border-radius:16px;padding:14px;background:rgba(148,163,184,.035)}.sigma-admin-school-detail-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sigma-admin-school-detail-head h4{margin:0 0 4px;font-size:1.05rem}.sigma-admin-school-detail-head p{margin:0;font-size:.77rem}.sigma-admin-school-status-tools{display:flex;gap:7px;align-items:center;min-width:210px}.sigma-admin-school-status-tools select{min-width:115px}
.sigma-admin-school-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.sigma-admin-school-subpanel{border:1px solid rgba(148,163,184,.14);border-radius:14px;padding:12px}.sigma-admin-school-subpanel h5{margin:0 0 3px;font-size:.92rem}.sigma-admin-school-subpanel>p{margin:0 0 10px;font-size:.74rem;opacity:.68}.sigma-admin-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-bottom:10px}.sigma-admin-school-rows{display:grid;gap:7px}.sigma-admin-school-row{border:1px solid rgba(148,163,184,.14);border-radius:12px;padding:10px;background:rgba(148,163,184,.035)}.sigma-admin-school-row-top{display:flex;justify-content:space-between;gap:9px;align-items:flex-start}.sigma-admin-school-row strong{display:block;font-size:.87rem}.sigma-admin-school-row small{display:block;opacity:.64;margin-top:2px;overflow-wrap:anywhere}.sigma-admin-row-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:8px}.sigma-admin-row-actions select{width:auto;min-width:112px;flex:1 1 112px}.sigma-admin-row-actions .btn{min-height:34px;padding:7px 10px}.sigma-admin-roster-result{font-size:.73rem;opacity:.72;margin-top:7px}.sigma-admin-school-empty{padding:13px;border:1px dashed rgba(148,163,184,.22);border-radius:12px;text-align:center;font-size:.78rem;opacity:.7}
@media(max-width:900px){.sigma-admin-schools-layout{grid-template-columns:1fr}.sigma-admin-school-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.sigma-admin-school-columns{grid-template-columns:1fr}}
@media(max-width:600px){.sigma-admin-schools-head,.sigma-admin-school-detail-head{flex-direction:column}.sigma-admin-school-create,.sigma-admin-inline-form{grid-template-columns:1fr}.sigma-admin-school-status-tools{width:100%;min-width:0}.sigma-admin-school-status-tools select{flex:1}.sigma-admin-school-list{grid-template-columns:1fr}}


/* ======================================================================
   V51.92 • TRUE FULL-VIEWPORT STORM GAMEPLAY
   During a live run, Storm owns the viewport on every display mode,
   viewport width and orientation. No setup cards, records, app chrome or
   scrolling document remain visible. Native Fullscreen API is attempted by
   times-game.js; these rules are the browser-safe full-viewport fallback.
   ====================================================================== */
html.sigma-storm-live-root,
html.sigma-storm-live-root body,
body.sigma-storm-live{
  width:100%!important;
  height:var(--sigma-viewport-height,100dvh)!important;
  min-height:0!important;
  max-height:var(--sigma-viewport-height,100dvh)!important;
  overflow:hidden!important;
  overscroll-behavior:none!important;
  background:#020914!important;
}
body.sigma-storm-live{
  position:fixed!important;
  inset:0!important;
  margin:0!important;
  touch-action:none;
}
body.sigma-storm-live .topbar,
body.sigma-storm-live .bottom-nav{display:none!important}
/* Remove every non-Storm app view from the render tree while a run is live.
   This prevents high-z-index dashboard cards from bleeding through the arena. */
body.sigma-storm-live main > :not(#timesGameView){display:none!important}
body.sigma-storm-live main{
  position:fixed!important;
  inset:0!important;
  z-index:100!important;
  width:var(--sigma-viewport-width,100vw)!important;
  max-width:none!important;
  height:var(--sigma-viewport-height,100dvh)!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:max(4px,env(safe-area-inset-top)) max(4px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))!important;
  overflow:hidden!important;
  background:radial-gradient(circle at 50% 110%,rgba(59,53,255,.14),transparent 38%),linear-gradient(180deg,#020914,#06172a)!important;
}
body.sigma-storm-live #timesGameView.storm-running,
#timesGameView.storm-running:fullscreen,
#timesGameView.storm-running:-webkit-full-screen{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  isolation:isolate!important;
  display:block!important;
  width:100vw!important;
  max-width:none!important;
  height:var(--storm-viewport-height,100dvh)!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:max(4px,env(safe-area-inset-top)) max(4px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left))!important;
  overflow:hidden!important;
  background:#020914!important;
  box-sizing:border-box!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-game-shell,
#timesGameView.storm-running:fullscreen .times-game-shell,
#timesGameView.storm-running:-webkit-full-screen .times-game-shell{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto auto minmax(0,1fr) auto!important;
  grid-template-areas:"hud" "controls" "wave" "arena" "powers"!important;
  gap:4px!important;
  overflow:hidden!important;
  align-items:stretch!important;
}

/* Absolutely no page/menu content is allowed into the live play viewport. */
body.sigma-storm-live #timesGameView.storm-running .times-game-hero,
body.sigma-storm-live #timesGameView.storm-running .times-tier-strip,
body.sigma-storm-live #timesGameView.storm-running .times-game-launch-row,
body.sigma-storm-live #timesGameView.storm-running .times-game-rules,
body.sigma-storm-live #timesGameView.storm-running .times-analysis,
body.sigma-storm-live #timesGameView.storm-running .times-game-status{display:none!important}

body.sigma-storm-live #timesGameView.storm-running .times-game-hud{
  grid-area:hud!important;
  position:static!important;
  top:auto!important;
  display:grid!important;
  grid-template-columns:1.1fr 1.2fr 1.25fr .8fr!important;
  gap:4px!important;
  height:46px!important;
  min-height:46px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-hud-item{display:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(1),
body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(2),
body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(3),
body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(7){
  display:flex!important;
  min-width:0!important;
  min-height:46px!important;
  height:46px!important;
  padding:4px 8px!important;
  border-radius:10px!important;
  justify-content:center!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-hud-item span{font-size:.42rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-hud-item strong{font-size:.76rem!important;overflow:visible!important;text-overflow:clip!important}
body.sigma-storm-live #timesGameView.storm-running .times-record-chase,
body.sigma-storm-live #timesGameView.storm-running .times-overdrive-meter{display:none!important}

body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls{
  grid-area:controls!important;
  position:static!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:5px!important;
  min-height:30px!important;
  margin:0!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls button{
  min-height:30px!important;height:30px!important;padding:3px 10px!important;border-radius:8px!important;font-size:.52rem!important
}
body.sigma-storm-live #timesGameView.storm-running .times-wave-strip{
  grid-area:wave!important;
  position:static!important;
  display:grid!important;
  grid-template-columns:minmax(150px,.52fr) 1fr auto!important;
  gap:7px!important;
  min-height:40px!important;
  height:40px!important;
  margin:0!important;
  padding:4px 8px!important;
  border-radius:9px!important;
  overflow:hidden!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-wave-copy span{font-size:.42rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-wave-copy strong{font-size:.62rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-wave-strip>small{grid-column:auto!important;grid-row:auto!important;text-align:right!important;font-size:.54rem!important}

/* The arena consumes every remaining pixel. */
body.sigma-storm-live #timesGameView.storm-running .times-arena-wrap{
  grid-area:arena!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-arena,
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  border-radius:12px!important;
  touch-action:none!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-mission-banner{top:8px!important;left:10px!important}
body.sigma-storm-live #timesGameView.storm-running .times-sector-badge{top:8px!important;right:10px!important}
body.sigma-storm-live #timesGameView.storm-running .times-comms{width:min(360px,62%)!important;right:10px!important;bottom:10px!important}

/* Maths phase controller is part of the game, never a page overlay. */
body.sigma-storm-live #timesGameView.storm-running .times-answer-deck{
  grid-area:arena!important;
  position:absolute!important;
  left:auto!important;
  right:12px!important;
  bottom:12px!important;
  top:auto!important;
  transform:none!important;
  z-index:55!important;
  width:min(360px,38vw)!important;
  max-width:calc(100% - 24px)!important;
  height:auto!important;
  min-height:0!important;
  max-height:calc(100% - 24px)!important;
  margin:0!important;
  padding:6px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto auto auto!important;
  gap:4px!important;
  overflow:hidden!important;
  border-radius:12px!important;
  background:rgba(4,15,27,.94)!important;
  backdrop-filter:blur(8px)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.34)!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-answer-form{grid-template-columns:minmax(0,1fr) 62px!important;gap:4px!important}
body.sigma-storm-live #timesGameView.storm-running .times-answer-form input,
body.sigma-storm-live #timesGameView.storm-running .times-answer-form .btn{height:34px!important;min-height:34px!important;border-radius:8px!important}
body.sigma-storm-live #timesGameView.storm-running .times-feedback{display:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-number-pad{height:auto!important;min-height:0!important;padding:4px!important;overflow:hidden!important}
body.sigma-storm-live #timesGameView.storm-running .times-pad-label,
body.sigma-storm-live #timesGameView.storm-running .times-number-pad:before,
body.sigma-storm-live #timesGameView.storm-running .times-number-pad:after{display:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-pad-grid{
  width:100%!important;height:auto!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-template-rows:repeat(4,40px)!important;gap:4px!important;padding:0!important
}
body.sigma-storm-live #timesGameView.storm-running .times-pad-key{height:40px!important;min-height:40px!important;border-radius:8px!important;border-bottom-width:2px!important;box-shadow:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-pad-key>small{display:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-bonus-weapon-row{height:34px!important;margin:0!important;overflow:hidden!important}
body.sigma-storm-live #timesGameView.storm-running .times-bonus-weapon{height:32px!important;min-height:32px!important;padding:2px 5px!important;grid-template-columns:24px 1fr auto!important}
body.sigma-storm-live #timesGameView.storm-running .times-bonus-icon{width:22px!important;height:22px!important;font-size:.72rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-bonus-copy em{display:none!important}

body.sigma-storm-live #timesGameView.storm-running .times-power-grid{
  grid-area:powers!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:4px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
}
body.sigma-storm-live #timesGameView.storm-running .times-power-btn{height:44px!important;min-height:44px!important;padding:3px 6px!important;grid-template-columns:25px 1fr auto!important;gap:5px!important;border-radius:9px!important}
body.sigma-storm-live #timesGameView.storm-running .times-power-icon{width:24px!important;height:24px!important;font-size:.76rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-power-copy strong{font-size:.56rem!important}
body.sigma-storm-live #timesGameView.storm-running .times-power-copy small{display:none!important}
body.sigma-storm-live #timesGameView.storm-running .times-power-count{min-width:24px!important;height:24px!important;font-size:.48rem!important}

/* Combat: remove the maths controller completely. The flight deck stays inside
   the arena and the arena retains the entire remaining viewport. */
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-answer-deck{display:none!important;visibility:hidden!important;pointer-events:none!important}
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{
  display:grid!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
  left:12px!important;right:12px!important;bottom:12px!important;max-height:42%!important;
}

/* Tablet/phone portrait: retain the same fullscreen model, just compact the HUD
   and controller so the arena still dominates. */
@media(max-width:700px){
  body.sigma-storm-live #timesGameView.storm-running .times-game-shell{grid-template-rows:40px 28px 36px minmax(0,1fr) 40px!important;gap:3px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-game-hud{height:40px!important;min-height:40px!important;gap:3px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(1),body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(2),body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(3),body.sigma-storm-live #timesGameView.storm-running .times-hud-item:nth-child(7){height:40px!important;min-height:40px!important;padding:2px 5px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-hud-item span{font-size:.34rem!important}body.sigma-storm-live #timesGameView.storm-running .times-hud-item strong{font-size:.62rem!important}
  body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls{min-height:28px!important}body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls button{height:28px!important;min-height:28px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-wave-strip{height:36px!important;min-height:36px!important;grid-template-columns:1fr auto!important;padding:2px 5px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-wave-track{grid-column:1/-1!important;grid-row:2!important}body.sigma-storm-live #timesGameView.storm-running .times-wave-strip>small{grid-column:2!important;grid-row:1!important}
  body.sigma-storm-live #timesGameView.storm-running .times-answer-deck{left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;max-width:none!important;max-height:48%!important}
  body.sigma-storm-live #timesGameView.storm-running .times-pad-grid{grid-template-rows:repeat(4,34px)!important;gap:3px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-pad-key{height:34px!important;min-height:34px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-power-grid{height:40px!important;min-height:40px!important}body.sigma-storm-live #timesGameView.storm-running .times-power-btn{height:40px!important;min-height:40px!important;padding:2px 4px!important}
}

/* Portrait tablets like the user's 960px-wide device: large combat arena,
   horizontal flight controls, no setup content beneath the game. */
@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){
  body.sigma-storm-live #timesGameView.storm-running .times-game-shell{grid-template-rows:46px 30px 40px minmax(0,1fr) 46px!important}
  body.sigma-storm-live #timesGameView.storm-running .times-answer-deck{width:min(380px,42vw)!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{left:16px!important;right:16px!important;bottom:16px!important;padding:10px 12px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:minmax(190px,250px) 126px!important;gap:14px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-dpad{max-width:250px!important;grid-template-rows:repeat(2,58px)!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-dpad-btn{height:58px!important;min-height:58px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{width:126px!important;min-width:126px!important;height:126px!important;min-height:126px!important}
}

/* Landscape play uses the full width too; maths controller docks at the right
   while shooter combat remains one uninterrupted arena. */
@media(min-width:701px) and (orientation:landscape){
  body.sigma-storm-live #timesGameView.storm-running .times-answer-deck{width:clamp(270px,30vw,360px)!important}
}

/* ============================================================
   V51.92 • Classic Storm hazards + arcade flight stick
   ============================================================ */
.times-arcade-stick{display:grid;grid-template-rows:1fr auto;place-items:center;gap:5px;min-width:150px;min-height:132px;padding:4px 8px 2px;border:1px solid rgba(84,232,255,.20);border-radius:18px;background:radial-gradient(circle at 50% 42%,rgba(31,103,143,.2),rgba(4,16,28,.76) 70%);touch-action:none;user-select:none;outline:none;cursor:grab}
.times-arcade-stick.is-held{cursor:grabbing;border-color:rgba(104,244,255,.52);box-shadow:0 0 28px rgba(73,225,255,.18),inset 0 0 26px rgba(73,225,255,.06)}
.times-arcade-stick.is-disabled{opacity:.44;pointer-events:none}
.times-arcade-stick-base{position:relative;width:118px;height:118px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#10283e 0 30%,#071624 31% 48%,#153651 49% 52%,#050e18 53% 100%);border:2px solid rgba(93,230,255,.38);box-shadow:inset 0 0 28px rgba(66,216,255,.10),0 7px 18px rgba(0,0,0,.38)}
.times-arcade-stick-ring{position:absolute;inset:20%;border:1px dashed rgba(115,235,255,.26);border-radius:50%;pointer-events:none}
.times-arcade-stick-knob{position:absolute;left:50%;top:50%;width:48px;height:48px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 38% 28%,#fff 0 5%,#ff886b 6% 14%,#e83b4f 15% 62%,#821a36 63% 100%);border:2px solid #ff9a81;box-shadow:0 5px 0 #631228,0 9px 15px rgba(0,0,0,.38),0 0 22px rgba(255,84,100,.36);transition:box-shadow .08s ease;will-change:transform;pointer-events:none}
.times-arcade-stick.is-held .times-arcade-stick-knob{box-shadow:0 3px 0 #631228,0 6px 14px rgba(0,0,0,.36),0 0 28px rgba(255,84,100,.52)}
.times-arcade-stick .stick-label{position:absolute;font:950 .37rem/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:.08em;color:#79c6df;opacity:.72;pointer-events:none}.times-arcade-stick .stick-label.up{top:5px;left:50%;transform:translateX(-50%)}.times-arcade-stick .stick-label.down{bottom:4px;left:50%;transform:translateX(-50%)}.times-arcade-stick .stick-label.left{left:5px;top:50%;transform:translateY(-50%) rotate(-90deg)}.times-arcade-stick .stick-label.right{right:3px;top:50%;transform:translateY(-50%) rotate(90deg)}
.times-arcade-stick>small{font:900 .44rem/1 system-ui;letter-spacing:.11em;color:#8ecde1;text-align:center}

/* Asteroids are genuine collision hazards. They pass through the drone lane but
   remain behind the player's ship and flight controls. */
.storm-asteroid{position:absolute;z-index:12;top:-96px;border-radius:46% 54% 49% 51%;background:radial-gradient(circle at 31% 27%,#b9bac2 0 6%,#686979 7% 19%,#353743 20% 52%,#171923 53% 100%);border:1px solid rgba(207,212,229,.42);box-shadow:inset -10px -12px 20px rgba(0,0,0,.42),inset 8px 7px 13px rgba(255,255,255,.08),0 0 18px rgba(132,153,188,.18);animation:v5192AsteroidFall var(--asteroid-life,4200ms) linear forwards;will-change:top,transform;pointer-events:none}
.storm-asteroid:before,.storm-asteroid:after,.storm-asteroid i{content:"";position:absolute;border-radius:50%;background:#20222c;box-shadow:inset 2px 2px 4px rgba(0,0,0,.5),1px 1px 0 rgba(255,255,255,.07)}
.storm-asteroid:before{width:24%;height:20%;left:17%;top:25%}.storm-asteroid:after{width:19%;height:17%;right:16%;top:48%}.storm-asteroid i:nth-child(1){width:13%;height:12%;left:53%;top:16%}.storm-asteroid i:nth-child(2){width:16%;height:13%;left:30%;bottom:16%}.storm-asteroid i:nth-child(3){width:10%;height:9%;right:23%;bottom:18%}
.storm-asteroid.asteroid-small{filter:brightness(1.12)}.storm-asteroid.asteroid-large{z-index:13;border-width:2px;box-shadow:inset -14px -16px 26px rgba(0,0,0,.48),inset 10px 8px 16px rgba(255,255,255,.07),0 0 26px rgba(151,153,177,.22)}
.storm-asteroid.hit{animation:none!important;transform:scale(1.55)!important;opacity:0!important;filter:brightness(2.2) saturate(.55);transition:transform .18s ease,opacity .18s ease,filter .18s ease}
.asteroid-impact-pop{position:absolute;z-index:38;transform:translate(-50%,-50%);padding:6px 10px;border-radius:999px;background:rgba(255,62,76,.92);border:1px solid #ffc1c6;color:white;font:1000 .58rem/1 system-ui;letter-spacing:.08em;box-shadow:0 0 30px rgba(255,47,72,.55);pointer-events:none;animation:v5192ImpactPop .7s ease forwards}
@keyframes v5192AsteroidFall{0%{top:-96px;transform:translateX(0) rotate(0deg)}100%{top:calc(100% + 96px);transform:translateX(var(--asteroid-drift,0)) rotate(var(--asteroid-spin,540deg))}}
@keyframes v5192ImpactPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}100%{opacity:0;transform:translate(-50%,-90%) scale(1)}}

/* Next learning route is now explicit at campaign completion. */
.mission-next-route{margin:14px auto 2px;padding:10px 12px;width:min(390px,100%);border:1px solid rgba(92,235,255,.28);border-radius:14px;background:linear-gradient(135deg,rgba(15,58,78,.72),rgba(37,27,78,.74));display:flex;flex-direction:column;gap:4px}.mission-next-route.hidden{display:none!important}.mission-next-route small{font:950 .48rem/1 system-ui;letter-spacing:.14em;color:#69eaff}.mission-next-route strong{font-size:.88rem;color:#eefcff}.mission-complete-actions #timesMissionNextBtn{background:linear-gradient(135deg,#54eaff,#7271ff);border-color:#9cf6ff;color:#071726;box-shadow:0 0 24px rgba(72,227,255,.22)}

/* The stick and FIRE button are side-by-side inside the arena on every touch layout. */
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:minmax(150px,210px) minmax(92px,118px)!important;justify-content:space-between!important;align-items:end!important;gap:12px!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-arcade-stick{width:100%!important;max-width:210px!important;min-height:132px!important}
#timesGameView .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{align-self:center!important}
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{max-height:none!important;width:auto!important;align-content:end!important}
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:minmax(150px,210px) 112px!important;gap:14px!important}
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{width:112px!important;min-width:112px!important;height:112px!important;min-height:112px!important;border-radius:50%!important}

@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:190px 126px!important;gap:16px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-arcade-stick{width:190px!important;max-width:190px!important;min-height:150px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-arcade-stick-base{width:132px!important;height:132px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{width:126px!important;min-width:126px!important;height:126px!important;min-height:126px!important}
}
@media(max-width:700px){
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{left:7px!important;right:7px!important;bottom:7px!important;padding:6px 7px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-control-grid{grid-template-columns:136px 88px!important;gap:8px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-arcade-stick{min-width:136px!important;width:136px!important;min-height:112px!important;padding:2px 4px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-arcade-stick-base{width:98px!important;height:98px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-arcade-stick-knob{width:40px!important;height:40px!important}
  body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck .times-blaster-fire-btn{width:88px!important;min-width:88px!important;height:88px!important;min-height:88px!important}
  .times-arcade-stick>small{font-size:.36rem}.times-arcade-stick .stick-label{font-size:.31rem}.storm-asteroid.asteroid-large{max-width:74px;max-height:74px}
}
@media(prefers-reduced-motion:reduce){.storm-asteroid{animation-duration:7000ms!important}.asteroid-impact-pop{animation:none!important}}


/* ============================================================
   V51.93 • Premium Storm drone fleet
   Layered metallic hulls, glass canopies, reactor cores, engine
   glow, class-specific silhouettes and richer damage feedback.
   ============================================================ */
.blaster-target{
  --drone-edge:#74efff;
  --drone-glow:rgba(92,229,255,.62);
  --drone-hull-a:#2f6f9e;
  --drone-hull-b:#102f57;
  --drone-hull-c:#06101f;
  --drone-core:#ff5f87;
  --drone-glass:#a9f5ff;
  border-width:1.5px;
  border-color:color-mix(in srgb,var(--drone-edge) 82%,white 18%);
  background:
    radial-gradient(circle at 50% 44%,rgba(255,255,255,.16),transparent 31%),
    linear-gradient(155deg,var(--drone-hull-a) 0 12%,var(--drone-hull-b) 34% 63%,var(--drone-hull-c) 64% 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    inset 0 -8px 15px rgba(0,0,0,.45),
    0 0 0 2px color-mix(in srgb,var(--drone-edge) 11%,transparent),
    0 0 24px var(--drone-glow),
    0 12px 22px rgba(0,0,0,.48);
  filter:drop-shadow(0 2px 1px rgba(255,255,255,.08));
  isolation:isolate;
}
.blaster-target:before,.blaster-target:after{
  top:12px;
  width:25px;
  height:16px;
  border:1px solid color-mix(in srgb,var(--drone-edge) 74%,white 12%);
  background:
    linear-gradient(180deg,rgba(255,255,255,.25),transparent 32%),
    linear-gradient(135deg,color-mix(in srgb,var(--drone-hull-a) 76%,white 8%),var(--drone-hull-c));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 0 11px var(--drone-glow);
  clip-path:polygon(0 31%,62% 0,100% 21%,86% 78%,48% 100%,0 72%);
  z-index:-1;
}
.blaster-target:before{left:-19px;transform:skewY(10deg) rotate(-5deg)}
.blaster-target:after{right:-19px;transform:scaleX(-1) skewY(10deg) rotate(-5deg)}
.blaster-target .drone-shell{
  position:absolute;
  inset:3px 5px 6px;
  border-radius:inherit;
  overflow:hidden;
  pointer-events:none;
  z-index:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.blaster-target .drone-shell:after{
  content:"";
  position:absolute;
  inset:-40% -70%;
  background:linear-gradient(112deg,transparent 43%,rgba(255,255,255,.25) 49%,rgba(255,255,255,.04) 54%,transparent 61%);
  transform:translateX(-35%);
  animation:premiumDroneSheen 1.9s linear infinite;
  opacity:.78;
}
.blaster-target .drone-canopy{
  position:absolute;
  left:50%;top:4px;
  width:38%;height:32%;
  transform:translateX(-50%);
  border:1px solid color-mix(in srgb,var(--drone-glass) 65%,white 30%);
  border-radius:60% 60% 42% 42%;
  background:
    linear-gradient(145deg,rgba(255,255,255,.9) 0 8%,rgba(255,255,255,.18) 9% 31%,transparent 32%),
    linear-gradient(180deg,color-mix(in srgb,var(--drone-glass) 62%,white 12%),rgba(6,16,38,.82));
  box-shadow:inset 0 -4px 8px rgba(0,0,0,.42),0 0 8px color-mix(in srgb,var(--drone-glass) 58%,transparent);
}
.blaster-target .drone-reactor{
  position:absolute;
  left:50%;top:47%;
  width:19%;aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle,#fff 0 17%,color-mix(in srgb,var(--drone-core) 78%,white 10%) 18% 47%,color-mix(in srgb,var(--drone-core) 48%,#170718) 48% 100%);
  box-shadow:0 0 7px var(--drone-core),0 0 14px color-mix(in srgb,var(--drone-core) 68%,transparent);
  animation:premiumDroneCore .54s ease-in-out infinite alternate;
}
.blaster-target .drone-rail{
  position:absolute;
  top:37%;
  width:21%;height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--drone-edge));
  box-shadow:0 0 5px var(--drone-edge);
  opacity:.8;
}
.blaster-target .drone-rail-left{left:8%;transform:rotate(8deg)}
.blaster-target .drone-rail-right{right:8%;transform:scaleX(-1) rotate(8deg)}
.blaster-target .drone-engine{
  position:absolute;
  bottom:0;
  width:13%;height:18%;
  border-radius:50% 50% 62% 62%;
  background:linear-gradient(180deg,#fff 0 12%,var(--drone-edge) 13% 43%,transparent 88%);
  filter:blur(.15px);
  box-shadow:0 4px 8px var(--drone-glow);
  animation:premiumDroneEngine .18s ease-in-out infinite alternate;
}
.blaster-target .drone-engine-left{left:22%}
.blaster-target .drone-engine-right{right:22%}
.blaster-target > i.drone-core-dot{
  left:calc(50% - 4px);top:calc(50% - 4px);
  width:8px;height:8px;
  background:transparent;
  box-shadow:none;
  opacity:0;
  z-index:3;
}
.blaster-target > .enemy-mark{
  bottom:1px;
  z-index:4;
  color:#fff2a8;
  font-size:.62rem;
  letter-spacing:.06em;
  text-shadow:0 0 8px #ffd95c,0 1px 2px #000;
}
.blaster-target .enemy-label,.blaster-target .enemy-hp{z-index:6}
.blaster-target .enemy-label{
  bottom:-15px;
  padding:2px 5px;
  border:1px solid color-mix(in srgb,var(--drone-edge) 32%,transparent);
  border-radius:999px;
  background:rgba(2,9,22,.74);
  backdrop-filter:blur(4px);
  box-shadow:0 0 9px color-mix(in srgb,var(--drone-edge) 20%,transparent);
}
.blaster-target.damaged{
  border-color:#fff4b8!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 0 8px #fff,0 0 28px #ffb542!important;
}
.blaster-target.damaged .drone-shell{animation:premiumDroneDamage .15s linear 2}
.blaster-target.damaged .drone-reactor{background:#fff;box-shadow:0 0 12px #fff,0 0 25px #ff7e3d}

/* Fleet identities */
.blaster-target.enemy-scout{--drone-edge:#66efff;--drone-glow:rgba(74,225,255,.62);--drone-hull-a:#318bb8;--drone-hull-b:#174a76;--drone-hull-c:#07172e;--drone-core:#ff5d8d;--drone-glass:#9ff7ff;border-radius:38% 38% 24% 24%}
.blaster-target.enemy-interceptor{--drone-edge:#ff72dd;--drone-glow:rgba(255,76,211,.58);--drone-hull-a:#b54caa;--drone-hull-b:#57266e;--drone-hull-c:#130b2c;--drone-core:#65f4ff;--drone-glass:#ffc4f1;clip-path:polygon(12% 16%,50% 0,88% 16%,100% 58%,72% 100%,28% 100%,0 58%)}
.blaster-target.enemy-interceptor:before,.blaster-target.enemy-interceptor:after{width:29px;height:12px;top:13px;clip-path:polygon(0 48%,100% 0,76% 100%)}
.blaster-target.enemy-swarm{--drone-edge:#c6fbff;--drone-glow:rgba(101,232,255,.48);--drone-hull-a:#58c4d8;--drone-hull-b:#24546c;--drone-hull-c:#091522;--drone-core:#ffe66b;--drone-glass:#eaffff}
.blaster-target.enemy-armored{--drone-edge:#ffd068;--drone-glow:rgba(255,184,61,.48);--drone-hull-a:#947037;--drone-hull-b:#47351c;--drone-hull-c:#12151f;--drone-core:#ff7f32;--drone-glass:#ffe5a3;background:linear-gradient(160deg,#c89b4e 0 9%,#5b4423 10% 28%,#171b25 29% 100%)}
.blaster-target.enemy-armored .drone-shell{inset:5px 7px 8px;box-shadow:inset 0 0 0 2px rgba(255,210,100,.18),inset 0 -8px 12px rgba(0,0,0,.52)}
.blaster-target.enemy-splitter{--drone-edge:#d98cff;--drone-glow:rgba(196,87,255,.62);--drone-hull-a:#9b56c8;--drone-hull-b:#522575;--drone-hull-c:#180c32;--drone-core:#65f6ff;--drone-glass:#f0c7ff}
.blaster-target.enemy-bomber{--drone-edge:#ff6e78;--drone-glow:rgba(255,62,82,.62);--drone-hull-a:#bd4651;--drone-hull-b:#61202d;--drone-hull-c:#1b0911;--drone-core:#ffcf58;--drone-glass:#ffc1bd}
.blaster-target.enemy-bomber .drone-shell{inset:4px 8px 7px}.blaster-target.enemy-bomber .drone-reactor{width:24%}
.blaster-target.enemy-phaser{--drone-edge:#76ffc2;--drone-glow:rgba(81,255,182,.55);--drone-hull-a:#328d73;--drone-hull-b:#184e4c;--drone-hull-c:#071b26;--drone-core:#a87cff;--drone-glass:#a7ffe0;backdrop-filter:blur(1px)}
.blaster-target.enemy-dodger{--drone-edge:#b7ff62;--drone-glow:rgba(155,255,83,.55);--drone-hull-a:#719e43;--drone-hull-b:#315a38;--drone-hull-c:#081d21;--drone-core:#5ff2ff;--drone-glass:#dbffad;clip-path:polygon(19% 0,81% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.blaster-target.enemy-tank{--drone-edge:#ff9e3d;--drone-glow:rgba(255,129,37,.55);--drone-hull-a:#a65b23;--drone-hull-b:#553018;--drone-hull-c:#141923;--drone-core:#ffd45c;--drone-glass:#ffd39a;background:linear-gradient(155deg,#ba6b29 0 9%,#52321d 10% 37%,#141923 38% 100%)}
.blaster-target.enemy-tank .drone-shell{inset:6px 9px 8px;box-shadow:inset 0 0 0 2px rgba(255,167,74,.22),inset 0 -12px 16px rgba(0,0,0,.55)}
.blaster-target.enemy-cloaker{--drone-edge:#9b83ff;--drone-glow:rgba(126,93,255,.62);--drone-hull-a:#5c4ba1;--drone-hull-b:#2d285e;--drone-hull-c:#090a20;--drone-core:#6cf9ff;--drone-glass:#c9bdff}
.blaster-target.enemy-charger{--drone-edge:#ffe65c;--drone-glow:rgba(255,221,56,.68);--drone-hull-a:#a97715;--drone-hull-b:#5b3906;--drone-hull-c:#211300;--drone-core:#ff692e;--drone-glass:#fff6a8;clip-path:polygon(50% 0,94% 34%,82% 100%,18% 100%,6% 34%)}
.blaster-target.enemy-oneup{--drone-edge:#75ffae;--drone-glow:rgba(74,255,139,.64);--drone-hull-a:#2d9e5f;--drone-hull-b:#145d3e;--drone-hull-c:#071b15;--drone-core:#efff73;--drone-glass:#b9ffd0}
.blaster-target.enemy-shard .drone-shell{display:none}.blaster-target.enemy-shard > i.drone-core-dot{opacity:1;background:#fff!important;box-shadow:0 0 9px #fff!important}.blaster-target.enemy-shard > .enemy-mark{display:none}

@keyframes premiumDroneCore{from{transform:translate(-50%,-50%) scale(.83);filter:brightness(.92)}to{transform:translate(-50%,-50%) scale(1.12);filter:brightness(1.28)}}
@keyframes premiumDroneEngine{from{transform:scaleY(.72);opacity:.68}to{transform:scaleY(1.2);opacity:1}}
@keyframes premiumDroneSheen{0%{transform:translateX(-55%)}100%{transform:translateX(55%)}}
@keyframes premiumDroneDamage{0%,100%{transform:translateX(0)}35%{transform:translateX(-2px)}70%{transform:translateX(2px)}}
@media(max-width:540px){.blaster-target .enemy-label{bottom:-14px;font-size:.39rem}.blaster-target .drone-canopy{top:3px}.blaster-target .drone-engine{height:16%}}
@media(prefers-reduced-motion:reduce){.blaster-target .drone-shell:after,.blaster-target .drone-reactor,.blaster-target .drone-engine{animation:none!important}}


/* ============================================================
   V51.96 • Sigma Storm Assault
   Premium vertical-shooter depth, collectible combat upgrades,
   elite gunship encounters, HP bars and destruction feedback.
   ============================================================ */
.sigma-blaster-phase{overflow:hidden}
.storm-depth-layer{position:absolute;inset:-30% -20%;z-index:0;pointer-events:none;opacity:.48;will-change:transform;background-repeat:repeat}
.storm-depth-layer.depth-far{background-image:radial-gradient(ellipse at 20% 25%,rgba(118,199,255,.18) 0 6%,transparent 7%),radial-gradient(ellipse at 76% 58%,rgba(158,121,255,.12) 0 8%,transparent 9%),linear-gradient(180deg,transparent 0 72%,rgba(28,64,91,.26) 73% 78%,transparent 79%);background-size:260px 220px,340px 290px,100% 430px;animation:stormDepthFar 12s linear infinite}
.storm-depth-layer.depth-near{background-image:radial-gradient(ellipse at 18% 46%,rgba(206,242,255,.16) 0 8%,transparent 9%),radial-gradient(ellipse at 72% 16%,rgba(190,231,255,.13) 0 10%,transparent 11%),linear-gradient(180deg,transparent 0 78%,rgba(17,52,77,.34) 79% 85%,transparent 86%);background-size:190px 160px,250px 210px,100% 330px;opacity:.35;animation:stormDepthNear 6.5s linear infinite}
@keyframes stormDepthFar{from{transform:translateY(-9%)}to{transform:translateY(24%)}}
@keyframes stormDepthNear{from{transform:translateY(-18%) scale(1.04)}to{transform:translateY(34%) scale(1.04)}}

.enemy-health-track{position:absolute;left:50%;top:-18px;transform:translateX(-50%);z-index:8;width:58px;height:5px;border-radius:999px;overflow:hidden;background:rgba(0,0,0,.62);border:1px solid rgba(255,255,255,.18);box-shadow:0 0 8px rgba(0,0,0,.45)}
.enemy-health-track>span{position:static;left:auto;bottom:auto;transform:none;display:block;height:100%;width:100%;border-radius:inherit;background:linear-gradient(90deg,#69f6ff,#ffe36d 62%,#ff6b79);box-shadow:0 0 7px rgba(105,246,255,.48);transition:width .12s linear}
.blaster-target.enemy-gunship{--drone-edge:#ffbc58;--drone-glow:rgba(255,127,50,.72);--drone-hull-a:#9a5830;--drone-hull-b:#54263b;--drone-hull-c:#130b1a;--drone-core:#ff405f;--drone-glass:#ffd49a;width:118px;height:70px;margin:-35px 0 0 -59px;border-width:2px;border-radius:28% 28% 18% 18%;background:radial-gradient(circle at 50% 35%,rgba(255,229,182,.24),transparent 22%),linear-gradient(155deg,#a86132 0 10%,#522b46 34% 63%,#100916 64% 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -14px 24px rgba(0,0,0,.52),0 0 0 3px rgba(255,151,58,.12),0 0 38px rgba(255,101,59,.58),0 18px 34px rgba(0,0,0,.58);animation-name:stormAceGunship;z-index:13}
.blaster-target.enemy-gunship:before,.blaster-target.enemy-gunship:after{width:45px;height:24px;top:19px;background:linear-gradient(155deg,#aa6337,#211226);border-color:#ffbd5c;box-shadow:0 0 16px rgba(255,111,57,.52)}
.blaster-target.enemy-gunship .drone-shell{inset:5px 12px 8px}.blaster-target.enemy-gunship .drone-canopy{width:30%;height:29%}.blaster-target.enemy-gunship .drone-reactor{width:21%}.blaster-target.enemy-gunship .drone-engine{height:26%;width:14%}.blaster-target.enemy-gunship .enemy-mark{font-size:.56rem;color:#fff1a7}.blaster-target.enemy-gunship .enemy-label{bottom:-17px;color:#ffd08b;border-color:rgba(255,186,88,.38)}.blaster-target.enemy-gunship .enemy-hp{position:absolute;left:50%;top:-30px;transform:translateX(-50%);z-index:9;color:#ffd68c;font:1000 .48rem/1 ui-monospace;white-space:nowrap}.blaster-target.enemy-gunship .enemy-health-track{top:-20px;width:92px;height:6px}
@keyframes stormAceGunship{0%{transform:translate(0,-68px) scale(.72);opacity:0}12%{opacity:1}28%{transform:translate(calc(var(--drift) * .28),6px) scale(.94)}55%{transform:translate(calc(var(--drift) * -.22),38px) scale(1)}78%{transform:translate(calc(var(--drift) * .32),72px) scale(1.04)}100%{transform:translate(var(--drift),140px) scale(1.1);opacity:.94}}

.combat-elite-alert{position:absolute;left:50%;top:120px;transform:translateX(-50%);z-index:35;padding:8px 14px;border:1px solid rgba(255,131,82,.65);border-radius:999px;background:linear-gradient(180deg,rgba(56,13,21,.94),rgba(23,7,16,.94));color:#ffd0a1;font:1000 .68rem/1 ui-monospace;letter-spacing:.15em;box-shadow:0 0 32px rgba(255,70,64,.42);pointer-events:none;animation:combatEliteAlert 1.2s ease forwards}
@keyframes combatEliteAlert{0%{opacity:0;transform:translate(-50%,-16px) scale(.88)}18%,72%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,12px) scale(1.04)}}

.combat-pickup{position:absolute;z-index:17;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;display:grid;place-items:center;pointer-events:none;animation:combatPickupFall 4.1s linear forwards;filter:drop-shadow(0 7px 10px rgba(0,0,0,.35))}
.combat-pickup:before,.combat-pickup:after{content:"";position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(255,255,255,.6);animation:combatPickupSpin 1.15s linear infinite}.combat-pickup:after{inset:11px;border-style:dashed;animation-direction:reverse}
.combat-pickup span{z-index:2;font:1000 .55rem/1 ui-monospace;letter-spacing:.05em;text-shadow:0 1px 3px #000}.combat-pickup i{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#fff 0 7%,transparent 9%);box-shadow:0 0 24px currentColor}
.combat-pickup.pickup-power{color:#72efff;background:radial-gradient(circle,#dfffff 0 12%,#47dfff 13% 28%,#174a7a 29% 62%,#071526 63%);border:2px solid #8df4ff;box-shadow:0 0 24px rgba(74,228,255,.62)}
.combat-pickup.pickup-shield{color:#8cffad;background:radial-gradient(circle,#efffc5 0 12%,#6cff9c 13% 28%,#1e754c 29% 62%,#071d17 63%);border:2px solid #92ffb4;box-shadow:0 0 24px rgba(82,255,145,.58)}
.combat-pickup.collected{animation:combatPickupCollect .14s ease forwards!important}
@keyframes combatPickupFall{0%{transform:translateY(-8px) rotate(0deg);opacity:0}10%{opacity:1}100%{transform:translateY(250px) rotate(280deg);opacity:.22}}
@keyframes combatPickupSpin{to{transform:rotate(360deg)}}
@keyframes combatPickupCollect{to{transform:scale(1.6);opacity:0}}

.storm-destruction-burst{position:absolute;z-index:21;width:12px;height:12px;transform:translate(-50%,-50%);pointer-events:none}
.storm-destruction-burst>span{position:absolute;inset:-15px;border-radius:50%;border:3px solid #fff7ac;box-shadow:0 0 18px #ff9d3e,0 0 38px rgba(255,68,98,.72);animation:stormBurstRing .55s ease-out forwards}
.storm-destruction-burst>i{position:absolute;left:50%;top:50%;width:7px;height:18px;border-radius:999px;background:linear-gradient(180deg,#fff,#ffd85b 28%,#ff5d56 72%,transparent);transform-origin:50% 0;box-shadow:0 0 8px #ff8b46;animation:stormBurstShard .62s ease-out forwards}
.storm-destruction-burst>i:nth-of-type(1){--a:0deg}.storm-destruction-burst>i:nth-of-type(2){--a:60deg}.storm-destruction-burst>i:nth-of-type(3){--a:120deg}.storm-destruction-burst>i:nth-of-type(4){--a:180deg}.storm-destruction-burst>i:nth-of-type(5){--a:240deg}.storm-destruction-burst>i:nth-of-type(6){--a:300deg}.storm-destruction-burst.elite{transform:translate(-50%,-50%) scale(1.65)}
@keyframes stormBurstRing{0%{transform:scale(.15);opacity:1}100%{transform:scale(1.85);opacity:0}}
@keyframes stormBurstShard{0%{transform:rotate(var(--a)) translateY(0) scaleY(.7);opacity:1}100%{transform:rotate(var(--a)) translateY(-46px) scaleY(.25);opacity:0}}

#timesGameView[data-weapon-tier="3"] .blaster-beam{box-shadow:0 0 9px #fff,0 0 22px #ffd96f,0 0 40px rgba(255,120,181,.42)}
#timesGameView[data-weapon-tier="4"] .blaster-beam{width:5px;box-shadow:0 0 10px #fff,0 0 25px #ff82cf,0 0 46px rgba(91,235,255,.58)}
@media(max-width:540px){.blaster-target.enemy-gunship{width:94px;height:60px;margin:-30px 0 0 -47px}.blaster-target.enemy-gunship .enemy-health-track{width:72px}.combat-elite-alert{top:104px;font-size:.54rem}.combat-pickup{width:42px;height:42px;margin:-21px 0 0 -21px}.blaster-hud{max-width:94%;white-space:nowrap;gap:6px;font-size:.62rem}}
@media(prefers-reduced-motion:reduce){.storm-depth-layer,.combat-elite-alert,.combat-pickup,.combat-pickup:before,.combat-pickup:after,.storm-destruction-burst>span,.storm-destruction-burst>i,.blaster-target.enemy-gunship{animation:none!important}}

/* ============================================================
   V51.97 • Storm Direct Flight + Living Sigma Worldscapes
   Finger-drag flight, continuous autofire and a sector-specific
   multi-layer forward-scrolling environment. Original Sigma art
   direction: neon infrastructure, energy routes and tech terrain.
   ============================================================ */
#timesGameView{
  --world-ground:#071b31;
  --world-panel:color-mix(in srgb,var(--sector-a) 28%,#06111d);
  --world-line:color-mix(in srgb,var(--sector-a) 54%,transparent);
  --world-glow:color-mix(in srgb,var(--sector-b) 34%,transparent);
  --world-cloud:rgba(126,212,236,.13);
}
#timesGameView[data-sector="orbit"]{--world-ground:#120d2e;--world-panel:#24134c;--world-line:rgba(180,109,255,.45);--world-glow:rgba(221,75,255,.27);--world-cloud:rgba(171,114,255,.13)}
#timesGameView[data-sector="reactor"]{--world-ground:#251006;--world-panel:#48200a;--world-line:rgba(255,171,49,.50);--world-glow:rgba(255,83,36,.30);--world-cloud:rgba(255,157,70,.13)}
#timesGameView[data-sector="quantum"]{--world-ground:#05271f;--world-panel:#083d39;--world-line:rgba(70,246,190,.48);--world-glow:rgba(132,71,255,.28);--world-cloud:rgba(71,241,212,.12)}
#timesGameView[data-sector="core"]{--world-ground:#160b2e;--world-panel:#281348;--world-line:rgba(80,234,255,.52);--world-glow:rgba(255,73,219,.30);--world-cloud:rgba(239,106,255,.12)}

#timesGameView .storm-worldscape{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none;perspective:700px;opacity:.92;transition:filter .7s ease,opacity .4s ease}
#timesGameView .storm-world-glow{position:absolute;inset:-10%;background:radial-gradient(ellipse at 50% 12%,color-mix(in srgb,var(--sector-a) 16%,transparent),transparent 38%),radial-gradient(ellipse at 50% 95%,var(--world-glow),transparent 53%);mix-blend-mode:screen;animation:v5197WorldBreathe 5.4s ease-in-out infinite alternate}
@keyframes v5197WorldBreathe{from{opacity:.55;transform:scale(1)}to{opacity:1;transform:scale(1.035)}}

/* Distant skyline / infrastructure. It deliberately looks like Sigma tech,
   not real-world terrain or borrowed shooter artwork. */
#timesGameView .storm-horizon{position:absolute;left:-4%;right:-4%;top:8%;height:31%;opacity:.52;filter:drop-shadow(0 0 16px var(--world-glow));transform-origin:50% 100%;animation:v5197HorizonDrift 13s ease-in-out infinite alternate}
#timesGameView .storm-horizon:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--sector-a),var(--sector-c),transparent);box-shadow:0 0 20px var(--world-glow);opacity:.72}
#timesGameView .storm-horizon i{position:absolute;bottom:0;width:8%;border:1px solid color-mix(in srgb,var(--sector-a) 34%,transparent);border-bottom:0;background:linear-gradient(180deg,color-mix(in srgb,var(--world-panel) 74%,transparent),color-mix(in srgb,var(--world-ground) 92%,transparent));clip-path:polygon(18% 0,82% 0,100% 18%,88% 100%,12% 100%,0 18%);box-shadow:inset 0 0 20px color-mix(in srgb,var(--sector-a) 8%,transparent)}
#timesGameView .storm-horizon i:after{content:"";position:absolute;left:17%;right:17%;top:20%;height:3px;border-radius:99px;background:var(--sector-a);box-shadow:0 0 10px var(--sector-a);opacity:.65}
#timesGameView .storm-horizon i:nth-child(1){left:1%;height:44%}#timesGameView .storm-horizon i:nth-child(2){left:15%;height:70%;width:6%}#timesGameView .storm-horizon i:nth-child(3){left:29%;height:50%;width:10%}#timesGameView .storm-horizon i:nth-child(4){left:46%;height:84%;width:7%}#timesGameView .storm-horizon i:nth-child(5){left:61%;height:57%;width:9%}#timesGameView .storm-horizon i:nth-child(6){left:77%;height:75%;width:6%}#timesGameView .storm-horizon i:nth-child(7){left:90%;height:45%;width:8%}
@keyframes v5197HorizonDrift{from{transform:translateX(-1.4%) scale(1)}to{transform:translateX(1.4%) scale(1.025)}}

/* Two perspective ground layers scroll at different rates, creating the
   forward-motion cue that the old static grid was missing. */
#timesGameView .storm-terrain{position:absolute;left:-24%;right:-24%;top:20%;bottom:-36%;transform-origin:50% 100%;transform:rotateX(58deg) scale(1.08);background-color:var(--world-ground);will-change:background-position,transform;mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.42) 13%,#000 40%,#000 100%)}
#timesGameView .storm-terrain-far{opacity:.52;background-image:linear-gradient(90deg,var(--world-line) 1px,transparent 1px),linear-gradient(var(--world-line) 1px,transparent 1px),repeating-linear-gradient(90deg,transparent 0 68px,color-mix(in srgb,var(--world-panel) 78%,transparent) 69px 118px,transparent 119px 166px);background-size:84px 68px,84px 68px,332px 136px;animation:v5197TerrainFar 7.8s linear infinite}
#timesGameView .storm-terrain-near{opacity:.42;background-image:linear-gradient(90deg,color-mix(in srgb,var(--sector-a) 31%,transparent) 1px,transparent 1px),linear-gradient(color-mix(in srgb,var(--sector-b) 27%,transparent) 1px,transparent 1px),repeating-linear-gradient(90deg,transparent 0 22px,color-mix(in srgb,var(--world-panel) 76%,transparent) 23px 66px,transparent 67px 108px);background-size:54px 48px,54px 48px,216px 96px;mix-blend-mode:screen;animation:v5197TerrainNear 3.65s linear infinite}
@keyframes v5197TerrainFar{from{background-position:0 -136px,0 -136px,0 -272px}to{background-position:0 136px,0 136px,0 272px}}
@keyframes v5197TerrainNear{from{background-position:0 -96px,0 -96px,0 -192px}to{background-position:0 96px,0 96px,0 192px}}

/* The Sigma energy route is the visual spine of every level. Sector colour
   changes make the same system feel like a different location. */
#timesGameView .storm-energy-route{position:absolute;left:39%;top:17%;width:22%;height:100%;clip-path:polygon(44% 0,56% 0,98% 100%,2% 100%);background:linear-gradient(90deg,transparent 0 10%,color-mix(in srgb,var(--sector-a) 24%,transparent) 11% 13%,transparent 14% 46%,color-mix(in srgb,var(--sector-c) 20%,transparent) 47% 53%,transparent 54% 86%,color-mix(in srgb,var(--sector-a) 24%,transparent) 87% 89%,transparent 90%),repeating-linear-gradient(180deg,transparent 0 34px,color-mix(in srgb,var(--sector-a) 68%,transparent) 35px 38px,transparent 39px 74px);opacity:.58;filter:drop-shadow(0 0 12px var(--world-glow));animation:v5197RouteScroll 1.55s linear infinite}
#timesGameView .storm-energy-route i{position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,var(--sector-a),var(--sector-c),transparent);box-shadow:0 0 12px var(--sector-a);opacity:.75}
#timesGameView .storm-energy-route i:first-child{left:16%;transform:rotate(-1.5deg)}#timesGameView .storm-energy-route i:last-child{right:16%;transform:rotate(1.5deg)}
@keyframes v5197RouteScroll{from{background-position:0 0,0 -74px}to{background-position:0 0,0 74px}}

/* Soft atmosphere passes the camera at three speeds, giving depth without
   obscuring maths or targets. */
#timesGameView .storm-cloud-bank{position:absolute;top:-34%;width:64%;height:24%;border-radius:50%;background:radial-gradient(ellipse at 20% 50%,var(--world-cloud),transparent 48%),radial-gradient(ellipse at 52% 55%,color-mix(in srgb,var(--world-cloud) 80%,transparent),transparent 54%),radial-gradient(ellipse at 83% 45%,var(--world-cloud),transparent 48%);filter:blur(16px);opacity:.58;mix-blend-mode:screen;will-change:transform}
#timesGameView .cloud-bank-a{left:-18%;animation:v5197CloudPass 9.2s linear infinite}
#timesGameView .cloud-bank-b{right:-22%;animation:v5197CloudPass 6.8s linear -3.4s infinite;transform:scale(1.28)}
#timesGameView .cloud-bank-c{left:18%;width:82%;animation:v5197CloudPass 12.4s linear -7.1s infinite;opacity:.36;transform:scale(.8)}
@keyframes v5197CloudPass{0%{top:-34%;transform:translateX(-3%) scale(.82)}100%{top:112%;transform:translateX(10%) scale(1.35)}}

#timesGameView .storm-speed-lines{position:absolute;inset:-12% 0;opacity:.08;background-image:repeating-linear-gradient(108deg,transparent 0 46px,color-mix(in srgb,var(--sector-a) 55%,transparent) 47px 48px,transparent 49px 96px);background-size:220px 340px;animation:v5197SpeedLines 2.7s linear infinite;mix-blend-mode:screen}
#timesGameView.blaster-active .storm-speed-lines{opacity:.20;animation-duration:1.15s}
@keyframes v5197SpeedLines{from{background-position:0 -340px}to{background-position:-30px 340px}}

/* Sector-specific signatures make the world change, not merely recolour. */
#timesGameView[data-sector="orbit"] .storm-horizon{transform:skewX(-4deg);opacity:.42}
#timesGameView[data-sector="orbit"] .storm-terrain-near{background-size:72px 44px,72px 44px,288px 88px}
#timesGameView[data-sector="reactor"] .storm-horizon i{clip-path:polygon(28% 0,72% 0,86% 19%,100% 100%,0 100%,14% 19%);border-color:rgba(255,179,61,.34)}
#timesGameView[data-sector="reactor"] .storm-terrain-near{filter:saturate(1.28) brightness(1.08)}
#timesGameView[data-sector="quantum"] .storm-energy-route{filter:drop-shadow(0 0 18px rgba(84,255,205,.32)) hue-rotate(18deg);animation-duration:1.1s}
#timesGameView[data-sector="quantum"] .storm-horizon{opacity:.34;filter:blur(.3px) drop-shadow(0 0 23px rgba(124,93,255,.25))}
#timesGameView[data-sector="core"] .storm-world-glow{background:radial-gradient(circle at 50% 24%,rgba(82,232,255,.16),transparent 20%),radial-gradient(circle at 50% 24%,transparent 0 12%,rgba(255,72,214,.18) 13% 14%,transparent 15% 22%,rgba(255,215,76,.10) 23% 24%,transparent 25%),radial-gradient(ellipse at 50% 95%,var(--world-glow),transparent 52%)}
#timesGameView[data-sector="core"] .storm-horizon i:nth-child(even){border-color:rgba(255,73,218,.38)}

/* Old grid remains as a subtle tactical overlay only; the worldscape now
   supplies the actual sense of travel. */
#timesGameView .storm-grid-floor{opacity:.14!important;mix-blend-mode:screen}
#timesGameView.blaster-active .storm-grid-floor{opacity:.20!important}
#timesGameView.blaster-active .storm-worldscape{opacity:1;filter:saturate(1.14) contrast(1.03)}

/* V97.79 direct relative flight. The battle surface is the controller; a new touch never teleports the ship. */
#timesGameView.blaster-active .times-arena{touch-action:none!important;user-select:none!important;-webkit-user-select:none!important;cursor:crosshair}
#timesGameView.direct-flight-held .times-arena{cursor:grabbing}
#timesGameView.blaster-active .blaster-target{pointer-events:none!important}
#timesGameView.blaster-active .times-defender{transition:opacity .1s ease!important;will-change:left,top,transform;transform-origin:50% 50%;backface-visibility:hidden}
#timesGameView.direct-flight-held .times-defender{filter:drop-shadow(0 0 24px rgba(92,239,255,.54)) drop-shadow(0 9px 24px rgba(0,0,0,.32))!important}

/* Flight status replaces the joystick + FIRE deck. It is intentionally small
   and non-interactive so nearly the whole tablet remains usable for movement. */
#timesGameView .times-arena>.times-blaster-control-deck,
body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck,
html[data-display-layout="desktop"] #timesGameView.storm-running.blaster-active .times-arena>.times-blaster-control-deck{
  position:absolute!important;left:50%!important;right:auto!important;top:auto!important;bottom:9px!important;width:auto!important;max-width:min(92%,560px)!important;height:auto!important;min-height:0!important;transform:translateX(-50%)!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;display:block!important;pointer-events:none!important;z-index:31!important;overflow:visible!important
}
#timesGameView .times-arena>.times-blaster-control-deck.hidden{display:none!important}
.times-direct-flight-hint{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;padding:7px 12px;border:1px solid color-mix(in srgb,var(--sector-a) 38%,transparent);border-radius:999px;background:linear-gradient(90deg,rgba(3,14,26,.78),rgba(8,27,43,.68),rgba(3,14,26,.78));backdrop-filter:blur(7px);box-shadow:0 5px 20px rgba(0,0,0,.24),0 0 18px color-mix(in srgb,var(--sector-a) 11%,transparent);color:#edfaff;text-align:center}
.times-direct-flight-hint small{font:950 .47rem/1 system-ui;letter-spacing:.14em;color:var(--sector-a)}
.times-direct-flight-hint strong{font:1000 .58rem/1 system-ui;letter-spacing:.08em;color:#fff}
.times-direct-flight-hint span{font:850 .48rem/1 system-ui;letter-spacing:.05em;color:#a8e9f7}

/* While the learner is holding control, visible ammunition crosses the full lane
   even when no enemy is aligned. Releasing control removes the firing stream. */
.blaster-autofire-bolt{position:absolute;z-index:16;width:4px;height:30px;border-radius:999px;transform:translate(-50%,-100%);background:linear-gradient(180deg,#fff 0 8%,#92f5ff 9% 34%,#42bfff 35% 72%,transparent 100%);box-shadow:0 0 8px #7eefff,0 0 18px rgba(66,191,255,.48);pointer-events:none;animation:v5197AutofireBolt .48s linear forwards;will-change:transform,opacity}
.blaster-autofire-bolt.weapon-twin{background:linear-gradient(180deg,#fff,#6fffe3 40%,transparent);box-shadow:0 0 9px #68ffe2,0 0 18px rgba(86,255,224,.42)}
.blaster-autofire-bolt.weapon-lance{width:7px;height:48px;background:linear-gradient(180deg,#fff 0 15%,#ffe576 16% 48%,#ff8b49 49% 80%,transparent);box-shadow:0 0 11px #ffe879,0 0 24px rgba(255,155,67,.45);animation-duration:.40s}
.blaster-autofire-bolt.weapon-scatter{width:3px;height:26px;background:linear-gradient(180deg,#fff,#ff79e2 42%,transparent);box-shadow:0 0 9px #ff77dc,0 0 20px rgba(255,85,214,.42)}
@keyframes v5197AutofireBolt{0%{opacity:0;transform:translate(-50%,-100%) translateX(0) scaleY(.7)}12%{opacity:1}100%{opacity:.05;transform:translate(-50%,-760%) translateX(var(--bolt-drift,0px)) scaleY(1.1)}}

@media(max-width:700px){
  .times-direct-flight-hint{padding:6px 9px;gap:6px}.times-direct-flight-hint span{display:none}.times-direct-flight-hint strong{font-size:.52rem}
  #timesGameView .storm-horizon{top:10%;height:27%}
  #timesGameView .storm-energy-route{left:35%;width:30%}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView .storm-world-glow,#timesGameView .storm-horizon,#timesGameView .storm-terrain,#timesGameView .storm-energy-route,#timesGameView .storm-cloud-bank,#timesGameView .storm-speed-lines,.blaster-autofire-bolt{animation:none!important}
}

#timesGameView:not(.storm-running) .storm-worldscape>*{animation-play-state:paused!important}
#timesGameView.storm-running .storm-worldscape>*{animation-play-state:running}

/* =============================================================
   V51.98 • Storm Shop + Earned Combat Economy
   ============================================================= */
#timesGameView .times-arsenal-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
#timesGameView .storm-shop-pill{appearance:none;border:1px solid rgba(255,220,94,.62);background:linear-gradient(135deg,rgba(255,212,64,.18),rgba(15,25,48,.92));color:#fff7c7;border-radius:999px;padding:10px 15px;font:800 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.08em;box-shadow:0 0 0 1px rgba(255,223,91,.08) inset,0 8px 24px rgba(0,0,0,.24),0 0 22px rgba(255,205,63,.08);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
#timesGameView .storm-shop-pill:hover,#timesGameView .storm-shop-pill:focus-visible{transform:translateY(-1px);border-color:#ffe278;box-shadow:0 0 0 1px rgba(255,223,91,.16) inset,0 10px 28px rgba(0,0,0,.28),0 0 28px rgba(255,205,63,.18);outline:none}
#timesGameView .storm-shop-panel{position:relative;margin:14px 0 18px;padding:20px;border-radius:26px;border:1px solid rgba(255,222,106,.25);overflow:hidden;background:radial-gradient(circle at 86% -10%,rgba(255,210,66,.16),transparent 32%),radial-gradient(circle at 0 100%,rgba(73,222,255,.12),transparent 38%),linear-gradient(155deg,rgba(10,20,40,.98),rgba(7,13,28,.985));box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.04)}
#timesGameView .storm-shop-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(95,236,255,.045),transparent);background-size:220px 100%;animation:sigmaShopScan 7s linear infinite}
@keyframes sigmaShopScan{to{background-position:440px 0}}
#timesGameView .storm-shop-head{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
#timesGameView .storm-shop-head h3{margin:2px 0 5px;font-size:clamp(22px,3vw,32px);color:#fff}
#timesGameView .storm-shop-head p{margin:0;max-width:700px;color:rgba(225,239,255,.72)}
#timesGameView .storm-shop-wallet{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:9px;border:1px solid rgba(255,218,86,.22);background:rgba(0,0,0,.22);padding:9px 10px 9px 13px;border-radius:18px;white-space:nowrap}
#timesGameView .storm-shop-wallet>span{font-size:9px;font-weight:900;letter-spacing:.14em;color:rgba(255,246,198,.6)}
#timesGameView .storm-shop-wallet>strong{font-size:17px;color:#ffe46e}
#timesGameView .storm-shop-close{appearance:none;width:31px;height:31px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;font-size:22px;line-height:1;cursor:pointer}
#timesGameView .storm-shop-rule{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:9px 12px;margin:0 0 15px;border-radius:14px;border:1px solid rgba(94,228,255,.14);background:rgba(42,174,218,.055);font-size:10px;font-weight:900;letter-spacing:.11em;color:#bfefff}
#timesGameView .storm-shop-rule b{color:#ffe16a;font-size:13px}
#timesGameView .storm-shop-grid{position:relative;z-index:1;display:block}
#timesGameView .storm-shop-departments{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:940px;margin:0 auto 10px}
#timesGameView .storm-shop-department{appearance:none;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:9px;padding:10px 11px;border-radius:15px;border:1px solid rgba(130,174,214,.15);background:linear-gradient(180deg,rgba(24,34,54,.92),rgba(10,16,29,.96));color:#dcecff;text-align:left;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.03);transition:transform .16s ease,border-color .16s ease,background .16s ease}
#timesGameView .storm-shop-department>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(2,10,21,.72);border:1px solid rgba(108,224,255,.16);font-size:15px;color:#bfefff}
#timesGameView .storm-shop-department>strong{font-size:10px;letter-spacing:.09em;color:#eefaff}
#timesGameView .storm-shop-department>small{font-size:8px;letter-spacing:.09em;color:rgba(184,205,226,.58)}
#timesGameView .storm-shop-department:hover{transform:translateY(-1px);border-color:rgba(107,225,255,.28)}
#timesGameView .storm-shop-department.active{border-color:rgba(255,220,94,.45);background:linear-gradient(180deg,rgba(67,53,25,.92),rgba(16,22,35,.98));box-shadow:inset 0 0 0 1px rgba(255,220,94,.06),0 0 22px rgba(255,205,63,.07)}
#timesGameView .storm-shop-department.active>span{border-color:rgba(255,222,102,.36);color:#fff0a6;background:rgba(48,33,8,.76)}
#timesGameView .storm-shop-catalogue{position:relative;max-width:940px;margin:0 auto;padding:18px 18px 14px;border-radius:24px;border:1px solid rgba(255,218,92,.18);background:linear-gradient(180deg,rgba(16,24,42,.94),rgba(8,13,25,.96));box-shadow:inset 0 1px rgba(255,255,255,.04),0 18px 46px rgba(0,0,0,.26)}
#timesGameView .storm-shop-catalogue.department-weapons{border-color:rgba(154,132,255,.2)}
#timesGameView .storm-shop-catalogue.department-upgrades{border-color:rgba(95,227,255,.18)}
#timesGameView .storm-shop-catalogue.department-consumables{border-color:rgba(255,216,95,.2)}
#timesGameView .storm-shop-catalogue.department-utility{border-color:rgba(133,255,211,.18)}
#timesGameView .storm-shop-catalogue-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
#timesGameView .storm-shop-catalogue-head small{display:block;font-size:10px;font-weight:900;letter-spacing:.16em;color:rgba(255,230,148,.72)}
#timesGameView .storm-shop-catalogue-head strong{display:block;font-size:18px;color:#fff;margin:4px 0 2px}
#timesGameView .storm-shop-catalogue-head span{display:block;font-size:11px;color:rgba(217,233,252,.66)}
#timesGameView .storm-shop-page-count{padding:9px 12px;border-radius:999px;border:1px solid rgba(98,228,255,.18);background:rgba(8,18,36,.88);color:#cfefff;font-size:10px;font-weight:900;letter-spacing:.12em;white-space:nowrap}
#timesGameView .storm-shop-shelves{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:10px 2px 14px}
#timesGameView .storm-shop-shelves::before,#timesGameView .storm-shop-shelves::after{content:"";position:absolute;left:2px;right:2px;height:10px;border-radius:999px;background:linear-gradient(180deg,rgba(255,221,116,.16),rgba(67,41,11,.58));box-shadow:0 6px 18px rgba(0,0,0,.24),inset 0 1px rgba(255,246,210,.2);pointer-events:none;z-index:0}
#timesGameView .storm-shop-shelves::before{top:calc(33.333% + 4px)}
#timesGameView .storm-shop-shelves::after{top:calc(66.666% + 2px)}
#timesGameView .storm-shop-slot{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;min-height:214px;padding:14px;border:1px solid rgba(100,222,255,.14);border-radius:18px;background:linear-gradient(180deg,rgba(31,50,79,.92),rgba(12,19,34,.96));box-shadow:0 10px 24px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.04);transition:transform .18s ease,border-color .18s ease,background .18s ease}
#timesGameView .storm-shop-slot:hover{transform:translateY(-2px);border-color:rgba(114,233,255,.28);background:linear-gradient(180deg,rgba(35,57,90,.96),rgba(12,19,34,.98))}
#timesGameView .storm-shop-slot.permanent{border-color:rgba(95,227,255,.18)}
#timesGameView .storm-shop-slot.weapon{border-color:rgba(157,132,255,.22);background:radial-gradient(circle at 83% 8%,rgba(111,84,255,.12),transparent 34%),linear-gradient(180deg,rgba(34,33,73,.94),rgba(12,18,35,.97))}
#timesGameView .storm-shop-slot.weapon.equipped{border-color:rgba(255,220,94,.35);background:radial-gradient(circle at 85% 0,rgba(255,210,66,.16),transparent 34%),linear-gradient(180deg,rgba(54,45,32,.94),rgba(13,19,34,.97));box-shadow:0 10px 28px rgba(0,0,0,.18),inset 0 0 0 1px rgba(255,220,94,.05)}
#timesGameView .storm-shop-slot.weapon.locked{filter:saturate(.88)}
#timesGameView .storm-shop-slot.weapon .storm-shop-slot-icon{border-color:rgba(162,140,255,.3);color:#ded6ff;box-shadow:0 0 24px rgba(124,93,255,.12),inset 0 0 18px rgba(91,70,255,.07)}
#timesGameView .storm-shop-slot.weapon.equipped .storm-shop-slot-icon{border-color:rgba(255,222,102,.32);color:#fff4b9;box-shadow:0 0 24px rgba(255,207,72,.12),inset 0 0 18px rgba(255,206,68,.06)}
#timesGameView .storm-shop-slot.consumable{border-color:rgba(255,215,96,.18);background:linear-gradient(180deg,rgba(66,48,18,.5),rgba(13,20,36,.96))}
#timesGameView .storm-shop-slot.utility{border-color:rgba(152,255,212,.18)}
#timesGameView .storm-shop-slot.emergency{border-color:rgba(255,147,165,.2);background:linear-gradient(180deg,rgba(69,21,31,.55),rgba(16,18,31,.96))}
#timesGameView .storm-shop-slot.maxed{border-color:rgba(118,255,183,.26);background:linear-gradient(180deg,rgba(27,75,63,.55),rgba(10,20,33,.96))}
#timesGameView .storm-shop-slot.disabled{opacity:.96}
#timesGameView .storm-shop-slot.empty{justify-content:center;align-items:center;border-style:dashed;border-color:rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(10,15,28,.72),rgba(8,12,22,.88));box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
#timesGameView .storm-shop-slot-empty{display:grid;gap:5px;text-align:center;color:rgba(212,227,244,.5)}
#timesGameView .storm-shop-slot-empty span{font-size:10px;font-weight:900;letter-spacing:.14em;color:rgba(255,228,145,.56)}
#timesGameView .storm-shop-slot-empty strong{font-size:13px;font-weight:700;color:rgba(220,234,247,.62)}
#timesGameView .storm-shop-slot-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
#timesGameView .storm-shop-slot-top small{font-size:9px;font-weight:900;letter-spacing:.12em;color:rgba(141,233,255,.78)}
#timesGameView .storm-shop-slot.consumable .storm-shop-slot-top small{color:rgba(255,229,139,.82)}
#timesGameView .storm-shop-slot.emergency .storm-shop-slot-top small{color:rgba(255,170,188,.82)}
#timesGameView .storm-shop-slot-price{font-size:10px;font-weight:900;letter-spacing:.08em;color:#fff2aa;white-space:nowrap}
#timesGameView .storm-shop-slot-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;border:1px solid rgba(104,230,255,.24);background:radial-gradient(circle at 35% 25%,rgba(129,239,255,.22),transparent 42%),rgba(3,12,25,.76);color:#dffbff;font-size:22px;font-weight:950;box-shadow:0 0 22px rgba(65,218,255,.09),inset 0 0 18px rgba(61,215,255,.07)}
#timesGameView .storm-shop-slot.consumable .storm-shop-slot-icon{border-color:rgba(255,221,103,.25);color:#fff2a6;box-shadow:0 0 22px rgba(255,209,62,.07)}
#timesGameView .storm-shop-slot.emergency .storm-shop-slot-icon{border-color:rgba(255,170,188,.25);color:#ffd1db;box-shadow:0 0 22px rgba(255,97,137,.07)}
#timesGameView .storm-shop-slot-copy{display:grid;gap:5px;min-width:0;flex:1}
#timesGameView .storm-shop-slot-copy strong{font-size:15px;line-height:1.18;color:#fff}
#timesGameView .storm-shop-slot-copy span{font-size:11px;line-height:1.4;color:rgba(219,235,252,.7)}
#timesGameView .storm-shop-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:96px;padding:13px;border:1px solid rgba(100,222,255,.14);border-radius:18px;background:linear-gradient(135deg,rgba(24,44,71,.76),rgba(10,18,35,.88));box-shadow:inset 0 1px rgba(255,255,255,.03);transition:border-color .18s ease,transform .18s ease,background .18s ease}
#timesGameView .storm-shop-card:hover{transform:translateY(-1px);border-color:rgba(100,222,255,.28);background:linear-gradient(135deg,rgba(27,51,82,.86),rgba(10,18,35,.94))}
#timesGameView .storm-shop-card.consumable{border-color:rgba(255,213,86,.15);background:linear-gradient(135deg,rgba(65,48,18,.36),rgba(10,18,35,.9))}
#timesGameView .storm-shop-card.maxed{border-color:rgba(118,255,183,.22);background:linear-gradient(135deg,rgba(26,74,65,.35),rgba(10,18,35,.9))}
#timesGameView .storm-shop-card-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;border:1px solid rgba(104,230,255,.24);background:radial-gradient(circle at 35% 25%,rgba(129,239,255,.22),transparent 42%),rgba(3,12,25,.76);color:#dffbff;font-size:20px;font-weight:950;box-shadow:0 0 22px rgba(65,218,255,.09),inset 0 0 18px rgba(61,215,255,.07)}
#timesGameView .storm-shop-card.consumable .storm-shop-card-icon{border-color:rgba(255,221,103,.25);color:#fff2a6;box-shadow:0 0 22px rgba(255,209,62,.07)}
#timesGameView .storm-shop-card-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
#timesGameView .storm-shop-card-copy small{font-size:9px;font-weight:900;letter-spacing:.1em;color:rgba(129,232,255,.72)}
#timesGameView .storm-shop-card.consumable .storm-shop-card-copy small{color:rgba(255,229,139,.72)}
#timesGameView .storm-shop-card-copy strong{font-size:15px;color:#fff}
#timesGameView .storm-shop-card-copy span{font-size:11px;line-height:1.35;color:rgba(219,235,252,.68)}
#timesGameView .storm-shop-card>button{appearance:none;min-width:112px;border:1px solid rgba(99,227,255,.28);border-radius:12px;background:linear-gradient(135deg,rgba(36,190,226,.18),rgba(36,104,191,.14));color:#dcfaff;padding:10px 11px;font-size:10px;font-weight:900;letter-spacing:.055em;cursor:pointer}
#timesGameView .storm-shop-card.consumable>button{border-color:rgba(255,218,91,.26);background:linear-gradient(135deg,rgba(255,204,50,.14),rgba(133,80,17,.1));color:#fff0a3}
#timesGameView .storm-shop-card>button:disabled{opacity:.38;cursor:not-allowed;filter:saturate(.65)}
#timesGameView .storm-shop-slot>button{appearance:none;width:100%;margin-top:auto;border:1px solid rgba(99,227,255,.28);border-radius:12px;background:linear-gradient(135deg,rgba(36,190,226,.18),rgba(36,104,191,.14));color:#dcfaff;padding:10px 11px;font-size:10px;font-weight:900;letter-spacing:.055em;cursor:pointer}
#timesGameView .storm-shop-slot.consumable>button{border-color:rgba(255,218,91,.26);background:linear-gradient(135deg,rgba(255,204,50,.14),rgba(133,80,17,.1));color:#fff0a3}
#timesGameView .storm-shop-slot.emergency>button{border-color:rgba(255,170,188,.24);background:linear-gradient(135deg,rgba(255,113,155,.1),rgba(123,39,64,.12));color:#ffd7e3}
#timesGameView .storm-shop-slot.maxed>button{border-color:rgba(118,255,183,.24);background:linear-gradient(135deg,rgba(83,221,163,.14),rgba(33,107,83,.12));color:#d4ffee}
#timesGameView .storm-shop-slot>button:disabled{opacity:.5;cursor:not-allowed;filter:saturate(.72)}
#timesGameView .storm-shop-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}
#timesGameView .storm-shop-page-btn{appearance:none;min-width:108px;border:1px solid rgba(255,220,94,.28);border-radius:12px;background:linear-gradient(135deg,rgba(255,212,64,.14),rgba(15,25,48,.9));color:#fff5bf;padding:10px 12px;font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer}
#timesGameView .storm-shop-page-btn:disabled{opacity:.4;cursor:not-allowed}
#timesGameView .storm-shop-page-meta{display:grid;justify-items:center;gap:3px;min-width:120px;color:rgba(210,228,245,.7)}
#timesGameView .storm-shop-page-meta>span{font-size:8px;font-weight:900;letter-spacing:.14em}
#timesGameView .storm-shop-page-meta>strong{font-size:10px;color:#fff0a8}
#timesGameView .storm-shop-page-meta .storm-shop-page-dots{min-height:12px}
#timesGameView .storm-shop-page-dots{display:flex;align-items:center;justify-content:center;gap:8px;flex:1}
#timesGameView .storm-shop-page-dot{appearance:none;width:12px;height:12px;border-radius:50%;border:1px solid rgba(119,235,255,.28);background:rgba(66,96,132,.5);box-shadow:inset 0 1px rgba(255,255,255,.08);cursor:pointer}
#timesGameView .storm-shop-page-dot.active{background:linear-gradient(180deg,#fff3ad,#ffd14d);border-color:rgba(255,225,116,.8);box-shadow:0 0 12px rgba(255,211,77,.36)}
#timesGameView .storm-shop-mastery{display:flex;align-items:center;gap:8px;margin-top:5px}
#timesGameView .storm-shop-mastery span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#d5cbff}
#timesGameView .storm-shop-mastery i{height:4px;flex:1;border-radius:99px;background:linear-gradient(90deg,rgba(126,99,255,.82),rgba(90,225,255,.72));box-shadow:0 0 8px rgba(119,102,255,.2)}
#timesGameView .storm-shop-stock{display:flex;align-items:center;gap:4px;margin-top:5px}
#timesGameView .storm-shop-stock>span{display:grid;place-items:center;min-width:20px;height:20px;border-radius:7px;background:rgba(0,0,0,.24);border:1px solid rgba(255,224,111,.18);font-size:9px;font-weight:900;color:#fff1a1}
#timesGameView .storm-shop-stock i{width:10px;height:5px;border-radius:99px;background:rgba(255,255,255,.09)}
#timesGameView .storm-shop-stock i.on{background:linear-gradient(90deg,#ffd75f,#fff0a5);box-shadow:0 0 7px rgba(255,213,78,.25)}
#timesGameView .storm-shop-reboot-steps{display:flex;gap:5px;margin-top:5px}
#timesGameView .storm-shop-reboot-steps i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1px solid rgba(255,162,181,.18);background:rgba(78,23,38,.42);color:#ffd3dc;font-style:normal;font-size:9px;font-weight:900}
#timesGameView .storm-shop-levels{display:flex;align-items:center;gap:4px;margin-top:5px}
#timesGameView .storm-shop-levels i{display:block;width:19px;height:4px;border-radius:99px;background:rgba(255,255,255,.10);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
#timesGameView .storm-shop-levels i.on{background:linear-gradient(90deg,#45ddff,#81ffca);box-shadow:0 0 9px rgba(75,231,255,.34)}
#timesGameView .storm-shop-foot{position:relative;z-index:1;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);font-size:11px;color:rgba(215,233,252,.64)}
#timesGameView .storm-shop-foot strong{color:#fff1a0}

/* The first five maths levels are readable training drones. Level 6 onward gains movement. */
#timesGameView .falling-sum.drone-training .campaign-expression{animation:sigmaDroneIdle 2.3s ease-in-out infinite}
#timesGameView .falling-sum.drone-ai-live{filter:drop-shadow(0 0 10px rgba(255,86,139,.13))}
#timesGameView .falling-sum.drone-ai-live .campaign-expression{position:relative;animation:sigmaMathDroneJink 1.5s ease-in-out infinite;will-change:transform}
#timesGameView .falling-sum.drone-ai-live.ai-2 .campaign-expression{animation-duration:1.25s}
#timesGameView .falling-sum.drone-ai-live.ai-3 .campaign-expression{animation-duration:1.05s}
#timesGameView .falling-sum.drone-ai-live.ai-4 .campaign-expression,#timesGameView .falling-sum.drone-ai-live.ai-5 .campaign-expression{animation-duration:.9s}
#timesGameView .falling-sum.drone-ai-live::after{content:"AI";position:absolute;right:-7px;top:-7px;padding:2px 5px;border-radius:999px;border:1px solid rgba(255,88,136,.4);background:rgba(55,7,27,.88);color:#ff9bbb;font:900 7px/1 system-ui;letter-spacing:.08em;box-shadow:0 0 10px rgba(255,62,124,.15)}
@keyframes sigmaDroneIdle{0%,100%{transform:translateX(0)}50%{transform:translateX(2px)}}
@keyframes sigmaMathDroneJink{0%,100%{transform:translateX(-5px) rotate(-.5deg)}50%{transform:translateX(5px) rotate(.5deg)}}

/* Persistent Vector Wingman visual support. */
#timesGameView .times-defender .storm-wingman{display:none;position:absolute;top:47%;width:18px;height:26px;z-index:-1;clip-path:polygon(50% 0,100% 62%,76% 100%,50% 78%,24% 100%,0 62%);background:linear-gradient(180deg,#d9fbff 0,#48d8ff 26%,#123b66 72%,#071322 100%);border-radius:5px;filter:drop-shadow(0 0 7px rgba(79,224,255,.65))}
#timesGameView .times-defender[data-wingman="1"] .storm-wingman-left,#timesGameView .times-defender[data-wingman="2"] .storm-wingman-left,#timesGameView .times-defender[data-wingman="2"] .storm-wingman-right{display:block}
#timesGameView .times-defender .storm-wingman-left{left:-31px;transform:translateY(-50%) rotate(-5deg)}
#timesGameView .times-defender .storm-wingman-right{right:-31px;transform:translateY(-50%) rotate(5deg)}
#timesGameView .times-defender[data-wingman="1"] .storm-wingman-left{left:-27px}

@media (max-width:780px){
  #timesGameView .times-arsenal-head{align-items:flex-start}
  #timesGameView .times-arsenal-actions{justify-content:flex-start}
  #timesGameView .storm-shop-panel{padding:14px;border-radius:20px}
  #timesGameView .storm-shop-head{flex-direction:column}
  #timesGameView .storm-shop-wallet{width:100%;grid-template-columns:1fr auto auto}
  #timesGameView .storm-shop-departments{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  #timesGameView .storm-shop-department{padding:9px}
  #timesGameView .storm-shop-catalogue{padding:14px 12px 12px;border-radius:20px}
  #timesGameView .storm-shop-catalogue-head{flex-direction:column}
  #timesGameView .storm-shop-page-count{align-self:flex-start}
  #timesGameView .storm-shop-shelves{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:8px 0 10px}
  #timesGameView .storm-shop-slot{min-height:190px;padding:11px}
  #timesGameView .storm-shop-slot-icon{width:48px;height:48px;border-radius:13px;font-size:18px}
  #timesGameView .storm-shop-slot-copy strong{font-size:13px}
  #timesGameView .storm-shop-slot-copy span{font-size:10px}
  #timesGameView .storm-shop-pager{flex-wrap:wrap}
  #timesGameView .storm-shop-page-btn{min-width:0;flex:1 1 120px}
  #timesGameView .storm-shop-page-dots{order:-1;width:100%;margin-bottom:2px}
  #timesGameView .storm-shop-rule{justify-content:flex-start;font-size:8px;gap:6px}
}
#timesGameView .storm-homing-missile{position:absolute;z-index:28;width:5px;height:24px;border-radius:99px;background:linear-gradient(180deg,#fff,#ffe46b 40%,#ff914f 72%,rgba(255,88,42,0));box-shadow:0 0 9px rgba(255,226,107,.88),0 10px 14px rgba(255,89,42,.32);transform:translate(-50%,-100%);animation:stormMissileLaunch .52s cubic-bezier(.18,.7,.15,1) forwards;pointer-events:none}
@keyframes stormMissileLaunch{0%{opacity:0;transform:translate(-50%,0) scale(.65)}15%{opacity:1}100%{opacity:0;transform:translate(-50%,-270px) scale(1.05)}}
#timesGameView .times-defender.shooter-live[data-wingman="2"] .storm-wingman{filter:drop-shadow(0 0 9px rgba(79,224,255,.85))}


/* ============================================================
   V51.99 • Storm Escalation
   Level 9+ turns the reward break into a longer assault: faster
   world motion, armour pressure, surge alerts and readiness UI.
   ============================================================ */
.storm-readiness-strip{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:10px 0 14px;padding:9px 12px;border:1px solid rgba(96,226,255,.23);border-radius:14px;background:linear-gradient(90deg,rgba(3,17,31,.84),rgba(8,34,49,.72),rgba(3,17,31,.84));color:#c9f7ff;box-shadow:inset 0 0 24px rgba(59,210,255,.035)}
.storm-readiness-strip span{font:850 .65rem/1.2 system-ui;letter-spacing:.06em}.storm-readiness-strip span b{color:#fff;font-size:.78rem}.storm-readiness-strip i{font-style:normal;color:#65eaff}.storm-readiness-strip>strong{padding:5px 9px;border-radius:999px;background:rgba(51,222,166,.11);border:1px solid rgba(79,241,185,.28);color:#8fffd2;font:950 .58rem/1 system-ui;letter-spacing:.1em}
.storm-readiness-strip.underpowered{border-color:rgba(255,126,70,.42);background:linear-gradient(90deg,rgba(44,12,20,.86),rgba(71,27,17,.76),rgba(44,12,20,.86));box-shadow:0 0 28px rgba(255,91,52,.09),inset 0 0 24px rgba(255,151,66,.04)}
.storm-readiness-strip.underpowered>strong{background:rgba(255,91,52,.12);border-color:rgba(255,148,76,.42);color:#ffd18e}
.combat-surge-alert{position:absolute;left:50%;top:86px;transform:translateX(-50%);z-index:36;min-width:min(78%,420px);padding:9px 14px;text-align:center;border:1px solid rgba(255,199,84,.58);border-radius:999px;background:linear-gradient(90deg,rgba(24,8,31,.94),rgba(80,31,13,.92),rgba(24,8,31,.94));color:#fff1b7;font:1000 .67rem/1 ui-monospace;letter-spacing:.14em;box-shadow:0 0 34px rgba(255,120,45,.30);pointer-events:none;animation:v5199SurgeAlert 1.05s ease forwards}
@keyframes v5199SurgeAlert{0%{opacity:0;transform:translate(-50%,-18px) scale(.9)}18%,70%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,14px) scale(1.03)}}
#timesGameView.blaster-active[data-combat-band="assault"] .storm-terrain-near,#timesGameView.blaster-active[data-combat-band="heavy"] .storm-terrain-near,#timesGameView.blaster-active[data-combat-band="elite"] .storm-terrain-near,#timesGameView.blaster-active[data-combat-band="omega"] .storm-terrain-near,#timesGameView.blaster-active[data-combat-band="core-assault"] .storm-terrain-near{animation-duration:2.55s;opacity:.50}
#timesGameView.blaster-active[data-combat-band="assault"] .storm-terrain-far,#timesGameView.blaster-active[data-combat-band="heavy"] .storm-terrain-far,#timesGameView.blaster-active[data-combat-band="elite"] .storm-terrain-far,#timesGameView.blaster-active[data-combat-band="omega"] .storm-terrain-far,#timesGameView.blaster-active[data-combat-band="core-assault"] .storm-terrain-far{animation-duration:5.4s;opacity:.60}
#timesGameView.blaster-active[data-combat-band="assault"] .storm-energy-route,#timesGameView.blaster-active[data-combat-band="heavy"] .storm-energy-route,#timesGameView.blaster-active[data-combat-band="elite"] .storm-energy-route,#timesGameView.blaster-active[data-combat-band="omega"] .storm-energy-route,#timesGameView.blaster-active[data-combat-band="core-assault"] .storm-energy-route{animation-duration:.92s;opacity:.72}
#timesGameView.blaster-active[data-combat-band="assault"] .storm-speed-lines,#timesGameView.blaster-active[data-combat-band="heavy"] .storm-speed-lines,#timesGameView.blaster-active[data-combat-band="elite"] .storm-speed-lines,#timesGameView.blaster-active[data-combat-band="omega"] .storm-speed-lines,#timesGameView.blaster-active[data-combat-band="core-assault"] .storm-speed-lines{animation-duration:.72s;opacity:.29}
#timesGameView.blaster-active[data-combat-band="heavy"] .storm-worldscape,#timesGameView.blaster-active[data-combat-band="elite"] .storm-worldscape,#timesGameView.blaster-active[data-combat-band="omega"] .storm-worldscape,#timesGameView.blaster-active[data-combat-band="core-assault"] .storm-worldscape{filter:saturate(1.24) contrast(1.08) brightness(1.03)}
@media(prefers-reduced-motion:reduce){.combat-surge-alert{animation:none!important}}


/* ============================================================
   V52.00 • PREMIUM STORM WORLDSCAPES
   Professional five-sector scenery. The old procedural bar/grid
   system is intentionally disabled to eliminate visual glitching.
   Maths mode is calm/readable; combat increases travel intensity.
   ============================================================ */
#timesGameView{
  --premium-scene:url("assets/storm/launch-premium.svg");
  --premium-a:#55eaff;--premium-b:#527dff;--premium-c:#8ff7ff;
}
#timesGameView[data-sector="launch"]{--premium-scene:url("assets/storm/launch-premium.svg");--premium-a:#55eaff;--premium-b:#4b8eff;--premium-c:#a7fbff}
#timesGameView[data-sector="orbit"]{--premium-scene:url("assets/storm/orbit-premium.svg");--premium-a:#58dfff;--premium-b:#b56aff;--premium-c:#c6f4ff}
#timesGameView[data-sector="reactor"]{--premium-scene:url("assets/storm/reactor-premium.svg");--premium-a:#ffb64b;--premium-b:#ff633f;--premium-c:#ffe19a}
#timesGameView[data-sector="quantum"]{--premium-scene:url("assets/storm/quantum-premium.svg");--premium-a:#5affd4;--premium-b:#9275ff;--premium-c:#baffee}
#timesGameView[data-sector="core"]{--premium-scene:url("assets/storm/core-premium.svg");--premium-a:#62eaff;--premium-b:#ff73dd;--premium-c:#ffe686}

/* The arena becomes a window into a place, not a glowing UI wallpaper. */
#timesGameView .times-arena{
  background:#020812!important;
  border-color:color-mix(in srgb,var(--premium-a) 52%,#162a43)!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--premium-a) 15%,transparent),0 22px 58px rgba(0,0,0,.36),inset 0 0 0 1px rgba(255,255,255,.025)!important;
}
#timesGameView .storm-worldscape{inset:0;opacity:1!important;perspective:none!important;overflow:hidden;background:#020812}
#timesGameView .storm-premium-scene{position:absolute;inset:0;overflow:hidden;isolation:isolate;opacity:1}
#timesGameView .storm-scene-art{position:absolute;inset:-5% -4% -7%;background-image:var(--premium-scene);background-repeat:no-repeat;background-position:50% 46%;background-size:cover;will-change:transform;transform:scale(1.045) translate3d(0,-1.1%,0);animation:v5200SceneDrift 24s ease-in-out infinite alternate;filter:saturate(1.04) contrast(1.045) brightness(.91)}
#timesGameView .storm-city-foreground{position:absolute;left:-2%;right:-2%;bottom:-2%;height:73%;background:url("assets/storm/sigma-city-flightway.webp") center bottom/cover no-repeat;mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.30) 11%,#000 28%,#000 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.30) 11%,#000 28%,#000 100%);opacity:.78;will-change:transform,filter;transform:translate3d(0,1.5%,0) scale(1.035);animation:v5200CityTravel 14s ease-in-out infinite alternate;filter:saturate(1.02) contrast(1.04) brightness(.88);z-index:1}
#timesGameView[data-sector="launch"] .storm-city-foreground{filter:hue-rotate(-10deg) saturate(.90) contrast(1.04) brightness(.82)}
#timesGameView[data-sector="orbit"] .storm-city-foreground{filter:saturate(1.08) contrast(1.06) brightness(.90)}
#timesGameView[data-sector="reactor"] .storm-city-foreground{filter:hue-rotate(145deg) saturate(1.26) contrast(1.08) brightness(.80)}
#timesGameView[data-sector="quantum"] .storm-city-foreground{filter:hue-rotate(72deg) saturate(1.18) contrast(1.06) brightness(.82)}
#timesGameView[data-sector="core"] .storm-city-foreground{filter:hue-rotate(18deg) saturate(1.20) contrast(1.10) brightness(.84)}
@keyframes v5200CityTravel{from{transform:translate3d(-.7%,2.2%,0) scale(1.035)}to{transform:translate3d(.7%,-1.2%,0) scale(1.075)}}
@keyframes v5200SceneDrift{0%{transform:scale(1.045) translate3d(-.5%,-1.8%,0)}100%{transform:scale(1.09) translate3d(.7%,1.6%,0)}}

/* Slow atmospheric sheets create depth without noisy repeated marks. */
#timesGameView .storm-scene-atmosphere{position:absolute;left:-15%;right:-15%;height:34%;pointer-events:none;mix-blend-mode:screen;will-change:transform,opacity}
#timesGameView .atmosphere-far{top:-18%;opacity:.22;background:radial-gradient(ellipse at 22% 52%,rgba(224,247,255,.42),transparent 45%),radial-gradient(ellipse at 58% 35%,color-mix(in srgb,var(--premium-a) 20%,transparent),transparent 52%),radial-gradient(ellipse at 88% 58%,rgba(226,235,255,.28),transparent 42%);filter:blur(24px);animation:v5200FarMist 18s linear infinite}
#timesGameView .atmosphere-near{bottom:-22%;height:42%;opacity:.30;background:radial-gradient(ellipse at 20% 50%,rgba(239,250,255,.38),transparent 44%),radial-gradient(ellipse at 60% 62%,color-mix(in srgb,var(--premium-b) 24%,transparent),transparent 50%),radial-gradient(ellipse at 88% 45%,rgba(238,248,255,.32),transparent 43%);filter:blur(30px);animation:v5200NearMist 11s ease-in-out infinite alternate}
@keyframes v5200FarMist{0%{transform:translate3d(-3%,-12%,0)}100%{transform:translate3d(8%,315%,0)}}
@keyframes v5200NearMist{from{transform:translate3d(-5%,2%,0) scale(1)}to{transform:translate3d(6%,-5%,0) scale(1.08)}}

/* One coherent perspective flightway replaces the old random-looking bars. */
#timesGameView .storm-premium-flightway{position:absolute;left:31%;right:31%;top:41%;bottom:-12%;clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);background:linear-gradient(90deg,rgba(0,4,12,.20),rgba(4,18,34,.72) 12%,rgba(8,34,58,.70) 49%,rgba(4,18,34,.72) 88%,rgba(0,4,12,.20)),repeating-linear-gradient(180deg,transparent 0 88px,color-mix(in srgb,var(--premium-a) 58%,transparent) 89px 94px,transparent 95px 178px);border-left:1px solid color-mix(in srgb,var(--premium-a) 42%,transparent);border-right:1px solid color-mix(in srgb,var(--premium-b) 42%,transparent);box-shadow:inset 22px 0 35px -28px var(--premium-a),inset -22px 0 35px -28px var(--premium-b),0 0 28px rgba(0,0,0,.34);opacity:.42;transform-origin:50% 0;animation:v5200Flightway 5.8s linear infinite}
#timesGameView .storm-premium-flightway:before,#timesGameView .storm-premium-flightway:after{content:"";position:absolute;top:0;bottom:0;width:3px;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--premium-a) 75%,transparent) 34%,var(--premium-a) 72%,transparent);box-shadow:0 0 14px var(--premium-a);opacity:.60}
#timesGameView .storm-premium-flightway:before{left:22%}#timesGameView .storm-premium-flightway:after{right:22%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--premium-b) 75%,transparent) 34%,var(--premium-b) 72%,transparent);box-shadow:0 0 14px var(--premium-b)}
#timesGameView .storm-premium-flightway>i{position:absolute;left:50%;width:64%;height:18px;transform:translateX(-50%);clip-path:polygon(50% 100%,0 0,18% 0,50% 62%,82% 0,100% 0);background:var(--premium-a);filter:drop-shadow(0 0 10px var(--premium-a));opacity:.30}
#timesGameView .storm-premium-flightway>i:first-child{top:28%}#timesGameView .storm-premium-flightway>i:nth-child(2){top:62%;width:78%}
#timesGameView .storm-premium-flightway>b{position:absolute;left:50%;top:4%;bottom:0;width:2px;transform:translateX(-50%);background:linear-gradient(transparent,var(--premium-a),transparent);box-shadow:0 0 12px var(--premium-a);opacity:.38}
@keyframes v5200Flightway{from{background-position:0 0,0 -178px}to{background-position:0 0,0 178px}}

/* Small coherent traffic passes through the scene. It becomes much more visible in combat. */
#timesGameView .storm-premium-traffic{position:absolute;inset:0;opacity:.20;transition:opacity .35s ease}
#timesGameView .storm-premium-traffic i{position:absolute;top:-8%;left:var(--x,20%);width:18px;height:5px;border-radius:90% 20% 70% 30%;background:linear-gradient(90deg,var(--premium-c),var(--premium-a) 46%,#162c4c 47% 82%,var(--premium-b));box-shadow:0 0 7px var(--premium-a),-18px 8px 20px color-mix(in srgb,var(--premium-a) 35%,transparent);transform:rotate(var(--r,8deg));animation:v5200Traffic var(--d,8s) linear var(--delay,0s) infinite;will-change:transform,top;opacity:.76}
#timesGameView .storm-premium-traffic i:nth-child(1){--x:10%;--d:9.4s;--delay:-2s;--r:12deg}#timesGameView .storm-premium-traffic i:nth-child(2){--x:78%;--d:7.8s;--delay:-5s;--r:-13deg}#timesGameView .storm-premium-traffic i:nth-child(3){--x:30%;--d:11.2s;--delay:-7.5s;--r:5deg}#timesGameView .storm-premium-traffic i:nth-child(4){--x:91%;--d:10.1s;--delay:-1.4s;--r:-9deg}#timesGameView .storm-premium-traffic i:nth-child(5){--x:58%;--d:12.6s;--delay:-9s;--r:3deg}#timesGameView .storm-premium-traffic i:nth-child(6){--x:18%;--d:8.7s;--delay:-6.1s;--r:9deg}
@keyframes v5200Traffic{0%{top:-9%;transform:translate3d(0,-20px,0) rotate(var(--r)) scale(.55);opacity:0}12%{opacity:.72}88%{opacity:.65}100%{top:108%;transform:translate3d(var(--drift,45px),20px,0) rotate(var(--r)) scale(1.45);opacity:0}}

#timesGameView .storm-scene-lightwash{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 80%,color-mix(in srgb,var(--premium-a) 16%,transparent),transparent 43%),linear-gradient(180deg,rgba(0,4,12,.04),rgba(0,4,12,.03) 45%,rgba(0,4,12,.16));mix-blend-mode:screen;pointer-events:none;animation:v5200LightBreathe 6s ease-in-out infinite alternate}
#timesGameView .storm-scene-vignette{position:absolute;inset:0;box-shadow:inset 0 0 80px 12px rgba(0,5,15,.46),inset 0 -100px 110px rgba(0,5,15,.24);pointer-events:none}
@keyframes v5200LightBreathe{from{opacity:.55}to{opacity:.92}}

/* Kill the legacy procedural world elements that caused the striped/glitchy appearance. */
#timesGameView .storm-worldscape>.storm-world-glow,
#timesGameView .storm-worldscape>.storm-horizon,
#timesGameView .storm-worldscape>.storm-terrain,
#timesGameView .storm-worldscape>.storm-energy-route,
#timesGameView .storm-worldscape>.storm-cloud-bank,
#timesGameView .storm-worldscape>.storm-speed-lines,
#timesGameView .storm-grid-floor,
#timesGameView .storm-starfield{display:none!important;animation:none!important}
#timesGameView .storm-side-rail{opacity:.20!important;width:2px!important;filter:none!important;box-shadow:0 0 12px color-mix(in srgb,var(--premium-a) 45%,transparent)!important}

/* Calm maths phase: beautiful scenery, but answers always dominate. */
#timesGameView:not(.blaster-active) .storm-scene-art{filter:saturate(.90) contrast(1.025) brightness(.73)}
#timesGameView:not(.blaster-active) .storm-city-foreground{opacity:.62;animation-duration:18s}
#timesGameView:not(.blaster-active) .storm-premium-flightway{opacity:.24;animation-duration:7.8s}
#timesGameView:not(.blaster-active) .storm-premium-traffic{opacity:.10}
#timesGameView:not(.blaster-active) .storm-scene-vignette{box-shadow:inset 0 0 100px 20px rgba(0,5,15,.55),inset 0 -120px 140px rgba(0,5,15,.34)}

/* Combat phase: increase the sense of speed without changing the controller or gameplay. */
#timesGameView.blaster-active .storm-scene-art{filter:saturate(1.12) contrast(1.08) brightness(.90);animation-duration:8.5s}
#timesGameView.blaster-active .storm-city-foreground{opacity:.90;animation-duration:5.8s}
#timesGameView.blaster-active .storm-premium-flightway{opacity:.58;animation-duration:1.7s;filter:brightness(1.14)}
#timesGameView.blaster-active .storm-premium-traffic{opacity:.58}
#timesGameView.blaster-active .atmosphere-far{animation-duration:7.2s;opacity:.34}
#timesGameView.blaster-active .atmosphere-near{animation-duration:5.4s;opacity:.40}
#timesGameView.blaster-active .storm-scene-lightwash{opacity:1}

/* Premium maths drones: metallic capsules with restrained glow. */
#timesGameView:not(.blaster-active) .falling-sum{border:1px solid color-mix(in srgb,var(--premium-a) 65%,#fff)!important;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.20),transparent 24%),linear-gradient(145deg,rgba(16,39,67,.96),rgba(7,16,34,.96) 66%,rgba(16,27,55,.98))!important;color:#f6fbff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.20),inset 0 -12px 24px rgba(0,0,0,.22),0 0 0 3px color-mix(in srgb,var(--premium-a) 7%,transparent),0 14px 30px rgba(0,0,0,.38),0 0 25px color-mix(in srgb,var(--premium-a) 18%,transparent)!important;text-shadow:0 1px 2px rgba(0,0,0,.55)}
#timesGameView:not(.blaster-active) .falling-sum.enemy-danger{border-color:#ff7088!important;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.18),transparent 24%),linear-gradient(145deg,rgba(114,23,54,.97),rgba(39,8,27,.98))!important;box-shadow:inset 0 1px rgba(255,255,255,.16),0 14px 30px rgba(0,0,0,.40),0 0 28px rgba(255,74,117,.28)!important}
#timesGameView:not(.blaster-active) .falling-sum:before{opacity:.72!important}

/* Mission overlays get cleaner glass treatment against the detailed scenery. */
#timesGameView .times-mission-banner,#timesGameView .times-sector-badge{backdrop-filter:blur(10px) saturate(1.15);background:linear-gradient(135deg,rgba(3,13,28,.83),rgba(7,24,44,.72))!important;border-color:color-mix(in srgb,var(--premium-a) 42%,transparent)!important;box-shadow:0 9px 26px rgba(0,0,0,.20),inset 0 1px rgba(255,255,255,.06)!important}
#timesGameView .times-comms{backdrop-filter:blur(10px);background:linear-gradient(90deg,rgba(2,10,23,.87),rgba(8,26,45,.78))!important}

@media(max-width:700px){
  #timesGameView .storm-scene-art{inset:-3% -12% -7%;background-position:50% 48%;background-size:auto 110%}
  #timesGameView .storm-premium-flightway{left:24%;right:24%;top:42%}
  #timesGameView .storm-premium-traffic i{width:15px;height:4px}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView .storm-scene-art,#timesGameView .storm-city-foreground,#timesGameView .storm-scene-atmosphere,#timesGameView .storm-premium-flightway,#timesGameView .storm-premium-traffic i,#timesGameView .storm-scene-lightwash{animation:none!important}
}


/* ============================================================
   V52.01 • LOW-LATENCY DIRECT FLIGHT
   Ship position follows pointer input without CSS interpolation.
   The expanded safe area lets players use nearly the whole arena.
   ============================================================ */
#timesGameView.blaster-active .times-defender.shooter-live{
  transition:none!important;
  will-change:left,top,transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
#timesGameView.blaster-active .times-arena{
  overscroll-behavior:none;
  -webkit-tap-highlight-color:transparent;
}


/* V52.02 • Mission Stars + Weapon Mastery */
.campaign-progress-chips{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.campaign-star-chip{white-space:nowrap;border:1px solid rgba(255,211,83,.36);color:#ffe48b;background:linear-gradient(135deg,rgba(255,204,51,.13),rgba(134,78,15,.08));padding:7px 10px;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.08em;box-shadow:inset 0 0 18px rgba(255,209,67,.035)}
.campaign-card-stars{display:flex;gap:3px;margin:-2px 0 7px}.campaign-card-stars i{font-style:normal;font-size:.72rem;color:rgba(198,215,233,.26);text-shadow:none;transition:color .18s ease,text-shadow .18s ease}.campaign-card-stars i.earned{color:#ffd75d;text-shadow:0 0 10px rgba(255,208,68,.48)}
.campaign-star-objectives{display:flex!important;flex-direction:row!important;flex-wrap:wrap;gap:6px!important;margin-top:9px}.campaign-star-objectives b{display:inline-flex;align-items:center;padding:5px 8px;border:1px solid rgba(255,218,96,.2);border-radius:999px;background:rgba(255,207,62,.055);color:#d7c487;font-size:.62rem;font-weight:900;letter-spacing:.05em}.campaign-star-objectives b.done{border-color:rgba(91,255,190,.28);background:rgba(58,220,156,.075);color:#91ffd2}.campaign-objective-copy{display:block!important}
#timesGameView[data-ship-skin="apex"] .times-defender.shooter-live img{border-color:#fff0a3!important;filter:saturate(1.32) hue-rotate(176deg) brightness(1.1) contrast(1.05);box-shadow:0 0 0 4px rgba(255,232,128,.14),0 0 34px rgba(98,235,255,.34),0 0 68px rgba(255,211,82,.24)!important}
#timesGameView[data-ship-skin="apex"] .times-defender.shooter-live:after{content:"Σ";position:absolute;left:50%;top:-12px;transform:translateX(-50%);font:950 9px/1 system-ui;color:#fff0a3;text-shadow:0 0 8px rgba(255,221,96,.8);letter-spacing:.08em}
@media(max-width:900px){.campaign-progress-chips{justify-content:flex-start}.campaign-star-objectives{gap:5px!important}}


/* ============================================================
   V52.06 • GPU DIRECT FLIGHT / FRAME-PACING REPAIR
   Ship movement is transform-only. left/top are fixed once so dragging does
   not invalidate arena layout. The held state keeps a stable lightweight
   composite shadow instead of adding a second expensive moving drop-shadow.
   ============================================================ */
#timesGameView.blaster-active .times-defender.shooter-live[data-gpu-flight="true"]{
  left:0!important;
  top:0!important;
  bottom:auto!important;
  transition:none!important;
  will-change:transform!important;
  transform-origin:50% 50%;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  contain:layout style;
}
#timesGameView.direct-flight-held .times-defender.shooter-live[data-gpu-flight="true"]{
  filter:drop-shadow(0 0 14px rgba(92,239,255,.34)) drop-shadow(0 7px 14px rgba(0,0,0,.22))!important;
}
@media(max-width:900px){
  #timesGameView.blaster-active .storm-cloud-bank{filter:blur(10px)}
  #timesGameView.blaster-active .storm-scene-atmosphere{mix-blend-mode:normal;opacity:.54}
  #timesGameView.blaster-active .times-mission-banner,
  #timesGameView.blaster-active .times-sector-badge,
  #timesGameView.blaster-active .times-comms{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}


/* ============================================================
   V52.07 • POLISHED MATHS ARENA / PRECISION COMBAT SCAN
   The old V51.62 full-arena sweep crossed the maths phase as a
   broad moving band. Maths play now stays visually calm and crisp;
   only combat receives a restrained compositor-only scan accent.
   ============================================================ */
#timesGameView:not(.blaster-active) .times-arena::after{
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
  background:
    radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--premium-a) 7%,transparent),transparent 42%),
    linear-gradient(180deg,rgba(2,8,18,.12) 0%,transparent 16%,transparent 82%,rgba(2,8,18,.22) 100%)!important;
}
#timesGameView.blaster-active .times-arena::after{
  animation:v5207CombatPrecisionScan 7.4s linear infinite!important;
  will-change:transform;
  mix-blend-mode:screen!important;
  opacity:.44!important;
  background:linear-gradient(180deg,
    transparent 0%,
    transparent 48.85%,
    color-mix(in srgb,var(--premium-a) 10%,transparent) 49.15%,
    color-mix(in srgb,var(--premium-a) 34%,transparent) 49.72%,
    rgba(244,253,255,.38) 50%,
    color-mix(in srgb,var(--premium-b) 22%,transparent) 50.28%,
    transparent 51.15%,
    transparent 100%)!important;
}
@keyframes v5207CombatPrecisionScan{
  from{transform:translate3d(0,-100%,0)}
  to{transform:translate3d(0,100%,0)}
}
@media(max-width:900px){
  #timesGameView.blaster-active .times-arena::after{opacity:.30!important;animation-duration:8.6s!important}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.blaster-active .times-arena::after{animation:none!important;transform:none!important;opacity:.16!important}
}


/* ============================================================
   V52.08 • FINGER-CLOSE FLIGHT + SIGMA FLAGSHIP REBUILD
   The defender is now a purpose-built Sigma ship with visible
   hull, canopy, core, weapons and upgrade hardware. Existing
   Storm upgrades now have a clearer visual presence.
   ============================================================ */
#timesGameView .times-defender{
  width:108px;
  height:120px;
  z-index:14;
  pointer-events:none;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.28));
}
#timesGameView .times-defender img{display:none!important}
#timesGameView .times-defender.shooter-live::before,#timesGameView .times-defender.shooter-live::after{display:none!important}
#timesGameView .times-defender .sigma-ship-halo{position:absolute;left:50%;top:50%;width:72px;height:72px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(108,242,255,.32) 0,rgba(108,242,255,.12) 36%,transparent 68%);filter:blur(6px);opacity:.72;pointer-events:none}
#timesGameView .times-defender .sigma-ship-frame{position:absolute;left:50%;top:50%;width:92px;height:104px;transform:translate(-50%,-50%);pointer-events:none}
#timesGameView .times-defender .sigma-ship-wing{position:absolute;top:43px;width:34px;height:24px;border:1px solid rgba(113,237,255,.52);background:linear-gradient(180deg,#17476a 0,#0d223c 58%,#081220 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 16px rgba(84,222,255,.12);clip-path:polygon(0 36%,100% 0,88% 100%,12% 88%)}
#timesGameView .times-defender .sigma-ship-wing-left{left:1px;transform:skewX(-12deg) rotate(-16deg)}
#timesGameView .times-defender .sigma-ship-wing-right{right:1px;transform:scaleX(-1) skewX(-12deg) rotate(-16deg)}
#timesGameView .times-defender .sigma-ship-cannon{position:absolute;top:23px;width:10px;height:46px;border-radius:999px;background:linear-gradient(180deg,#c7fbff 0,#66eaff 18%,#184a73 44%,#0a1728 100%);box-shadow:0 0 12px rgba(102,234,255,.18)}
#timesGameView .times-defender .sigma-ship-cannon-left{left:16px;transform:rotate(-8deg)}
#timesGameView .times-defender .sigma-ship-cannon-right{right:16px;transform:rotate(8deg)}
#timesGameView .times-defender .sigma-ship-pod{display:none;position:absolute;top:26px;width:14px;height:32px;border-radius:10px;border:1px solid rgba(255,217,110,.42);background:linear-gradient(180deg,#ffeab0 0,#ffb765 22%,#163456 54%,#07121f 100%);box-shadow:0 0 16px rgba(255,183,101,.14)}
#timesGameView .times-defender .sigma-ship-pod-left{left:7px;transform:rotate(-11deg)}
#timesGameView .times-defender .sigma-ship-pod-right{right:7px;transform:rotate(11deg)}
#timesGameView .times-defender .sigma-ship-body{position:absolute;left:50%;top:50%;width:56px;height:88px;transform:translate(-50%,-50%);clip-path:polygon(50% 0,82% 16%,96% 48%,69% 100%,50% 88%,31% 100%,4% 48%,18% 16%);border:1px solid rgba(118,240,255,.82);background:linear-gradient(180deg,#e8fdff 0,#8df4ff 5%,#1b547d 18%,#12304f 46%,#0b1730 78%,#081221 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -14px 22px rgba(0,0,0,.24),0 0 24px rgba(104,239,255,.18)}
#timesGameView .times-defender .sigma-ship-body::before{content:"";position:absolute;left:50%;top:18px;transform:translateX(-50%);width:16px;height:50px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,.06) 20%,rgba(7,30,51,.0) 100%);opacity:.65}
#timesGameView .times-defender .sigma-ship-crest{position:absolute;left:50%;top:8px;transform:translateX(-50%);width:18px;height:22px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(180deg,#f6ffff,#90f6ff 42%,#2f80c6 100%);box-shadow:0 0 12px rgba(117,239,255,.28)}
#timesGameView .times-defender .sigma-ship-armor{position:absolute;top:33px;width:8px;height:30px;border-radius:10px;background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(86,236,255,.95) 25%,#12466c 64%,#0a1524 100%);opacity:.38;transition:opacity .18s ease,transform .18s ease}
#timesGameView .times-defender .sigma-ship-armor-a{left:4px;transform:skewY(12deg)}
#timesGameView .times-defender .sigma-ship-armor-b{right:4px;transform:skewY(-12deg)}
#timesGameView .times-defender .sigma-ship-core-band{position:absolute;left:50%;top:46px;transform:translateX(-50%);width:34px;height:10px;border-radius:999px;background:linear-gradient(90deg,transparent,#76eeff 18%,#f5fbff 50%,#76eeff 82%,transparent);box-shadow:0 0 16px rgba(118,238,255,.42)}
#timesGameView .times-defender .sigma-ship-canopy{position:absolute;left:50%;top:18px;transform:translateX(-50%);width:22px;height:30px;border-radius:16px 16px 12px 12px;background:linear-gradient(180deg,rgba(255,255,255,.95) 0,rgba(168,245,255,.98) 20%,rgba(64,171,255,.95) 54%,rgba(23,53,92,.95) 100%);border:1px solid rgba(241,253,255,.82);box-shadow:0 0 16px rgba(118,239,255,.22),inset 0 1px 0 rgba(255,255,255,.55)}
#timesGameView .times-defender .sigma-ship-core{position:absolute;left:50%;top:55px;transform:translateX(-50%);width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,#ffffff 0,#d8feff 22%,#7fefff 52%,#2d86d8 78%,rgba(9,21,42,.92) 100%);box-shadow:0 0 18px rgba(127,239,255,.58),0 0 34px rgba(127,239,255,.28)}
#timesGameView .times-defender .sigma-ship-sigma{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);font:1000 13px/1 system-ui;color:#f1fdff;text-shadow:0 0 12px rgba(127,239,255,.72);letter-spacing:.04em}
#timesGameView .times-defender .sigma-thruster{position:absolute;bottom:9px;width:12px;height:38px;border-radius:999px;background:linear-gradient(180deg,#fff7b5 0,#69ebff 35%,rgba(105,235,255,.16) 72%,transparent 100%);filter:blur(.55px);opacity:.96;transform-origin:50% 0;animation:thruster .18s ease-in-out infinite alternate;pointer-events:none}
#timesGameView .times-defender .sigma-thruster-main{left:50%;transform:translateX(-50%);height:44px;width:16px}
#timesGameView .times-defender .sigma-thruster-port{left:33px;height:30px;width:9px;opacity:.8}
#timesGameView .times-defender .sigma-thruster-starboard{right:33px;height:30px;width:9px;opacity:.8}
#timesGameView .times-defender .sigma-nameplate{position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);padding:4px 9px;border-radius:999px;border:1px solid rgba(102,234,255,.28);background:rgba(4,16,28,.82);font:900 10px/1 system-ui;letter-spacing:.14em;color:#dffaff;box-shadow:0 0 12px rgba(84,221,255,.12)}
#timesGameView.blaster-active .times-defender .sigma-nameplate{display:none}

#timesGameView .times-defender[data-sigma-form="easy"] .sigma-ship-canopy{filter:saturate(.9) brightness(.98)}
#timesGameView .times-defender[data-sigma-form="hard"] .sigma-ship-canopy{filter:saturate(1.2) hue-rotate(-14deg)}
#timesGameView .times-defender[data-sigma-form="omega"] .sigma-ship-canopy{filter:saturate(1.28) hue-rotate(24deg) brightness(1.08)}
#timesGameView .times-defender[data-sigma-form="omega"] .sigma-ship-core-band{box-shadow:0 0 18px rgba(255,118,220,.42)}

#timesGameView .times-defender[data-hull="1"] .sigma-ship-armor{opacity:.8}
#timesGameView .times-defender[data-hull="2"] .sigma-ship-armor{opacity:1;transform:scaleY(1.18)}
#timesGameView .times-defender[data-hull="2"] .sigma-ship-body{box-shadow:inset 0 1px 0 rgba(255,255,255,.48),inset 0 -14px 22px rgba(0,0,0,.24),0 0 0 3px rgba(255,225,118,.12),0 0 28px rgba(104,239,255,.24)}

#timesGameView .times-defender[data-fire-rate="1"] .sigma-ship-cannon{box-shadow:0 0 14px rgba(102,234,255,.22)}
#timesGameView .times-defender[data-fire-rate="2"] .sigma-ship-cannon{box-shadow:0 0 18px rgba(102,234,255,.28),0 0 24px rgba(255,244,176,.12)}
#timesGameView .times-defender[data-fire-rate="3"] .sigma-ship-cannon{box-shadow:0 0 22px rgba(255,214,113,.36),0 0 28px rgba(102,234,255,.22)}

#timesGameView .times-defender[data-missile-rack="1"] .sigma-ship-pod,#timesGameView .times-defender[data-missile-rack="2"] .sigma-ship-pod,#timesGameView .times-defender[data-missile-rack="3"] .sigma-ship-pod{display:block}
#timesGameView .times-defender[data-missile-rack="2"] .sigma-ship-pod,#timesGameView .times-defender[data-missile-rack="3"] .sigma-ship-pod{box-shadow:0 0 18px rgba(255,189,116,.2)}
#timesGameView .times-defender[data-missile-rack="3"] .sigma-ship-pod{border-color:rgba(255,220,122,.7)}

#timesGameView .times-defender[data-power-stage="1"] .sigma-ship-halo{opacity:.86}
#timesGameView .times-defender[data-power-stage="2"] .sigma-ship-halo{opacity:.98;background:radial-gradient(circle,rgba(255,226,126,.34) 0,rgba(105,235,255,.18) 36%,transparent 68%)}
#timesGameView .times-defender[data-power-stage="2"] .sigma-ship-core{box-shadow:0 0 22px rgba(255,223,122,.44),0 0 38px rgba(127,239,255,.28)}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-halo{opacity:1;background:radial-gradient(circle,rgba(255,130,206,.32) 0,rgba(255,225,122,.18) 28%,rgba(105,235,255,.14) 44%,transparent 72%)}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-core{box-shadow:0 0 26px rgba(255,130,206,.42),0 0 44px rgba(127,239,255,.34)}

#timesGameView .times-defender[data-last-stand="1"] .sigma-ship-body{background:linear-gradient(180deg,#fff3f7 0,#ffb4cf 4%,#7d2748 18%,#2f1430 46%,#170d22 78%,#081221 100%);border-color:rgba(255,124,182,.82)}
#timesGameView .times-defender[data-last-stand="1"] .sigma-thruster-main{background:linear-gradient(180deg,#fff3c2 0,#ff87c8 30%,rgba(105,235,255,.18) 72%,transparent 100%)}

#timesGameView[data-ship-skin="ion"] .times-defender .sigma-ship-body{border-color:rgba(118,240,255,.82)}
#timesGameView[data-ship-skin="solar"] .times-defender .sigma-ship-body{border-color:#ffd563;background:linear-gradient(180deg,#fff9d0 0,#ffe7a4 6%,#9b622b 18%,#4b2a18 46%,#1b1422 78%,#081221 100%)}
#timesGameView[data-ship-skin="solar"] .times-defender .sigma-ship-core{background:radial-gradient(circle,#fffdf3 0,#ffeebf 22%,#ffd668 52%,#ff9a45 78%,rgba(23,18,12,.95) 100%)}
#timesGameView[data-ship-skin="crimson"] .times-defender .sigma-ship-body{border-color:#ff6486;background:linear-gradient(180deg,#ffe6ec 0,#ff9db7 6%,#842546 18%,#43162b 46%,#1f101b 78%,#081221 100%)}
#timesGameView[data-ship-skin="crimson"] .times-defender .sigma-thruster-main{background:linear-gradient(180deg,#fff4b8 0,#ff8d8d 22%,rgba(255,102,166,.24) 56%,transparent 100%)}
#timesGameView[data-ship-skin="phantom"] .times-defender .sigma-ship-body{border-color:#c18cff;background:linear-gradient(180deg,#f5edff 0,#dbb7ff 6%,#5f2a8f 18%,#2f184d 46%,#1a132e 78%,#081221 100%)}
#timesGameView[data-ship-skin="phantom"] .times-defender .sigma-ship-core{background:radial-gradient(circle,#ffffff 0,#efe4ff 22%,#c38cff 52%,#6b56ff 78%,rgba(12,15,40,.95) 100%)}
#timesGameView[data-ship-skin="apex"] .times-defender .sigma-ship-body{border-color:#fff0a3;background:linear-gradient(180deg,#ffffff 0,#c4fbff 8%,#6fc9ff 18%,#304e89 46%,#17223c 78%,#081221 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 0 0 3px rgba(255,232,128,.14),0 0 34px rgba(98,235,255,.34)}
#timesGameView[data-ship-skin="apex"] .times-defender .sigma-ship-core{background:radial-gradient(circle,#fffde8 0,#fff2ad 24%,#85f0ff 54%,#3e98ea 80%,rgba(8,20,37,.95) 100%)}

#timesGameView[data-weapon="twin"] .times-defender .sigma-ship-cannon-left,#timesGameView[data-weapon="twin"] .times-defender .sigma-ship-cannon-right{width:11px;height:48px;background:linear-gradient(180deg,#e8fdff 0,#98f4ff 18%,#279bff 42%,#0a1728 100%)}
#timesGameView[data-weapon="lance"] .times-defender .sigma-ship-cannon-left,#timesGameView[data-weapon="lance"] .times-defender .sigma-ship-cannon-right{top:12px;height:58px;width:8px;background:linear-gradient(180deg,#fff 0,#e7cbff 26%,#7f57ff 58%,#11142c 100%)}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon-left{transform:rotate(-18deg)}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon-right{transform:rotate(18deg)}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon{background:linear-gradient(180deg,#fff 0,#ffb6ea 22%,#ff6ccc 54%,#1c1128 100%)}

#timesGameView[data-weapon-tier="2"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 10px rgba(114,231,255,.16))}
#timesGameView[data-weapon-tier="3"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 14px rgba(255,223,114,.24))}
#timesGameView[data-weapon-tier="4"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 18px rgba(255,119,184,.24));transform:translate(-50%,-50%) scale(1.04)}

@media(max-width:900px){
  #timesGameView .times-defender{width:100px;height:112px}
  #timesGameView .times-defender .sigma-ship-frame{width:86px;height:98px}
}
@media(max-width:540px){
  #timesGameView .times-defender{width:92px;height:102px}
  #timesGameView .times-defender .sigma-ship-frame{width:80px;height:92px}
  #timesGameView .times-defender .sigma-nameplate{display:none}
  #timesGameView .times-defender .sigma-ship-cannon{height:40px}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView .times-defender .sigma-thruster,#timesGameView .times-defender .sigma-ship-halo{animation:none!important}
}


/* ============================================================
   V52.09 • PREMIUM SIGMA STARFIGHTER UPGRADE
   Refines the V52.08 craft into a sleeker, more premium flagship
   with a longer nose, layered hull plating, sharper wing geometry,
   richer engine treatment and a more elite silhouette.
   ============================================================ */
#timesGameView .times-defender{width:118px;height:132px;filter:drop-shadow(0 14px 22px rgba(0,0,0,.30)) drop-shadow(0 0 18px rgba(97,231,255,.10))}
#timesGameView .times-defender .sigma-ship-halo{width:78px;height:78px;filter:blur(7px);background:radial-gradient(circle,rgba(99,241,255,.36) 0,rgba(99,241,255,.16) 34%,rgba(99,241,255,.08) 46%,transparent 72%)}
#timesGameView .times-defender .sigma-ship-frame{width:100px;height:114px}
#timesGameView .times-defender .sigma-ship-frame::before{content:"";position:absolute;left:50%;top:7px;transform:translateX(-50%);width:22px;height:30px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(180deg,#fbffff 0,#bff7ff 25%,rgba(57,161,255,.88) 70%,rgba(21,44,76,.0) 100%);opacity:.92;filter:drop-shadow(0 0 10px rgba(127,240,255,.24))}
#timesGameView .times-defender .sigma-ship-frame::after{content:"";position:absolute;left:50%;bottom:9px;transform:translateX(-50%);width:54px;height:24px;border-radius:0 0 26px 26px;background:linear-gradient(180deg,rgba(19,58,92,.0) 0,rgba(30,74,118,.56) 42%,rgba(6,17,31,.9) 100%);box-shadow:0 -8px 18px rgba(94,233,255,.08) inset}
#timesGameView .times-defender .sigma-ship-wing{top:47px;width:40px;height:28px;border:1px solid rgba(123,239,255,.56);background:linear-gradient(180deg,#23597f 0,#133454 34%,#0a1c33 72%,#07111f 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -8px 16px rgba(0,0,0,.22),0 0 18px rgba(84,222,255,.14);clip-path:polygon(0 56%,100% 8%,88% 36%,100% 44%,84% 68%,70% 100%,0 86%)}
#timesGameView .times-defender .sigma-ship-wing::before{content:"";position:absolute;inset:6px 6px 8px 12px;border-radius:16px;background:linear-gradient(180deg,rgba(170,248,255,.16),rgba(170,248,255,.02) 55%,rgba(11,26,46,.0) 100%)}
#timesGameView .times-defender .sigma-ship-wing::after{content:"";position:absolute;right:7px;top:5px;width:10px;height:18px;border-radius:10px;background:linear-gradient(180deg,#effdff 0,#7cedff 24%,#1a5a93 70%,rgba(8,17,29,.2) 100%);opacity:.75}
#timesGameView .times-defender .sigma-ship-wing-left{left:-3px;transform:skewX(-13deg) rotate(-19deg)}
#timesGameView .times-defender .sigma-ship-wing-right{right:-3px;transform:scaleX(-1) skewX(-13deg) rotate(-19deg)}
#timesGameView .times-defender .sigma-ship-cannon{top:19px;width:9px;height:58px;border-radius:999px;background:linear-gradient(180deg,#ffffff 0,#cdfcff 10%,#7deeff 26%,#1e679f 56%,#0b1a2e 100%);box-shadow:0 0 16px rgba(104,236,255,.20),0 0 22px rgba(104,236,255,.10)}
#timesGameView .times-defender .sigma-ship-cannon::before{content:"";position:absolute;left:50%;top:8px;transform:translateX(-50%);width:5px;height:20px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(136,244,255,.18));opacity:.9}
#timesGameView .times-defender .sigma-ship-cannon-left{left:18px;transform:rotate(-8deg)}
#timesGameView .times-defender .sigma-ship-cannon-right{right:18px;transform:rotate(8deg)}
#timesGameView .times-defender .sigma-ship-pod{top:34px;width:14px;height:36px;border-radius:14px;background:linear-gradient(180deg,#fff3ce 0,#ffca81 20%,#365f85 52%,#0a1728 100%);box-shadow:0 0 18px rgba(255,191,105,.16),inset 0 1px 0 rgba(255,255,255,.26)}
#timesGameView .times-defender .sigma-ship-pod-left{left:3px;transform:rotate(-15deg)}
#timesGameView .times-defender .sigma-ship-pod-right{right:3px;transform:rotate(15deg)}
#timesGameView .times-defender .sigma-ship-body{width:60px;height:96px;clip-path:polygon(50% 0,68% 8%,82% 19%,90% 34%,93% 48%,88% 61%,76% 77%,62% 100%,50% 90%,38% 100%,24% 77%,12% 61%,7% 48%,10% 34%,18% 19%,32% 8%);border:1px solid rgba(137,243,255,.86);background:linear-gradient(180deg,#ffffff 0,#d4fbff 4%,#82efff 10%,#245f8b 18%,#183f63 34%,#102745 55%,#0b1c35 75%,#081221 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.46),inset 0 -18px 26px rgba(0,0,0,.22),0 0 30px rgba(104,239,255,.20)}
#timesGameView .times-defender .sigma-ship-body::before{left:50%;top:11px;width:22px;height:66px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.34),rgba(255,255,255,.09) 20%,rgba(8,25,43,.0) 100%);opacity:.7}
#timesGameView .times-defender .sigma-ship-body::after{content:"";position:absolute;left:50%;bottom:10px;transform:translateX(-50%);width:34px;height:20px;border-radius:0 0 14px 14px;background:linear-gradient(180deg,rgba(127,239,255,.0) 0,rgba(127,239,255,.10) 25%,rgba(18,39,67,.92) 100%);box-shadow:0 -1px 0 rgba(205,252,255,.22) inset}
#timesGameView .times-defender .sigma-ship-crest{top:10px;width:20px;height:24px;background:linear-gradient(180deg,#ffffff,#c1f8ff 42%,#49aff0 100%)}
#timesGameView .times-defender .sigma-ship-armor{top:35px;width:9px;height:34px;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(105,239,255,.96) 22%,#245881 58%,#0a1627 100%);opacity:.48}
#timesGameView .times-defender .sigma-ship-armor-a{left:5px;transform:skewY(10deg)}
#timesGameView .times-defender .sigma-ship-armor-b{right:5px;transform:skewY(-10deg)}
#timesGameView .times-defender .sigma-ship-core-band{top:50px;width:38px;height:12px;background:linear-gradient(90deg,transparent,rgba(110,240,255,.96) 16%,#ffffff 50%,rgba(110,240,255,.96) 84%,transparent);box-shadow:0 0 18px rgba(118,238,255,.48)}
#timesGameView .times-defender .sigma-ship-canopy{top:18px;width:24px;height:34px;border-radius:18px 18px 14px 14px;background:linear-gradient(180deg,rgba(255,255,255,.98) 0,rgba(204,250,255,.98) 16%,rgba(80,196,255,.98) 46%,rgba(28,62,103,.96) 100%);box-shadow:0 0 18px rgba(118,239,255,.24),inset 0 1px 0 rgba(255,255,255,.6)}
#timesGameView .times-defender .sigma-ship-core{top:59px;width:20px;height:20px;box-shadow:0 0 20px rgba(127,239,255,.64),0 0 40px rgba(127,239,255,.32)}
#timesGameView .times-defender .sigma-ship-sigma{bottom:13px;font-size:12px;letter-spacing:.08em;text-shadow:0 0 14px rgba(127,239,255,.8)}
#timesGameView .times-defender .sigma-thruster{bottom:8px;width:11px;height:42px;background:linear-gradient(180deg,#fff7cc 0,#cbf8ff 14%,#6beeff 34%,rgba(107,238,255,.16) 72%,transparent 100%);filter:blur(.45px)}
#timesGameView .times-defender .sigma-thruster-main{height:50px;width:18px}
#timesGameView .times-defender .sigma-thruster-port{left:32px;height:34px;width:9px}
#timesGameView .times-defender .sigma-thruster-starboard{right:32px;height:34px;width:9px}
#timesGameView .times-defender .sigma-nameplate{bottom:-4px;padding:4px 10px;background:rgba(3,15,27,.88);box-shadow:0 0 14px rgba(84,221,255,.16)}

#timesGameView .times-defender[data-hull="2"] .sigma-ship-body{box-shadow:inset 0 2px 0 rgba(255,255,255,.50),inset 0 -18px 26px rgba(0,0,0,.22),0 0 0 3px rgba(255,230,125,.14),0 0 34px rgba(104,239,255,.26)}
#timesGameView .times-defender[data-fire-rate="3"] .sigma-ship-cannon{box-shadow:0 0 24px rgba(255,214,113,.42),0 0 32px rgba(102,234,255,.24)}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-core{box-shadow:0 0 28px rgba(255,130,206,.46),0 0 48px rgba(127,239,255,.36)}
#timesGameView[data-weapon-tier="4"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 20px rgba(255,119,184,.24)) drop-shadow(0 0 18px rgba(255,222,113,.18));transform:translate(-50%,-50%) scale(1.055)}
#timesGameView[data-ship-skin="apex"] .times-defender .sigma-ship-body{box-shadow:inset 0 2px 0 rgba(255,255,255,.52),0 0 0 3px rgba(255,232,128,.16),0 0 40px rgba(98,235,255,.36)}

@media(max-width:900px){#timesGameView .times-defender{width:110px;height:124px}#timesGameView .times-defender .sigma-ship-frame{width:94px;height:108px}}
@media(max-width:540px){#timesGameView .times-defender{width:100px;height:112px}#timesGameView .times-defender .sigma-ship-frame{width:86px;height:100px}#timesGameView .times-defender .sigma-ship-cannon{height:50px}#timesGameView .times-defender .sigma-ship-body{width:54px;height:88px}}


/* ============================================================
   V52.10 • CINEMATIC SIGMA FLAGSHIP MK II
   Pushes the defender into a more premium hero craft: sharper
   prow, layered dorsal geometry, engine nacelles, cleaner light
   logic and a more expensive-feeling arcade silhouette.
   ============================================================ */
#timesGameView .times-defender{width:124px;height:140px;filter:drop-shadow(0 16px 24px rgba(0,0,0,.32)) drop-shadow(0 0 18px rgba(102,234,255,.12));}
#timesGameView .times-defender .sigma-ship-halo{width:82px;height:82px;background:radial-gradient(circle,rgba(110,242,255,.36) 0,rgba(110,242,255,.16) 34%,rgba(110,242,255,.06) 52%,transparent 74%);filter:blur(7.2px);}
#timesGameView .times-defender .sigma-ship-frame{width:106px;height:122px;}
#timesGameView .times-defender .sigma-ship-frame::before{content:"";position:absolute;left:50%;top:0;transform:translateX(-50%);width:28px;height:42px;clip-path:polygon(50% 0,82% 18%,100% 62%,72% 100%,28% 100%,0 62%,18% 18%);background:linear-gradient(180deg,#ffffff 0,#d9fbff 18%,#7feeff 48%,#2f9ae7 78%,rgba(15,42,74,.12) 100%);filter:drop-shadow(0 0 11px rgba(127,240,255,.28));opacity:.98;}
#timesGameView .times-defender .sigma-ship-frame::after{content:"";position:absolute;left:50%;bottom:6px;transform:translateX(-50%);width:66px;height:28px;border-radius:0 0 30px 30px;background:linear-gradient(180deg,rgba(14,45,74,.0) 0,rgba(17,55,89,.48) 22%,rgba(12,33,57,.9) 78%,rgba(7,16,29,.98) 100%);box-shadow:0 -10px 18px rgba(104,239,255,.08) inset,0 -1px 0 rgba(255,255,255,.08) inset;}
#timesGameView .times-defender .sigma-ship-wing{top:52px;width:46px;height:30px;border:1px solid rgba(136,243,255,.58);background:linear-gradient(180deg,#2b6691 0,#173d61 30%,#0e2947 58%,#09192e 100%);clip-path:polygon(0 64%,100% 0,94% 22%,100% 36%,92% 52%,78% 66%,60% 100%,0 92%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),inset 0 -10px 18px rgba(0,0,0,.28),0 0 20px rgba(84,222,255,.16);}
#timesGameView .times-defender .sigma-ship-wing::before{content:"";position:absolute;left:10px;right:12px;top:6px;bottom:8px;clip-path:polygon(0 44%,100% 0,86% 100%,4% 88%);background:linear-gradient(180deg,rgba(215,251,255,.24),rgba(120,236,255,.08) 36%,rgba(14,32,55,.02) 100%);}
#timesGameView .times-defender .sigma-ship-wing::after{content:"";position:absolute;right:8px;top:4px;width:12px;height:20px;border-radius:12px;background:linear-gradient(180deg,#ffffff 0,#a8f6ff 18%,#5fc5ff 46%,#17406f 100%);box-shadow:0 0 12px rgba(118,239,255,.26);opacity:.9;}
#timesGameView .times-defender .sigma-ship-wing-left{left:-5px;transform:skewX(-14deg) rotate(-22deg);}
#timesGameView .times-defender .sigma-ship-wing-right{right:-5px;transform:scaleX(-1) skewX(-14deg) rotate(-22deg);}
#timesGameView .times-defender .sigma-ship-cannon{top:20px;width:10px;height:62px;background:linear-gradient(180deg,#ffffff 0,#e5fdff 8%,#8ef1ff 22%,#48b8ff 46%,#20557f 74%,#0b1727 100%);box-shadow:0 0 18px rgba(104,236,255,.22),0 0 26px rgba(104,236,255,.12);}
#timesGameView .times-defender .sigma-ship-cannon::before{content:"";position:absolute;left:50%;top:6px;transform:translateX(-50%);width:5px;height:22px;border-radius:999px;background:linear-gradient(180deg,#ffffff,rgba(153,248,255,.16));}
#timesGameView .times-defender .sigma-ship-cannon::after{content:"";position:absolute;left:50%;bottom:8px;transform:translateX(-50%);width:14px;height:10px;border-radius:999px;background:radial-gradient(circle,rgba(175,248,255,.42) 0,rgba(175,248,255,.02) 72%,transparent 100%);}
#timesGameView .times-defender .sigma-ship-cannon-left{left:19px;transform:rotate(-7deg);}
#timesGameView .times-defender .sigma-ship-cannon-right{right:19px;transform:rotate(7deg);}
#timesGameView .times-defender .sigma-ship-pod{top:38px;width:15px;height:38px;border:1px solid rgba(255,222,142,.48);border-radius:14px;background:linear-gradient(180deg,#fff6d7 0,#ffd38e 18%,#517092 48%,#132a44 78%,#0a1524 100%);box-shadow:0 0 18px rgba(255,191,105,.18),inset 0 1px 0 rgba(255,255,255,.3);}
#timesGameView .times-defender .sigma-ship-pod-left{left:2px;transform:rotate(-16deg);}
#timesGameView .times-defender .sigma-ship-pod-right{right:2px;transform:rotate(16deg);}
#timesGameView .times-defender .sigma-ship-body{width:62px;height:102px;clip-path:polygon(50% 0,66% 6%,79% 16%,90% 30%,94% 47%,90% 62%,80% 79%,64% 100%,50% 90%,36% 100%,20% 79%,10% 62%,6% 47%,10% 30%,21% 16%,34% 6%);border:1px solid rgba(144,244,255,.88);background:linear-gradient(180deg,#ffffff 0,#ebfeff 3%,#b7f9ff 8%,#6edcff 12%,#2f7ab2 18%,#1c4c79 34%,#123355 56%,#0d223d 78%,#091322 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.5),inset 0 -18px 28px rgba(0,0,0,.24),0 0 32px rgba(104,239,255,.22);}
#timesGameView .times-defender .sigma-ship-body::before{content:"";position:absolute;left:50%;top:8px;transform:translateX(-50%);width:26px;height:72px;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.4),rgba(198,251,255,.12) 24%,rgba(8,25,43,.0) 100%);opacity:.78;}
#timesGameView .times-defender .sigma-ship-body::after{content:"";position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:38px;height:22px;border-radius:0 0 18px 18px;background:linear-gradient(180deg,rgba(108,239,255,.04) 0,rgba(108,239,255,.14) 24%,rgba(19,42,69,.96) 100%);box-shadow:0 -1px 0 rgba(223,253,255,.20) inset;}
#timesGameView .times-defender .sigma-ship-crest{top:11px;width:21px;height:25px;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(180deg,#ffffff,#caf9ff 40%,#6dcfff 78%,#337dbe 100%);box-shadow:0 0 12px rgba(117,239,255,.32);}
#timesGameView .times-defender .sigma-ship-armor{top:38px;width:9px;height:36px;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(110,239,255,.98) 22%,#2d658f 54%,#0d1b2d 100%);opacity:.52;}
#timesGameView .times-defender .sigma-ship-armor-a{left:5px;transform:skewY(10deg);}
#timesGameView .times-defender .sigma-ship-armor-b{right:5px;transform:skewY(-10deg);}
#timesGameView .times-defender .sigma-ship-core-band{top:54px;width:40px;height:12px;background:linear-gradient(90deg,transparent,rgba(120,241,255,.98) 16%,#ffffff 50%,rgba(120,241,255,.98) 84%,transparent);box-shadow:0 0 18px rgba(118,238,255,.5);}
#timesGameView .times-defender .sigma-ship-canopy{top:18px;width:24px;height:36px;border:1px solid rgba(245,254,255,.9);border-radius:18px 18px 15px 15px;background:linear-gradient(180deg,rgba(255,255,255,.99) 0,rgba(222,252,255,.99) 16%,rgba(103,214,255,.98) 44%,rgba(41,95,149,.96) 100%);box-shadow:0 0 18px rgba(118,239,255,.24),inset 0 1px 0 rgba(255,255,255,.62);}
#timesGameView .times-defender .sigma-ship-core{top:61px;width:20px;height:20px;background:radial-gradient(circle,#ffffff 0,#e9fdff 20%,#86f0ff 50%,#3aa2ef 78%,rgba(8,20,37,.95) 100%);box-shadow:0 0 22px rgba(127,239,255,.66),0 0 42px rgba(127,239,255,.34);}
#timesGameView .times-defender .sigma-ship-sigma{bottom:14px;font-size:12px;letter-spacing:.10em;text-shadow:0 0 14px rgba(127,239,255,.82);}
#timesGameView .times-defender .sigma-thruster{bottom:8px;width:11px;height:44px;border-radius:999px;background:linear-gradient(180deg,#fffbda 0,#f1fdff 10%,#96f4ff 24%,#69eaff 42%,rgba(105,234,255,.18) 72%,transparent 100%);filter:blur(.4px);}
#timesGameView .times-defender .sigma-thruster-main{left:50%;transform:translateX(-50%);height:54px;width:18px;}
#timesGameView .times-defender .sigma-thruster-port{left:31px;height:36px;width:9px;}
#timesGameView .times-defender .sigma-thruster-starboard{right:31px;height:36px;width:9px;}
#timesGameView .times-defender .sigma-nameplate{bottom:-5px;padding:4px 10px;border:1px solid rgba(102,234,255,.30);background:rgba(3,15,27,.9);box-shadow:0 0 15px rgba(84,221,255,.16);}

#timesGameView .times-defender[data-hull="1"] .sigma-ship-armor{opacity:.84;}
#timesGameView .times-defender[data-hull="2"] .sigma-ship-armor{opacity:1;transform:scaleY(1.16);}
#timesGameView .times-defender[data-hull="2"] .sigma-ship-body{box-shadow:inset 0 2px 0 rgba(255,255,255,.54),inset 0 -18px 28px rgba(0,0,0,.24),0 0 0 3px rgba(255,229,123,.15),0 0 38px rgba(104,239,255,.28);}
#timesGameView .times-defender[data-fire-rate="3"] .sigma-ship-cannon{box-shadow:0 0 24px rgba(255,214,113,.44),0 0 34px rgba(102,234,255,.26);}
#timesGameView .times-defender[data-power-stage="2"] .sigma-ship-halo{background:radial-gradient(circle,rgba(255,229,128,.34) 0,rgba(110,242,255,.18) 34%,transparent 70%);}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-halo{background:radial-gradient(circle,rgba(255,131,206,.32) 0,rgba(255,228,126,.16) 26%,rgba(110,242,255,.14) 42%,transparent 72%);}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-core{box-shadow:0 0 28px rgba(255,130,206,.46),0 0 48px rgba(127,239,255,.38);}

#timesGameView[data-weapon="twin"] .times-defender .sigma-ship-cannon-left,#timesGameView[data-weapon="twin"] .times-defender .sigma-ship-cannon-right{width:11px;height:64px;background:linear-gradient(180deg,#ffffff 0,#ddfbff 8%,#8df4ff 20%,#55c5ff 42%,#2569a0 72%,#0b1727 100%);}
#timesGameView[data-weapon="lance"] .times-defender .sigma-ship-cannon-left,#timesGameView[data-weapon="lance"] .times-defender .sigma-ship-cannon-right{top:12px;height:72px;width:8px;background:linear-gradient(180deg,#ffffff 0,#f0deff 18%,#c58cff 42%,#7b58ff 68%,#12142a 100%);}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon-left{transform:rotate(-20deg);}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon-right{transform:rotate(20deg);}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-ship-cannon{background:linear-gradient(180deg,#ffffff 0,#ffd1f3 16%,#ff87d9 40%,#ff5cc8 58%,#291231 100%);}

#timesGameView[data-ship-skin="solar"] .times-defender .sigma-ship-body{border-color:#ffe27c;background:linear-gradient(180deg,#fffef2 0,#fff3c9 5%,#ffd57f 11%,#b37d3d 19%,#6c4725 38%,#3a2530 66%,#111321 100%);}
#timesGameView[data-ship-skin="crimson"] .times-defender .sigma-ship-body{border-color:#ff7ba0;background:linear-gradient(180deg,#fff1f4 0,#ffc6d4 5%,#ff86a5 11%,#9b3458 19%,#581f3b 38%,#2a1425 66%,#111321 100%);}
#timesGameView[data-ship-skin="phantom"] .times-defender .sigma-ship-body{border-color:#d4a0ff;background:linear-gradient(180deg,#fbf6ff 0,#ead7ff 5%,#d09aff 11%,#7a45b8 19%,#442863 38%,#221833 66%,#111321 100%);}
#timesGameView[data-ship-skin="apex"] .times-defender .sigma-ship-body{border-color:#fff0a3;background:linear-gradient(180deg,#ffffff 0,#e6fdff 4%,#bffaff 8%,#86e2ff 12%,#4d8fd6 18%,#274978 34%,#162b4f 58%,#0a1425 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.56),0 0 0 3px rgba(255,232,128,.16),0 0 42px rgba(98,235,255,.38);}

#timesGameView[data-weapon-tier="4"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 22px rgba(255,119,184,.24)) drop-shadow(0 0 18px rgba(255,222,113,.20));transform:translate(-50%,-50%) scale(1.06);}

@media(max-width:900px){#timesGameView .times-defender{width:114px;height:130px;}#timesGameView .times-defender .sigma-ship-frame{width:98px;height:114px;}}
@media(max-width:540px){#timesGameView .times-defender{width:104px;height:118px;}#timesGameView .times-defender .sigma-ship-frame{width:88px;height:104px;}#timesGameView .times-defender .sigma-ship-cannon{height:54px;}#timesGameView .times-defender .sigma-ship-body{width:56px;height:92px;}}


/* ============================================================
   V52.11 • PREMIUM SIGMA FLAGSHIP SYSTEM
   Rebuilds the Storm ship as a proper premium SVG flagship with
   a stronger silhouette, richer materials and clearer upgrade
   expression, while keeping the ship very close to the finger.
   ============================================================ */
#timesGameView .times-defender{width:130px;height:146px;pointer-events:none;z-index:14;filter:drop-shadow(0 16px 26px rgba(0,0,0,.34)) drop-shadow(0 0 18px rgba(106,236,255,.14));}
#timesGameView .times-defender .sigma-ship-halo{position:absolute;left:50%;top:50%;width:88px;height:88px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(113,243,255,.34) 0,rgba(113,243,255,.18) 34%,rgba(113,243,255,.07) 52%,transparent 74%);filter:blur(7px);opacity:.82;pointer-events:none;}
#timesGameView .times-defender .sigma-ship-frame{position:absolute;left:50%;top:50%;width:108px;height:126px;transform:translate(-50%,-50%);pointer-events:none;}
#timesGameView .times-defender .sigma-flagship-svg{display:block;width:100%;height:100%;overflow:visible;}
#timesGameView .times-defender .sigma-nameplate{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);padding:4px 10px;border-radius:999px;border:1px solid rgba(115,239,255,.32);background:rgba(3,15,27,.90);box-shadow:0 0 16px rgba(84,221,255,.16);font:900 9px/1 system-ui;letter-spacing:.16em;color:#e8fdff;white-space:nowrap;}
#timesGameView.blaster-active .times-defender .sigma-nameplate{display:none;}
#timesGameView .times-defender .sigma-thruster{position:absolute;bottom:7px;width:10px;height:46px;border-radius:999px;background:linear-gradient(180deg,#fffde5 0,#ddfbff 12%,#9af4ff 24%,#68ebff 44%,rgba(104,235,255,.20) 74%,transparent 100%);filter:blur(.35px);transform-origin:50% 0;opacity:.98;animation:thruster .18s ease-in-out infinite alternate;pointer-events:none;}
#timesGameView .times-defender .sigma-thruster-main{left:50%;transform:translateX(-50%);width:18px;height:56px;}
#timesGameView .times-defender .sigma-thruster-port{left:31px;width:9px;height:38px;}
#timesGameView .times-defender .sigma-thruster-starboard{right:31px;width:9px;height:38px;}

#timesGameView .times-defender .sigma-engine-nacelle{fill:url(#sigmaWingGrad);stroke:rgba(150,244,255,.7);stroke-width:3;paint-order:stroke fill markers;filter:drop-shadow(0 0 7px rgba(84,220,255,.18));}
#timesGameView .times-defender .sigma-flagship-wing{fill:url(#sigmaWingGrad);stroke:rgba(143,243,255,.75);stroke-width:3;paint-order:stroke fill markers;filter:drop-shadow(0 0 10px rgba(84,222,255,.18));}
#timesGameView .times-defender .sigma-wing-inset{fill:rgba(211,251,255,.12);}
#timesGameView .times-defender .sigma-flagship-cannon{fill:url(#sigmaPanelGrad);stroke:rgba(212,252,255,.88);stroke-width:2.5;paint-order:stroke fill markers;filter:drop-shadow(0 0 8px rgba(118,239,255,.2));}
#timesGameView .times-defender .sigma-cannon-core{fill:rgba(255,255,255,.72);}
#timesGameView .times-defender .sigma-flagship-pod{display:none;fill:url(#sigmaGoldGrad);stroke:rgba(255,235,172,.72);stroke-width:2.5;paint-order:stroke fill markers;filter:drop-shadow(0 0 8px rgba(255,198,110,.16));}
#timesGameView .times-defender .sigma-flagship-hull{fill:url(#sigmaHullGrad);stroke:rgba(150,245,255,.92);stroke-width:3;paint-order:stroke fill markers;filter:drop-shadow(0 0 12px rgba(102,236,255,.18));}
#timesGameView .times-defender .sigma-flagship-keel{fill:rgba(9,20,35,.42);stroke:rgba(194,249,255,.22);stroke-width:1.8;}
#timesGameView .times-defender .sigma-flagship-plate{fill:rgba(223,252,255,.14);stroke:rgba(210,252,255,.24);stroke-width:1.6;}
#timesGameView .times-defender .sigma-flagship-spine{fill:rgba(255,255,255,.10);}
#timesGameView .times-defender .sigma-flagship-armor{fill:rgba(157,246,255,.55);stroke:rgba(226,253,255,.34);stroke-width:1.6;opacity:.46;transition:opacity .18s ease,transform .18s ease;}
#timesGameView .times-defender .sigma-flagship-crest{fill:url(#sigmaPanelGrad);filter:drop-shadow(0 0 8px rgba(118,239,255,.2));}
#timesGameView .times-defender .sigma-flagship-canopy{fill:url(#sigmaCanopyGrad);stroke:rgba(245,254,255,.86);stroke-width:2.4;paint-order:stroke fill markers;filter:drop-shadow(0 0 10px rgba(118,239,255,.18));}
#timesGameView .times-defender .sigma-flagship-core-band{fill:none;stroke:rgba(120,241,255,.98);stroke-width:7;filter:drop-shadow(0 0 10px rgba(120,241,255,.48));}
#timesGameView .times-defender .sigma-flagship-core{fill:url(#sigmaCoreGrad);filter:drop-shadow(0 0 12px rgba(127,239,255,.66)) drop-shadow(0 0 24px rgba(127,239,255,.26));}
#timesGameView .times-defender .sigma-flagship-reactor-ring{fill:none;stroke:rgba(255,255,255,.35);stroke-width:2.5;}
#timesGameView .times-defender .sigma-flagship-tail-fin{fill:rgba(170,248,255,.22);stroke:rgba(169,248,255,.44);stroke-width:1.8;}
#timesGameView .times-defender .sigma-flagship-sigma{font:1000 24px/1 system-ui;fill:#eefeff;letter-spacing:.06em;text-shadow:0 0 14px rgba(127,239,255,.78);}

#timesGameView .times-defender[data-sigma-form="easy"] .sigma-flagship-canopy{filter:saturate(.9) brightness(.98);}
#timesGameView .times-defender[data-sigma-form="hard"] .sigma-flagship-canopy{filter:saturate(1.18) hue-rotate(-12deg);}
#timesGameView .times-defender[data-sigma-form="omega"] .sigma-flagship-canopy{filter:saturate(1.28) hue-rotate(22deg) brightness(1.08);}
#timesGameView .times-defender[data-sigma-form="omega"] .sigma-flagship-core-band{stroke:rgba(255,114,214,.96);}

#timesGameView .times-defender[data-hull="1"] .sigma-flagship-armor{opacity:.84;}
#timesGameView .times-defender[data-hull="2"] .sigma-flagship-armor{opacity:1;}
#timesGameView .times-defender[data-hull="2"] .sigma-flagship-hull{filter:drop-shadow(0 0 12px rgba(102,236,255,.18)) drop-shadow(0 0 16px rgba(255,229,123,.16));}

#timesGameView .times-defender[data-fire-rate="1"] .sigma-flagship-cannon{filter:drop-shadow(0 0 10px rgba(104,236,255,.20));}
#timesGameView .times-defender[data-fire-rate="2"] .sigma-flagship-cannon{filter:drop-shadow(0 0 12px rgba(104,236,255,.22)) drop-shadow(0 0 8px rgba(255,215,115,.12));}
#timesGameView .times-defender[data-fire-rate="3"] .sigma-flagship-cannon{filter:drop-shadow(0 0 14px rgba(255,214,113,.32)) drop-shadow(0 0 10px rgba(104,236,255,.24));}

#timesGameView .times-defender[data-missile-rack="1"] .sigma-flagship-pod,#timesGameView .times-defender[data-missile-rack="2"] .sigma-flagship-pod,#timesGameView .times-defender[data-missile-rack="3"] .sigma-flagship-pod{display:block;}
#timesGameView .times-defender[data-missile-rack="3"] .sigma-flagship-pod{filter:drop-shadow(0 0 12px rgba(255,214,115,.26));}

#timesGameView .times-defender[data-power-stage="1"] .sigma-ship-halo{opacity:.92;}
#timesGameView .times-defender[data-power-stage="2"] .sigma-ship-halo{opacity:1;background:radial-gradient(circle,rgba(255,229,124,.34) 0,rgba(112,243,255,.18) 34%,transparent 72%);}
#timesGameView .times-defender[data-power-stage="2"] .sigma-flagship-core{filter:drop-shadow(0 0 14px rgba(255,223,122,.42)) drop-shadow(0 0 28px rgba(127,239,255,.28));}
#timesGameView .times-defender[data-power-stage="3"] .sigma-ship-halo{opacity:1;background:radial-gradient(circle,rgba(255,129,205,.32) 0,rgba(255,226,122,.16) 26%,rgba(113,243,255,.14) 42%,transparent 72%);}
#timesGameView .times-defender[data-power-stage="3"] .sigma-flagship-core{filter:drop-shadow(0 0 18px rgba(255,129,205,.42)) drop-shadow(0 0 30px rgba(127,239,255,.34));}

#timesGameView .times-defender[data-last-stand="1"] .sigma-flagship-hull{stroke:rgba(255,126,184,.92);filter:drop-shadow(0 0 12px rgba(255,126,184,.22));}
#timesGameView .times-defender[data-last-stand="1"] .sigma-thruster-main{background:linear-gradient(180deg,#fff3c2 0,#ff8dcb 28%,rgba(255,140,203,.24) 58%,transparent 100%);}

#timesGameView[data-ship-skin="ion"] .times-defender .sigma-flagship-hull{stroke:rgba(150,245,255,.92);}
#timesGameView[data-ship-skin="solar"] .times-defender .sigma-flagship-hull{stroke:#ffe27c;fill:url(#sigmaGoldGrad);}
#timesGameView[data-ship-skin="solar"] .times-defender .sigma-flagship-core{filter:drop-shadow(0 0 14px rgba(255,223,122,.46));}
#timesGameView[data-ship-skin="crimson"] .times-defender .sigma-flagship-hull{stroke:#ff78a0;fill:url(#sigmaHullGrad);filter:hue-rotate(-50deg) saturate(1.28) brightness(.98);}
#timesGameView[data-ship-skin="phantom"] .times-defender .sigma-flagship-hull{stroke:#d1a0ff;filter:hue-rotate(38deg) saturate(1.14);}
#timesGameView[data-ship-skin="apex"] .times-defender .sigma-flagship-hull{stroke:#fff0a4;filter:drop-shadow(0 0 12px rgba(255,233,120,.28)) drop-shadow(0 0 18px rgba(98,235,255,.24));}

#timesGameView[data-weapon="twin"] .times-defender .sigma-flagship-cannon{stroke-width:3.1;}
#timesGameView[data-weapon="lance"] .times-defender .sigma-flagship-cannon{filter:hue-rotate(35deg) saturate(1.18);}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-flagship-cannon.cannon-left{transform:translateX(-3px) rotate(-7deg);transform-origin:110px 110px;}
#timesGameView[data-weapon="scatter"] .times-defender .sigma-flagship-cannon.cannon-right{transform:translateX(3px) rotate(7deg);transform-origin:110px 110px;}

#timesGameView[data-weapon-tier="2"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 10px rgba(114,231,255,.16));}
#timesGameView[data-weapon-tier="3"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 14px rgba(255,223,114,.22));}
#timesGameView[data-weapon-tier="4"] .times-defender .sigma-ship-frame{filter:drop-shadow(0 0 20px rgba(255,118,185,.26)) drop-shadow(0 0 16px rgba(255,223,114,.16));transform:translate(-50%,-50%) scale(1.05);}

@media(max-width:900px){#timesGameView .times-defender{width:118px;height:134px;}#timesGameView .times-defender .sigma-ship-frame{width:100px;height:118px;}}
@media(max-width:540px){#timesGameView .times-defender{width:108px;height:122px;}#timesGameView .times-defender .sigma-ship-frame{width:92px;height:108px;}#timesGameView .times-defender .sigma-nameplate{display:none;}}
@media(prefers-reduced-motion:reduce){#timesGameView .times-defender .sigma-thruster,#timesGameView .times-defender .sigma-ship-halo{animation:none!important;}}


/* ============================================================
   V52.12 • CLEAN BRIGHT STORM + ULTRA-LOW-LATENCY FLIGHT
   Visual language follows the approved clean Storm concept:
   deep navy structure, crisp cyan edges, vivid magenta maths
   drones, warm FIRE control and restrained bloom.
   ============================================================ */
#timesGameView.storm-running{
  --v5212-cyan:#35e9ff;
  --v5212-cyan-hi:#a7fbff;
  --v5212-blue:#188cff;
  --v5212-navy:#04101f;
  --v5212-panel:#071a30;
  --v5212-pink:#ff4d9e;
  --v5212-pink-hi:#ff8fc4;
  --v5212-warm:#ffad27;
}

/* Crisp HUD: bright edges, dark interiors, minimal haze. */
#timesGameView.storm-running .times-hud-item{
  border:1px solid rgba(53,233,255,.72)!important;
  background:linear-gradient(180deg,rgba(8,31,55,.98),rgba(4,16,31,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(24,140,255,.10),0 0 12px rgba(53,233,255,.08)!important;
}
#timesGameView.storm-running .times-hud-item span{color:#78dfff!important;}
#timesGameView.storm-running .times-hud-item strong{color:#f7fdff!important;text-shadow:none!important;}
#timesGameView.storm-running .times-hud-item.lives strong{color:#ff6f94!important;}
#timesGameView.storm-running .times-mobile-live-controls button{
  border-color:rgba(53,233,255,.58)!important;
  background:linear-gradient(180deg,#0a2947,#061729)!important;
  color:#e8fbff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 0 10px rgba(53,233,255,.06)!important;
}

/* Wave rail mirrors the clean concept: cyan shell, warm progress. */
#timesGameView.storm-running .times-wave-strip{
  border:1px solid rgba(53,233,255,.70)!important;
  background:linear-gradient(180deg,rgba(8,31,55,.98),rgba(4,16,31,.98))!important;
  box-shadow:inset 0 1px rgba(255,255,255,.05),0 0 12px rgba(53,233,255,.06)!important;
}
#timesGameView.storm-running .times-wave-copy span{color:#ffd04e!important;}
#timesGameView.storm-running .times-wave-copy strong{color:#f7fdff!important;}
#timesGameView.storm-running .times-wave-strip>small{color:#9beeff!important;}
#timesGameView.storm-running .times-wave-track{background:#102b43!important;border:1px solid rgba(53,233,255,.10);}
#timesGameView.storm-running .times-wave-track span{background:linear-gradient(90deg,#ffd245,#ff9e2a)!important;box-shadow:0 0 10px rgba(255,180,42,.24)!important;}

/* Arena frame and scenery: brighter colour without milky bloom. */
#timesGameView.storm-running .times-arena{
  border:2px solid rgba(53,233,255,.82)!important;
  background:#020812!important;
  box-shadow:0 0 0 1px rgba(24,140,255,.20),0 0 18px rgba(53,233,255,.11),0 20px 48px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.025)!important;
}
#timesGameView.storm-running .storm-side-rail{opacity:.48!important;background:linear-gradient(180deg,transparent,var(--v5212-cyan),transparent)!important;box-shadow:0 0 11px rgba(53,233,255,.28)!important;}
#timesGameView.storm-running:not(.blaster-active) .storm-scene-art{filter:saturate(1.10) contrast(1.06) brightness(.84)!important;}
#timesGameView.storm-running.blaster-active .storm-scene-art{filter:saturate(1.18) contrast(1.08) brightness(.96)!important;}
#timesGameView.storm-running .storm-city-foreground{opacity:.80!important;}
#timesGameView.storm-running .storm-scene-lightwash{opacity:.62!important;mix-blend-mode:screen;}
#timesGameView.storm-running .storm-scene-vignette{box-shadow:inset 0 0 54px 8px rgba(0,5,15,.34),inset 0 -64px 84px rgba(0,5,15,.18)!important;}

/* No accidental-looking scan or seam in maths play. */
#timesGameView.storm-running:not(.blaster-active) .times-arena::after{
  animation:none!important;transform:none!important;opacity:1!important;mix-blend-mode:normal!important;
  background:linear-gradient(180deg,rgba(3,12,25,.08),transparent 18%,transparent 82%,rgba(3,12,25,.14))!important;
}
#timesGameView.storm-running.blaster-active .times-arena::after{opacity:.18!important;animation-duration:10.5s!important;}

/* Mission / sector plates: sharp and readable, no heavy frosted glass. */
#timesGameView.storm-running .times-mission-banner,#timesGameView.storm-running .times-sector-badge{
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:linear-gradient(135deg,rgba(4,19,35,.95),rgba(6,34,57,.90))!important;
  border-color:rgba(53,233,255,.58)!important;
  box-shadow:0 0 12px rgba(53,233,255,.06),inset 0 1px rgba(255,255,255,.05)!important;
}
#timesGameView.storm-running .times-mission-banner{border-left:3px solid var(--v5212-cyan)!important;}
#timesGameView.storm-running .times-mission-banner small,#timesGameView.storm-running .times-sector-badge small{color:var(--v5212-cyan)!important;}
#timesGameView.storm-running .times-mission-banner strong,#timesGameView.storm-running .times-sector-badge strong{color:#f8fdff!important;}

/* Maths drones: clean premium magenta target language from the approved concept. */
#timesGameView.storm-running:not(.blaster-active) .falling-sum{
  min-width:110px!important;min-height:58px!important;padding:11px 18px!important;border-radius:999px!important;
  border:1px solid rgba(255,132,194,.92)!important;
  background:radial-gradient(circle at 72% 18%,rgba(255,182,218,.42) 0 4px,transparent 5px),linear-gradient(180deg,rgba(137,28,79,.98),rgba(68,14,49,.98))!important;
  color:#ffffff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.10),0 0 0 2px rgba(255,77,158,.10),0 0 16px rgba(255,77,158,.28),0 10px 22px rgba(0,0,0,.30)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55)!important;
}
#timesGameView.storm-running:not(.blaster-active) .falling-sum b{color:#52eaff!important;text-shadow:0 0 8px rgba(82,234,255,.26)!important;}
#timesGameView.storm-running:not(.blaster-active) .falling-sum.enemy-danger{
  border-color:#ff78a7!important;background:linear-gradient(180deg,rgba(164,35,86,.99),rgba(72,12,48,.99))!important;
}

/* Clean answer / keypad assembly. Layout is preserved; only visual weight changes. */
#timesGameView.storm-running .times-answer-deck{
  border:1px solid rgba(53,233,255,.48)!important;
  background:linear-gradient(180deg,rgba(5,19,34,.99),rgba(3,12,23,.99))!important;
  box-shadow:0 0 0 1px rgba(24,140,255,.08),0 0 14px rgba(53,233,255,.05)!important;
}
#timesGameView.storm-running .times-answer-form input{
  background:#f7fbff!important;color:#163149!important;border:2px solid rgba(103,220,255,.86)!important;
  box-shadow:0 0 0 1px rgba(255,255,255,.72),0 0 10px rgba(53,233,255,.10)!important;
}
#timesGameView.storm-running .times-answer-form .btn{
  border:1px solid rgba(76,220,255,.76)!important;background:linear-gradient(180deg,#1b5b92,#0e3764)!important;color:#fff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.10),0 0 10px rgba(53,233,255,.09)!important;
}
#timesGameView.storm-running .times-number-pad{
  border:1px solid rgba(53,233,255,.56)!important;border-radius:14px!important;
  background:linear-gradient(180deg,#061a2e,#04101e)!important;
  box-shadow:inset 0 0 0 1px rgba(88,202,255,.08),0 0 12px rgba(53,233,255,.05)!important;
}
#timesGameView.storm-running .times-number-pad:before,#timesGameView.storm-running .times-number-pad:after{display:none!important;}
#timesGameView.storm-running .times-pad-grid{background:transparent!important;box-shadow:none!important;}
#timesGameView.storm-running .times-pad-key{
  border:1px solid rgba(83,181,237,.52)!important;border-bottom-width:2px!important;border-radius:10px!important;
  background:linear-gradient(180deg,#153b5d,#0a233a)!important;color:#f7fdff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.07),0 3px 7px rgba(0,0,0,.18)!important;text-shadow:none!important;
}
#timesGameView.storm-running .times-pad-key:active:not(:disabled){transform:translateY(1px)!important;filter:brightness(1.16)!important;box-shadow:inset 0 0 10px rgba(53,233,255,.11)!important;}
#timesGameView.storm-running .times-pad-key>small{color:#8dbbd6!important;}
#timesGameView.storm-running .times-pad-fire{
  border-color:#ffd06a!important;background:linear-gradient(135deg,#ffcf54,#ff9b20 52%,#ff681c)!important;color:#241304!important;
  box-shadow:inset 0 1px rgba(255,255,255,.42),0 0 15px rgba(255,169,37,.22),0 3px 7px rgba(0,0,0,.22)!important;
}
#timesGameView.storm-running .times-pad-fire>span{color:#2b1502!important;text-shadow:none!important;}
#timesGameView.storm-running .times-pad-fire>small{color:#6b3508!important;}

/* Nova is bright but restrained. */
#timesGameView.storm-running .times-bonus-weapon{
  border-color:rgba(132,107,255,.58)!important;background:linear-gradient(135deg,#17305e,#34216e 58%,#7a2c88)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 0 12px rgba(184,79,255,.10)!important;
}
#timesGameView.storm-running .times-bonus-charge{background:#111c31!important;border-color:rgba(89,219,255,.18)!important;}
#timesGameView.storm-running .times-bonus-charge i{background:linear-gradient(90deg,#b051ff,#ff4fc7,#ffd15f)!important;}

/* Movement compositor: no styling may interpolate the actual craft position. */
#timesGameView.storm-running.blaster-active .times-defender.shooter-live[data-gpu-flight="true"]{
  transition:none!important;will-change:transform!important;backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;contain:layout style;
  filter:none!important;
}
#timesGameView.storm-running.blaster-active .times-defender.shooter-live[data-gpu-flight="true"] .sigma-ship-frame{
  will-change:transform;backface-visibility:hidden;-webkit-backface-visibility:hidden;
}
#timesGameView.storm-running.direct-flight-held .times-defender.shooter-live[data-gpu-flight="true"]{filter:none!important;}

@media(max-width:900px){
  #timesGameView.storm-running:not(.blaster-active) .storm-scene-art{filter:saturate(1.08) contrast(1.055) brightness(.86)!important;}
  #timesGameView.storm-running.blaster-active .storm-scene-art{filter:saturate(1.14) contrast(1.07) brightness(.96)!important;}
  #timesGameView.storm-running .storm-scene-atmosphere{opacity:.36!important;mix-blend-mode:normal!important;}
  #timesGameView.storm-running .times-pad-key{box-shadow:inset 0 1px rgba(255,255,255,.05)!important;}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .times-arena::after{animation:none!important;transform:none!important;}
}


/* ============================================================
   V52.13 • PREMIUM LAUNCH PAD RUNWAY
   A pulsing landing-pad corridor that feels premium and alive
   without competing with gameplay. Brighter at the base, softer
   higher up, and automatically calmer in combat.
   ============================================================ */
#timesGameView.storm-running{
  --v5213-pad:#66f3ff;
  --v5213-pad-hi:#e8feff;
  --v5213-pad-warm:#ffd15a;
  --v5213-lane:#143758;
}
#timesGameView.storm-running .storm-premium-flightway{
  left:29%;right:29%;top:40%;bottom:-11%;
  clip-path:polygon(42% 0,58% 0,100% 100%,0 100%);
  background:
    linear-gradient(90deg,rgba(0,5,14,.08),rgba(9,29,49,.62) 12%,rgba(10,38,61,.78) 50%,rgba(9,29,49,.62) 88%,rgba(0,5,14,.08)),
    repeating-linear-gradient(180deg,transparent 0 90px,rgba(102,243,255,.06) 91px 110px,transparent 111px 182px);
  border-left:1px solid rgba(102,243,255,.26);
  border-right:1px solid rgba(102,243,255,.20);
  box-shadow:inset 22px 0 35px -28px rgba(102,243,255,.22),inset -22px 0 35px -28px rgba(24,140,255,.18),0 0 18px rgba(0,0,0,.22);
  opacity:.62;
  animation:v5213FlightwayFlow 8.6s linear infinite;
}
#timesGameView.storm-running .storm-premium-flightway::before,
#timesGameView.storm-running .storm-premium-flightway::after{
  width:2px;opacity:.38;box-shadow:0 0 10px rgba(102,243,255,.22);
}
#timesGameView.storm-running .storm-premium-flightway::before{left:18%;}
#timesGameView.storm-running .storm-premium-flightway::after{right:18%;}
#timesGameView.storm-running .storm-premium-flightway>i{
  height:15px;border-radius:999px;
  clip-path:polygon(50% 100%,0 0,16% 0,50% 64%,84% 0,100% 0);
  background:linear-gradient(180deg,var(--v5213-pad-hi),var(--v5213-pad));
  filter:drop-shadow(0 0 8px rgba(102,243,255,.26));
  opacity:.44;animation:v5213ChevronPulse 1.65s ease-in-out infinite;
}
#timesGameView.storm-running .storm-premium-flightway>i:first-child{top:30%;animation-delay:0s;}
#timesGameView.storm-running .storm-premium-flightway>i:nth-child(2){top:60%;width:80%;animation-delay:.5s;}
#timesGameView.storm-running .storm-premium-flightway>b{
  top:3%;bottom:16%;width:2px;opacity:.28;
  background:linear-gradient(180deg,transparent,rgba(102,243,255,.48) 30%,rgba(168,251,255,.72) 50%,rgba(102,243,255,.34) 68%,transparent);
  box-shadow:0 0 12px rgba(102,243,255,.18);
  animation:v5213SpinePulse 1.8s ease-in-out infinite;
}
#timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-core,
#timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-ring{position:absolute;left:50%;transform:translateX(-50%);pointer-events:none;}
#timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-core{
  bottom:7%;width:78%;height:12%;border-radius:50%;
  background:radial-gradient(ellipse at 50% 50%,rgba(232,254,255,.98) 0 16%,rgba(112,244,255,.85) 22%,rgba(31,177,255,.34) 46%,rgba(12,33,57,.16) 66%,transparent 74%);
  box-shadow:0 0 26px rgba(102,243,255,.24),0 0 42px rgba(24,140,255,.14);
  opacity:.92;animation:v5213PadBreath 1.55s ease-in-out infinite;z-index:0;
}
#timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-ring{
  bottom:6.4%;width:86%;height:14%;border-radius:50%;
  border:2px solid rgba(102,243,255,.46);
  box-shadow:0 0 16px rgba(102,243,255,.14),inset 0 0 16px rgba(102,243,255,.06);
  opacity:.56;animation:v5213PadRing 1.8s ease-out infinite;z-index:0;
}
#timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-ring.ring-b{width:96%;height:17%;opacity:.38;animation-delay:.65s;}
#timesGameView.storm-running .storm-city-foreground{opacity:.84!important;filter:saturate(1.08) contrast(1.08) brightness(.90)!important;}
#timesGameView.storm-running:not(.blaster-active) .storm-scene-lightwash{opacity:.70!important;}
#timesGameView.storm-running .times-arena{box-shadow:0 0 0 1px rgba(24,140,255,.22),0 0 22px rgba(53,233,255,.14),0 20px 48px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.03)!important;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway{opacity:.40;animation-duration:11.5s;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway>i{opacity:.22;animation-duration:2.5s;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway>b{opacity:.16;animation-duration:2.8s;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway .storm-launch-pad-core{opacity:.46;animation-duration:2.6s;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway .storm-launch-pad-ring{opacity:.20;animation-duration:2.8s;}
@keyframes v5213FlightwayFlow{from{background-position:0 0,0 -182px}to{background-position:0 0,0 182px}}
@keyframes v5213ChevronPulse{0%,100%{opacity:.25;transform:translateX(-50%) scale(.96)}50%{opacity:.62;transform:translateX(-50%) scale(1.03)}}
@keyframes v5213SpinePulse{0%,100%{opacity:.20}50%{opacity:.44}}
@keyframes v5213PadBreath{0%,100%{opacity:.72;transform:translateX(-50%) scale(.98)}50%{opacity:1;transform:translateX(-50%) scale(1.03)}}
@keyframes v5213PadRing{0%{opacity:.06;transform:translateX(-50%) scale(.86)}35%{opacity:.48}100%{opacity:0;transform:translateX(-50%) scale(1.10)}}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running .storm-premium-flightway,
  #timesGameView.storm-running .storm-premium-flightway>i,
  #timesGameView.storm-running .storm-premium-flightway>b,
  #timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-core,
  #timesGameView.storm-running .storm-premium-flightway .storm-launch-pad-ring{animation:none!important;}
}


/* ============================================================
   V52.14 • Clean Worksheet UI + Premium Interactive Ratio Lab
   Paper first. Secondary controls live at the bottom of every worksheet.
   ============================================================ */
#worksheetWorkspace.worksheet-clean-workspace{max-width:1040px;margin:0 auto}
.worksheet-clean-head{padding:4px 2px 10px;margin:0 0 8px;border:0;background:transparent;box-shadow:none}
.worksheet-clean-head .eyebrow{margin:0 0 3px;font-size:.58rem;letter-spacing:.12em}
.worksheet-clean-head h3{margin:0;font-size:1.05rem;line-height:1.2;color:var(--text)}
.worksheet-clean-head .muted{margin:3px 0 0;font-size:.67rem;line-height:1.35}
#worksheetWorkspace .paper-sheet{margin-top:0}
.worksheet-bottom-hub{margin:14px 0 28px;padding:12px;border:1px solid #d8e4ed;border-radius:18px;background:linear-gradient(180deg,#fbfdff,#f4f8fb);box-shadow:0 10px 26px rgba(8,31,52,.07)}
.worksheet-bottom-progress{margin:0 0 10px!important;padding:9px 11px!important;border-radius:13px!important;box-shadow:none!important;background:#fff!important;border:1px solid #e1e9ef!important}
.worksheet-bottom-progress .interactive-kicker{font-size:.5rem!important}.worksheet-bottom-progress strong{font-size:.78rem!important}.worksheet-bottom-progress p{font-size:.62rem!important;margin:2px 0 0!important}
.worksheet-bottom-progress .answer-progress-track{height:5px!important;margin-top:7px!important}
.worksheet-bottom-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.worksheet-bottom-actions .btn{min-height:34px!important;padding:6px 9px!important;border-radius:10px!important;font-size:.68rem!important;line-height:1.1!important}
.worksheet-bottom-actions .worksheet-mark-action{margin-left:auto;padding-inline:13px!important;font-weight:900!important}
.worksheet-bottom-actions .worksheet-compact-action.active{border-color:#33cdec!important;background:rgba(38,200,235,.09)!important;color:#096b85!important}
.ratio-lab-launch{border-color:rgba(122,92,255,.32)!important;background:linear-gradient(135deg,rgba(34,211,238,.08),rgba(124,92,255,.08))!important;font-weight:900!important}
.worksheet-bottom-tools{margin:10px 0 0!important;padding:9px 10px!important;border-radius:13px!important;background:#fff!important}
.worksheet-bottom-tools .worksheet-tool-strip-copy{min-width:130px}.worksheet-bottom-tools .worksheet-tool-strip-copy strong{font-size:.72rem}.worksheet-bottom-tools .worksheet-tool-strip-copy small{font-size:.59rem}
.worksheet-bottom-tools .bt-tool-chip{min-height:32px!important;padding:5px 8px!important;font-size:.64rem!important}

.worksheet-ratio-lab{position:relative;overflow:hidden;margin:10px 0 0;padding:16px;border:1px solid rgba(64,210,245,.36);border-radius:18px;background:radial-gradient(circle at 14% 0%,rgba(35,211,238,.17),transparent 35%),radial-gradient(circle at 88% 5%,rgba(124,92,255,.16),transparent 34%),linear-gradient(160deg,#06192c,#0a2741 55%,#111f3c);color:#eefaff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 12px 28px rgba(1,18,34,.2)}
.worksheet-ratio-lab:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(94,217,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(94,217,255,.035) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(to bottom,black,transparent 82%)}
.ratio-lab-head,.ratio-lab-controls,.ratio-lab-meaning,.ratio-lab-stage,.ratio-lab-steps,.ratio-lab-memory{position:relative;z-index:1}
.ratio-lab-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.ratio-lab-head h4{margin:2px 0 2px;font-size:1.15rem}.ratio-lab-head p{margin:0;color:#a7c6d9;font-size:.7rem;line-height:1.4}
.ratio-lab-kicker{display:block;color:#66eaff;font-size:.54rem;letter-spacing:.16em;font-weight:950}.ratio-lab-close{width:32px;height:32px;border:1px solid rgba(124,224,255,.25);border-radius:10px;background:rgba(4,20,35,.62);color:#c9f7ff;font-size:1.25rem;cursor:pointer}
.ratio-lab-controls{display:flex;align-items:end;gap:8px;flex-wrap:wrap;margin:13px 0 10px}.ratio-lab-controls label{display:flex;flex-direction:column;gap:4px}.ratio-lab-controls label>span{font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:#84b8cf;font-weight:850}.ratio-lab-controls input{width:74px;height:38px;padding:6px 8px;border:1px solid rgba(101,221,250,.3);border-radius:10px;background:#071523;color:#fff;font:inherit;font-weight:900;text-align:center;outline:none}.ratio-lab-controls input:focus{border-color:#5ce9ff;box-shadow:0 0 0 3px rgba(75,219,255,.1)}
.ratio-lab-colon{height:38px;display:grid;place-items:center;padding:0 1px;font-size:1.35rem;font-weight:1000;color:#8ef1ff}.ratio-lab-total{margin-left:8px}.ratio-lab-money-input{display:flex;align-items:center;height:38px;border:1px solid rgba(101,221,250,.3);border-radius:10px;background:#071523;overflow:hidden}.ratio-lab-money-input b{padding-left:9px;color:#7feeff}.ratio-lab-money-input input{border:0!important;width:92px;background:transparent;box-shadow:none!important;text-align:left;padding-left:5px}
.ratio-lab-reset{height:38px;padding:0 10px;border:1px solid rgba(135,214,238,.2);border-radius:10px;background:rgba(255,255,255,.045);color:#c8e7f4;font-size:.62rem;font-weight:850;cursor:pointer}
.ratio-lab-meaning{margin:8px 0 12px;padding:9px 11px;border:1px solid rgba(92,224,247,.19);border-radius:12px;background:rgba(40,191,222,.07);color:#d5edf7;font-size:.72rem;line-height:1.45}.ratio-lab-meaning strong{color:#66eaff}
.ratio-lab-stage{display:grid;grid-template-columns:minmax(0,2fr) auto minmax(0,3fr);align-items:center;gap:12px;padding:12px;border:1px solid rgba(124,224,255,.13);border-radius:15px;background:rgba(2,13,26,.48)}
.ratio-lab-group-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.ratio-lab-group-title strong{font-size:.72rem}.ratio-lab-group-title span{font-size:.78rem;font-weight:950}.ratio-lab-group.first .ratio-lab-group-title span{color:#58e5ff}.ratio-lab-group.second .ratio-lab-group-title span{color:#b99cff}
.ratio-lab-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:6px}.ratio-part-block{min-width:38px;min-height:56px;display:grid;place-items:center;align-content:center;gap:1px;border-radius:10px;border:1px solid rgba(116,231,255,.5);background:linear-gradient(145deg,rgba(36,211,239,.26),rgba(20,125,181,.16));box-shadow:inset 0 0 18px rgba(43,222,250,.1),0 0 12px rgba(30,200,240,.06)}.ratio-lab-group.second .ratio-part-block{border-color:rgba(176,145,255,.55);background:linear-gradient(145deg,rgba(125,92,255,.28),rgba(72,55,160,.18));box-shadow:inset 0 0 18px rgba(138,104,255,.1),0 0 12px rgba(122,92,255,.06)}.ratio-part-block b{font-size:.72rem}.ratio-part-block small{font-size:.52rem;color:#cbeefa;white-space:nowrap}
.ratio-lab-divider{display:grid;place-items:center;align-content:center;text-align:center;min-width:58px}.ratio-lab-divider span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#55e8ff,#8170ff);color:#07131f;font-weight:1000}.ratio-lab-divider small{max-width:62px;margin-top:4px;color:#8db1c5;font-size:.49rem;line-height:1.25}
.ratio-lab-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}.ratio-lab-steps article{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:7px;min-width:0;padding:8px;border:1px solid rgba(133,220,246,.13);border-radius:11px;background:rgba(255,255,255,.035)}.ratio-lab-steps article>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;background:rgba(78,223,248,.13);color:#76edff;font-size:.64rem;font-weight:950}.ratio-lab-steps small{display:block;color:#82a9bd;font-size:.49rem;text-transform:uppercase;letter-spacing:.04em}.ratio-lab-steps strong{display:block;margin-top:2px;color:#edfaff;font-size:.65rem;line-height:1.3;word-break:break-word}
.ratio-lab-memory{margin-top:10px;padding:8px 10px;border-radius:11px;background:linear-gradient(90deg,rgba(42,211,238,.12),rgba(125,92,255,.12));color:#c9f8ff;text-align:center;font-size:.69rem;font-weight:900}
html[data-theme="dark"] .worksheet-bottom-hub{border-color:#29445c;background:linear-gradient(180deg,#0b1c2c,#0d2234)}
html[data-theme="dark"] .worksheet-bottom-progress,html[data-theme="dark"] .worksheet-bottom-tools{background:#0c2032!important;border-color:#28465e!important}
html[data-theme="dark"] .worksheet-bottom-actions .worksheet-compact-action.active{color:#82edff!important}
#worksheetWorkspace.worksheet-submitted .worksheet-bottom-progress{display:none!important}

@media(max-width:760px){
  .worksheet-clean-head{padding-inline:2px}.worksheet-clean-head .muted{font-size:.62rem}
  .worksheet-bottom-hub{padding:9px;border-radius:15px}.worksheet-bottom-actions{gap:6px}.worksheet-bottom-actions .btn{flex:0 1 auto;min-height:32px!important;padding:6px 8px!important;font-size:.64rem!important}.worksheet-bottom-actions .worksheet-mark-action{order:-1;width:100%;margin-left:0!important;min-height:39px!important;font-size:.72rem!important}
  .worksheet-bottom-tools{align-items:flex-start!important}.worksheet-bottom-tools .worksheet-tool-strip-actions{width:100%}
  .ratio-lab-controls{align-items:end}.ratio-lab-total{margin-left:0}.ratio-lab-stage{grid-template-columns:1fr;gap:9px}.ratio-lab-divider{grid-template-columns:auto auto;justify-content:center;gap:7px}.ratio-lab-divider small{max-width:none;margin:0}.ratio-lab-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){
  .worksheet-bottom-actions .btn{flex:1 1 calc(33.333% - 6px)}.worksheet-bottom-actions .worksheet-mark-action{flex-basis:100%}
  .ratio-lab-controls label{flex:1 1 80px}.ratio-lab-controls input{width:100%;box-sizing:border-box}.ratio-lab-colon{flex:0 0 12px}.ratio-lab-total{flex:1 1 145px!important}.ratio-lab-money-input input{width:100%}.ratio-lab-reset{width:100%}
  .ratio-lab-steps{grid-template-columns:1fr}.ratio-lab-blocks{grid-template-columns:repeat(auto-fit,minmax(38px,1fr))}.ratio-part-block{min-height:50px}
}
@media print{.worksheet-clean-head,.worksheet-bottom-hub{display:none!important}}


/* =========================================================
   V52.15 • SIGMA TOPIC LABS — FULL-SCREEN TEACHING ENGINE
   ========================================================= */
.topic-lab-launch{border-color:rgba(92,214,245,.38)!important;background:linear-gradient(135deg,rgba(34,211,238,.10),rgba(124,92,255,.10))!important;font-weight:950!important}
body.topic-lab-open{overflow-y:auto!important}
.sigma-topic-lab-overlay{position:fixed;inset:0;z-index:10050;padding:14px;background:radial-gradient(circle at 18% 0%,rgba(33,215,239,.18),transparent 31%),radial-gradient(circle at 87% 8%,rgba(124,92,255,.19),transparent 35%),rgba(2,9,19,.96);backdrop-filter:blur(16px);overflow:auto;color:#edfaff}
.sigma-topic-lab-shell{position:relative;min-height:calc(100dvh - 28px);max-width:1440px;margin:0 auto;border:1px solid rgba(91,226,255,.28);border-radius:24px;background:linear-gradient(155deg,rgba(5,22,39,.97),rgba(8,34,55,.98) 55%,rgba(14,24,52,.98));box-shadow:0 30px 100px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.025);overflow:hidden;display:flex;flex-direction:column}
.sigma-topic-lab-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(91,226,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(91,226,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}
.sigma-topic-lab-head,.sigma-topic-lab-content,.sigma-topic-lab-footer{position:relative;z-index:1}
.sigma-topic-lab-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 16px;border-bottom:1px solid rgba(114,219,246,.13)}
.topic-lab-kicker{display:block;color:#65eaff;font-size:.62rem;letter-spacing:.18em;font-weight:1000}.sigma-topic-lab-head h2{margin:4px 0 4px;font-size:clamp(1.45rem,3vw,2.45rem);line-height:1.05;color:#f4fbff}.sigma-topic-lab-head p{margin:0;color:#9abed2;font-size:.82rem}
.topic-lab-close{width:44px;height:44px;flex:0 0 auto;border:1px solid rgba(116,224,250,.28);border-radius:14px;background:rgba(2,14,27,.68);color:#dffbff;font-size:1.7rem;line-height:1;cursor:pointer}.topic-lab-close:hover{border-color:#6deaff;background:rgba(51,211,239,.1)}
.sigma-topic-lab-content{flex:1;padding:20px 24px 24px;display:flex;align-items:stretch}.topic-lab-grid{width:100%;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;align-items:stretch}.topic-lab-panel{min-width:0;padding:20px;border:1px solid rgba(114,219,246,.16);border-radius:20px;background:rgba(2,15,28,.58);box-shadow:inset 0 0 28px rgba(63,218,246,.025)}.topic-lab-panel h3{margin:0 0 14px;font-size:1.05rem;color:#f0fbff}.teaching-panel{background:linear-gradient(155deg,rgba(13,35,54,.72),rgba(17,28,60,.64))}
.topic-lab-input-row{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.topic-lab-input-row label{display:flex;flex-direction:column;gap:5px;color:#8eb4c8;font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.topic-lab-input-row input,.topic-lab-input-row select{height:43px;min-width:108px;padding:7px 10px;border:1px solid rgba(103,222,250,.32);border-radius:11px;background:#061522;color:#fff;font:inherit;font-weight:900;outline:none}.topic-lab-input-row input:focus,.topic-lab-input-row select:focus{border-color:#62eaff;box-shadow:0 0 0 3px rgba(67,222,247,.1)}
.topic-lab-rule{margin:16px 0 0;padding:12px 14px;border:1px solid rgba(78,224,247,.17);border-radius:13px;background:rgba(42,202,230,.06);color:#cbe7f2;font-size:.82rem;line-height:1.5}.topic-lab-rule strong{color:#6deaff}
.topic-lab-steps{list-style:none;padding:0;margin:0;display:grid;gap:10px}.topic-lab-steps li{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid rgba(111,218,244,.13);border-radius:13px;background:rgba(255,255,255,.035)}.topic-lab-steps li>b{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(145deg,rgba(48,220,241,.18),rgba(128,99,255,.18));color:#79ecff;font-size:.82rem}.topic-lab-steps span{color:#9dbfd0;font-size:.68rem}.topic-lab-steps strong{display:block;margin-top:3px;color:#f2fbff;font-size:.88rem;line-height:1.35}.topic-lab-memory{margin-top:14px;padding:11px 12px;border-radius:12px;background:linear-gradient(90deg,rgba(43,215,238,.13),rgba(125,92,255,.14));color:#d2faff;text-align:center;font-size:.72rem;font-weight:950;letter-spacing:.025em}
.ratio-full-stage{display:grid;grid-template-columns:2fr 3fr;gap:12px;margin-top:16px}.ratio-full-stage>div{padding:13px;border:1px solid rgba(110,221,246,.13);border-radius:14px;background:rgba(1,11,22,.42)}.ratio-full-stage strong{display:block;margin-bottom:8px;font-size:.75rem}.ratio-full-blocks{display:grid;grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:7px}.ratio-full-blocks span{min-height:68px;display:grid;place-items:center;border-radius:11px;font-size:.68rem;font-weight:950}.ratio-full-blocks.cyan span{border:1px solid rgba(86,230,255,.55);background:linear-gradient(145deg,rgba(35,211,238,.28),rgba(20,125,181,.15));color:#dffcff}.ratio-full-blocks.violet span{border:1px solid rgba(178,145,255,.55);background:linear-gradient(145deg,rgba(125,92,255,.3),rgba(72,55,160,.16));color:#efe9ff}
.fraction-inputs{display:flex;align-items:center;justify-content:center;gap:16px;margin:8px 0 18px}.fraction-inputs>b{font-size:1.7rem;color:#6deaff}.fraction-inputs label{display:grid;grid-template-rows:1fr 2px 1fr;gap:5px;width:90px}.fraction-inputs label span{background:#bceffa;height:2px}.fraction-inputs input{width:100%;height:43px;text-align:center;border:1px solid rgba(103,222,250,.28);border-radius:10px;background:#061522;color:#fff;font-size:1.1rem;font-weight:950}.fraction-bars-wrap{display:grid;gap:12px}.fraction-bars-wrap>div{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:10px}.fraction-bars-wrap strong{text-align:center;color:#e9faff}.fraction-visual-bar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;height:72px;border:1px solid rgba(118,225,248,.24);border-radius:12px;overflow:hidden;background:rgba(255,255,255,.025)}.fraction-visual-bar span{border-right:1px solid rgba(255,255,255,.17)}.fraction-visual-bar span:last-child{border-right:0}.fraction-visual-bar.a span.filled{background:linear-gradient(180deg,rgba(47,219,240,.5),rgba(30,144,192,.3))}.fraction-visual-bar.b span.filled{background:linear-gradient(180deg,rgba(144,110,255,.52),rgba(80,57,177,.32))}
.percentage-bar{display:flex;align-items:stretch;height:84px;margin-top:20px;border:1px solid rgba(117,225,249,.22);border-radius:15px;overflow:hidden;background:rgba(255,255,255,.025)}.percentage-bar span{display:grid;place-items:center;padding:8px;font-size:.72rem;font-weight:950;min-width:64px}.percentage-bar .base{background:linear-gradient(90deg,rgba(37,211,238,.4),rgba(30,148,195,.28));color:#e4fbff}.percentage-bar .change{background:linear-gradient(90deg,rgba(126,91,255,.4),rgba(167,111,255,.28));color:#f2eaff}.percentage-result{margin-top:15px;text-align:center}.percentage-result small{display:block;color:#8eb4c8;text-transform:uppercase;font-size:.6rem;letter-spacing:.08em}.percentage-result strong{display:block;margin-top:4px;font-size:2rem;color:#70edff}
.balance-machine{position:relative;min-height:250px;margin-top:12px;display:grid;place-items:center;align-content:center}.balance-beam{position:relative;width:min(92%,620px);display:grid;grid-template-columns:1fr 44px 1fr;align-items:end;gap:10px}.balance-beam:after{content:"";position:absolute;left:4%;right:4%;bottom:-13px;height:8px;border-radius:8px;background:linear-gradient(90deg,#6deaff,#ad92ff)}.balance-beam span{min-height:85px;display:grid;place-items:center;padding:12px;border:1px solid rgba(107,228,250,.3);border-radius:14px;background:rgba(4,24,39,.76);font-size:1.25rem;font-weight:950;color:#f1fbff}.balance-beam i{width:0;height:0;border-left:22px solid transparent;border-right:22px solid transparent;border-bottom:70px solid rgba(111,220,246,.4);transform:translateY(55px)}.balance-base{width:120px;height:14px;margin-top:60px;border-radius:50%;background:rgba(113,221,247,.28)}
.fractions-topic-lab .topic-lab-panel,.algebra-topic-lab .topic-lab-panel{position:relative;overflow:hidden}
.fractions-topic-lab .topic-lab-panel:before,.algebra-topic-lab .topic-lab-panel:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(109,234,255,.48),rgba(173,146,255,.28),transparent)}
.fraction-stage-board,.fraction-equivalent-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.fraction-equivalent-flow{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.fraction-stage-card{padding:14px;border:1px solid rgba(120,228,248,.16);border-radius:18px;background:linear-gradient(160deg,rgba(6,22,34,.86),rgba(11,26,46,.7));box-shadow:inset 0 1px rgba(255,255,255,.03)}.fraction-stage-card small{display:block;font-size:.68rem;letter-spacing:.18em;color:#8adff5;text-transform:uppercase}.fraction-stage-card strong.fraction-stage-value{display:block;margin:8px 0 2px;font-size:1.15rem;color:#f5fcff}.fraction-stage-card .fraction-stage-mixed{display:block;margin-bottom:10px;color:#bfdbe7;font-size:.82rem}.fraction-stage-card p{margin:10px 0 0;font-size:.8rem;color:#b8d4df;line-height:1.45}.fraction-stage-card em{display:block;margin-top:10px;color:#91b8c8;font-style:normal;font-size:.75rem}
.fraction-piece-grid{--cols:4;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:6px;margin-top:8px}.fraction-piece-grid span{aspect-ratio:1/1;border-radius:9px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035);box-shadow:inset 0 1px rgba(255,255,255,.03)}.fraction-piece-grid span.whole-end{box-shadow:0 0 0 1px rgba(255,255,255,.06),inset 0 1px rgba(255,255,255,.03)}.fraction-piece-grid.a span.filled,.fraction-stage-card.eq-a .fraction-meter-fill{background:linear-gradient(180deg,rgba(45,212,191,.9),rgba(20,110,100,.74))}.fraction-piece-grid.b span.filled,.fraction-stage-card.eq-b .fraction-meter-fill{background:linear-gradient(180deg,rgba(96,165,250,.92),rgba(49,78,211,.72))}.fraction-piece-grid.sum span.filled,.fraction-stage-card.sum .fraction-meter-fill,.fraction-piece-grid.result span.filled,.fraction-stage-card.result .fraction-meter-fill{background:linear-gradient(180deg,rgba(250,204,21,.94),rgba(180,83,9,.78))}.fraction-piece-grid.result span.filled{box-shadow:0 0 0 1px rgba(250,204,21,.16),0 8px 18px rgba(245,158,11,.16)}
.fraction-meter{margin-top:10px}.fraction-meter-track{height:16px;border-radius:999px;border:1px solid rgba(120,228,248,.16);background:rgba(255,255,255,.05);overflow:hidden}.fraction-meter-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(180deg,rgba(45,212,191,.9),rgba(20,110,100,.74));box-shadow:0 8px 24px rgba(45,212,191,.2)}.fraction-meter-scale{display:flex;justify-content:space-between;margin-top:6px;color:#85a6b5;font-size:.72rem}
.fraction-compare-strip{display:grid;grid-template-columns:auto auto 1fr auto;gap:10px;align-items:center;margin:16px 0 6px;padding:12px 14px;border-radius:16px;border:1px solid rgba(114,219,246,.16);background:rgba(255,255,255,.028)}.fraction-compare-strip span,.fraction-compare-strip strong,.fraction-compare-strip small{line-height:1.35}.fraction-compare-strip span{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#91dbf0}.fraction-compare-strip strong{color:#f3fbff}.fraction-compare-strip i{height:2px;border-radius:999px;background:linear-gradient(90deg,rgba(109,234,255,.65),rgba(173,146,255,.55))}.fraction-compare-strip small{grid-column:1/-1;color:#b9d3de;font-size:.8rem}
.fraction-result-panel{margin-top:16px;padding:16px;border-radius:18px;border:1px solid rgba(250,204,21,.18);background:radial-gradient(circle at 10% 0,rgba(250,204,21,.12),transparent 36%),linear-gradient(150deg,rgba(34,20,0,.3),rgba(18,22,33,.58))}.fraction-result-panel small{display:block;font-size:.68rem;letter-spacing:.18em;color:#f7d86f;text-transform:uppercase}.fraction-result-panel strong{display:block;margin:6px 0 4px;font-size:1.25rem;color:#fff7d0}.fraction-result-panel span{display:block;color:#d8e8ef;font-size:.83rem}.fraction-result-panel p{margin:12px 0 0;color:#b8d4df;font-size:.8rem;line-height:1.45}
.algebra-equation-pill{display:grid;gap:3px;margin-top:12px;padding:14px 16px;border-radius:18px;border:1px solid rgba(109,234,255,.16);background:radial-gradient(circle at 5% 0,rgba(45,212,191,.14),transparent 30%),linear-gradient(150deg,rgba(6,22,34,.85),rgba(12,24,45,.72))}.algebra-equation-pill small{font-size:.68rem;letter-spacing:.18em;color:#94e4f6;text-transform:uppercase}.algebra-equation-pill strong{font-size:1.12rem;color:#f3fcff}.algebra-equation-pill span{color:#bad7e1;font-size:.82rem}
.algebra-visual-journey{display:grid;gap:12px;margin-top:16px}.alg-expression-card{padding:14px;border-radius:18px;border:1px solid rgba(114,219,246,.14);background:linear-gradient(160deg,rgba(6,22,34,.88),rgba(10,26,46,.76))}.alg-expression-card small{display:block;font-size:.68rem;letter-spacing:.18em;color:#8adff5;text-transform:uppercase}.alg-expression-card strong{display:block;margin:7px 0 10px;color:#f4fbff;font-size:1.06rem}.alg-expression-card.final{border-color:rgba(250,204,21,.18);background:radial-gradient(circle at 7% 0,rgba(250,204,21,.12),transparent 34%),linear-gradient(160deg,rgba(28,22,8,.52),rgba(10,26,46,.82))}.alg-expression-balance{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center}.alg-expression-side{display:grid;gap:8px;padding:12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.alg-side-heading{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#89aab8}.alg-side-note{font-size:.8rem;color:#90b3c0}.alg-balance-equals{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:rgba(109,234,255,.1);border:1px solid rgba(109,234,255,.18);color:#dffbff;font-weight:900}
.alg-x-tiles,.alg-value-pills,.alg-group-split{display:flex;flex-wrap:wrap;gap:8px}.alg-x-tiles span,.alg-value-pill,.alg-group-split span,.alg-solution-chip{min-height:38px;display:grid;place-items:center;padding:0 12px;border-radius:12px;font-weight:900}.alg-x-tiles span{background:linear-gradient(180deg,rgba(45,212,191,.88),rgba(13,148,136,.7));color:#04252b;box-shadow:0 10px 24px rgba(45,212,191,.18)}.alg-value-pill{background:linear-gradient(180deg,rgba(96,165,250,.88),rgba(49,78,211,.7));color:#eef8ff;box-shadow:0 10px 24px rgba(59,130,246,.12)}.alg-value-pill.positive{background:linear-gradient(180deg,rgba(96,165,250,.88),rgba(49,78,211,.7))}.alg-value-pill.negative{background:linear-gradient(180deg,rgba(251,146,60,.88),rgba(194,65,12,.72));color:#fff7ed}.alg-value-pill.zero{background:rgba(148,163,184,.18);color:#e4eef3;box-shadow:none}
.alg-final-panel{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:12px;align-items:start}.alg-group-split span{display:grid;gap:2px;justify-items:center;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);color:#e9f4fb;padding:10px 12px}.alg-group-split span b{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#84aebb}.alg-group-split span strong{margin:0;font-size:1rem}.alg-solution-chip{display:grid;gap:4px;padding:14px;border:1px solid rgba(250,204,21,.18);background:linear-gradient(180deg,rgba(250,204,21,.22),rgba(180,83,9,.2));color:#fff7d6;box-shadow:0 16px 30px rgba(245,158,11,.12)}.alg-solution-chip span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#fde68a}.alg-solution-chip strong{margin:0;font-size:1.28rem;color:#fffce6}.alg-solution-chip small{font-size:.77rem;color:#fef3c7}
.algebra-check-panel{margin-top:16px;padding:16px;border-radius:18px;border:1px solid rgba(109,234,255,.14);background:rgba(255,255,255,.03)}.algebra-check-panel small{display:block;font-size:.68rem;letter-spacing:.18em;color:#93e6f7;text-transform:uppercase}.algebra-check-panel strong{display:block;margin:7px 0;color:#f1fbff;font-size:1rem}.algebra-check-panel span{display:block;color:#b9d3de;font-size:.82rem;line-height:1.45}
@media(max-width:900px){.fraction-equivalent-flow{grid-template-columns:1fr}.fraction-stage-board{grid-template-columns:1fr}.alg-expression-balance,.alg-final-panel{grid-template-columns:1fr}.alg-balance-equals{justify-self:center}.fraction-compare-strip{grid-template-columns:1fr auto}}
@media(max-width:520px){.fraction-stage-card,.alg-expression-card,.fraction-result-panel,.algebra-equation-pill,.algebra-check-panel{padding:12px}.fraction-inputs{gap:10px}.fraction-compare-strip{padding:10px 12px}.fraction-compare-strip strong{font-size:.9rem}.alg-x-tiles span,.alg-value-pill,.alg-group-split span,.alg-solution-chip{min-height:34px;padding:0 10px}}
.graph-lab-wrap{display:grid;place-items:center;margin-top:14px}.graph-lab-svg{width:min(100%,520px);aspect-ratio:1;border:1px solid rgba(108,223,248,.25);border-radius:16px;background:#061522;overflow:hidden}.graph-grid line{stroke:rgba(118,212,235,.09);stroke-width:1}.graph-axis{stroke:rgba(224,249,255,.55);stroke-width:2}.graph-line{stroke:#61eaff;stroke-width:5}.graph-point{fill:#b693ff;stroke:#fff;stroke-width:2}.graph-point.second{fill:#59e7ff}.graph-equation{margin:8px 0 16px;padding:14px;border-radius:14px;background:rgba(51,210,238,.08);font-size:1.2rem;text-align:center;color:#d9f7ff}.graph-equation strong{color:#7deeff}
.sigma-topic-lab-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 24px 18px;border-top:1px solid rgba(113,220,246,.12);color:#85aabe;font-size:.68rem}.sigma-topic-lab-footer .btn{flex:0 0 auto}
@media(max-width:900px){.sigma-topic-lab-overlay{padding:0}.sigma-topic-lab-shell{min-height:100dvh;border:0;border-radius:0}.topic-lab-grid{grid-template-columns:1fr}.sigma-topic-lab-content{padding:14px}.sigma-topic-lab-head{padding:16px}.sigma-topic-lab-footer{padding:12px 14px}.ratio-full-stage{grid-template-columns:1fr}}
@media(max-width:520px){.sigma-topic-lab-head p{font-size:.7rem}.topic-lab-panel{padding:14px}.topic-lab-input-row label{flex:1 1 100px}.topic-lab-input-row input,.topic-lab-input-row select{width:100%;min-width:0;box-sizing:border-box}.ratio-full-blocks{grid-template-columns:repeat(auto-fit,minmax(46px,1fr))}.ratio-full-blocks span{min-height:58px;font-size:.6rem}.sigma-topic-lab-footer{align-items:stretch;flex-direction:column}.sigma-topic-lab-footer .btn{width:100%}.balance-machine{min-height:210px}.balance-beam span{min-height:70px;font-size:1rem}.fraction-inputs label{width:76px}}
@media print{.sigma-topic-lab-overlay{display:none!important}}


/* ============================================================
   V52.16 • TRUE FINGER FLIGHT
   No transform interpolation while Storm is live. The JS input path paints
   the latest touch sample immediately, independently of combat-loop load.
   ============================================================ */
#timesGameView.blaster-active .times-defender.shooter-live[data-gpu-flight="true"]{
  transition:none!important;
  will-change:transform!important;
  touch-action:none!important;
}
#timesGameView.blaster-active .times-arena{touch-action:none!important;overscroll-behavior:contain!important;}


/* ============================================================
   V52.17 • STORM HARD-LOCK FINGER CONTROL
   Explicit final guard: live ship transforms never interpolate.
   ============================================================ */
#timesGameView.blaster-active .times-defender.shooter-live[data-gpu-flight="true"]{
  transition:none!important;
  animation:none!important;
  will-change:transform!important;
}
#timesGameView.blaster-active .times-arena{touch-action:none!important;overscroll-behavior:none!important;}


/* ===== V52.18 SHARPER STORM BACKGROUNDS =====
   Aim: a cleaner, crisper premium arena with more depth and a stronger wow effect
   while keeping gameplay readable. */
#timesGameView .times-arena{
  box-shadow:
    0 0 0 1px color-mix(in srgb,var(--sector-a) 24%,transparent),
    0 22px 62px rgba(3,12,26,.34),
    inset 0 0 92px color-mix(in srgb,var(--sector-b) 17%,transparent),
    inset 0 1px 0 rgba(255,255,255,.06);
}
#timesGameView .times-arena::after{
  background:
    linear-gradient(90deg,rgba(0,0,0,.28),transparent 7%,transparent 93%,rgba(0,0,0,.28)),
    linear-gradient(180deg,rgba(255,255,255,.04),transparent 16%,transparent 78%,rgba(0,0,0,.14));
  box-shadow:inset 0 0 120px rgba(0,0,0,.20), inset 0 -36px 80px rgba(0,0,0,.16);
}

#timesGameView .storm-premium-scene::before,
#timesGameView .storm-premium-scene::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}
#timesGameView .storm-premium-scene::before{
  background:
    radial-gradient(circle at 8% 11%, rgba(255,255,255,.95) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 15% 29%, rgba(148,243,255,.82) 0 1.2px, transparent 1.9px),
    radial-gradient(circle at 22% 17%, rgba(255,255,255,.86) 0 1px, transparent 1.7px),
    radial-gradient(circle at 31% 10%, rgba(255,255,255,.96) 0 1.4px, transparent 2px),
    radial-gradient(circle at 38% 27%, rgba(120,228,255,.74) 0 1px, transparent 1.7px),
    radial-gradient(circle at 46% 15%, rgba(255,255,255,.88) 0 1.3px, transparent 1.9px),
    radial-gradient(circle at 53% 8%, rgba(255,255,255,.92) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 62% 22%, rgba(161,120,255,.70) 0 1.1px, transparent 1.8px),
    radial-gradient(circle at 70% 12%, rgba(255,255,255,.95) 0 1.4px, transparent 2px),
    radial-gradient(circle at 77% 31%, rgba(126,232,255,.72) 0 1.1px, transparent 1.8px),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,.85) 0 1.1px, transparent 1.7px),
    radial-gradient(circle at 91% 9%, rgba(255,255,255,.96) 0 1.3px, transparent 2px),
    radial-gradient(circle at 96% 24%, rgba(138,223,255,.72) 0 1px, transparent 1.7px),
    radial-gradient(circle at 12% 42%, rgba(255,255,255,.72) 0 1px, transparent 1.7px),
    radial-gradient(circle at 66% 39%, rgba(255,255,255,.68) 0 1px, transparent 1.6px),
    radial-gradient(circle at 88% 46%, rgba(255,255,255,.65) 0 1px, transparent 1.6px);
  opacity:.82;
  mix-blend-mode:screen;
  animation:v5218StarDrift 20s linear infinite;
}
#timesGameView .storm-premium-scene::after{
  background:
    radial-gradient(ellipse at 18% 16%, color-mix(in srgb,var(--premium-a) 18%,transparent), transparent 42%),
    radial-gradient(ellipse at 78% 14%, color-mix(in srgb,var(--premium-b) 16%,transparent), transparent 40%),
    radial-gradient(ellipse at 52% 28%, rgba(255,255,255,.06), transparent 30%);
  mix-blend-mode:screen;
  opacity:.52;
  filter:blur(8px);
  animation:v5218NebulaShift 12s ease-in-out infinite alternate;
}
@keyframes v5218StarDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,16px,0)}}
@keyframes v5218NebulaShift{from{transform:translate3d(-1.2%,0,0) scale(1)}to{transform:translate3d(1.2%,-1.5%,0) scale(1.04)}}

#timesGameView .storm-scene-art{
  filter:saturate(1.12) contrast(1.14) brightness(.97) drop-shadow(0 22px 34px rgba(0,0,0,.20));
}
#timesGameView[data-sector="launch"] .storm-city-foreground{filter:hue-rotate(-10deg) saturate(.98) contrast(1.12) brightness(.90) drop-shadow(0 -8px 16px rgba(73,224,255,.10));}
#timesGameView[data-sector="orbit"] .storm-city-foreground{filter:saturate(1.14) contrast(1.14) brightness(.96) drop-shadow(0 -8px 16px rgba(156,111,255,.14));}
#timesGameView[data-sector="reactor"] .storm-city-foreground{filter:hue-rotate(145deg) saturate(1.30) contrast(1.14) brightness(.88) drop-shadow(0 -8px 16px rgba(255,148,73,.16));}
#timesGameView[data-sector="quantum"] .storm-city-foreground{filter:hue-rotate(72deg) saturate(1.22) contrast(1.12) brightness(.90) drop-shadow(0 -8px 16px rgba(93,255,193,.12));}
#timesGameView[data-sector="core"] .storm-city-foreground{filter:hue-rotate(18deg) saturate(1.24) contrast(1.16) brightness(.92) drop-shadow(0 -8px 16px rgba(255,111,221,.14));}
#timesGameView .storm-city-foreground{opacity:.88;}

#timesGameView .atmosphere-far{opacity:.16;filter:blur(16px);}
#timesGameView .atmosphere-near{opacity:.21;filter:blur(20px);}

#timesGameView .storm-premium-flightway{
  opacity:.34;
  background:
    linear-gradient(90deg,rgba(0,4,12,.14),rgba(4,18,34,.74) 11%,rgba(8,34,58,.78) 49%,rgba(4,18,34,.74) 89%,rgba(0,4,12,.14)),
    repeating-linear-gradient(180deg,transparent 0 72px,color-mix(in srgb,var(--premium-a) 64%,transparent) 73px 77px,transparent 78px 144px);
  border-left:1px solid color-mix(in srgb,var(--premium-a) 56%,transparent);
  border-right:1px solid color-mix(in srgb,var(--premium-b) 56%,transparent);
  box-shadow:
    inset 26px 0 36px -28px color-mix(in srgb,var(--premium-a) 52%,transparent),
    inset -26px 0 36px -28px color-mix(in srgb,var(--premium-b) 52%,transparent),
    0 0 34px rgba(0,0,0,.30);
}
#timesGameView .storm-premium-flightway::before,
#timesGameView .storm-premium-flightway::after{opacity:.74;}
#timesGameView .storm-premium-flightway>i{opacity:.38;filter:drop-shadow(0 0 12px var(--premium-a));}
#timesGameView .storm-premium-flightway>b{opacity:.48;}
#timesGameView .storm-premium-traffic{opacity:.26;}
#timesGameView .storm-premium-traffic i{box-shadow:0 0 9px var(--premium-a),-18px 8px 20px color-mix(in srgb,var(--premium-a) 35%,transparent),0 0 16px color-mix(in srgb,var(--premium-b) 18%,transparent);}
#timesGameView .storm-scene-lightwash{opacity:.82;}
#timesGameView .storm-scene-vignette{box-shadow:inset 0 0 64px 10px rgba(0,5,15,.34),inset 0 -88px 100px rgba(0,5,15,.18);}

#timesGameView.storm-running:not(.blaster-active) .storm-scene-art{filter:saturate(1.16) contrast(1.12) brightness(.92)!important;}
#timesGameView.storm-running .storm-city-foreground{opacity:.90!important;}
#timesGameView.storm-running:not(.blaster-active) .storm-premium-flightway{opacity:.32!important;}
#timesGameView.storm-running:not(.blaster-active) .storm-scene-lightwash{opacity:.78!important;}

#timesGameView.storm-running.blaster-active .storm-scene-art{filter:saturate(1.22) contrast(1.14) brightness(1.00)!important;}
#timesGameView.storm-running.blaster-active .storm-premium-flightway{opacity:.56!important;filter:brightness(1.20) contrast(1.10)!important;}
#timesGameView.storm-running.blaster-active .storm-premium-traffic{opacity:.62!important;}
#timesGameView.storm-running.blaster-active .storm-scene-lightwash{opacity:.92!important;}
#timesGameView.storm-running.blaster-active .storm-scene-vignette{box-shadow:inset 0 0 56px 8px rgba(0,5,15,.26),inset 0 -72px 88px rgba(0,5,15,.14)!important;}

@media(max-width:760px){
  #timesGameView .storm-premium-scene::before{opacity:.70;}
  #timesGameView .storm-premium-scene::after{opacity:.42;filter:blur(10px);}
  #timesGameView .storm-scene-art{filter:saturate(1.10) contrast(1.12) brightness(.95) drop-shadow(0 16px 26px rgba(0,0,0,.18));}
  #timesGameView .storm-premium-flightway{opacity:.30;}
}


/* ===== V52.19 PREMIUM STORM VISUAL SEPARATION =====
   Goal: remove the merged blue look and make Storm feel sharper, brighter,
   more inviting and more premium before gameplay starts. */
#timesGameView{
  --storm-premium-panel:#0a1f34;
  --storm-premium-panel-2:#102b46;
  --storm-premium-line:rgba(103,234,255,.26);
  --storm-premium-glow:rgba(88,222,255,.22);
  --storm-premium-warm:rgba(255,177,83,.26);
}
#timesGameView .times-game-shell{gap:12px;}
#timesGameView .times-arena-wrap{
  position:relative;
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(4,12,24,.22);
}
#timesGameView .times-game-hud,
#timesGameView .times-wave-strip,
#timesGameView .times-answer-deck,
#timesGameView .times-power-grid,
#timesGameView .times-game-hero{position:relative;z-index:2;}
#timesGameView .times-wave-strip,
#timesGameView .times-tier-strip{
  border-color:rgba(98,221,255,.24)!important;
  background:linear-gradient(180deg,rgba(7,27,46,.96),rgba(11,38,61,.94))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 8px 22px rgba(3,15,28,.12);
}
#timesGameView .times-wave-track,
#timesGameView .times-range-track{background:rgba(18,53,82,.85)!important;}

#timesGameView .times-hud-item{
  position:relative;
  overflow:hidden;
  border-color:rgba(99,224,255,.24)!important;
  background:linear-gradient(180deg,rgba(7,25,42,.98),rgba(11,40,65,.96))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 24px rgba(4,13,26,.18)!important;
}
#timesGameView .times-hud-item::after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
  opacity:.75;
}
#timesGameView .times-hud-item span{color:#86b8d8!important;}
#timesGameView .times-hud-item strong{color:#f5fcff!important;}

#timesGameView .times-answer-deck{
  border-color:rgba(98,221,255,.22)!important;
  background:linear-gradient(180deg,rgba(8,27,45,.98),rgba(12,39,63,.96))!important;
  box-shadow:0 14px 28px rgba(4,14,28,.16),inset 0 1px 0 rgba(255,255,255,.04);
}
#timesGameView .times-answer-form input{
  background:linear-gradient(180deg,#081421,#0c1d30)!important;
  border-color:rgba(95,195,235,.34)!important;
  color:#effbff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.02),inset 0 0 24px rgba(33,122,173,.08)!important;
}
#timesGameView .times-answer-form .btn.brand-primary{
  background:linear-gradient(135deg,#2b6cb1,#3c96da 48%,#56c7ff)!important;
  box-shadow:0 10px 22px rgba(30,104,176,.28),inset 0 1px 0 rgba(255,255,255,.18)!important;
}
#timesGameView .times-game-launch-row label{color:#9cb8cf!important;}
#timesGameView .times-game-launch-row select{
  border-color:rgba(98,221,255,.22)!important;
  background:linear-gradient(180deg,rgba(7,26,43,.98),rgba(12,38,60,.96))!important;
  color:#eefaff!important;
  box-shadow:0 8px 18px rgba(5,13,24,.12),inset 0 1px 0 rgba(255,255,255,.05);
}
#timesGameView .times-game-launch-row .btn.secondary{
  background:linear-gradient(180deg,#f7fbff,#ebf4fb)!important;
  color:#17324b!important;
  border:1px solid #c7d9e7!important;
  box-shadow:0 8px 18px rgba(7,21,37,.10)!important;
}
#timesGameView .times-feedback{
  color:#d7edf8!important;
  background:linear-gradient(90deg,rgba(8,22,37,.22),rgba(8,22,37,.04));
  border-radius:12px;
  padding:9px 12px;
}
#timesGameView .times-number-pad{
  border-color:rgba(102,223,255,.34)!important;
  background:linear-gradient(180deg,#0d1927,#07111b 55%,#0a1622)!important;
  box-shadow:inset 0 0 0 2px #1a2d3f,inset 0 -10px 20px rgba(0,0,0,.34),0 12px 0 #040b12,0 18px 26px rgba(0,0,0,.24)!important;
}
#timesGameView .times-number-pad.is-locked{opacity:.58;filter:saturate(.78)!important;}
#timesGameView .times-pad-grid{background:linear-gradient(145deg,#0d1a27,#132335)!important;}
#timesGameView .times-pad-key{
  border-color:#557792!important;
  background:radial-gradient(circle at 38% 28%,#416a89,#21425f 54%,#102131 82%)!important;
  box-shadow:inset 0 2px 3px rgba(255,255,255,.16),inset 0 -7px 10px rgba(0,0,0,.28),0 5px 0 #0c1824,0 8px 12px rgba(0,0,0,.24)!important;
}
#timesGameView .times-pad-fire{
  background:radial-gradient(circle at 36% 25%,#fff7aa,#ffcd56 30%,#ff9340 66%,#c34c1c 100%)!important;
  box-shadow:inset 0 3px 3px rgba(255,255,255,.42),inset 0 -10px 14px rgba(114,34,5,.30),0 7px 0 #7b2a0b,0 0 22px rgba(255,148,58,.24)!important;
}

#timesGameView .times-mode-card,
#timesGameView .times-record-card,
#timesGameView .times-game-intro{
  box-shadow:0 14px 28px rgba(7,19,36,.10),inset 0 1px 0 rgba(255,255,255,.36)!important;
}
#timesGameView .times-mode-card{
  border-color:#d4e3ef!important;
  background:linear-gradient(180deg,#ffffff,#f3f8fc)!important;
}
#timesGameView .times-mode-card.active{
  border-color:#7fc8ff!important;
  background:linear-gradient(160deg,#f4fbff,#f6f2ff)!important;
  box-shadow:0 0 0 2px rgba(111,193,255,.14),0 12px 26px rgba(8,30,54,.12)!important;
}
#timesGameView .times-record-card{
  background:linear-gradient(145deg,#0f2340,#16395e)!important;
  box-shadow:0 16px 32px rgba(6,18,34,.20),inset 0 1px 0 rgba(255,255,255,.05)!important;
}

#timesGameView .times-comms{
  border-color:rgba(105,226,255,.32)!important;
  background:linear-gradient(135deg,rgba(6,17,31,.84),rgba(13,34,56,.82))!important;
  box-shadow:0 16px 32px rgba(0,0,0,.26),0 0 22px rgba(92,221,255,.09)!important;
  backdrop-filter:blur(8px);
}
#timesGameView .times-comms strong{color:#f4fbff!important;}

#timesGameView:not(.storm-running) .times-arena{
  background:
    radial-gradient(circle at 50% 112%,rgba(85,110,255,.20),transparent 38%),
    radial-gradient(circle at 14% 15%,rgba(66,221,255,.14),transparent 28%),
    radial-gradient(circle at 84% 18%,rgba(248,160,84,.08),transparent 22%),
    linear-gradient(180deg,#020711 0%,#071226 42%,#0c1a2f 100%)!important;
  box-shadow:
    0 0 0 1px rgba(104,224,255,.18),
    0 24px 60px rgba(3,12,26,.36),
    inset 0 0 96px rgba(51,120,197,.10),
    inset 0 1px 0 rgba(255,255,255,.05)!important;
}
#timesGameView:not(.storm-running) .storm-premium-scene::before{opacity:.90!important;}
#timesGameView:not(.storm-running) .storm-premium-scene::after{opacity:.48!important;}
#timesGameView:not(.storm-running) .storm-scene-art{
  filter:saturate(1.16) contrast(1.18) brightness(.99) drop-shadow(0 22px 34px rgba(0,0,0,.18))!important;
}
#timesGameView:not(.storm-running) .storm-city-foreground{
  opacity:.94!important;
  filter:saturate(1.08) contrast(1.16) brightness(.96) drop-shadow(0 -10px 16px rgba(86,208,255,.10))!important;
}
#timesGameView:not(.storm-running) .storm-premium-flightway{
  opacity:.48!important;
  filter:brightness(1.14) contrast(1.10);
  background:
    linear-gradient(90deg,rgba(0,4,12,.10),rgba(6,24,40,.72) 11%,rgba(12,46,74,.80) 49%,rgba(6,24,40,.72) 89%,rgba(0,4,12,.10)),
    repeating-linear-gradient(180deg,transparent 0 62px,color-mix(in srgb,var(--premium-a) 72%,transparent) 63px 68px,transparent 69px 126px)!important;
}
#timesGameView:not(.storm-running) .storm-premium-flightway>i{opacity:.46!important;}
#timesGameView:not(.storm-running) .storm-premium-flightway>b{opacity:.56!important;}
#timesGameView:not(.storm-running) .storm-premium-flightway .storm-launch-pad-core{opacity:.78!important;}
#timesGameView:not(.storm-running) .storm-premium-flightway .storm-launch-pad-ring{opacity:.34!important;}
#timesGameView:not(.storm-running) .storm-premium-traffic{opacity:.18!important;}
#timesGameView:not(.storm-running) .atmosphere-far{opacity:.10!important;filter:blur(13px)!important;}
#timesGameView:not(.storm-running) .atmosphere-near{opacity:.14!important;filter:blur(16px)!important;}
#timesGameView:not(.storm-running) .storm-scene-lightwash{opacity:.72!important;}
#timesGameView:not(.storm-running) .storm-scene-vignette{box-shadow:inset 0 0 52px 10px rgba(0,5,15,.30),inset 0 -64px 90px rgba(0,5,15,.14)!important;}

@media(max-width:760px){
  #timesGameView .times-comms{width:min(360px,74%)!important;right:10px!important;bottom:14px!important;}
  #timesGameView .times-answer-deck{box-shadow:0 10px 22px rgba(4,14,28,.14)!important;}
  #timesGameView:not(.storm-running) .storm-city-foreground{opacity:.90!important;}
}


/* ===== V52.20 STORM ARCADE SPECTACLE =====
   Bigger arcade wow layered over the V52.19 premium separation pass.
   High-energy effects stay behind gameplay and reduce automatically in busy combat. */
#timesGameView .times-arena{
  overflow:hidden;
  border-color:color-mix(in srgb,var(--sector-a) 74%,#173650)!important;
  box-shadow:
    0 0 0 1px color-mix(in srgb,var(--sector-a) 30%,transparent),
    0 0 28px color-mix(in srgb,var(--sector-a) 12%,transparent),
    0 26px 68px rgba(2,10,22,.42),
    inset 0 0 110px color-mix(in srgb,var(--sector-b) 17%,transparent),
    inset 0 1px 0 rgba(255,255,255,.08)!important;
}
#timesGameView .times-arena-wrap::after{
  content:"";
  position:absolute;
  inset:-2px;
  z-index:4;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.06),
    inset 0 0 24px color-mix(in srgb,var(--sector-a) 14%,transparent);
  opacity:.9;
}

/* Cinematic edge energy: adds motion without covering the centre playfield. */
#timesGameView .storm-worldscape::before,
#timesGameView .storm-worldscape::after{
  content:"";
  position:absolute;
  top:-14%;
  bottom:-14%;
  width:24%;
  z-index:3;
  pointer-events:none;
  opacity:.22;
  mix-blend-mode:screen;
  filter:blur(.2px);
  background:
    repeating-linear-gradient(112deg,
      transparent 0 34px,
      color-mix(in srgb,var(--premium-a) 44%,transparent) 35px 37px,
      transparent 38px 76px),
    radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--premium-a) 18%,transparent),transparent 64%);
  animation:v5220EdgeRush 4.8s linear infinite;
}
#timesGameView .storm-worldscape::before{left:-8%;transform:skewX(-6deg)}
#timesGameView .storm-worldscape::after{right:-8%;transform:scaleX(-1) skewX(-6deg);animation-delay:-2.4s}
@keyframes v5220EdgeRush{
  from{background-position:0 -180px,0 0}
  to{background-position:0 180px,0 0}
}

/* More visible high-altitude light shafts create dramatic scale. */
#timesGameView .storm-scene-art::before,
#timesGameView .storm-scene-art::after{
  content:"";
  position:absolute;
  top:-8%;
  bottom:-12%;
  width:28%;
  pointer-events:none;
  opacity:.18;
  mix-blend-mode:screen;
  filter:blur(10px);
  background:linear-gradient(165deg,transparent 0 18%,color-mix(in srgb,var(--premium-a) 42%,transparent) 44%,transparent 72%);
  animation:v5220LightSweep 7.2s ease-in-out infinite alternate;
}
#timesGameView .storm-scene-art::before{left:2%;transform:rotate(-9deg)}
#timesGameView .storm-scene-art::after{right:2%;transform:rotate(9deg);background:linear-gradient(195deg,transparent 0 18%,rgba(255,175,82,.25) 44%,transparent 72%);animation-delay:-3.2s}
@keyframes v5220LightSweep{
  from{opacity:.09;translate:-3% 0}
  to{opacity:.25;translate:4% 1%}
}

/* Flight corridor becomes the hero graphic: bright but still transparent enough for enemies. */
#timesGameView .storm-premium-flightway{
  opacity:.56!important;
  filter:brightness(1.18) saturate(1.16) contrast(1.08);
  box-shadow:
    inset 30px 0 44px -30px color-mix(in srgb,var(--premium-a) 70%,transparent),
    inset -30px 0 44px -30px color-mix(in srgb,var(--premium-b) 68%,transparent),
    0 0 42px color-mix(in srgb,var(--premium-a) 15%,transparent),
    0 20px 38px rgba(0,0,0,.22)!important;
}
#timesGameView .storm-premium-flightway::before,
#timesGameView .storm-premium-flightway::after{
  width:4px!important;
  opacity:.92!important;
  box-shadow:0 0 7px #fff,0 0 16px var(--premium-a),0 0 34px color-mix(in srgb,var(--premium-a) 42%,transparent)!important;
  animation:v5220RailCharge 1.8s ease-in-out infinite alternate;
}
#timesGameView .storm-premium-flightway::after{box-shadow:0 0 7px #fff,0 0 16px var(--premium-b),0 0 34px color-mix(in srgb,var(--premium-b) 42%,transparent)!important;animation-delay:-.9s}
@keyframes v5220RailCharge{from{opacity:.48;filter:brightness(.82)}to{opacity:1;filter:brightness(1.34)}}

#timesGameView .storm-premium-flightway>i{
  opacity:.62!important;
  height:20px!important;
  background:linear-gradient(180deg,#f5feff,var(--premium-a) 28%,color-mix(in srgb,var(--premium-a) 72%,transparent))!important;
  filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 15px var(--premium-a))!important;
  animation:v5220ChevronPulse 1.35s ease-in-out infinite alternate;
}
#timesGameView .storm-premium-flightway>i:nth-child(2){animation-delay:-.68s}
@keyframes v5220ChevronPulse{
  from{opacity:.26;filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 10px var(--premium-a)) brightness(.82)}
  to{opacity:.78;filter:drop-shadow(0 0 7px #fff) drop-shadow(0 0 20px var(--premium-a)) brightness(1.32)}
}
#timesGameView .storm-premium-flightway>b{
  width:3px!important;
  opacity:.64!important;
  background:linear-gradient(transparent,#fff 25%,var(--premium-a) 50%,#fff 74%,transparent)!important;
  box-shadow:0 0 7px #fff,0 0 18px var(--premium-a),0 0 34px color-mix(in srgb,var(--premium-a) 30%,transparent)!important;
  animation:v5220SpinePulse 1.9s ease-in-out infinite alternate;
}
@keyframes v5220SpinePulse{from{opacity:.28;filter:brightness(.8)}to{opacity:.72;filter:brightness(1.45)}}

/* Launch pad gets a real arcade power-core pulse. */
#timesGameView .storm-premium-flightway .storm-launch-pad-core{
  opacity:.92!important;
  filter:brightness(1.26) saturate(1.18);
  box-shadow:
    0 0 8px #fff,
    0 0 22px var(--premium-a),
    0 0 52px color-mix(in srgb,var(--premium-b) 44%,transparent)!important;
  animation:v5220PadCore 1.6s ease-in-out infinite alternate!important;
}
#timesGameView .storm-premium-flightway .storm-launch-pad-ring{
  opacity:.48!important;
  border-color:color-mix(in srgb,var(--premium-a) 80%,#fff)!important;
  box-shadow:0 0 10px var(--premium-a),inset 0 0 14px color-mix(in srgb,var(--premium-a) 34%,transparent)!important;
  animation:v5220PadRing 2.1s ease-out infinite!important;
}
#timesGameView .storm-premium-flightway .storm-launch-pad-ring.ring-b{animation-delay:-1.05s!important;opacity:.32!important}
@keyframes v5220PadCore{from{transform:translateX(-50%) scale(.94);opacity:.62}to{transform:translateX(-50%) scale(1.07);opacity:1}}
@keyframes v5220PadRing{0%{transform:translateX(-50%) scale(.80);opacity:.08}45%{opacity:.50}100%{transform:translateX(-50%) scale(1.20);opacity:0}}

/* Traffic gets hot/cool arcade streaks instead of blending into the blue scene. */
#timesGameView .storm-premium-traffic{opacity:.44!important}
#timesGameView .storm-premium-traffic i{
  height:6px!important;
  background:linear-gradient(90deg,#ffd68c,#ff8c43 24%,var(--premium-a) 48%,#132b4a 70%,var(--premium-b))!important;
  box-shadow:0 0 8px #fff,0 0 16px var(--premium-a),-24px 7px 28px rgba(255,132,54,.20)!important;
}

/* Warm light is deliberately added to break the all-blue palette. */
#timesGameView .storm-scene-lightwash{
  background:
    radial-gradient(ellipse at 50% 78%,color-mix(in srgb,var(--premium-a) 22%,transparent),transparent 39%),
    radial-gradient(ellipse at 19% 70%,rgba(255,155,67,.12),transparent 24%),
    radial-gradient(ellipse at 82% 72%,rgba(255,190,94,.10),transparent 26%),
    linear-gradient(180deg,rgba(0,4,12,.02),rgba(0,4,12,.02) 46%,rgba(0,4,12,.12))!important;
  opacity:.90!important;
}

/* HUD polish: tiny arcade glow accents without making every card neon. */
#timesGameView .times-hud-item.score::before,
#timesGameView .times-hud-item.combo::before{
  content:"";
  position:absolute;
  left:8%;right:8%;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--sector-a),transparent);
  box-shadow:0 0 11px var(--sector-a);
  opacity:.58;
}
#timesGameView .times-wave-track span,
#timesGameView .times-range-track span{
  box-shadow:0 0 6px #fff,0 0 16px color-mix(in srgb,var(--sector-a) 65%,transparent)!important;
}
#timesGameView .times-game-launch-row .btn.brand-primary,
#timesGameView .times-answer-form .btn.brand-primary{
  position:relative;
  overflow:hidden;
  background:linear-gradient(110deg,#145889,#238cc4 44%,#56d8f5 72%,#1780b5)!important;
  background-size:180% 100%!important;
  animation:v5220PrimarySweep 3.2s ease-in-out infinite alternate;
  box-shadow:0 10px 25px rgba(25,130,185,.26),inset 0 1px 0 rgba(255,255,255,.22),0 0 18px rgba(91,218,255,.08)!important;
}
@keyframes v5220PrimarySweep{from{background-position:0 0}to{background-position:100% 0}}
#timesGameView .times-pad-fire{
  animation:v5220FireReady 1.75s ease-in-out infinite alternate;
}
@keyframes v5220FireReady{from{filter:saturate(.96) brightness(.94)}to{filter:saturate(1.15) brightness(1.12)}}

/* In live combat the wow turns into speed. Effects become narrower and faster rather than brighter. */
#timesGameView.storm-running.blaster-active .storm-worldscape::before,
#timesGameView.storm-running.blaster-active .storm-worldscape::after{
  width:19%;
  opacity:.34;
  animation-duration:1.45s;
}
#timesGameView.storm-running.blaster-active .storm-premium-flightway{
  opacity:.54!important;
  filter:brightness(1.18) saturate(1.18) contrast(1.12)!important;
  animation-duration:1.15s!important;
}
#timesGameView.storm-running.blaster-active .storm-premium-flightway::before,
#timesGameView.storm-running.blaster-active .storm-premium-flightway::after{animation-duration:.72s!important}
#timesGameView.storm-running.blaster-active .storm-premium-flightway>i{animation-duration:.78s!important;opacity:.48!important}
#timesGameView.storm-running.blaster-active .storm-premium-flightway>b{animation-duration:.86s!important;opacity:.44!important}
#timesGameView.storm-running.blaster-active .storm-premium-traffic{opacity:.66!important}
#timesGameView.storm-running.blaster-active .storm-scene-art::before,
#timesGameView.storm-running.blaster-active .storm-scene-art::after{opacity:.12;filter:blur(13px)}

/* Boss / overdrive moments can briefly feel much bigger. */
#timesGameView.overdrive-active .times-arena,
#timesGameView.neon-boss .times-arena{
  box-shadow:
    0 0 0 1px rgba(255,227,126,.34),
    0 0 36px color-mix(in srgb,var(--sector-a) 22%,transparent),
    0 26px 68px rgba(2,10,22,.42),
    inset 0 0 126px color-mix(in srgb,var(--sector-c) 18%,transparent)!important;
}
#timesGameView.neon-boss .storm-scene-lightwash{
  filter:saturate(1.24) brightness(1.10);
}

@media(max-width:760px){
  #timesGameView .storm-worldscape::before,#timesGameView .storm-worldscape::after{width:18%;opacity:.16;}
  #timesGameView .storm-scene-art::before,#timesGameView .storm-scene-art::after{width:22%;opacity:.12;filter:blur(12px);}
  #timesGameView .storm-premium-traffic{opacity:.34!important;}
  #timesGameView .storm-premium-flightway{opacity:.50!important;}
  #timesGameView.storm-running.blaster-active .storm-worldscape::before,#timesGameView.storm-running.blaster-active .storm-worldscape::after{opacity:.25;}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView .storm-worldscape::before,#timesGameView .storm-worldscape::after,
  #timesGameView .storm-scene-art::before,#timesGameView .storm-scene-art::after,
  #timesGameView .storm-premium-flightway::before,#timesGameView .storm-premium-flightway::after,
  #timesGameView .storm-premium-flightway>i,#timesGameView .storm-premium-flightway>b,
  #timesGameView .storm-premium-flightway .storm-launch-pad-core,#timesGameView .storm-premium-flightway .storm-launch-pad-ring,
  #timesGameView .times-game-launch-row .btn.brand-primary,#timesGameView .times-answer-form .btn.brand-primary,#timesGameView .times-pad-fire{animation:none!important;}
}


/* ============================================================
   V52.21 • Clean Worksheet Launch Menu
   Practice and progress appear first. Class / guided teaching
   stays behind one tidy disclosure button until the learner asks.
   ============================================================ */
#topicDialog:not(.worksheet-help-mode) .dialog-shell{
  padding:18px 18px 22px;
}
#topicDialog:not(.worksheet-help-mode) .dialog-module{
  margin-top:2px;
  font-size:.64rem;
  letter-spacing:.12em;
  color:#688095;
}
#topicDialog:not(.worksheet-help-mode) .dialog-title{
  margin:0;
  font-size:clamp(1.42rem,4.4vw,1.88rem);
  line-height:1.04;
}
.sigma-launch-title-block{
  margin:6px 0 12px;
}
.sigma-launch-title-meta{
  margin:6px 0 0;
  color:#6d8192;
  font-size:.78rem;
  font-weight:700;
  line-height:1.35;
}

.sigma-worksheet-launch-menu{
  display:grid;
  gap:12px;
  margin-top:2px;
}
.sigma-launch-practice,
.sigma-launch-progress{
  margin:0!important;
  border-radius:20px!important;
  box-shadow:0 8px 24px rgba(16,46,72,.055);
}
.sigma-launch-practice{
  padding:16px!important;
  border:1px solid #d8e5ee!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%)!important;
}
.sigma-launch-head{
  align-items:flex-start!important;
  gap:10px!important;
  margin-bottom:0!important;
}
.sigma-launch-head>div,
.sigma-launch-progress-head>div{
  min-width:0;
}
.sigma-launch-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  min-height:23px;
  padding:4px 8px;
  border:1px solid #cbe3ef;
  border-radius:999px;
  background:#edf8fc;
  color:#13789d;
  font-size:.55rem;
  font-weight:950;
  letter-spacing:.11em;
  line-height:1;
}
.sigma-launch-head h3,
.sigma-launch-progress-head h3{
  margin:5px 0 0!important;
  font-size:1.08rem!important;
  letter-spacing:-.015em;
}
.sigma-launch-head>.topic-sub{
  max-width:230px;
  margin-top:4px;
  font-size:.68rem;
  line-height:1.35;
  text-align:right;
}
.sigma-launch-copy{
  margin:8px 0 0!important;
  max-width:600px;
  font-size:.71rem!important;
  line-height:1.42!important;
}
.sigma-launch-actions{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:12px!important;
}
.sigma-launch-actions .btn{
  width:100%!important;
  min-width:0!important;
  min-height:44px;
  padding:9px 8px!important;
  border-radius:13px!important;
  font-size:.79rem!important;
  font-weight:900!important;
  white-space:nowrap;
}
.sigma-launch-actions .quick-fire-btn{
  box-shadow:0 8px 18px rgba(16,92,140,.16);
}

.sigma-launch-progress{
  padding:15px!important;
  border:1px solid #dfe7ee!important;
  background:#f8fafc!important;
}
.sigma-launch-progress-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.sigma-launch-progress-state{
  flex:0 0 auto;
  margin-top:2px;
  padding:6px 9px;
  border:1px solid #d2e0e9;
  border-radius:999px;
  background:#fff;
  color:#466174;
  font-size:.6rem;
  font-weight:900;
}
.sigma-launch-progress-grid{
  margin:12px 0 0!important;
  gap:10px!important;
}
.sigma-launch-progress .field label{
  margin-bottom:6px;
  font-size:.7rem;
}
.sigma-launch-score label span{
  color:#8b99a6;
  font-weight:700;
}
.sigma-launch-score input{
  min-height:43px;
  padding:9px 11px!important;
}
.sigma-launch-progress .progress-status-options{
  gap:5px;
  padding:4px;
  border-radius:13px;
}
.sigma-launch-progress .progress-status-option{
  min-height:38px;
  padding:7px 5px;
  border-radius:10px;
  font-size:.69rem;
}

.sigma-progress-more{
  margin-top:10px;
  border:1px solid #dce5ec;
  border-radius:13px;
  background:#fff;
  overflow:hidden;
}
.sigma-progress-more summary{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:10px;
  min-height:43px;
  padding:10px 12px;
  list-style:none;
  cursor:pointer;
  color:#38556b;
  font-size:.7rem;
  font-weight:900;
}
.sigma-progress-more summary::-webkit-details-marker{display:none}
.sigma-progress-more summary:after{
  content:"+";
  grid-column:2;
  grid-row:1 / span 2;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef5f9;
  color:#1d688d;
  font-size:1rem;
}
.sigma-progress-more[open] summary:after{content:"−"}
.sigma-progress-more summary small{
  grid-column:1;
  color:#8a99a6;
  font-size:.58rem;
  font-weight:700;
}
.sigma-progress-more-grid{
  margin:0!important;
  padding:0 11px 12px;
  gap:9px!important;
  border-top:1px solid #edf1f4;
}
.sigma-progress-more-grid>.field:first-child,
.sigma-progress-more-grid>.field:nth-child(2){
  margin-top:10px;
}
.sigma-progress-more textarea{min-height:78px}
.sigma-launch-save-actions{
  margin-top:10px!important;
  gap:8px!important;
}
.sigma-launch-save-actions .btn{
  min-height:42px;
  flex:1 1 0;
  border-radius:12px!important;
  font-size:.73rem!important;
}

.sigma-guided-teaching-toggle{
  width:100%;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 28px;
  align-items:center;
  gap:11px;
  min-height:64px;
  padding:10px 12px;
  border:1px solid #cbdde9;
  border-radius:17px;
  background:linear-gradient(180deg,#f7fbfe,#eef6fb);
  color:#183b55;
  text-align:left;
  cursor:pointer;
  box-shadow:0 7px 20px rgba(15,58,89,.055);
}
.sigma-guided-teaching-toggle:hover{
  border-color:#a9cada;
  background:linear-gradient(180deg,#fbfdff,#edf7fc);
}
.sigma-guided-teaching-icon{
  width:40px;height:40px;
  display:grid;place-items:center;
  border-radius:13px;
  background:linear-gradient(145deg,#123d60,#1f88b7);
  color:#fff;
  font-size:1.05rem;
  font-weight:1000;
  box-shadow:0 6px 15px rgba(24,106,151,.18);
}
.sigma-guided-teaching-copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.sigma-guided-teaching-copy small{
  color:#1680a6;
  font-size:.52rem;
  font-weight:950;
  letter-spacing:.11em;
}
.sigma-guided-teaching-copy strong{
  margin-top:2px;
  color:#183b55;
  font-size:.82rem;
}
.sigma-guided-teaching-copy em{
  margin-top:2px;
  color:#748797;
  font-size:.62rem;
  font-style:normal;
  line-height:1.3;
}
.sigma-guided-teaching-arrow{
  width:27px;height:27px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#fff;
  border:1px solid #d6e4ed;
  color:#22779d;
  font-size:.8rem;
  font-weight:950;
}
.sigma-guided-teaching-toggle[aria-expanded="true"]{
  border-color:#9bc7dc;
  background:linear-gradient(180deg,#f1faff,#e8f5fb);
}
.sigma-guided-teaching-stack{
  display:none;
  margin-top:14px;
}
.sigma-guided-teaching-stack.is-open{display:block}
.sigma-guided-teaching-stack>.study-path{margin-top:0}

/* The dedicated worksheet-help mode still jumps straight to Sigma AI. */
#topicDialog.worksheet-help-mode #topicDialogBody>.sigma-guided-teaching-stack{
  display:block!important;
  margin:0!important;
}
#topicDialog.worksheet-help-mode #topicDialogBody>:not(.sigma-guided-teaching-stack){
  display:none!important;
}
#topicDialog.worksheet-help-mode .sigma-guided-teaching-stack>:not(#sigmaConversationTutor){
  display:none!important;
}
#topicDialog.worksheet-help-mode #sigmaConversationTutor{
  display:block!important;
}

html[data-theme="dark"] .sigma-launch-title-meta{color:#8ea6b8}
html[data-theme="dark"] .sigma-launch-practice{
  border-color:#294156!important;
  background:linear-gradient(180deg,#0e2031,#0b1a29)!important;
}
html[data-theme="dark"] .sigma-launch-progress{
  border-color:#2b4052!important;
  background:#0c1b29!important;
}
html[data-theme="dark"] .sigma-launch-kicker{
  border-color:#2e5b71;
  background:#102f40;
  color:#8ce7ff;
}
html[data-theme="dark"] .sigma-launch-progress-state{
  border-color:#30485c;
  background:#122638;
  color:#b7cbd9;
}
html[data-theme="dark"] .sigma-progress-more{
  border-color:#2d4355;
  background:#102131;
}
html[data-theme="dark"] .sigma-progress-more summary{
  color:#c9dce8;
}
html[data-theme="dark"] .sigma-progress-more summary:after{
  background:#16354a;
  color:#9ee9ff;
}
html[data-theme="dark"] .sigma-progress-more summary small{color:#8298aa}
html[data-theme="dark"] .sigma-progress-more-grid{border-color:#263b4d}
html[data-theme="dark"] .sigma-guided-teaching-toggle{
  border-color:#2f4f64;
  background:linear-gradient(180deg,#10283a,#0c2030);
  color:#e9f6fc;
}
html[data-theme="dark"] .sigma-guided-teaching-copy strong{color:#e9f6fc}
html[data-theme="dark"] .sigma-guided-teaching-copy small{color:#70dcff}
html[data-theme="dark"] .sigma-guided-teaching-copy em{color:#91a8b8}
html[data-theme="dark"] .sigma-guided-teaching-arrow{
  border-color:#345469;
  background:#153044;
  color:#9fe9ff;
}

@media(max-width:650px){
  #topicDialog:not(.worksheet-help-mode) .dialog-shell{padding:13px 12px 18px}
  #topicDialog:not(.worksheet-help-mode) .topic-dialog-nav{margin-bottom:9px}
  #topicDialog:not(.worksheet-help-mode) .dialog-title{font-size:1.34rem}
  .sigma-launch-title-block{margin:5px 0 10px}
  .sigma-launch-title-meta{margin-top:5px;font-size:.72rem}
  .sigma-worksheet-launch-menu{gap:9px}
  .sigma-launch-practice,.sigma-launch-progress{border-radius:17px!important}
  .sigma-launch-practice{padding:13px!important}
  .sigma-launch-progress{padding:13px!important}
  .sigma-launch-head{display:block!important}
  .sigma-launch-head>.topic-sub{display:block;max-width:none;margin-top:5px;text-align:left}
  .sigma-launch-copy{font-size:.69rem!important;margin-top:7px!important}
  .sigma-launch-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin-top:10px!important;
  }
  .sigma-launch-actions .btn{min-height:42px;font-size:.75rem!important}
  .sigma-launch-progress-head h3,.sigma-launch-head h3{font-size:1rem!important}
  .sigma-launch-progress-grid{margin-top:10px!important}
  .sigma-launch-progress .progress-status-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .sigma-launch-progress .progress-status-option{min-height:36px}
  .sigma-progress-more summary{min-height:41px}
  .sigma-launch-save-actions{display:grid!important;grid-template-columns:1fr 1fr}
  .sigma-launch-save-actions .btn{width:100%}
  .sigma-guided-teaching-toggle{
    grid-template-columns:38px minmax(0,1fr) 26px;
    gap:9px;
    min-height:60px;
    padding:9px 10px;
    border-radius:15px;
  }
  .sigma-guided-teaching-icon{width:36px;height:36px;border-radius:11px}
  .sigma-guided-teaching-copy em{font-size:.58rem}
}


/* ============================================================
   V52.23 • Premium Investor Worksheet Polish
   A visibly richer first-impression pass without adding clutter.
   ============================================================ */
#topicDialog:not(.worksheet-help-mode){
  width:min(760px,calc(100% - 22px));
  border-radius:28px;
  background:linear-gradient(180deg,#fdfefe 0%,#f8fbfd 100%);
  box-shadow:0 34px 90px rgba(6,28,48,.34),0 2px 0 rgba(255,255,255,.8) inset;
}
#topicDialog:not(.worksheet-help-mode)::backdrop{
  background:rgba(8,31,51,.54);
  backdrop-filter:blur(7px) saturate(.9);
  -webkit-backdrop-filter:blur(7px) saturate(.9);
}
#topicDialog:not(.worksheet-help-mode) .dialog-shell{
  padding:18px 20px 24px;
  background:
    radial-gradient(520px 180px at 92% -6%,rgba(43,177,229,.11),transparent 64%),
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,252,254,.98));
}
#topicDialog:not(.worksheet-help-mode) .topic-dialog-nav{
  min-height:58px;
  margin:-7px -8px 18px;
  padding:8px 9px;
  border:1px solid rgba(211,224,234,.76);
  border-radius:18px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 32px rgba(16,48,71,.09),0 1px 0 rgba(255,255,255,.94) inset;
}
#topicDialog:not(.worksheet-help-mode) .topic-dialog-nav .dialog-back.back-to-worksheet{
  min-height:42px;
  padding:10px 15px;
  border:1px solid rgba(21,137,187,.22);
  border-radius:13px;
  background:linear-gradient(135deg,#103b60 0%,#0d6289 100%);
  box-shadow:0 8px 18px rgba(11,83,122,.18),0 1px 0 rgba(255,255,255,.18) inset;
  font-weight:900;
  letter-spacing:-.01em;
}
#topicDialog:not(.worksheet-help-mode) .topic-dialog-nav .dialog-close{
  width:40px;height:40px;flex-basis:40px;
  border:1px solid #e2e9ef;
  background:linear-gradient(180deg,#f8fafc,#edf2f6);
  box-shadow:0 5px 14px rgba(17,47,69,.08),0 1px 0 #fff inset;
  color:#182f43;
}
#topicDialog:not(.worksheet-help-mode) .dialog-module{
  margin-left:2px;
  color:#3f7592;
  font-size:.59rem;
  font-weight:950;
  letter-spacing:.17em;
}
#topicDialog:not(.worksheet-help-mode) .sigma-launch-title-block{
  position:relative;
  margin:7px 0 16px;
  padding:0 0 0 14px;
}
#topicDialog:not(.worksheet-help-mode) .sigma-launch-title-block::before{
  content:"";
  position:absolute;left:0;top:2px;bottom:2px;width:4px;
  border-radius:999px;
  background:linear-gradient(180deg,#34c6ef 0%,#0f7fba 48%,#173f69 100%);
  box-shadow:0 0 14px rgba(30,163,214,.22);
}
#topicDialog:not(.worksheet-help-mode) .dialog-title{
  max-width:650px;
  color:#0b1e32;
  font-size:clamp(1.52rem,4.7vw,2.05rem);
  font-weight:950;
  letter-spacing:-.045em;
  line-height:1.02;
  text-wrap:balance;
}
.sigma-launch-title-meta{
  display:flex;align-items:center;gap:7px;
  margin-top:7px;
  color:#607789;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:-.005em;
}
.sigma-title-module-dot{
  width:7px;height:7px;border-radius:50%;
  background:linear-gradient(145deg,#48c9ed,#147bad);
  box-shadow:0 0 0 4px rgba(52,174,216,.09);
}
.sigma-worksheet-launch-menu{gap:14px;margin-top:0}
.sigma-launch-practice,
.sigma-launch-progress{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(213,225,234,.88)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.90)!important;
  box-shadow:0 15px 40px rgba(18,55,79,.07),0 1px 0 rgba(255,255,255,.95) inset!important;
}
.sigma-launch-practice::before,
.sigma-launch-progress::before{
  content:"";
  position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(92,196,232,.55),transparent);
  pointer-events:none;
}
.sigma-launch-practice{padding:18px!important}
.sigma-launch-progress{padding:17px!important}
.sigma-launch-kicker{
  min-height:22px;
  padding:5px 9px 4px;
  border:1px solid rgba(93,187,222,.18);
  background:linear-gradient(180deg,#effaff,#e5f5fb);
  color:#0d80a8;
  box-shadow:0 1px 0 #fff inset;
  font-size:.52rem;
  letter-spacing:.14em;
}
.sigma-launch-head h3,.sigma-launch-progress-head h3{
  margin-top:7px!important;
  color:#102337;
  font-size:1.14rem!important;
  font-weight:950!important;
  letter-spacing:-.028em;
}
.sigma-launch-head>.topic-sub,
.sigma-review-intelligence{
  display:flex!important;align-items:center;justify-content:flex-end;gap:6px;
  max-width:260px;
  color:#718696!important;
  font-size:.65rem!important;
  font-weight:750;
  line-height:1.35;
}
.sigma-review-intelligence span{color:#3c9dc4;font-size:.72rem}
.sigma-launch-copy{
  margin-top:9px!important;
  color:#657b8c!important;
  font-size:.72rem!important;
  line-height:1.48!important;
}
.sigma-launch-actions{
  gap:10px!important;
  margin-top:14px!important;
}
.sigma-launch-actions .btn{
  position:relative;
  min-height:49px;
  border:1px solid #d8e5ed!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f2f7fa 100%)!important;
  color:#15364f!important;
  box-shadow:0 6px 16px rgba(20,58,84,.055),0 1px 0 #fff inset!important;
  font-size:.78rem!important;
  font-weight:900!important;
  letter-spacing:-.015em;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,filter .16s ease;
}
.sigma-launch-actions .btn:hover{
  transform:translateY(-1px);
  border-color:#b8d5e4!important;
  box-shadow:0 9px 22px rgba(17,74,108,.09),0 1px 0 #fff inset!important;
}
.sigma-launch-actions .quick-fire-btn{
  border-color:#0c6fa8!important;
  background:linear-gradient(135deg,#0b385f 0%,#0c6697 48%,#149ed0 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(12,105,153,.24),0 0 0 1px rgba(76,203,242,.12) inset,0 1px 0 rgba(255,255,255,.22) inset!important;
  text-shadow:0 1px 1px rgba(4,28,45,.24);
}
.sigma-launch-actions .quick-fire-btn::after{
  content:"";position:absolute;inset:1px;border-radius:14px;
  background:linear-gradient(110deg,rgba(255,255,255,.16),transparent 35%);
  pointer-events:none;
}
.sigma-launch-progress-head{align-items:center}
.sigma-launch-progress-state{
  margin:0;
  padding:7px 11px 7px 10px;
  border:1px solid #d8e6ee;
  background:linear-gradient(180deg,#fff,#f6fafc);
  color:#456174;
  box-shadow:0 4px 12px rgba(18,54,78,.045),0 1px 0 #fff inset;
  font-size:.58rem;
  letter-spacing:-.005em;
}
.sigma-launch-progress-state::before{
  content:"";
  display:inline-block;width:7px;height:7px;margin-right:6px;
  border-radius:50%;background:#b8d4e2;vertical-align:1px;
  box-shadow:0 0 0 3px rgba(115,179,207,.10);
}
.sigma-launch-progress .field label{
  color:#405e74;
  font-size:.68rem;
  font-weight:900;
}
.sigma-launch-progress .progress-status-options{
  gap:0;
  padding:4px;
  border:1px solid #d6e4ed;
  border-radius:15px;
  background:linear-gradient(180deg,#edf4f8,#e8f0f5);
  box-shadow:0 1px 0 rgba(255,255,255,.75) inset;
}
.sigma-launch-progress .progress-status-option{
  position:relative;
  min-height:42px;
  border:0!important;
  border-radius:11px;
  background:transparent!important;
  color:#5b7184;
  box-shadow:none!important;
  font-size:.68rem;
  font-weight:900;
}
.sigma-launch-progress .progress-status-option:not(:last-child)::after{
  content:"";
  position:absolute;right:-1px;top:22%;bottom:22%;width:1px;
  background:rgba(123,157,177,.18);
}
.sigma-launch-progress .progress-status-option.active{
  z-index:2;
  background:linear-gradient(180deg,#fff,#fbfdff)!important;
  color:#0e678f!important;
  box-shadow:0 5px 14px rgba(25,83,116,.10),0 0 0 1px rgba(131,190,218,.36),0 1px 0 #fff inset!important;
}
.sigma-launch-score input{
  min-height:48px!important;
  border:1px solid #d7e4ec!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fff,#fbfdfe)!important;
  color:#17354b;
  box-shadow:0 3px 10px rgba(12,46,70,.035) inset,0 1px 0 #fff;
  font-size:1rem;
}
.sigma-launch-score input:focus{
  border-color:#79bbd7!important;
  box-shadow:0 0 0 4px rgba(58,166,210,.10),0 1px 0 #fff inset!important;
  outline:none;
}
.sigma-progress-more{
  margin-top:12px;
  border:1px solid #dae6ed;
  border-radius:15px;
  background:linear-gradient(180deg,#fff,#f9fcfd);
  box-shadow:0 4px 14px rgba(15,52,77,.04),0 1px 0 #fff inset;
}
.sigma-progress-more summary{
  min-height:50px;
  padding:11px 13px 11px 15px;
  color:#294e67;
  font-size:.69rem;
}
.sigma-progress-more summary:before{
  content:"≡";
  width:26px;height:26px;display:grid;place-items:center;
  margin-right:8px;grid-column:auto;grid-row:1 / span 2;
  border-radius:8px;
  background:linear-gradient(180deg,#eef8fc,#e4f1f7);
  color:#177ca7;
  font-size:.82rem;
  box-shadow:0 1px 0 #fff inset;
}
.sigma-progress-more summary{
  grid-template-columns:auto 1fr auto;
}
.sigma-progress-more summary>span{grid-column:2;grid-row:1}
.sigma-progress-more summary>small{grid-column:2!important;grid-row:2}
.sigma-progress-more summary:after{grid-column:3!important;grid-row:1 / span 2!important}
.sigma-launch-save-actions{
  margin-top:13px!important;
  gap:10px!important;
}
.sigma-launch-save-actions .btn{
  min-height:49px;
  border-radius:14px!important;
  font-size:.72rem!important;
  font-weight:950!important;
}
#markCompleteBtn{
  border:1px solid #d5e3ec!important;
  background:linear-gradient(180deg,#fff,#f3f8fb)!important;
  color:#21475f!important;
  box-shadow:0 5px 14px rgba(18,56,80,.05),0 1px 0 #fff inset!important;
}
#saveTopicBtn{
  border:1px solid #0c6395!important;
  background:linear-gradient(135deg,#0b365b 0%,#0d5e8e 48%,#148fc2 100%)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(9,89,135,.21),0 1px 0 rgba(255,255,255,.20) inset!important;
  text-shadow:0 1px 1px rgba(5,31,48,.22);
}
#saveTopicBtn:hover{filter:brightness(1.04);transform:translateY(-1px)}
.sigma-guided-teaching-toggle{
  position:relative;
  min-height:74px;
  grid-template-columns:48px minmax(0,1fr) 32px;
  gap:13px;
  padding:12px 14px;
  overflow:hidden;
  border:1px solid #c7dfeb;
  border-radius:19px;
  background:
    radial-gradient(240px 90px at 82% 130%,rgba(48,184,228,.11),transparent 70%),
    linear-gradient(135deg,#f6fbfe 0%,#eef8fc 55%,#f8fcfe 100%);
  box-shadow:0 10px 26px rgba(16,64,91,.065),0 1px 0 #fff inset;
}
.sigma-guided-teaching-toggle::before{
  content:"";
  position:absolute;left:0;top:10px;bottom:10px;width:3px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#42cbed,#0d79ae);
  box-shadow:0 0 12px rgba(32,164,210,.28);
}
.sigma-guided-teaching-icon{
  width:46px;height:46px;
  border-radius:15px;
  background:linear-gradient(145deg,#0b365d 0%,#0e7cae 62%,#1bb6db 100%);
  box-shadow:0 9px 22px rgba(11,107,153,.23),0 1px 0 rgba(255,255,255,.18) inset;
  font-size:1.18rem;
}
.sigma-guided-teaching-copy small{
  color:#087da7;
  font-size:.50rem;
  letter-spacing:.145em;
}
.sigma-guided-teaching-copy strong{
  margin-top:3px;
  color:#14364f;
  font-size:.87rem;
  font-weight:950;
  letter-spacing:-.015em;
}
.sigma-guided-teaching-copy em{
  margin-top:3px;
  color:#718799;
  font-size:.61rem;
}
.sigma-guided-teaching-arrow{
  width:31px;height:31px;
  border:1px solid #d2e4ed;
  background:rgba(255,255,255,.92);
  box-shadow:0 4px 12px rgba(15,57,81,.055),0 1px 0 #fff inset;
  color:#0d76a2;
}
.sigma-guided-teaching-toggle:hover{
  border-color:#a9d2e3;
  background:
    radial-gradient(240px 90px at 82% 130%,rgba(48,184,228,.15),transparent 70%),
    linear-gradient(135deg,#f9fdff,#edf9fd 55%,#fbfeff);
  box-shadow:0 14px 32px rgba(15,76,108,.09),0 1px 0 #fff inset;
}

html[data-theme="dark"] #topicDialog:not(.worksheet-help-mode){background:#081726}
html[data-theme="dark"] #topicDialog:not(.worksheet-help-mode) .dialog-shell{
  background:radial-gradient(520px 180px at 92% -6%,rgba(37,164,213,.11),transparent 64%),linear-gradient(180deg,#0a1c2b,#081725);
}
html[data-theme="dark"] #topicDialog:not(.worksheet-help-mode) .topic-dialog-nav{border-color:#244052;background:rgba(10,28,43,.90)}
html[data-theme="dark"] #topicDialog:not(.worksheet-help-mode) .dialog-title{color:#f2f9fc}
html[data-theme="dark"] .sigma-launch-title-meta{color:#91a9b8}
html[data-theme="dark"] .sigma-launch-practice,
html[data-theme="dark"] .sigma-launch-progress{border-color:#29475b!important;background:linear-gradient(180deg,#0d2334,#0a1e2e)!important}
html[data-theme="dark"] .sigma-launch-actions .btn{border-color:#2d4b60!important;background:linear-gradient(180deg,#142b3d,#102536)!important;color:#d9edf7!important;box-shadow:0 6px 16px rgba(0,0,0,.12)!important}
html[data-theme="dark"] .sigma-launch-actions .quick-fire-btn{border-color:#258ebd!important;background:linear-gradient(135deg,#0a3557,#0a6a98,#14a0cb)!important;color:#fff!important}
html[data-theme="dark"] .sigma-launch-progress .progress-status-options{border-color:#29475c;background:linear-gradient(180deg,#102a3d,#0d2536)}
html[data-theme="dark"] .sigma-launch-progress .progress-status-option{color:#90aabd}
html[data-theme="dark"] .sigma-launch-progress .progress-status-option.active{background:linear-gradient(180deg,#173448,#122d40)!important;color:#a9ebff!important;box-shadow:0 5px 14px rgba(0,0,0,.16),0 0 0 1px #38627a!important}
html[data-theme="dark"] .sigma-launch-score input{border-color:#2d4b5e!important;background:#102638!important;color:#eaf7fc}
html[data-theme="dark"] .sigma-progress-more{border-color:#2b4659;background:linear-gradient(180deg,#102638,#0d2232)}
html[data-theme="dark"] #markCompleteBtn{border-color:#2d4a5e!important;background:linear-gradient(180deg,#132c3f,#102739)!important;color:#d8ecf6!important}
html[data-theme="dark"] #saveTopicBtn{border-color:#237fab!important;background:linear-gradient(135deg,#0b3557,#0d638f,#1596bd)!important}
html[data-theme="dark"] .sigma-guided-teaching-toggle{border-color:#2e5063;background:radial-gradient(240px 90px at 82% 130%,rgba(46,183,222,.10),transparent 70%),linear-gradient(135deg,#10283a,#0c2232)}

@media(max-width:650px){
  #topicDialog:not(.worksheet-help-mode){width:calc(100% - 12px);border-radius:22px}
  #topicDialog:not(.worksheet-help-mode) .dialog-shell{padding:11px 11px 17px}
  #topicDialog:not(.worksheet-help-mode) .topic-dialog-nav{min-height:52px;margin:-3px -2px 14px;padding:6px;border-radius:15px}
  #topicDialog:not(.worksheet-help-mode) .topic-dialog-nav .dialog-back.back-to-worksheet{min-height:40px;padding:9px 12px}
  #topicDialog:not(.worksheet-help-mode) .topic-dialog-nav .dialog-close{width:38px;height:38px;flex-basis:38px}
  #topicDialog:not(.worksheet-help-mode) .sigma-launch-title-block{margin:6px 2px 12px;padding-left:12px}
  #topicDialog:not(.worksheet-help-mode) .dialog-title{font-size:1.38rem;line-height:1.04}
  .sigma-launch-title-meta{font-size:.70rem}
  .sigma-worksheet-launch-menu{gap:10px}
  .sigma-launch-practice,.sigma-launch-progress{border-radius:18px!important}
  .sigma-launch-practice{padding:14px!important}.sigma-launch-progress{padding:14px!important}
  .sigma-launch-head>.topic-sub,.sigma-review-intelligence{justify-content:flex-start!important;max-width:none;margin-top:6px!important}
  .sigma-launch-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:11px!important}
  .sigma-launch-actions .btn{min-height:45px;font-size:.74rem!important}
  .sigma-launch-progress .progress-status-options{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px;padding:5px}
  .sigma-launch-progress .progress-status-option:not(:last-child)::after{display:none}
  .sigma-launch-progress .progress-status-option{min-height:39px}
  .sigma-progress-more summary{min-height:47px;padding:9px 10px}
  .sigma-launch-save-actions{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .sigma-launch-save-actions .btn{min-height:45px}
  .sigma-guided-teaching-toggle{min-height:68px;grid-template-columns:42px minmax(0,1fr) 29px;gap:10px;padding:10px 11px;border-radius:17px}
  .sigma-guided-teaching-icon{width:41px;height:41px;border-radius:13px}
  .sigma-guided-teaching-copy strong{font-size:.81rem}.sigma-guided-teaching-copy em{font-size:.57rem}
}

/* =============================================================
   V52.24 — SIGMA GAMES HUB + CROSSGRID
   Original intersecting-equation puzzle system.
   ============================================================= */
.games-hub-shell{position:relative;max-width:1180px;margin:0 auto;padding:24px 18px 110px}
.games-hub-shell:before{content:"";position:absolute;inset:0 0 auto 0;height:320px;pointer-events:none;background:radial-gradient(520px 220px at 10% 0%,rgba(40,193,240,.12),transparent 70%),radial-gradient(440px 220px at 100% 40%,rgba(255,188,54,.12),transparent 68%)}
.games-hub-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:18px;align-items:stretch;margin-bottom:22px}
.games-hub-intro,.games-hub-record{position:relative;overflow:hidden;border:1px solid #d8e5ed;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(245,251,254,.96));box-shadow:0 20px 56px rgba(15,64,91,.10)}
.games-hub-intro{padding:30px 32px}.games-hub-intro:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.22),transparent 30%,rgba(34,182,228,.08) 55%,transparent 70%,rgba(252,194,78,.08) 100%)}.games-hub-intro:after{content:"Σ";position:absolute;right:24px;top:6px;font-size:7rem;font-weight:950;color:rgba(19,145,190,.06);line-height:1}
.games-hub-intro h2{margin:5px 0 8px;font-size:clamp(2rem,4vw,3.25rem);letter-spacing:-.05em;color:#102f46}.games-hub-intro p{max-width:720px;margin:0;color:#60788b;font-size:1rem;line-height:1.6}
.games-hub-hero-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.games-hub-hero-chips span{padding:8px 12px;border-radius:999px;border:1px solid rgba(24,131,168,.14);background:rgba(255,255,255,.74);box-shadow:0 6px 16px rgba(14,75,104,.06);color:#245169;font-size:.67rem;font-weight:900;letter-spacing:.06em}
.games-hub-record{padding:22px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;background:radial-gradient(260px 150px at 100% 0%,rgba(71,216,255,.14),transparent 65%),linear-gradient(150deg,#0f2e45,#10263a);border-color:#244c64;color:#fff}
.games-hub-record div{padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03));backdrop-filter:blur(10px)}.games-hub-record small{display:block;color:#8bcde5;font-size:.6rem;font-weight:900;letter-spacing:.12em}.games-hub-record strong{display:block;margin-top:4px;font-size:1rem}
.sigma-games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sigma-game-card{position:relative;overflow:hidden;min-height:320px;padding:26px;border:1px solid #d5e4ec;border-radius:30px;background:#fff;box-shadow:0 16px 44px rgba(10,60,88,.085);display:flex;flex-direction:column;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.sigma-game-card:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(10,60,88,.13);border-color:#b7d7e7}.sigma-game-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(540px 240px at 100% 0%,rgba(31,180,226,.10),transparent 65%)}.sigma-game-card:after{content:"";position:absolute;inset:1px;border-radius:29px;pointer-events:none;border:1px solid rgba(255,255,255,.34)}
.sigma-game-card.storm{background:radial-gradient(500px 220px at 105% -10%,rgba(48,216,255,.2),transparent 58%),linear-gradient(145deg,#091a2d,#0d2c48);border-color:#245777;color:#fff}.sigma-game-card.crossgrid{background:radial-gradient(430px 200px at 105% -10%,rgba(255,193,64,.18),transparent 62%),linear-gradient(145deg,#ffffff,#f7fbfe)}
.sigma-game-card-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.sigma-game-icon{width:66px;height:66px;border-radius:21px;display:grid;place-items:center;font-weight:950;font-size:1.8rem;color:#fff;background:linear-gradient(145deg,#13a1cf,#087aa7);box-shadow:0 10px 25px rgba(5,123,167,.24)}.sigma-game-card.storm .sigma-game-icon{background:linear-gradient(145deg,#18d8ff,#1878df);box-shadow:0 0 28px rgba(25,215,255,.35)}.sigma-game-card.crossgrid .sigma-game-icon{background:linear-gradient(145deg,#ffcb57,#f09d00);box-shadow:0 12px 26px rgba(240,157,0,.24)}
.sigma-game-ribbon{position:absolute;top:18px;right:18px;padding:8px 12px;border-radius:999px;background:linear-gradient(135deg,#ffce61,#e69c00);color:#5d3b00;font-size:.6rem;font-weight:950;letter-spacing:.12em;box-shadow:0 12px 24px rgba(229,165,18,.24)}
.sigma-game-tag{padding:7px 10px;border:1px solid #d5e8ef;border-radius:999px;color:#1882a8;background:rgba(255,255,255,.7);font-size:.58rem;font-weight:950;letter-spacing:.11em}.sigma-game-card.storm .sigma-game-tag{border-color:rgba(88,217,255,.25);background:rgba(16,109,152,.18);color:#7fe5ff}.sigma-game-card.crossgrid .sigma-game-tag{border-color:rgba(226,184,80,.34);background:rgba(255,248,228,.84);color:#9b6a07}
.sigma-game-card h3{margin:18px 0 7px;font-size:1.62rem;letter-spacing:-.04em;color:#12364d}.sigma-game-card.storm h3{color:#fff}.sigma-game-card p{margin:0 0 14px;color:#667f90;line-height:1.58}.sigma-game-card.storm p{color:#a5c4d6}
.sigma-game-card-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.sigma-game-card-badges span{padding:7px 11px;border-radius:12px;background:rgba(20,114,147,.08);border:1px solid rgba(24,131,168,.1);color:#24576e;font-size:.62rem;font-weight:900;letter-spacing:.04em}.sigma-game-card.storm .sigma-game-card-badges span{background:rgba(79,205,244,.09);border-color:rgba(85,212,250,.12);color:#9be8ff}
.sigma-game-skills{display:flex;flex-wrap:wrap;gap:7px;margin:auto 0 14px}.sigma-game-skills span{padding:6px 9px;border-radius:10px;background:#eef8fb;color:#32758f;font-size:.62rem;font-weight:850}.sigma-game-card.storm .sigma-game-skills span{background:rgba(79,205,244,.09);color:#9be8ff;border:1px solid rgba(85,212,250,.12)}
.sigma-game-card-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 0 16px;padding-top:14px;border-top:1px solid rgba(25,100,128,.10)}.sigma-game-card-footer small{color:#6f8a9b;font-size:.57rem;font-weight:950;letter-spacing:.12em}.sigma-game-card-footer span{color:#184761;font-size:.68rem;font-weight:800}.sigma-game-card.storm .sigma-game-card-footer{border-top-color:rgba(118,205,240,.12)}.sigma-game-card.storm .sigma-game-card-footer small{color:#7dcfeb}.sigma-game-card.storm .sigma-game-card-footer span{color:#dff7ff}
.sigma-game-launch{width:100%;min-height:52px;box-shadow:0 12px 24px rgba(19,124,161,.14)}

.crossgrid-shell{position:relative;max-width:1120px;margin:0 auto;padding:20px 18px 110px}.crossgrid-shell:before{content:"";position:absolute;inset:0 0 auto;height:240px;pointer-events:none;background:radial-gradient(380px 180px at 15% 0%,rgba(34,195,240,.10),transparent 70%),radial-gradient(320px 160px at 100% 30%,rgba(255,188,54,.12),transparent 68%)}.crossgrid-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:16px;padding:24px 26px;border:1px solid #d8e7ee;border-radius:28px;background:radial-gradient(520px 220px at 92% -15%,rgba(246,185,45,.18),transparent 62%),linear-gradient(145deg,rgba(255,255,255,.96),rgba(245,251,253,.98));box-shadow:0 18px 46px rgba(15,66,94,.08)}.crossgrid-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.24),transparent 34%,rgba(18,180,216,.07) 60%,transparent 75%,rgba(246,185,45,.06) 100%)}.crossgrid-hero h2{margin:4px 0 7px;font-size:clamp(1.85rem,4vw,2.75rem);letter-spacing:-.045em;color:#10334a}.crossgrid-hero p{margin:0;max-width:690px;color:#617a8c;line-height:1.55}.crossgrid-hero-facts{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}.crossgrid-hero-facts span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.76);border:1px solid rgba(23,132,168,.12);box-shadow:0 6px 16px rgba(18,81,109,.06);color:#25556c;font-size:.66rem;font-weight:900;letter-spacing:.05em}.crossgrid-back{white-space:nowrap;box-shadow:0 10px 24px rgba(16,78,107,.08)}
.crossgrid-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.62fr);gap:18px;align-items:start}.crossgrid-game-panel,.crossgrid-side-panel{border:1px solid #d6e5ed;border-radius:28px;background:linear-gradient(180deg,#ffffff,#fbfdfe);box-shadow:0 16px 44px rgba(13,62,88,.08)}.crossgrid-game-panel{padding:22px}.crossgrid-side-panel{padding:18px;position:sticky;top:80px}
.crossgrid-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:15px}.crossgrid-difficulty{display:flex;gap:6px;padding:5px;border:1px solid #dce9ef;border-radius:15px;background:linear-gradient(180deg,#fbfdfe,#f3f9fc)}.crossgrid-difficulty button{border:0;border-radius:10px;padding:9px 12px;background:transparent;color:#698092;font-size:.68rem;font-weight:900}.crossgrid-difficulty button.active{background:linear-gradient(145deg,#123e59,#0d698d);color:#fff;box-shadow:0 8px 20px rgba(13,63,92,.22)}
.crossgrid-live-stats{display:flex;gap:8px}.crossgrid-live-stats span{min-width:74px;padding:8px 10px;border:1px solid #e0eaf0;border-radius:14px;background:linear-gradient(180deg,#fbfdfe,#f7fbfd);text-align:center;box-shadow:0 4px 12px rgba(13,62,88,.04)}.crossgrid-live-stats small{display:block;color:#7c91a0;font-size:.51rem;font-weight:900;letter-spacing:.1em}.crossgrid-live-stats strong{display:block;margin-top:1px;color:#153c54;font-size:.94rem}
.crossgrid-board-wrap{padding:clamp(12px,3vw,25px);border:1px solid #d3e5ed;border-radius:24px;background:radial-gradient(400px 250px at 50% 0%,rgba(29,183,223,.11),transparent 70%),linear-gradient(180deg,#f9fcfe,#edf7fb);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.crossgrid-board{display:grid;grid-template-columns:minmax(52px,1fr) 30px minmax(52px,1fr) 30px minmax(52px,1fr) 28px minmax(50px,.82fr);grid-template-rows:repeat(7,minmax(34px,auto));gap:8px;align-items:center;max-width:590px;margin:0 auto}
.crossgrid-number-cell{min-height:64px;border:1px solid #bfd9e5;border-radius:18px;background:linear-gradient(180deg,#ffffff,#f7fbfe);box-shadow:0 10px 24px rgba(17,83,115,.08),0 1px 0 #fff inset;color:#103d57;font-size:1.4rem;font-weight:950;transition:.15s ease}.crossgrid-number-cell:hover{transform:translateY(-1px);border-color:#64b9d7}.crossgrid-number-cell.filled{background:linear-gradient(145deg,#0d799f,#18a9d1);border-color:#1f9bc1;color:#fff;box-shadow:0 12px 26px rgba(12,128,169,.24)}.crossgrid-number-cell.selected{outline:3px solid rgba(244,181,45,.43);outline-offset:2px}.crossgrid-number-cell span{opacity:.3}
.crossgrid-operator,.crossgrid-equals{display:grid;place-items:center;color:#517287;font-size:1.08rem;font-weight:950}.crossgrid-equals{color:#9a7b2b}.crossgrid-target{min-height:38px;padding:7px 5px;display:grid;place-items:center;border:1px solid #dbe7ec;border-radius:12px;background:#fff;color:#254d65;font-size:.88rem;font-weight:950;transition:.18s ease;box-shadow:0 4px 10px rgba(13,62,88,.04)}.crossgrid-target.correct{border-color:#7dd5aa;background:#effcf5;color:#117347;box-shadow:0 0 0 2px rgba(58,190,124,.08)}.crossgrid-target.wrong{border-color:#efaaaa;background:#fff2f2;color:#a33434}
.crossgrid-status{margin:13px 1px 0;min-height:22px;color:#58768a;font-size:.76rem;font-weight:750;text-align:center}.crossgrid-bank-card{margin-top:14px;padding:15px;border:1px solid #dbe8ee;border-radius:20px;background:linear-gradient(180deg,#fcfeff,#f7fbfd);box-shadow:0 8px 18px rgba(18,76,103,.04)}.crossgrid-bank-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.crossgrid-bank-head strong{color:#173f56;font-size:.78rem}.crossgrid-bank-head small{color:#8295a3;font-size:.62rem}.crossgrid-bank{display:grid;grid-template-columns:repeat(9,1fr);gap:7px}.crossgrid-bank-tile{min-height:43px;border:1px solid #bfd9e4;border-radius:12px;background:#fff;color:#17445d;font-size:.9rem;font-weight:950;box-shadow:0 6px 14px rgba(20,74,103,.06)}.crossgrid-bank-tile.selected{border-color:#e7b23b;background:#fff7df;color:#7d5d12;outline:2px solid rgba(231,178,59,.2)}.crossgrid-bank-tile.used{opacity:.2;box-shadow:none}.crossgrid-bank-tile:disabled{cursor:default}
.crossgrid-actions{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8px;margin-top:13px}.crossgrid-actions .btn{min-height:47px}.crossgrid-actions .btn:first-child{box-shadow:0 12px 24px rgba(19,124,161,.14)}
.crossgrid-side-panel h3{margin:2px 0 5px;color:#143950}.crossgrid-side-panel>p{margin:0 0 14px;color:#758a99;font-size:.75rem;line-height:1.5}.crossgrid-how{display:grid;gap:8px}.crossgrid-how div{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;padding:10px;border:1px solid #e1ebf0;border-radius:16px;background:linear-gradient(180deg,#fbfdfe,#f8fbfd)}.crossgrid-how span{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#eaf7fb;color:#0b82ac;font-size:.72rem;font-weight:950}.crossgrid-how strong{display:block;color:#254b61;font-size:.72rem}.crossgrid-how small{display:block;margin-top:2px;color:#8194a1;font-size:.61rem;line-height:1.35}.crossgrid-side-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:13px}.crossgrid-side-stats div{padding:12px;border:1px solid #e0eaf0;border-radius:16px;background:linear-gradient(180deg,#fafdfe,#f4fafc)}.crossgrid-side-stats small{display:block;color:#8295a3;font-size:.52rem;font-weight:900;letter-spacing:.09em}.crossgrid-side-stats strong{display:block;margin-top:3px;color:#153d55;font-size:1rem}
.crossgrid-result{margin-top:14px;padding:16px;border:1px solid #9ed8bc;border-radius:20px;background:radial-gradient(250px 100px at 100% 0%,rgba(244,187,46,.19),transparent 70%),linear-gradient(145deg,#effbf6,#f8fdfb);display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;box-shadow:0 12px 24px rgba(18,94,63,.08)}.crossgrid-result.hidden{display:none}.crossgrid-result small{color:#448166;font-size:.56rem;font-weight:950;letter-spacing:.11em}.crossgrid-result strong{display:block;margin-top:2px;color:#14573b;font-size:1.2rem}.crossgrid-result p{margin:4px 0 0;color:#658277;font-size:.66rem}.crossgrid-result-points{font-size:1.65rem!important;color:#b78317!important}

html[data-theme="dark"] .games-hub-intro,html[data-theme="dark"] .sigma-game-card.crossgrid,html[data-theme="dark"] .crossgrid-hero,html[data-theme="dark"] .crossgrid-game-panel,html[data-theme="dark"] .crossgrid-side-panel{background:linear-gradient(145deg,#0d2232,#0a1b29);border-color:#284658;color:#eef8fc}html[data-theme="dark"] .games-hub-intro h2,html[data-theme="dark"] .sigma-game-card.crossgrid h3,html[data-theme="dark"] .crossgrid-hero h2,html[data-theme="dark"] .crossgrid-side-panel h3{color:#edf8fc}html[data-theme="dark"] .games-hub-intro p,html[data-theme="dark"] .sigma-game-card.crossgrid p,html[data-theme="dark"] .crossgrid-hero p{color:#9bb2c0}html[data-theme="dark"] .games-hub-hero-chips span,html[data-theme="dark"] .crossgrid-hero-facts span{background:rgba(255,255,255,.05);border-color:rgba(125,218,246,.14);color:#d9f5ff}html[data-theme="dark"] .sigma-game-card-badges span{background:rgba(255,255,255,.05);border-color:rgba(133,209,238,.12);color:#d8f5ff}html[data-theme="dark"] .sigma-game-card-footer{border-top-color:rgba(133,209,238,.12)}html[data-theme="dark"] .sigma-game-card-footer small{color:#89cae3}html[data-theme="dark"] .sigma-game-card-footer span{color:#ecfbff}html[data-theme="dark"] .crossgrid-board-wrap{background:linear-gradient(180deg,#0b2232,#091c2a);border-color:#294657}html[data-theme="dark"] .crossgrid-number-cell,html[data-theme="dark"] .crossgrid-bank-card,html[data-theme="dark"] .crossgrid-bank-tile,html[data-theme="dark"] .crossgrid-target,html[data-theme="dark"] .crossgrid-how div,html[data-theme="dark"] .crossgrid-side-stats div,html[data-theme="dark"] .crossgrid-live-stats span{background:#102839;border-color:#2e4c5e;color:#dff2fa}html[data-theme="dark"] .crossgrid-difficulty{background:#0b2030;border-color:#2a4658}

@media(max-width:820px){.games-hub-hero,.crossgrid-layout{grid-template-columns:1fr}.games-hub-record{grid-template-columns:repeat(4,1fr)}.crossgrid-side-panel{position:static}.crossgrid-hero{align-items:flex-start;flex-direction:column}.crossgrid-back{width:100%}.sigma-games-grid{grid-template-columns:1fr}}
@media(max-width:600px){.games-hub-shell,.crossgrid-shell{padding:12px 10px 96px}.games-hub-intro{padding:21px 18px}.games-hub-record{grid-template-columns:repeat(2,1fr)}.sigma-game-card{min-height:250px;padding:18px;border-radius:24px}.sigma-game-ribbon{top:14px;right:14px}.crossgrid-game-panel{padding:11px;border-radius:22px}.crossgrid-toolbar{align-items:stretch;flex-direction:column}.crossgrid-live-stats{display:grid;grid-template-columns:repeat(3,1fr)}.crossgrid-live-stats span{min-width:0}.crossgrid-board-wrap{padding:9px 7px}.crossgrid-board{grid-template-columns:minmax(43px,1fr) 20px minmax(43px,1fr) 20px minmax(43px,1fr) 18px minmax(39px,.78fr);gap:5px}.crossgrid-number-cell{min-height:53px;border-radius:13px;font-size:1.16rem}.crossgrid-operator,.crossgrid-equals{font-size:.92rem}.crossgrid-target{font-size:.72rem;padding:4px 2px;min-height:32px}.crossgrid-bank{grid-template-columns:repeat(5,1fr)}.crossgrid-actions{grid-template-columns:1fr 1fr}.crossgrid-actions #crossGridCheckBtn{grid-column:1/-1}.crossgrid-hero{padding:18px}.crossgrid-result{grid-template-columns:1fr}.crossgrid-result .btn{width:100%}}


/* =============================================================
   V52.26 — ULTIMATE PREMIUM GAMES HUB
   Bigger arcade wow + cleaner luxury premium + darker neon gamer finish.
   ============================================================= */
.games-hub-shell{max-width:1220px}
.games-hub-shell:before{height:420px;background:radial-gradient(540px 240px at 8% 4%,rgba(38,208,255,.16),transparent 70%),radial-gradient(520px 240px at 100% 12%,rgba(255,184,48,.18),transparent 68%),linear-gradient(180deg,rgba(7,19,31,.08),transparent 62%)}
.games-hub-hero{margin-bottom:24px}
.games-hub-intro{border-color:#2d4d62;background:radial-gradient(620px 260px at 0% 0%,rgba(45,201,249,.16),transparent 58%),radial-gradient(520px 220px at 100% 0%,rgba(255,190,78,.14),transparent 56%),linear-gradient(145deg,#0d2030,#10283a 58%,#132f45);box-shadow:0 24px 68px rgba(7,27,41,.26)}
.games-hub-intro:before{background:linear-gradient(120deg,rgba(255,255,255,.10),transparent 30%,rgba(34,182,228,.08) 55%,transparent 72%,rgba(252,194,78,.10) 100%)}
.games-hub-intro:after{color:rgba(120,222,255,.08);text-shadow:0 0 34px rgba(65,211,255,.15)}
.games-hub-intro h2{color:#f7fcff}
.games-hub-intro p{color:#b7cad7}
.games-hub-hero-chips span{border-color:rgba(124,214,245,.18);background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(3,15,24,.12);color:#e8f9ff}
.games-hub-record{border-color:#2f5973;background:radial-gradient(320px 170px at 100% 0%,rgba(61,227,255,.18),transparent 65%),radial-gradient(250px 140px at 0% 100%,rgba(255,196,87,.10),transparent 72%),linear-gradient(150deg,#0d2435,#102b40 55%,#14334b);box-shadow:0 24px 68px rgba(7,27,41,.22)}
.games-hub-record div{border-color:rgba(137,223,250,.10);background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.04));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.games-hub-record strong{font-size:1.05rem}
.sigma-games-grid{gap:20px}
.sigma-game-card{min-height:344px;padding:28px;border-radius:32px;border-color:#cfe0ea;box-shadow:0 20px 56px rgba(8,42,62,.12)}
.sigma-game-card:before{background:radial-gradient(420px 180px at -5% 0%,rgba(255,255,255,.14),transparent 60%),radial-gradient(560px 260px at 100% 0%,rgba(31,180,226,.13),transparent 66%)}
.sigma-game-card.storm{border-color:#336785;background:radial-gradient(320px 180px at 10% 10%,rgba(79,223,255,.12),transparent 55%),radial-gradient(520px 240px at 100% -10%,rgba(24,216,255,.24),transparent 56%),linear-gradient(145deg,#071522,#0b1f31 54%,#0e2f49)}
.sigma-game-card.storm:before{background:radial-gradient(440px 200px at 100% 0%,rgba(77,224,255,.16),transparent 62%),linear-gradient(180deg,rgba(255,255,255,.04),transparent 45%)}
.sigma-game-card.crossgrid{border-color:#eed4a2;background:radial-gradient(340px 160px at 0% 0%,rgba(55,199,241,.08),transparent 52%),radial-gradient(460px 220px at 100% 0%,rgba(255,199,88,.22),transparent 58%),linear-gradient(145deg,#fffefb,#fff8eb 55%,#f7fbff)}
.sigma-game-card.crossgrid:before{background:radial-gradient(520px 220px at 100% 0%,rgba(255,199,88,.18),transparent 65%),linear-gradient(180deg,rgba(255,255,255,.45),transparent 40%)}
.sigma-game-card:hover{transform:translateY(-6px) scale(1.005);box-shadow:0 28px 72px rgba(8,42,62,.18)}
.sigma-game-icon{width:70px;height:70px;border-radius:22px;font-size:1.95rem}
.sigma-game-card.storm .sigma-game-icon{box-shadow:0 0 0 1px rgba(109,233,255,.18),0 16px 32px rgba(9,145,194,.28),0 0 28px rgba(30,203,255,.18)}
.sigma-game-card.crossgrid .sigma-game-icon{box-shadow:0 0 0 1px rgba(240,176,51,.18),0 14px 30px rgba(240,157,0,.22)}
.sigma-game-ribbon{background:linear-gradient(135deg,#ffda80,#ffb31b 55%,#e59000);box-shadow:0 12px 28px rgba(229,165,18,.28),inset 0 1px 0 rgba(255,255,255,.55)}
.sigma-game-card h3{font-size:1.72rem}
.sigma-game-card.crossgrid h3{color:#163349}
.sigma-game-card-badges span{border-color:rgba(24,131,168,.12);background:rgba(255,255,255,.75);box-shadow:0 6px 16px rgba(14,75,104,.06)}
.sigma-game-card.storm .sigma-game-card-badges span{background:rgba(116,228,255,.10);color:#b8f3ff}
.sigma-game-skills span{padding:7px 10px;border-radius:12px}
.sigma-game-launch{min-height:54px;border-radius:16px;box-shadow:0 14px 32px rgba(10,120,160,.18),inset 0 1px 0 rgba(255,255,255,.18)}
.sigma-game-card.storm .sigma-game-launch{box-shadow:0 16px 34px rgba(18,149,199,.24),0 0 26px rgba(31,195,241,.10)}
.sigma-game-card.crossgrid .sigma-game-launch{box-shadow:0 16px 34px rgba(230,165,35,.16)}

.crossgrid-shell:before{height:300px;background:radial-gradient(400px 180px at 14% 0%,rgba(39,207,255,.14),transparent 70%),radial-gradient(360px 180px at 100% 22%,rgba(255,189,58,.16),transparent 70%),linear-gradient(180deg,rgba(7,19,31,.04),transparent 64%)}
.crossgrid-hero{border-color:#31566c;background:radial-gradient(520px 220px at 12% 0%,rgba(34,199,241,.11),transparent 58%),radial-gradient(520px 220px at 92% -15%,rgba(246,185,45,.18),transparent 60%),linear-gradient(145deg,#0d2030,#12283a 56%,#163248);box-shadow:0 22px 56px rgba(8,34,50,.18)}
.crossgrid-hero:after{background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 34%,rgba(18,180,216,.09) 60%,transparent 75%,rgba(246,185,45,.08) 100%)}
.crossgrid-hero h2{color:#f6fbff}
.crossgrid-hero p{color:#b5c7d3}
.crossgrid-hero-facts span{background:rgba(255,255,255,.07);border-color:rgba(124,214,245,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 18px rgba(6,22,33,.11);color:#f2fbff}
.crossgrid-back{background:rgba(255,255,255,.06)!important;border-color:rgba(134,214,242,.16)!important;color:#eefaff!important;box-shadow:0 10px 26px rgba(8,35,52,.18)!important}
.crossgrid-game-panel{border-color:#28495c;background:linear-gradient(180deg,#0b1926,#112534 55%,#132b3d);box-shadow:0 22px 56px rgba(8,34,50,.17)}
.crossgrid-side-panel{border-color:#28495c;background:linear-gradient(180deg,#102130,#142636 55%,#172d40);box-shadow:0 22px 56px rgba(8,34,50,.17)}
.crossgrid-toolbar{margin-bottom:18px}
.crossgrid-difficulty{border-color:#325264;background:linear-gradient(180deg,#102534,#0e1f2f)}
.crossgrid-difficulty button{color:#a7bcc9}
.crossgrid-difficulty button.active{background:linear-gradient(145deg,#f5b431,#d99500);color:#452900;box-shadow:0 10px 22px rgba(222,159,20,.26)}
.crossgrid-live-stats span{border-color:#2d4a5b;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.crossgrid-live-stats small{color:#86a4b6}
.crossgrid-live-stats strong{color:#f1fbff}
.crossgrid-board-wrap{border-color:#315064;background:radial-gradient(500px 280px at 50% 0%,rgba(30,195,240,.14),transparent 68%),radial-gradient(280px 140px at 100% 0%,rgba(255,188,58,.10),transparent 68%),linear-gradient(180deg,#0a1824,#102231 56%,#0d1e2d);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 18px 34px rgba(5,20,31,.12)}
.crossgrid-number-cell{border-color:#3d6074;background:linear-gradient(180deg,#112736,#163146);box-shadow:0 14px 28px rgba(5,22,33,.16),inset 0 1px 0 rgba(255,255,255,.05);color:#e7f8ff}
.crossgrid-number-cell:hover{border-color:#69d2f2;box-shadow:0 16px 34px rgba(7,31,46,.22),0 0 0 1px rgba(84,218,255,.08)}
.crossgrid-number-cell.filled{background:linear-gradient(145deg,#14a0cb,#32d1ff 58%,#0995c0);border-color:#6de0ff;color:#052739;box-shadow:0 16px 34px rgba(13,171,214,.26),0 0 22px rgba(43,208,255,.12)}
.crossgrid-number-cell.selected{outline-color:rgba(255,197,68,.7)}
.crossgrid-number-cell span{opacity:.38}
.crossgrid-operator,.crossgrid-equals{color:#c4d9e4}
.crossgrid-equals{color:#ffd57a}
.crossgrid-target{border-color:#38586c;background:linear-gradient(180deg,#112736,#163146);color:#e6f9ff;box-shadow:0 8px 16px rgba(5,22,33,.10)}
.crossgrid-target.correct{border-color:#6de4aa;background:linear-gradient(145deg,#11392b,#18543b);color:#dffdeb;box-shadow:0 0 0 2px rgba(88,220,147,.11),0 0 20px rgba(88,220,147,.08)}
.crossgrid-target.wrong{border-color:#f09292;background:linear-gradient(145deg,#3d1d22,#52222a);color:#ffe4e4}
.crossgrid-status{color:#afc2cf;font-size:.79rem}
.crossgrid-bank-card{border-color:#2f5165;background:linear-gradient(180deg,#0f2231,#142737 58%,#172c3e);box-shadow:0 12px 26px rgba(6,24,36,.14)}
.crossgrid-bank-head strong{color:#f2fbff}.crossgrid-bank-head small{color:#94adbb}
.crossgrid-bank-tile{border-color:#3b5f74;background:linear-gradient(180deg,#152b3b,#1a3245);color:#f0fbff;box-shadow:0 8px 16px rgba(6,24,36,.12)}
.crossgrid-bank-tile.selected{border-color:#ffc95c;background:linear-gradient(145deg,#3e2e08,#624708);color:#ffecc0;outline:2px solid rgba(255,198,73,.24)}
.crossgrid-actions .btn{min-height:48px;border-radius:15px}
.crossgrid-actions .btn:first-child{box-shadow:0 16px 34px rgba(14,156,200,.22)}
.crossgrid-actions .btn.secondary{background:rgba(255,255,255,.05)!important;border-color:rgba(137,223,250,.12)!important;color:#e8f8ff!important}
.crossgrid-side-panel h3{color:#f4fbff}
.crossgrid-side-panel>p{color:#b3c6d2}
.crossgrid-how div{border-color:#2f5063;background:linear-gradient(180deg,#122736,#162a3b)}
.crossgrid-how span{background:linear-gradient(145deg,#20bde4,#087ea8);color:#fff;box-shadow:0 10px 18px rgba(8,126,168,.18)}
.crossgrid-how strong{color:#effaff}
.crossgrid-how small{color:#9fb6c3}
.crossgrid-side-stats div{border-color:#2f5063;background:linear-gradient(180deg,#112534,#162a3b)}
.crossgrid-side-stats small{color:#8fabb9}
.crossgrid-side-stats strong{color:#f2fbff}
.crossgrid-result{border-color:#60c998;background:radial-gradient(250px 100px at 100% 0%,rgba(255,196,70,.20),transparent 68%),linear-gradient(145deg,#102d23,#174235);box-shadow:0 14px 30px rgba(8,40,31,.18)}
.crossgrid-result small{color:#9de6bf}.crossgrid-result strong{color:#f2fff8}.crossgrid-result p{color:#c7e7d6}.crossgrid-result-points{color:#ffd46b!important}

html[data-theme="dark"] .games-hub-intro{background:radial-gradient(620px 260px at 0% 0%,rgba(45,201,249,.15),transparent 58%),radial-gradient(520px 220px at 100% 0%,rgba(255,190,78,.14),transparent 56%),linear-gradient(145deg,#0d2030,#10283a 58%,#132f45)}
html[data-theme="dark"] .games-hub-record{background:radial-gradient(320px 170px at 100% 0%,rgba(61,227,255,.18),transparent 65%),radial-gradient(250px 140px at 0% 100%,rgba(255,196,87,.10),transparent 72%),linear-gradient(150deg,#0d2435,#102b40 55%,#14334b)}
html[data-theme="dark"] .sigma-game-card.crossgrid,html[data-theme="dark"] .crossgrid-hero,html[data-theme="dark"] .crossgrid-game-panel,html[data-theme="dark"] .crossgrid-side-panel{border-color:#31556a}

@media(max-width:600px){
  .games-hub-intro,.games-hub-record,.sigma-game-card,.crossgrid-hero,.crossgrid-game-panel,.crossgrid-side-panel{border-radius:24px}
  .sigma-game-card{min-height:270px;padding:18px}
  .crossgrid-game-panel,.crossgrid-side-panel{padding:14px}
  .sigma-game-card h3{font-size:1.48rem}
}


/* =============================================================
   V52.27 — Headline Storm + Addictive CrossGrid + Premium Motion
   ============================================================= */
.sigma-game-card.headline{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr);column-gap:22px;row-gap:10px;align-items:start;padding:30px 32px;min-height:0}
.sigma-game-card.headline h3,.sigma-game-card.headline p,.sigma-game-card.headline .sigma-game-card-top,.sigma-game-card.headline .sigma-game-card-badges,.sigma-game-card.headline .sigma-game-mode-row,.sigma-game-card.headline .sigma-game-skills,.sigma-game-card.headline .sigma-game-card-footer,.sigma-game-card.headline .sigma-game-launch{grid-column:1/2}
.sigma-game-card.headline .sigma-game-spotlight{grid-column:2/3;grid-row:1/span 6;align-self:stretch}
.sigma-game-card.headline .sigma-game-ribbon{right:24px;top:22px}
.sigma-game-card.addictive .sigma-game-launch{margin-top:2px}
.sigma-game-spotlight{display:grid;grid-template-columns:1fr;gap:10px;padding:14px;border:1px solid rgba(122,220,249,.14);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 14px 26px rgba(7,28,42,.14)}
.sigma-game-spotlight div{padding:14px 14px;border:1px solid rgba(135,222,249,.10);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}
.sigma-game-spotlight small{display:block;color:#88cfe8;font-size:.58rem;font-weight:950;letter-spacing:.12em}.sigma-game-spotlight strong{display:block;margin-top:4px;color:#f3fbff;font-size:1.02rem}
.sigma-game-mode-row{display:flex;flex-wrap:wrap;gap:9px;margin:-2px 0 14px}.sigma-game-mode-row span{padding:8px 12px;border-radius:999px;border:1px solid rgba(115,220,247,.14);background:rgba(255,255,255,.07);color:#e2f8ff;font-size:.66rem;font-weight:900;letter-spacing:.05em}
.sigma-game-hook{margin:0 0 16px;padding:12px 13px;border:1px solid rgba(228,184,81,.18);border-radius:15px;background:linear-gradient(180deg,rgba(255,250,239,.9),rgba(255,245,221,.72));color:#8a5b05;font-size:.69rem;font-weight:850;box-shadow:0 10px 22px rgba(223,168,42,.08)}
.storm-ribbon{background:linear-gradient(135deg,#57e5ff,#1ec7ff 58%,#1f88ff);color:#05283c;box-shadow:0 14px 30px rgba(33,180,243,.26),inset 0 1px 0 rgba(255,255,255,.45)}

.crossgrid-reward-card{margin-top:12px;padding:14px;border:1px solid #2f5063;border-radius:20px;background:linear-gradient(180deg,#112434,#172a3c 58%,#1a3146);box-shadow:0 14px 26px rgba(8,34,50,.16)}
.crossgrid-reward-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.crossgrid-reward-head strong{color:#f4fbff;font-size:.78rem;letter-spacing:.04em}.crossgrid-reward-head small{display:block;max-width:190px;color:#a4bac6;font-size:.63rem;line-height:1.45;text-align:right}
.crossgrid-reward-bar{height:11px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;box-shadow:inset 0 1px 1px rgba(0,0,0,.22)}.crossgrid-reward-bar span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#25c5ef,#78e4ff 55%,#ffc657);box-shadow:0 0 18px rgba(48,212,255,.18);transition:width .35s ease}
.crossgrid-reward-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}.crossgrid-reward-stats div{padding:10px;border:1px solid rgba(134,210,238,.10);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03))}.crossgrid-reward-stats small{display:block;color:#8fabb9;font-size:.5rem;font-weight:900;letter-spacing:.1em}.crossgrid-reward-stats strong{display:block;margin-top:4px;color:#f2fbff;font-size:.9rem}

.games-hub-intro,.games-hub-record,.sigma-game-card,.crossgrid-hero,.crossgrid-game-panel,.crossgrid-side-panel,.crossgrid-reward-card{animation:sigmaCardRise .65s ease both}
.sigma-game-card:nth-child(2){animation-delay:.08s}.sigma-game-card:nth-child(3){animation-delay:.16s}
.games-hub-hero-chips span,.crossgrid-hero-facts span{animation:sigmaChipFloat 5.8s ease-in-out infinite}
.games-hub-hero-chips span:nth-child(2),.crossgrid-hero-facts span:nth-child(2){animation-delay:.8s}.games-hub-hero-chips span:nth-child(3),.crossgrid-hero-facts span:nth-child(3){animation-delay:1.6s}
.sigma-game-ribbon,.storm-ribbon{animation:sigmaPulseGlow 3.4s ease-in-out infinite}
.sigma-game-launch,.crossgrid-actions .btn:first-child,#crossGridNewBtn{position:relative;overflow:hidden}
.sigma-game-launch:after,.crossgrid-actions .btn:first-child:after,#crossGridNewBtn:after{content:"";position:absolute;top:0;bottom:0;left:-42%;width:34%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);transform:skewX(-18deg);animation:sigmaButtonSweep 4.6s ease-in-out infinite}
.crossgrid-number-cell.filled{animation:sigmaTilePulse .7s ease}
.crossgrid-result:not(.hidden){animation:sigmaCardRise .45s ease,sigmaPulseGlow 3.6s ease-in-out infinite}

@keyframes sigmaCardRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes sigmaChipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes sigmaPulseGlow{0%,100%{box-shadow:0 12px 28px rgba(229,165,18,.22)}50%{box-shadow:0 16px 34px rgba(36,199,240,.20)}}
@keyframes sigmaButtonSweep{0%,72%,100%{left:-42%}84%{left:118%}}
@keyframes sigmaTilePulse{0%{transform:scale(.96)}60%{transform:scale(1.03)}100%{transform:scale(1)}}

@media (prefers-reduced-motion: reduce){
  .games-hub-intro,.games-hub-record,.sigma-game-card,.crossgrid-hero,.crossgrid-game-panel,.crossgrid-side-panel,.crossgrid-reward-card,
  .games-hub-hero-chips span,.crossgrid-hero-facts span,.sigma-game-ribbon,.storm-ribbon,.crossgrid-result:not(.hidden),.crossgrid-number-cell.filled{animation:none!important}
  .sigma-game-launch:after,.crossgrid-actions .btn:first-child:after,#crossGridNewBtn:after{display:none}
}

@media(max-width:920px){
  .sigma-game-card.headline{grid-template-columns:1fr;row-gap:14px;padding:22px}
  .sigma-game-card.headline h3,.sigma-game-card.headline p,.sigma-game-card.headline .sigma-game-card-top,.sigma-game-card.headline .sigma-game-card-badges,.sigma-game-card.headline .sigma-game-mode-row,.sigma-game-card.headline .sigma-game-skills,.sigma-game-card.headline .sigma-game-card-footer,.sigma-game-card.headline .sigma-game-launch,.sigma-game-card.headline .sigma-game-spotlight{grid-column:1/2;grid-row:auto}
}
@media(max-width:600px){
  .crossgrid-reward-head{flex-direction:column}.crossgrid-reward-head small{text-align:left;max-width:none}
  .crossgrid-reward-stats{grid-template-columns:1fr}
  .sigma-game-spotlight div{padding:12px}
}


/* =============================================================
   V52.28 — Desktop-fit creative CrossGrid polish
   Solves laptop fit, reduces boxiness, and adds more premium imagination.
   ============================================================= */
.crossgrid-shell{max-width:1320px;padding:14px 16px 120px}
.crossgrid-hero{margin-bottom:12px;padding:18px 22px;align-items:center}
.crossgrid-hero h2{margin-bottom:4px}
.crossgrid-layout{grid-template-columns:minmax(0,1.58fr) minmax(250px,.54fr);gap:14px}
.crossgrid-game-panel{position:relative;overflow:hidden;padding:16px 16px 14px;background:radial-gradient(620px 220px at 50% 0%,rgba(39,207,255,.08),transparent 60%),linear-gradient(180deg,#081521,#0f2231 58%,#13293b)}
.crossgrid-game-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 26%),repeating-linear-gradient(90deg,rgba(255,255,255,.015) 0 1px,transparent 1px 44px)}
.crossgrid-side-panel{padding:15px 15px 16px;max-height:calc(100vh - 118px);overflow:auto;background:linear-gradient(180deg,#0d1c29,#122536 56%,#172d40)}
.crossgrid-toolbar{margin-bottom:12px}
.crossgrid-difficulty{padding:4px;border-radius:14px}
.crossgrid-difficulty button{padding:8px 11px;font-size:.66rem}
.crossgrid-live-stats span{padding:6px 8px;min-width:69px}
.crossgrid-board-wrap{position:relative;overflow:hidden;padding:12px 14px 11px;border-radius:26px;border-color:#345469;background:radial-gradient(500px 200px at 50% 0%,rgba(27,197,244,.18),transparent 68%),radial-gradient(300px 140px at 100% 0%,rgba(255,191,69,.12),transparent 70%),linear-gradient(180deg,#0a1824,#102231 56%,#0d1e2d)}
.crossgrid-board-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 18% 24%,rgba(88,220,255,.18) 0 2px,transparent 3px),radial-gradient(circle at 50% 16%,rgba(88,220,255,.14) 0 2px,transparent 3px),radial-gradient(circle at 81% 29%,rgba(255,203,92,.16) 0 2px,transparent 3px),linear-gradient(180deg,rgba(255,255,255,.04),transparent 30%)}
.crossgrid-board-wrap:after{content:"";position:absolute;inset:12px;border-radius:20px;pointer-events:none;border:1px solid rgba(115,212,242,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.crossgrid-board-head{display:flex;justify-content:space-between;gap:12px;align-items:center;max-width:760px;margin:0 auto 12px;padding:8px 12px;border:1px solid rgba(115,212,242,.12);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))}
.crossgrid-board-title{color:#effaff;font-size:.76rem;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.crossgrid-board-sub{color:#98b3c3;font-size:.64rem;font-weight:700}
.crossgrid-board{position:relative;max-width:720px;grid-template-columns:minmax(54px,1fr) 28px minmax(54px,1fr) 28px minmax(54px,1fr) 24px minmax(56px,.84fr);grid-template-rows:repeat(7,minmax(30px,auto));gap:6px}
.crossgrid-number-cell,.crossgrid-bank-tile,.crossgrid-target{position:relative;overflow:hidden}
.crossgrid-number-cell{min-height:56px;border-radius:18px;clip-path:polygon(12px 0,calc(100% - 12px) 0,100% 12px,100% calc(100% - 12px),calc(100% - 12px) 100%,12px 100%,0 calc(100% - 12px),0 12px)}
.crossgrid-number-cell:before,.crossgrid-bank-tile:before,.crossgrid-target:before{content:"";position:absolute;left:10px;right:10px;top:0;height:1px;background:rgba(255,255,255,.22)}
.crossgrid-number-cell:after{content:"";position:absolute;right:10px;top:10px;width:8px;height:8px;border-radius:50%;background:rgba(115,218,245,.18);box-shadow:0 0 10px rgba(115,218,245,.18)}
.crossgrid-number-cell.filled:after{background:rgba(5,39,57,.45);box-shadow:none}
.crossgrid-operator,.crossgrid-equals{width:28px;height:28px;margin:auto;border-radius:50%;border:1px solid rgba(127,216,244,.18);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03));box-shadow:0 6px 14px rgba(5,22,33,.10)}
.crossgrid-equals{border-color:rgba(255,214,128,.24);background:linear-gradient(180deg,rgba(255,214,128,.14),rgba(255,255,255,.03))}
.crossgrid-target{min-height:36px;padding:7px 5px;border-radius:999px;background:linear-gradient(180deg,#112736,#163146)}
.crossgrid-status{margin-top:10px;font-size:.72rem}
.crossgrid-bank-card{margin-top:11px;padding:12px 13px;border-radius:20px}
.crossgrid-bank{grid-template-columns:repeat(9,minmax(0,1fr));gap:6px}
.crossgrid-bank-tile{min-height:39px;border-radius:14px;clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px)}
.crossgrid-bank-tile.used{transform:scale(.97)}
.crossgrid-actions{grid-template-columns:1.3fr .85fr .85fr;gap:7px;margin-top:10px}
.crossgrid-actions .btn{min-height:42px;font-size:.82rem}
.crossgrid-side-panel h3{position:relative;padding-bottom:9px;margin-bottom:7px}.crossgrid-side-panel h3:after{content:"";position:absolute;left:0;bottom:0;width:84px;height:2px;border-radius:999px;background:linear-gradient(90deg,#26c5ef,#ffc556)}
.crossgrid-side-panel>p{font-size:.72rem;margin-bottom:12px}
.crossgrid-how{gap:7px}.crossgrid-how div{padding:9px 10px;border-radius:16px;background:linear-gradient(180deg,#122736,#162a3b);box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.crossgrid-how span{border-radius:12px}
.crossgrid-side-stats div,.crossgrid-reward-card{border-radius:18px}
.crossgrid-reward-card{margin-top:10px;padding:12px}
.crossgrid-reward-stats{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (min-width:821px) and (max-height:940px){
  .crossgrid-shell{padding-top:10px;padding-bottom:106px}
  .crossgrid-hero{padding:14px 18px;margin-bottom:10px}
  .crossgrid-hero p{line-height:1.45}
  .crossgrid-hero-facts{margin-top:10px;gap:7px}
  .crossgrid-hero-facts span{padding:6px 9px;font-size:.6rem}
  .crossgrid-layout{gap:12px}
  .crossgrid-game-panel{padding:14px 14px 12px}
  .crossgrid-side-panel{padding:13px;max-height:calc(100vh - 104px)}
  .crossgrid-toolbar{margin-bottom:10px}
  .crossgrid-board-wrap{padding:10px 12px 9px}
  .crossgrid-board-head{margin-bottom:9px;padding:7px 11px}
  .crossgrid-board{gap:5px;grid-template-columns:minmax(50px,1fr) 24px minmax(50px,1fr) 24px minmax(50px,1fr) 21px minmax(52px,.82fr);grid-template-rows:repeat(7,minmax(26px,auto))}
  .crossgrid-number-cell{min-height:50px;font-size:1.15rem}
  .crossgrid-operator,.crossgrid-equals{width:24px;height:24px;font-size:.92rem}
  .crossgrid-target{min-height:32px;font-size:.78rem;padding:5px 4px}
  .crossgrid-bank-card{margin-top:9px;padding:10px 11px}
  .crossgrid-bank-head{margin-bottom:8px}
  .crossgrid-bank-tile{min-height:34px;font-size:.8rem}
  .crossgrid-actions .btn{min-height:38px;font-size:.76rem}
  .crossgrid-status{margin-top:8px;font-size:.68rem;min-height:18px}
  .crossgrid-side-panel>p{font-size:.68rem;margin-bottom:10px}
  .crossgrid-how div{padding:8px}
  .crossgrid-side-stats{margin-top:10px}
  .crossgrid-reward-card{margin-top:8px;padding:10px}
  .crossgrid-reward-head{margin-bottom:8px}
}

@media (min-width:821px) and (max-width:1180px){
  .crossgrid-layout{grid-template-columns:minmax(0,1fr) 280px}
}

@media(max-width:820px){
  .crossgrid-shell{max-width:1120px;padding:12px 10px 98px}
  .crossgrid-game-panel{padding:12px}
  .crossgrid-side-panel{max-height:none;overflow:visible}
  .crossgrid-board-head{padding:7px 10px;flex-direction:column;align-items:flex-start}
}

@media(max-width:600px){
  .crossgrid-number-cell{clip-path:none;border-radius:13px}
  .crossgrid-bank-tile{clip-path:none;border-radius:11px}
  .crossgrid-operator,.crossgrid-equals{width:20px;height:20px}
  .crossgrid-board-title{font-size:.68rem}.crossgrid-board-sub{font-size:.58rem}
  .crossgrid-reward-stats{grid-template-columns:1fr}
}


/* =============================================================
   V52.29 — CrossGrid flagship atmosphere + solve effects + mastery
   ============================================================= */
.crossgrid-board-wrap{isolation:isolate}
.crossgrid-ambient-orbits,.crossgrid-solve-burst-layer{position:absolute;inset:0;pointer-events:none}
.crossgrid-ambient-orbits span{position:absolute;border-radius:999px;border:1px solid rgba(109,220,248,.10);box-shadow:0 0 0 1px rgba(255,255,255,.02) inset;animation:crossgridOrbitFloat 18s linear infinite}
.crossgrid-ambient-orbits span:nth-child(1){width:180px;height:180px;left:-40px;top:40px;animation-duration:20s}
.crossgrid-ambient-orbits span:nth-child(2){width:130px;height:130px;right:24px;top:26px;border-color:rgba(255,198,77,.14);animation-duration:14s;animation-direction:reverse}
.crossgrid-ambient-orbits span:nth-child(3){width:240px;height:240px;right:-80px;bottom:32px;animation-duration:26s}
.crossgrid-ambient-orbits span:nth-child(4){width:110px;height:110px;left:50%;bottom:10px;transform:translateX(-50%);border-color:rgba(255,198,77,.12);animation-duration:16s}
.crossgrid-board-head,.crossgrid-board,.crossgrid-status,.crossgrid-bank-card,.crossgrid-result{position:relative;z-index:1}
.crossgrid-solve-burst-layer.active{animation:crossgridSolveFlash .8s ease}
.crossgrid-burst-particle{position:absolute;left:50%;top:58%;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,#fff 0%,#79e7ff 45%,#25c5ef 70%,transparent 72%);opacity:0;transform:translate(-50%,-50%);animation:crossgridBurstParticle var(--dur,.75s) ease-out forwards;animation-delay:var(--delay,0s);box-shadow:0 0 18px rgba(86,227,255,.28)}
.crossgrid-burst-particle:nth-child(odd){background:radial-gradient(circle,#fff5d7 0%,#ffd76a 45%,#ffb740 72%,transparent 74%);box-shadow:0 0 18px rgba(255,200,83,.24)}
.crossgrid-solve-toast{position:absolute;left:50%;top:22%;transform:translateX(-50%);padding:10px 14px;border-radius:999px;border:1px solid rgba(126,229,255,.22);background:linear-gradient(180deg,rgba(9,34,50,.86),rgba(14,47,66,.92));color:#effcff;font-size:.76rem;font-weight:950;letter-spacing:.11em;text-transform:uppercase;box-shadow:0 14px 30px rgba(8,34,50,.22);animation:crossgridToastRise .95s ease forwards}
.crossgrid-mastery-card{margin-top:10px;padding:14px;border:1px solid #38586d;border-radius:22px;background:radial-gradient(260px 120px at 100% 0%,rgba(255,200,89,.12),transparent 68%),radial-gradient(220px 90px at 0% 0%,rgba(44,202,245,.10),transparent 70%),linear-gradient(180deg,#112434,#182d41 58%,#1b3449);box-shadow:0 16px 30px rgba(8,34,50,.16)}
.crossgrid-mastery-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}.crossgrid-mastery-top small{display:block;color:#95b1bf;font-size:.54rem;font-weight:900;letter-spacing:.12em}.crossgrid-mastery-top strong{display:block;margin-top:4px;color:#f5fcff;font-size:1.06rem;line-height:1.2}.crossgrid-mastery-top b{padding:8px 11px;border-radius:999px;border:1px solid rgba(128,220,247,.18);background:rgba(255,255,255,.05);color:#dff8ff;font-size:.72rem}
.crossgrid-mastery-bar{height:12px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;box-shadow:inset 0 1px 1px rgba(0,0,0,.24)}.crossgrid-mastery-bar span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#2ad1f4,#76e8ff 52%,#ffd25f);box-shadow:0 0 20px rgba(67,222,255,.18);transition:width .35s ease}
.crossgrid-mastery-copy{margin-top:9px;color:#abc0cb;font-size:.67rem;line-height:1.45}
.crossgrid-mastery-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px}.crossgrid-mastery-stats div{padding:10px;border:1px solid rgba(137,216,241,.10);border-radius:15px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.03))}.crossgrid-mastery-stats small{display:block;color:#8eaab8;font-size:.5rem;font-weight:900;letter-spacing:.1em}.crossgrid-mastery-stats strong{display:block;margin-top:4px;color:#f3fbff;font-size:.9rem}
.crossgrid-result{overflow:hidden}
.crossgrid-result:before{content:"";position:absolute;inset:-30% auto auto -20%;width:160px;height:160px;border-radius:50%;background:radial-gradient(circle,rgba(118,231,255,.22),transparent 66%);pointer-events:none;animation:crossgridResultGlow 4.2s ease-in-out infinite}

@keyframes crossgridOrbitFloat{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-6px) rotate(180deg)}100%{transform:translateY(0) rotate(360deg)}}
@keyframes crossgridSolveFlash{0%{box-shadow:inset 0 0 0 0 rgba(84,229,255,0)}30%{box-shadow:inset 0 0 0 2px rgba(84,229,255,.14)}100%{box-shadow:inset 0 0 0 0 rgba(84,229,255,0)}}
@keyframes crossgridBurstParticle{0%{opacity:0;transform:translate(-50%,-50%) scale(.35)}12%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + (var(--x) * 160px)),calc(-50% + (var(--y) * 160px))) scale(1.12)}}
@keyframes crossgridToastRise{0%{opacity:0;transform:translate(-50%,8px) scale(.92)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-34px) scale(1)}}
@keyframes crossgridResultGlow{0%,100%{transform:translateX(0)}50%{transform:translateX(40px)}}

@media (prefers-reduced-motion: reduce){
  .crossgrid-ambient-orbits span,.crossgrid-solve-burst-layer.active,.crossgrid-burst-particle,.crossgrid-solve-toast,.crossgrid-result:before{animation:none!important}
}

@media(max-width:600px){
  .crossgrid-mastery-top{flex-direction:column}
  .crossgrid-mastery-stats{grid-template-columns:1fr}
}


/* V52.24.5 — merged Storm recovery/exit/audio preservation */
body.sigma-storm-live #timesGameView.storm-running{height:var(--storm-viewport-height,100dvh)!important;width:var(--storm-viewport-width,100vw)!important}
body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls{position:relative!important;display:grid!important;grid-template-columns:auto auto auto auto!important;gap:6px!important;align-items:center!important}
.times-games-exit-btn{font-weight:950!important;letter-spacing:.05em!important}
.times-live-audio-btn[aria-expanded="true"]{border-color:rgba(87,225,255,.52)!important;box-shadow:0 0 0 1px rgba(83,225,255,.12),0 0 18px rgba(51,204,246,.12)!important}
.times-live-audio-dock{position:absolute;right:0;top:calc(100% + 7px);z-index:50;width:min(330px,calc(100vw - 20px));padding:12px;border:1px solid rgba(100,213,246,.25);border-radius:16px;background:linear-gradient(155deg,rgba(5,18,30,.98),rgba(11,39,58,.98));box-shadow:0 18px 46px rgba(0,0,0,.34);display:grid;gap:9px}
.times-live-audio-dock.hidden{display:none!important}
.times-live-audio-dock label{display:grid;grid-template-columns:62px minmax(100px,1fr) 38px;gap:8px;align-items:center;color:#dff8ff;font-size:.68rem;font-weight:900}
.times-live-audio-dock input[type="range"]{width:100%;accent-color:#4be7ff}.times-live-audio-dock strong{font-size:.65rem;text-align:right;color:#fff2ba}.times-live-audio-dock small{color:#8caec0;font-size:.57rem;line-height:1.35}
@media(max-width:620px){body.sigma-storm-live #timesGameView.storm-running .times-mobile-live-controls{grid-template-columns:repeat(4,minmax(0,1fr))!important}.times-mobile-live-controls button{font-size:.62rem!important;padding-inline:6px!important}.times-live-audio-dock{right:0}}


/* ============================================================
   V52.24.6 • Sigma World desktop screen fit
   - complete 4:3 world stays above fixed navigation on laptops
   - compact premium world header + weekly event
   - Times Tables now lives in Study Hub, not Modules / Sigma World
   Desktop only: tablet and phone layouts are unchanged.
   ============================================================ */
@media(min-width:1101px){
  /* Times Tables has its own Study Hub centre. Keep the Modules canvas visually pure. */
  body:has(#courseView.active) #timesReferenceShell{display:none!important}

  /* Reclaim vertical space before the map without making the page feel cramped. */
  body:has(#courseView.active) main{
    padding-top:8px;
    padding-bottom:94px;
  }
  #courseView.active .sigma-world-screen{padding:0}
  #courseView.active .sigma-world-title-row{
    align-items:center;
    gap:14px;
    margin:0 0 8px;
    padding:10px 13px;
    border-radius:18px;
  }
  #courseView.active .sigma-world-title-row>div:first-child{display:grid;align-content:center;min-width:0}
  #courseView.active .sigma-world-title-row .eyebrow{margin:0 0 2px;font-size:.56rem;letter-spacing:.13em}
  #courseView.active .sigma-world-title-row h2{margin:0 0 1px;font-size:clamp(1.7rem,2.8vw,2.18rem);line-height:1.02}
  #courseView.active .sigma-world-title-row>div:first-child>.muted{font-size:.68rem;line-height:1.28}
  #courseView.active .sigma-world-title-actions{gap:7px;align-items:stretch}

  #courseView.active .sigma-world-audio{
    width:176px;
    padding:6px 8px;
    gap:2px;
    border-radius:14px;
  }
  #courseView.active .sigma-world-music-btn{min-height:30px;padding:4px 8px;border-radius:10px}
  #courseView.active .sigma-world-music-btn span{font-size:.86rem}
  #courseView.active .sigma-world-music-btn strong{font-size:.66rem}
  #courseView.active .sigma-world-volume label{font-size:.49rem}
  #courseView.active .sigma-world-volume label span{max-width:118px}
  #courseView.active .sigma-world-volume input{height:14px;margin:0}

  #courseView.active .sigma-world-overall{
    width:174px;
    padding:7px 9px;
    gap:1px 8px;
    border-radius:14px;
  }
  #courseView.active .sigma-world-overall>span{font-size:.51rem;letter-spacing:.10em}
  #courseView.active .sigma-world-overall>strong{font-size:1.23rem}
  #courseView.active .sigma-world-overall>small{font-size:.61rem}
  #courseView.active .sigma-world-overall-bar{height:5px;margin-top:4px}

  #courseView.active .sigma-world-event-banner{
    grid-template-columns:36px minmax(0,1fr) minmax(135px,175px) auto;
    gap:9px;
    min-height:48px;
    margin:0 0 8px;
    padding:6px 10px;
    border-radius:15px;
  }
  #courseView.active .sigma-world-event-icon{width:34px;height:34px;border-radius:11px;font-size:1rem}
  #courseView.active .sigma-world-event-copy span{font-size:.44rem}
  #courseView.active .sigma-world-event-copy h3{margin:1px 0;font-size:.78rem;line-height:1.05}
  #courseView.active .sigma-world-event-copy p{font-size:.55rem;line-height:1.2}
  #courseView.active .sigma-world-event-progress strong{margin-bottom:3px;font-size:.57rem}
  #courseView.active .sigma-world-event-banner>.btn{min-height:34px;padding:6px 10px;border-radius:11px;font-size:.61rem}

  /* Height-first sizing is the key fix: width follows the 4:3 artwork. */
  #courseView.active .sigma-world-map-shell{
    width:min(100%,940px,calc((100dvh - 340px) * 1.333333));
    height:auto!important;
    max-height:calc(100dvh - 340px);
    min-height:0!important;
    aspect-ratio:4/3!important;
    margin:0 auto!important;
    border-radius:24px;
    background-size:100% 100%;
    background-position:center;
    background-repeat:no-repeat;
  }

  /* The explanatory footnote is useful on touch layouts, but wastes the
     final desktop row and forces a needless scroll on shorter laptops. */
  #courseView.active .sigma-world-footnote{display:none}
}

/* Shorter laptop displays get a still-clean, legible control deck. */
@media(min-width:1101px) and (max-height:760px){
  #courseView.active .sigma-world-title-row{padding:8px 11px;margin-bottom:6px}
  #courseView.active .sigma-world-title-row>div:first-child>.muted{display:none}
  #courseView.active .sigma-world-audio{width:160px;padding:5px 7px}
  #courseView.active .sigma-world-volume label span{display:none}
  #courseView.active .sigma-world-overall{width:158px;padding:6px 8px}
  #courseView.active .sigma-world-event-banner{margin-bottom:6px;padding:5px 9px;min-height:44px}
  #courseView.active .sigma-world-event-copy p{display:none}
  #courseView.active .sigma-world-map-shell{
    width:min(100%,900px,calc((100dvh - 306px) * 1.333333));
    max-height:calc(100dvh - 306px);
  }
  #courseView.active .sigma-world-zone{width:132px;height:100px}
  #courseView.active .sigma-zone-callout{width:118px;padding:6px 7px 5px;border-radius:12px}
  #courseView.active .sigma-zone-callout .sigma-zone-copy small{font-size:.39rem}
  #courseView.active .sigma-zone-callout .sigma-zone-copy strong{font-size:.66rem}
  #courseView.active .sigma-zone-callout-foot{margin-top:4px;padding-top:4px}
  #courseView.active .sigma-zone-callout-foot em{font-size:.45rem}
  #courseView.active .sigma-zone-callout-foot b{font-size:.54rem}
  #courseView.active .sigma-zone-aura{width:86px;height:52px}
  #courseView.active .sigma-zone-pin{width:24px;height:30px}
  #courseView.active .sigma-zone-pin>span{font-size:.61rem}
  #courseView.active .sigma-zone-event-badge{top:-11px;padding:3px 5px;font-size:.38rem}
}

@media(min-width:1101px) and (max-height:660px){
  body:has(#courseView.active) .topbar{min-height:72px;padding-top:9px;padding-bottom:9px}
  body:has(#courseView.active) main{padding-top:5px}
  #courseView.active .sigma-world-title-row{padding:6px 10px}
  #courseView.active .sigma-world-title-row .eyebrow{display:none}
  #courseView.active .sigma-world-title-row h2{font-size:1.55rem}
  #courseView.active .sigma-world-audio{width:148px}
  #courseView.active .sigma-world-overall{width:146px}
  #courseView.active .sigma-world-event-banner{min-height:40px;padding:4px 8px}
  #courseView.active .sigma-world-event-icon{width:30px;height:30px}
  #courseView.active .sigma-world-map-shell{
    width:min(100%,860px,calc((100dvh - 265px) * 1.333333));
    max-height:calc(100dvh - 265px);
  }
}


/* ============================================================
   V52.24.7 • CLEAN LOW-BLUE GAMES HUB
   - removes fixed bottom navigation from Games Hub + CrossGrid
   - Storm and CrossGrid sit side-by-side with concise copy
   - graphite / warm-neutral palette replaces blue-heavy surfaces
   - CrossGrid uses restrained gold + neutral contrast; cyan is feedback only
   ============================================================ */
body.sigma-games-focus .bottom-nav{display:none!important}
body.sigma-games-focus main{padding-bottom:24px!important}

/* Games hub: quiet premium canvas, no dashboard-like stat blocks. */
#gamesHubView.active{background:linear-gradient(180deg,#f3f1ec 0%,#f8f7f4 55%,#efede8 100%)}
#gamesHubView.active .games-hub-shell{max-width:1220px;min-height:calc(100dvh - 94px);padding:clamp(24px,4vh,46px) 24px 30px}
#gamesHubView.active .games-hub-shell:before{height:260px;background:radial-gradient(520px 230px at 18% 0%,rgba(197,151,61,.10),transparent 70%),radial-gradient(420px 200px at 92% 8%,rgba(35,38,42,.06),transparent 72%)}
.games-hub-simple-head{position:relative;z-index:1;max-width:680px;margin:0 0 22px;padding:0 2px}
.games-hub-simple-head .eyebrow{margin:0 0 7px;color:#8b6a2c;font-size:.66rem;font-weight:950;letter-spacing:.18em}
.games-hub-simple-head h2{margin:0;color:#17191c;font-size:clamp(2rem,3.7vw,3.2rem);line-height:1;letter-spacing:-.055em}
.games-hub-simple-head>p:last-child{margin:10px 0 0;color:#676a6e;font-size:1rem;line-height:1.45}

#gamesHubView .sigma-games-grid-clean{position:relative;z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#gamesHubView .games-choice-card{min-height:390px;padding:0 24px 24px;border-radius:28px;border:1px solid #d6d1c7;background:#15171a;color:#f6f4ef;box-shadow:0 22px 54px rgba(30,27,22,.13);display:grid;grid-template-rows:170px 1fr auto;overflow:hidden}
#gamesHubView .games-choice-card:hover{transform:translateY(-3px);border-color:#bdb5a5;box-shadow:0 28px 64px rgba(30,27,22,.17)}
#gamesHubView .games-choice-card:before,#gamesHubView .games-choice-card:after{display:none}
#gamesHubView .games-choice-card.crossgrid{background:#f7f4ee;color:#17191c;border-color:#cec7ba}
.games-choice-art{position:relative;margin:0 -24px 20px;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}
.storm-art{background:radial-gradient(circle at 72% 48%,rgba(255,219,137,.34),transparent 18%),radial-gradient(circle at 72% 48%,rgba(198,136,39,.20),transparent 38%),linear-gradient(135deg,#191a1d 0%,#27231e 56%,#15171a 100%)}
.storm-art:before{content:"";position:absolute;right:12%;top:12%;width:104px;height:136px;background:linear-gradient(160deg,transparent 0 35%,#f4c55f 36% 45%,transparent 46% 55%,#e8a82f 56% 65%,transparent 66%);filter:drop-shadow(0 0 18px rgba(232,168,47,.34));transform:skewX(-8deg)}
.crossgrid-art{background:linear-gradient(145deg,#e9e5dc,#f8f6f1)}
.crossgrid-art:before{content:"";position:absolute;right:7%;top:-22%;width:260px;height:240px;opacity:.75;background:linear-gradient(90deg,transparent 31%,rgba(36,38,40,.12) 32% 33%,transparent 34% 65%,rgba(36,38,40,.12) 66% 67%,transparent 68%),linear-gradient(0deg,transparent 31%,rgba(36,38,40,.12) 32% 33%,transparent 34% 65%,rgba(36,38,40,.12) 66% 67%,transparent 68%);transform:rotate(10deg)}
.crossgrid-art:after{content:"";position:absolute;right:17%;top:33%;width:62px;height:62px;border-radius:14px;background:linear-gradient(145deg,#d4a84f,#f0d58e);box-shadow:0 14px 30px rgba(121,89,30,.19)}
.games-choice-symbol{position:absolute;left:28px;bottom:24px;z-index:2;width:70px;height:70px;display:grid;place-items:center;border-radius:22px;border:1px solid rgba(255,255,255,.16);background:rgba(15,16,18,.72);color:#f2ca70;font-size:2rem;font-weight:950;box-shadow:0 14px 28px rgba(0,0,0,.18)}
.crossgrid-art .games-choice-symbol{border-color:#cfc8bb;background:#fbfaf7;color:#242629;box-shadow:0 12px 25px rgba(50,45,36,.10)}
.games-choice-copy{display:flex;flex-direction:column;align-items:flex-start}
#gamesHubView .games-choice-card .sigma-game-tag{margin:0 0 11px;padding:6px 9px;border-radius:999px;border:1px solid rgba(235,201,121,.24);background:rgba(235,201,121,.08);color:#e8c878;font-size:.57rem;letter-spacing:.12em}
#gamesHubView .games-choice-card.crossgrid .sigma-game-tag{border-color:#d8c79f;background:#f0e7d4;color:#765a24}
#gamesHubView .games-choice-card h3{margin:0 0 7px;color:inherit;font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.04em;line-height:1.06}
#gamesHubView .games-choice-card p{margin:0;color:#b8b7b3;font-size:.94rem;line-height:1.4}
#gamesHubView .games-choice-card.crossgrid p{color:#696a68}
.games-choice-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:18px}
.games-choice-meta span{padding:6px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:#d0cfca;font-size:.61rem;font-weight:850;letter-spacing:.04em}
.crossgrid .games-choice-meta span{border-color:#d9d3c8;background:#eeeae2;color:#5d5e5b}
#gamesHubView .games-choice-card .sigma-game-launch{margin-top:20px;min-height:50px;border-radius:15px;border:1px solid #d8b766;background:linear-gradient(180deg,#f2d990,#ddb24f);color:#241e13;box-shadow:0 12px 24px rgba(108,78,24,.14);font-size:.76rem;font-weight:950;letter-spacing:.08em}
#gamesHubView .games-choice-card.crossgrid .sigma-game-launch{border-color:#292b2e;background:linear-gradient(180deg,#2b2d30,#1a1c1f);color:#f7f5f0;box-shadow:0 12px 24px rgba(26,28,31,.14)}
#gamesHubView .sigma-game-launch:after{display:none!important}

/* CrossGrid: graphite board + warm side panel. No blue wash. */
#crossGridView.active{background:linear-gradient(180deg,#efede8,#f6f4ef)}
#crossGridView .crossgrid-shell{max-width:1320px;padding:12px 16px 24px}
#crossGridView .crossgrid-shell:before{background:radial-gradient(420px 180px at 10% 0%,rgba(186,137,47,.08),transparent 72%),radial-gradient(380px 180px at 94% 0%,rgba(42,43,45,.06),transparent 72%)}
#crossGridView .crossgrid-hero{padding:13px 18px;margin-bottom:10px;border-color:#d2ccc1;border-radius:20px;background:#f7f4ee;box-shadow:0 10px 24px rgba(40,36,30,.07)}
#crossGridView .crossgrid-hero:after{display:none}
#crossGridView .crossgrid-hero .gold-eyebrow{color:#8a6728}
#crossGridView .crossgrid-hero h2{margin:2px 0 3px;color:#191b1e;font-size:clamp(1.45rem,2.4vw,2rem)}
#crossGridView .crossgrid-hero p{color:#6b6a66;font-size:.76rem;line-height:1.35}
#crossGridView .crossgrid-back{border-color:#cfc8bb;background:#fffdfa;color:#242629;box-shadow:none}
#crossGridView .crossgrid-layout{grid-template-columns:minmax(0,1.62fr) minmax(255px,.52fr);gap:12px}
#crossGridView .crossgrid-game-panel{border-color:#343537;background:linear-gradient(180deg,#141619,#1a1c1f 58%,#111315);box-shadow:0 18px 40px rgba(29,27,24,.14)}
#crossGridView .crossgrid-game-panel:before{background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 24%),repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,transparent 1px 48px)}
#crossGridView .crossgrid-side-panel{border-color:#d0c9bd;background:linear-gradient(180deg,#faf8f3,#f2eee6);box-shadow:0 14px 34px rgba(48,42,32,.10);color:#1e2022}
#crossGridView .crossgrid-side-panel h3{margin:0 0 5px;color:#1b1d20;font-size:1.22rem;letter-spacing:-.025em}
#crossGridView .crossgrid-side-panel>p,#crossGridView .crossgrid-side-lead{margin:0 0 12px;color:#6b6963;font-size:.76rem;line-height:1.4}
#crossGridView .crossgrid-toolbar{margin-bottom:9px}
#crossGridView .crossgrid-difficulty{border:1px solid #3b3c3f;background:#202226}
#crossGridView .crossgrid-difficulty button{color:#aaa9a5;background:transparent}
#crossGridView .crossgrid-difficulty button.active{background:linear-gradient(180deg,#eed58e,#d9ad48);color:#241d10;box-shadow:0 7px 16px rgba(117,84,27,.16)}
#crossGridView .crossgrid-live-stats{border-color:#3a3b3e;background:#202226}
#crossGridView .crossgrid-live-stats span{border-color:#35363a;background:#1d1f22}
#crossGridView .crossgrid-live-stats small{color:#8f8f8d}
#crossGridView .crossgrid-live-stats strong{color:#f3f1eb}
#crossGridView .crossgrid-board-wrap{border-color:#3b3c3f;background:radial-gradient(440px 180px at 50% 0%,rgba(221,178,82,.08),transparent 67%),linear-gradient(180deg,#101214,#17191c 58%,#121416)}
#crossGridView .crossgrid-board-wrap:before{background:radial-gradient(circle at 18% 24%,rgba(231,201,132,.18) 0 1px,transparent 2px),radial-gradient(circle at 50% 16%,rgba(230,226,216,.12) 0 1px,transparent 2px),radial-gradient(circle at 81% 29%,rgba(231,201,132,.14) 0 1px,transparent 2px),linear-gradient(180deg,rgba(255,255,255,.022),transparent 30%)}
#crossGridView .crossgrid-board-wrap:after{border-color:rgba(237,211,151,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.018)}
#crossGridView .crossgrid-board-head{border-color:#3c3d40;background:#1b1d20}
#crossGridView .crossgrid-board-title{color:#f0eee8}
#crossGridView .crossgrid-board-sub{color:#999894}
#crossGridView .crossgrid-number-cell{border-color:#505155;background:linear-gradient(180deg,#24262a,#1d1f22);color:#f3f1eb;box-shadow:0 7px 14px rgba(0,0,0,.13)}
#crossGridView .crossgrid-number-cell:before,#crossGridView .crossgrid-bank-tile:before,#crossGridView .crossgrid-target:before{background:rgba(238,218,170,.18)}
#crossGridView .crossgrid-number-cell:after{background:rgba(221,178,82,.20);box-shadow:0 0 8px rgba(221,178,82,.12)}
#crossGridView .crossgrid-number-cell.filled{border-color:#cfaa53;background:linear-gradient(180deg,#ecd488,#d9ad49);color:#241e12}
#crossGridView .crossgrid-operator,#crossGridView .crossgrid-equals{border-color:#494a4d;background:#212327;color:#e8e5dd;box-shadow:none}
#crossGridView .crossgrid-equals{border-color:#6a5b39;background:#2a271f;color:#efd991}
#crossGridView .crossgrid-target{border-color:#4a4b4e;background:#232529;color:#f1eee7}
#crossGridView .crossgrid-target.correct{border-color:#53906e;background:#1f4231;color:#d9f2e3}
#crossGridView .crossgrid-status{color:#b3b1ab}
#crossGridView .crossgrid-bank-card{border-color:#3a3b3e;background:#181a1d}
#crossGridView .crossgrid-bank-head strong{color:#eeeae2}
#crossGridView .crossgrid-bank-head small{color:#92918d}
#crossGridView .crossgrid-bank-tile{border-color:#4a4b4e;background:linear-gradient(180deg,#25272b,#1e2023);color:#f2efe9}
#crossGridView .crossgrid-bank-tile.selected{border-color:#c9a451;background:linear-gradient(180deg,#ecd489,#dbb04f);color:#211c12;box-shadow:0 0 0 2px rgba(222,179,82,.12)}
#crossGridView .crossgrid-actions .btn:first-child,#crossGridView #crossGridNewBtn{border-color:#c5a254;background:linear-gradient(180deg,#efd68e,#d9ad49);color:#231d11;box-shadow:none}
#crossGridView .crossgrid-actions .btn.secondary{border-color:#444549;background:#24262a;color:#ebe8e0}
#crossGridView .crossgrid-how{gap:0;border-top:1px solid #ddd7cc;border-bottom:1px solid #ddd7cc}
#crossGridView .crossgrid-how>div{padding:11px 0;border-color:#ded8cd}
#crossGridView .crossgrid-how>div>span{width:31px;height:31px;border:1px solid #b99449;background:#eee1bf;color:#5f461a;box-shadow:none}
#crossGridView .crossgrid-how strong{color:#242629}
#crossGridView .crossgrid-how small{color:#79766f}
#crossGridView .crossgrid-side-stats div,#crossGridView .crossgrid-reward-card,#crossGridView .crossgrid-mastery-card{border-color:#d7d0c4;background:#fffdfa;box-shadow:none}
#crossGridView .crossgrid-side-stats small,#crossGridView .crossgrid-reward-card small,#crossGridView .crossgrid-mastery-card small{color:#817a6d}
#crossGridView .crossgrid-side-stats strong,#crossGridView .crossgrid-reward-card strong,#crossGridView .crossgrid-mastery-card strong,#crossGridView .crossgrid-mastery-top b{color:#242629}
#crossGridView .crossgrid-reward-bar,#crossGridView .crossgrid-mastery-bar{background:#e5dfd4}
#crossGridView .crossgrid-reward-bar span,#crossGridView .crossgrid-mastery-bar span{background:linear-gradient(90deg,#b9903e,#e1c16f,#7e9a86);box-shadow:none}
#crossGridView .crossgrid-reward-stats div,#crossGridView .crossgrid-mastery-stats div{border-color:#e0d9ce;background:#f5f1e9}
#crossGridView .crossgrid-mastery-top b{border-color:#d8d0c2;background:#f1ece3}
#crossGridView .crossgrid-mastery-copy{color:#746f66}
#crossGridView .crossgrid-solve-toast{border-color:#b9aa89;background:#fffaf0;color:#3c3426;box-shadow:0 12px 28px rgba(51,45,35,.12)}

@media(min-width:1101px){
  #gamesHubView.active .games-hub-shell{display:flex;flex-direction:column;justify-content:center}
  #crossGridView.active .crossgrid-side-panel{top:82px;max-height:calc(100dvh - 112px)}
}
@media(max-width:820px){
  #gamesHubView .sigma-games-grid-clean{grid-template-columns:1fr}
  #gamesHubView .games-choice-card{min-height:330px;grid-template-rows:130px 1fr auto}
  #gamesHubView.active .games-hub-shell{padding:22px 14px 26px}
  #crossGridView .crossgrid-layout{grid-template-columns:1fr}
}

/* ============================================================
   V52.24.8 • PROFESSIONAL MAKEOVER
   Unified educational UI: graphite + deep teal + warm white.
   Storm and CrossGrid retain their dedicated game art direction.
   ============================================================ */
:root{
  --sigma-pro-ink:#17211f;
  --sigma-pro-soft:#66736f;
  --sigma-pro-teal:#0f766e;
  --sigma-pro-teal-dark:#0b514c;
  --sigma-pro-teal-deep:#0b302d;
  --sigma-pro-emerald:#15966f;
  --sigma-pro-amber:#c58a2b;
  --sigma-pro-paper:#f5f6f2;
  --sigma-pro-surface:#fffefa;
  --sigma-pro-surface-2:#f0f3ee;
  --sigma-pro-line:#dde3dc;
  --sigma-pro-shadow:0 12px 32px rgba(23,33,31,.065);
  --sigma-pro-shadow-strong:0 22px 54px rgba(18,33,30,.12);
}

/* Calm, product-grade application canvas. */
body{
  background:
    radial-gradient(circle at 14% 0%,rgba(15,118,110,.055),transparent 30rem),
    radial-gradient(circle at 90% 9%,rgba(197,138,43,.045),transparent 24rem),
    linear-gradient(180deg,#f2f5f1 0,#fafbf8 330px,#f4f5f1 100%);
}
main{width:min(1200px,calc(100% - 32px))}

/* App chrome: less corporate blue, more mature graphite/teal. */
.topbar{
  background:
    radial-gradient(circle at 80% -120%,rgba(74,177,162,.18),transparent 46%),
    linear-gradient(135deg,#0b2523 0%,#103431 55%,#153d39 100%);
  border-bottom:1px solid rgba(255,255,255,.09);
  box-shadow:0 12px 30px rgba(11,37,35,.18);
}
.compact-mark,.mini-mark{
  background:linear-gradient(145deg,#fffef9,#e6eee9)!important;
  color:#0b514c!important;
}
.sigma-version-badge{color:#a7e3d8!important}
.privacy-pill{color:#d2e6e1}
.app-back-btn,.icon-btn,.sigma-version-badge,.sigma-top-profile{border-color:rgba(255,255,255,.13)!important}

.bottom-nav{
  border:1px solid rgba(255,255,255,.085);
  background:linear-gradient(135deg,rgba(13,34,32,.98),rgba(17,52,48,.97));
  box-shadow:0 18px 44px rgba(11,31,29,.25),inset 0 1px 0 rgba(255,255,255,.05);
}
.nav-item{color:#b9d0ca}
.nav-item:hover{background:rgba(255,255,255,.065)}
.nav-item.active{
  color:#103f3a;
  background:linear-gradient(145deg,#fffefa,#edf3ef);
  box-shadow:0 8px 20px rgba(0,0,0,.14),inset 0 1px 0 #fff;
}
.nav-item.active:after{background:linear-gradient(90deg,#0f766e,#27a47e)}

/* Shared hierarchy, restricted to the learning/product surfaces. */
#dashboardView,#courseView,#reviewView,#toolsView,#worksheetsView,#testsView,#leaderboardView,#profileView,#teacherView,#parentView,#installView,#settingsView{
  color:var(--sigma-pro-ink);
}
#dashboardView .section-head h2,#courseView .section-head h2,#reviewView .section-head h2,#toolsView .section-head h2,#worksheetsView .section-head h2,#testsView .section-head h2,#leaderboardView .section-head h2,#profileView .section-head h2,#installView .section-head h2,#settingsView .section-head h2{
  color:#17211f;
}
#dashboardView .muted,#courseView .muted,#reviewView .muted,#toolsView .muted,#worksheetsView .muted,#testsView .muted,#leaderboardView .muted,#profileView .muted,#installView .muted,#settingsView .muted{color:var(--sigma-pro-soft)}
#dashboardView .gold-eyebrow,#courseView .gold-eyebrow,#reviewView .gold-eyebrow,#toolsView .gold-eyebrow,#worksheetsView .gold-eyebrow,#testsView .gold-eyebrow,#profileView .gold-eyebrow,#installView .gold-eyebrow,#settingsView .gold-eyebrow{color:#8c6420!important}

/* One restrained button language across non-game screens. */
#dashboardView .btn.primary,#dashboardView .btn.brand-primary,
#courseView .btn.primary,#courseView .btn.brand-primary,
#reviewView .btn.primary,#reviewView .btn.brand-primary,
#toolsView .btn.primary,#toolsView .btn.brand-primary,
#worksheetsView .btn.primary,#worksheetsView .btn.brand-primary,
#testsView .btn.primary,#testsView .btn.brand-primary,
#leaderboardView .btn.primary,#leaderboardView .btn.brand-primary,
#profileView .btn.primary,#profileView .btn.brand-primary,
#teacherView .btn.primary,#teacherView .btn.brand-primary,
#parentView .btn.primary,#parentView .btn.brand-primary,
#installView .btn.primary,#installView .btn.brand-primary,
#settingsView .btn.primary,#settingsView .btn.brand-primary{
  background:linear-gradient(145deg,#0d675f,#118077 72%,#15906f)!important;
  border:1px solid rgba(8,80,73,.20)!important;
  box-shadow:0 10px 22px rgba(15,118,110,.16),inset 0 1px 0 rgba(255,255,255,.14)!important;
}
#dashboardView .btn.secondary,#courseView .btn.secondary,#reviewView .btn.secondary,#toolsView .btn.secondary,#worksheetsView .btn.secondary,#testsView .btn.secondary,#leaderboardView .btn.secondary,#profileView .btn.secondary,#teacherView .btn.secondary,#parentView .btn.secondary,#installView .btn.secondary,#settingsView .btn.secondary{
  background:linear-gradient(145deg,#fffefa,#eef2ed)!important;
  color:#24423e!important;
  border-color:#d8e1db!important;
  box-shadow:0 5px 14px rgba(29,52,48,.045),inset 0 1px 0 #fff!important;
}
#dashboardView .btn.secondary:hover,#courseView .btn.secondary:hover,#reviewView .btn.secondary:hover,#toolsView .btn.secondary:hover,#worksheetsView .btn.secondary:hover,#testsView .btn.secondary:hover,#leaderboardView .btn.secondary:hover,#profileView .btn.secondary:hover,#installView .btn.secondary:hover,#settingsView .btn.secondary:hover{
  border-color:#afc8c0!important;background:#fffefa!important;
}
.btn:focus-visible,.nav-item:focus-visible,button:focus-visible{outline-color:rgba(15,118,110,.32)}

/* Professional form language. */
#courseView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#courseView select,#courseView textarea,
#reviewView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#reviewView select,#reviewView textarea,
#worksheetsView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#worksheetsView select,#worksheetsView textarea,
#testsView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#testsView select,#testsView textarea,
#profileView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#profileView select,#profileView textarea,
#settingsView input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),#settingsView select,#settingsView textarea{
  border-color:#d7dfd9!important;
  background:linear-gradient(180deg,#fffefa,#fafbf8)!important;
  color:#182522!important;
}
#courseView input:focus,#courseView select:focus,#courseView textarea:focus,#reviewView input:focus,#reviewView select:focus,#reviewView textarea:focus,#worksheetsView input:focus,#worksheetsView select:focus,#worksheetsView textarea:focus,#testsView input:focus,#testsView select:focus,#testsView textarea:focus,#profileView input:focus,#profileView select:focus,#profileView textarea:focus,#settingsView input:focus,#settingsView select:focus,#settingsView textarea:focus{
  border-color:#65a69d!important;box-shadow:0 0 0 4px rgba(15,118,110,.11)!important;
}

/* Home: premium, inviting, and deliberately calmer than the game world. */
#dashboardView .home-premium-hero{
  border-color:rgba(89,142,132,.25);
  background:
    radial-gradient(circle at 88% 4%,rgba(72,174,151,.18),transparent 31%),
    radial-gradient(circle at 3% 112%,rgba(207,156,58,.13),transparent 31%),
    linear-gradient(135deg,#0b2422 0%,#103732 58%,#174840 100%);
  box-shadow:0 24px 58px rgba(12,43,39,.20),0 3px 10px rgba(12,43,39,.075),inset 0 1px 0 rgba(255,255,255,.08);
}
#dashboardView .home-premium-hero:before{opacity:.24}
#dashboardView .home-premium-hero .gold-eyebrow{color:#e3c578!important}
#dashboardView .home-target-badge{border-color:rgba(227,197,120,.27);background:rgba(227,197,120,.075);color:#edd594}
#dashboardView .hero-next-label{background:rgba(91,205,178,.11);color:#a8eadb}
#dashboardView .hero-next-card{background:rgba(3,22,19,.22)}
#dashboardView .home-progress-card{background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.038))}
#dashboardView .home-progress-card .orb-progress{stroke:#68c7ad}
#dashboardView .home-audio-premium{background:rgba(3,22,19,.24)!important}
#dashboardView .home-pulse-dot{background:#77d4bd;box-shadow:0 0 0 4px rgba(119,212,189,.09),0 0 13px rgba(119,212,189,.28)}
#dashboardView .home-primary-actions #continueBtn{
  background:linear-gradient(145deg,#fffef9,#e8f4ef)!important;color:#0d514a!important;border-color:#c9ded7!important;
}
#dashboardView .home-primary-actions #heroTimesGameBtn{
  background:linear-gradient(145deg,#142a29,#254742)!important;border-color:rgba(153,200,188,.18)!important;
}
#dashboardView .sigma-daily-card{
  border-color:rgba(223,189,100,.23);
  background:radial-gradient(circle at 92% 0,rgba(45,147,121,.16),transparent 35%),linear-gradient(135deg,#121c1b 0%,#18302c 62%,#283627 100%);
  box-shadow:0 22px 50px rgba(18,33,30,.18),0 4px 10px rgba(20,36,33,.06),inset 0 1px 0 rgba(255,255,255,.055);
}
#dashboardView .sigma-daily-ready-badge{border-color:rgba(101,215,169,.23);background:rgba(62,187,139,.09);color:#9ce4c6}
#dashboardView .sigma-retention-hub{
  border-color:#dce4dc!important;
  background:linear-gradient(145deg,#fffefa,#f1f5f0 61%,#faf7ef)!important;
  box-shadow:var(--sigma-pro-shadow)!important;
}
#dashboardView .sigma-retention-hub .sigma-quest-card,#dashboardView .sigma-retention-hub .sigma-retention-mini{
  border-color:#e0e6df!important;background:#fffefa!important;box-shadow:0 7px 18px rgba(28,49,44,.035)!important;
}
#dashboardView .quick-card,#dashboardView .toolkit-card,#dashboardView .progress-panel,#dashboardView .v19-readiness-card,#dashboardView .v19-journey-card,#dashboardView .v19-mission-card,#dashboardView .streak-rewards-card,#dashboardView .account-trial-card,#dashboardView .sigma-coach-card{
  border-color:#dde4dd!important;background:linear-gradient(145deg,#fffefa,#f7f9f5)!important;box-shadow:var(--sigma-pro-shadow)!important;
}
#dashboardView .quick-card:hover,#dashboardView .toolkit-card:hover{border-color:#b9cec6!important;background:#fffefa!important}

/* Course/Sigma World: clean information surfaces, not another arcade screen. */
#courseView .sigma-world-title-row{
  border-color:#dce4dd;background:linear-gradient(145deg,#fffefa,#f1f5f0);box-shadow:var(--sigma-pro-shadow);
}
#courseView .sigma-world-title-row h2{color:#18312e}
#courseView .sigma-module-hero{border-color:#dde4dd!important;background:linear-gradient(145deg,#fffefa,#f3f6f1)!important;box-shadow:var(--sigma-pro-shadow)!important}
#courseView .sigma-module-filter-head{background:#f0f4ef!important;border-color:#dde5de!important}
#courseView .journey-topic{border-color:#e0e5df!important;background:#fffefa;box-shadow:0 5px 15px rgba(27,49,44,.025)}
#courseView .journey-topic.current-topic{background:linear-gradient(90deg,#e8f5f0,#fffefa)!important;border-color:#bcd8ce!important;box-shadow:0 8px 20px rgba(15,118,110,.065)}
#courseView .topic-open{color:#0f625b;border-color:#cadbd5;background:#fffefa}
#courseView .status-badge.learning{background:#e5f3ef;color:#0d675f}
#courseView .status-badge.complete{background:#e2f2e9;color:#146c4d}
#courseView .status-badge.practising{background:#fbf1d8;color:#8b6018}
#courseView .sticky-head{background:rgba(245,246,242,.94)}

/* Worksheets, tests, review and settings: precise, quiet and consistent. */
#worksheetsView .worksheet-builder-card,#worksheetsView .interactive-test-status,#worksheetsView .test-result-summary,
#testsView .test-builder-card,#testsView .recent-test-history,#testsView .test-workspace-toolbar,#testsView .interactive-test-status,#testsView .test-result-summary,
#reviewView .review-card,#toolsView .bt-tool-panel,#profileView .sigma-profile-hero,#leaderboardView .leaderboard-shell,#installView .install-hero-card,#settingsView .settings-card{
  border-color:#dde4dd!important;
  box-shadow:var(--sigma-pro-shadow)!important;
}
#worksheetsView .worksheet-builder-card,#testsView .test-builder-card,#testsView .recent-test-history,#testsView .test-workspace-toolbar,#reviewView .review-card,#settingsView .settings-card{
  background:linear-gradient(145deg,#fffefa,#f8f9f6)!important;
}
#reviewView .review-card{border-left-color:#c36f64!important}
#settingsView .settings-card h3{color:#1b322e}
#settingsView .settings-card>p{color:#687570}
#settingsView .settings-card-kicker{color:#8a6422}
#settingsView .featured-account-card,#settingsView .featured-adult-card,#settingsView .featured-reward-card{border-color:#d9e1d8!important}
#toolsView .bt-tool-tabs button.active{background:linear-gradient(145deg,#0d5c55,#128075)!important;box-shadow:0 12px 26px rgba(15,118,110,.17)!important}

/* Welcome/auth should look like the same product the learner enters. */
.welcome-screen{
  background:
    radial-gradient(circle at 14% 14%,rgba(90,190,164,.15),transparent 29%),
    radial-gradient(circle at 84% 79%,rgba(207,164,74,.13),transparent 30%),
    linear-gradient(145deg,#0b2422 0%,#143b36 48%,#edf1ec 100%);
}
.premium-welcome{background:rgba(255,254,250,.93);box-shadow:0 30px 82px rgba(13,42,38,.22)}
.welcome-copy h1,.welcome-copy h1 em,.brand-name{color:#133b36}
.module-preview-chip span{background:#e7f1ed;color:#0e675f}
.privacy-badge{color:#4f6762;background:rgba(15,118,110,.055);border-color:rgba(15,118,110,.10)}
.profile-entry-card{background:#f6f8f4;border-color:#dce4dd}
.premium-avatar,.profile-avatar{background:linear-gradient(145deg,#0d625b,#138477)}

/* Dark mode: preserve the new identity without sacrificing contrast. */
html[data-theme="dark"] body{background:linear-gradient(180deg,#0b1413,#0d1816)}
html[data-theme="dark"] .topbar{background:linear-gradient(135deg,#081c1a,#0d2a27);border-bottom-color:#1f3935}
html[data-theme="dark"] .bottom-nav{background:linear-gradient(135deg,rgba(8,27,25,.98),rgba(13,42,38,.98))}
html[data-theme="dark"] #dashboardView .sigma-retention-hub,
html[data-theme="dark"] #dashboardView .quick-card,
html[data-theme="dark"] #dashboardView .toolkit-card,
html[data-theme="dark"] #dashboardView .progress-panel,
html[data-theme="dark"] #courseView .sigma-world-title-row,
html[data-theme="dark"] #courseView .sigma-module-hero,
html[data-theme="dark"] #courseView .journey-topic,
html[data-theme="dark"] #worksheetsView .worksheet-builder-card,
html[data-theme="dark"] #testsView .test-builder-card,
html[data-theme="dark"] #reviewView .review-card,
html[data-theme="dark"] #settingsView .settings-card{
  background:#111d1b!important;border-color:#293b37!important;color:#edf4f1!important;
}
html[data-theme="dark"] #courseView .journey-topic.current-topic{background:linear-gradient(90deg,#15332d,#111d1b)!important;border-color:#315d53!important}
html[data-theme="dark"] #settingsView .settings-card h3,html[data-theme="dark"] #courseView .sigma-world-title-row h2{color:#edf4f1}
html[data-theme="dark"] #settingsView .settings-card>p{color:#9eb2ad}

@media(max-width:760px){
  main{width:min(100% - 18px,1200px)}
  .bottom-nav{border-radius:17px;padding:5px}
  #dashboardView .home-premium-hero{padding:19px!important}
  #dashboardView .sigma-retention-hub{padding:15px!important;border-radius:24px!important}
  #settingsView .settings-card,#worksheetsView .worksheet-builder-card,#testsView .test-builder-card{border-radius:20px!important}
}

@media(prefers-reduced-motion:reduce){
  .view.active,.btn,.nav-item,.quick-card,.toolkit-card{animation:none!important;transition:none!important}
}

/* ============================================================
   V52.24.15 • MOBILE STUDY HUB SCROLL + PREMIUM COMPACT HUB
   Mobile rule: the Hub owns the viewport and its content column
   scrolls independently. Never compress controls simply to fit.
   ============================================================ */

/* --- Global app chrome carried forward from V52.24.12/13 --- */
.sigma-v52-24-14 .top-actions #appVersionBadge,
.sigma-v52-24-14 .top-actions #trialPill,
.sigma-v52-24-14 .top-actions #installBtn{display:none!important}
.sigma-v52-24-14 .topbar{min-height:76px}
.sigma-v52-24-14 .topbar-brand{gap:9px}
.sigma-v52-24-14 .global-home-btn{
  appearance:none;border:1px solid rgba(157,205,193,.18);width:42px;height:42px;flex:0 0 42px;
  display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.045));
  color:#effaf7;font:900 1.26rem/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 7px 16px rgba(3,24,21,.12);
  transition:transform .18s ease,background .18s ease,border-color .18s ease
}
.sigma-v52-24-14 .global-home-btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.13);border-color:rgba(157,205,193,.30)}
.sigma-v52-24-14 .global-home-btn:focus-visible{outline:3px solid rgba(122,220,196,.30);outline-offset:2px}
.sigma-v52-24-14 #appBackBtn:disabled{display:none!important}

/* --- V52.24.10/13 Home: keep the learner's first screen deliberately sparse --- */
.sigma-v52-24-14 #dashboardView .sigma-retention-hub,
.sigma-v52-24-14 #dashboardView .home-game-launch,
.sigma-v52-24-14 #dashboardView .sigma-coach-card,
.sigma-v52-24-14 #dashboardView .v19-mission-zone,
.sigma-v52-24-14 #dashboardView .streak-rewards-card,
.sigma-v52-24-14 #dashboardView .account-trial-card,
.sigma-v52-24-14 #dashboardView .quick-grid{display:none!important}
.sigma-v52-24-14 #dashboardView .v19-readiness-card{display:none!important}
.sigma-v52-24-14.sigma-progress-focus #dashboardView .v19-readiness-card,
.sigma-progress-focus #dashboardView .v19-readiness-card{display:block!important;margin-top:14px}
.sigma-v52-24-14 #dashboardView .home-primary-actions>#continueBtn,
.sigma-v52-24-14 #dashboardView .home-primary-actions>#browseBtn,
.sigma-v52-24-14 #dashboardView .home-primary-actions>#heroTimesGameBtn,
.sigma-v52-24-14 #dashboardView .home-primary-actions>#homeLeaderboardBtn{display:none!important}
.sigma-v52-24-14 #dashboardView .home-primary-actions{display:flex!important;align-items:center;justify-content:flex-start;margin-top:16px}

/* Premium Study Hub launch button: one secondary destination, not four competing CTAs. */
.sigma-v52-24-14 .study-hub-launch{
  position:relative;isolation:isolate;min-width:255px;min-height:54px;padding:0 18px;border:1px solid rgba(91,241,212,.72);
  border-radius:999px;background:linear-gradient(135deg,#0f8f80 0%,#19b4a3 52%,#0a746c 100%);color:#fff;
  display:grid;grid-template-columns:34px 1fr 26px;align-items:center;gap:8px;font:inherit;cursor:pointer;
  box-shadow:0 12px 30px rgba(10,159,143,.30),0 0 0 3px rgba(69,239,210,.07),inset 0 1px 0 rgba(255,255,255,.26);
  overflow:hidden;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease
}
.sigma-v52-24-14 .study-hub-launch:before{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.24) 42%,transparent 64%);transform:translateX(-120%);transition:transform .55s ease;z-index:-1}
.sigma-v52-24-14 .study-hub-launch:hover{transform:translateY(-2px);filter:brightness(1.04);box-shadow:0 16px 36px rgba(10,159,143,.36),0 0 0 4px rgba(69,239,210,.08)}
.sigma-v52-24-14 .study-hub-launch:hover:before{transform:translateX(120%)}
.sigma-v52-24-14 .study-hub-launch-mark{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.35);background:rgba(3,65,58,.28);font-size:.9rem}
.sigma-v52-24-14 .study-hub-launch strong{text-align:left;font-size:1.02rem;font-weight:900;letter-spacing:-.015em}
.sigma-v52-24-14 .study-hub-launch-arrow{font-size:1.75rem;line-height:1;opacity:.92}

/* Daily Mission remains the second clear Home action; collapse support detail. */
.sigma-v52-24-14 #dashboardView .sigma-daily-card{margin-top:12px!important;padding:18px 20px!important}
.sigma-v52-24-14 #dashboardView .sigma-daily-calendar,
.sigma-v52-24-14 #dashboardView .sigma-daily-week-track,
.sigma-v52-24-14 #dashboardView .sigma-daily-rule,
.sigma-v52-24-14 #dashboardView .sigma-daily-focus{display:none!important}
.sigma-v52-24-14 #dashboardView .sigma-daily-main{align-items:center!important}
.sigma-v52-24-14 #dashboardView .sigma-daily-copy h3{margin:4px 0!important}
.sigma-v52-24-14 #dashboardView .sigma-daily-copy>p{margin:2px 0 0!important;max-width:760px}
.sigma-v52-24-14 #dashboardView .sigma-daily-scoreboard>div:not(:first-child){display:none!important}
.sigma-v52-24-14 #dashboardView .sigma-daily-scoreboard{min-width:86px!important}

/* Compact Home progress strip. Existing stats remain the source of truth. */
.sigma-v52-24-14 .home-progress-summary-head{
  margin-top:12px;padding:14px 18px 8px;border:1px solid #dce5df;border-bottom:0;border-radius:20px 20px 0 0;
  background:linear-gradient(145deg,#fffefa,#f4f8f5);display:flex;align-items:center;justify-content:space-between;gap:15px
}
.sigma-v52-24-14 .home-progress-summary-head div{display:grid;gap:2px}
.sigma-v52-24-14 .home-progress-summary-head span{font-size:.57rem;letter-spacing:.13em;font-weight:950;color:#70908a}
.sigma-v52-24-14 .home-progress-summary-head strong{font-size:.88rem;color:#27403b}
.sigma-v52-24-14 .home-progress-summary-head button{border:0;background:transparent;color:#355e58;font:850 .72rem/1.2 inherit;cursor:pointer;white-space:nowrap;padding:7px 3px}
.sigma-v52-24-14 #dashboardView #statsGrid{margin-top:0!important;border:1px solid #dce5df;border-top:0;border-radius:0 0 20px 20px;background:linear-gradient(145deg,#fffefa,#f4f8f5);padding:6px 10px 13px;gap:0!important;overflow:hidden}
.sigma-v52-24-14 #dashboardView #statsGrid .stat-card{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:9px 14px!important;min-height:54px}
.sigma-v52-24-14 #dashboardView #statsGrid .stat-card+.stat-card{border-left:1px solid #dde6e0!important}
.sigma-v52-24-14 #dashboardView #statsGrid .stat-value{font-size:1rem!important;color:#17332f}
.sigma-v52-24-14 #dashboardView #statsGrid .stat-label{font-size:.62rem!important;color:#778782}

/* --- Welcome: carry forward the approved essentials-only V52.24.11/13 treatment --- */
.sigma-v52-24-14 .premium-welcome{max-width:1440px}
.sigma-v52-24-14 #welcomeTrialBadge,
.sigma-v52-24-14 .welcome-pill-row,
.sigma-v52-24-14 .welcome-lower-grid,
.sigma-v52-24-14 .welcome-footer,
.sigma-v52-24-14 .sigma-welcome-caption{display:none!important}
.sigma-v52-24-14 .welcome-hero-grid{align-items:center!important;min-height:min(690px,calc(100dvh - 150px))}
.sigma-v52-24-14 .welcome-copy h1{font-size:clamp(3rem,5vw,5.7rem);line-height:.92;letter-spacing:-.065em}
.sigma-v52-24-14 .welcome-copy h1 em{font-style:normal}
.sigma-v52-24-14 .profile-entry-card{grid-template-columns:64px minmax(0,1fr)!important;gap:15px!important;padding:16px!important}
.sigma-v52-24-14 .profile-entry-card #enterAppBtn{grid-column:1/-1;width:100%;min-height:54px}

/* ============================================================
   Study Hub itself
   ============================================================ */
body.study-hub-open{overflow-y:auto!important}
.study-hub-sheet{
  position:fixed;inset:0;z-index:2147482000;
  width:100vw;height:100vh;height:100dvh;max-height:100dvh;
  display:flex;align-items:stretch;justify-content:center;
  background:rgba(7,28,25,.48);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;
  overflow:hidden;overscroll-behavior:none
}
.study-hub-sheet.open{opacity:1;visibility:visible;pointer-events:auto}
.study-hub-frame{
  position:relative;width:min(100%,820px);height:100%;height:100dvh;max-height:100dvh;min-height:0;
  display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,#f7faf7 0%,#f2f6f2 100%);
  color:#15342f;box-shadow:0 30px 90px rgba(5,26,22,.28)
}
.study-hub-header{
  position:relative;z-index:5;flex:0 0 auto;min-height:78px;padding:14px max(18px,env(safe-area-inset-right)) 12px max(18px,env(safe-area-inset-left));
  display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;
  border-bottom:1px solid #dce5df;background:rgba(249,251,248,.92);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.study-hub-heading{min-width:0;display:grid;gap:1px;text-align:center}
.study-hub-heading span{font-size:.53rem;font-weight:950;letter-spacing:.18em;color:#74918b}
.study-hub-heading h2{margin:0;font-size:1.32rem;letter-spacing:-.035em;color:#173a35}
.study-hub-header-home,.study-hub-close{
  appearance:none;border:1px solid #d4e1dc;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#fff,#eef4f0);color:#23463f;
  display:grid;place-items:center;font:900 1.16rem/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer;box-shadow:0 5px 13px rgba(19,49,42,.06)
}
.study-hub-close{font-size:1.6rem;font-weight:500}
.study-hub-header-home:hover,.study-hub-close:hover{background:#fff;border-color:#bcd0c8}

/* This is the mobile fix: the content rail owns scrolling, not the page behind it. */
.study-hub-scroll{
  position:relative;flex:1 1 auto;min-height:0;width:100%;
  overflow-y:auto!important;overflow-x:hidden;
  -webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;
  scrollbar-gutter:stable;
  padding:20px max(22px,env(safe-area-inset-right)) max(34px,calc(env(safe-area-inset-bottom) + 28px)) max(22px,env(safe-area-inset-left));
  scroll-padding-top:16px;scroll-padding-bottom:max(38px,calc(env(safe-area-inset-bottom) + 32px))
}
.study-hub-scroll::-webkit-scrollbar{width:7px}.study-hub-scroll::-webkit-scrollbar-track{background:transparent}.study-hub-scroll::-webkit-scrollbar-thumb{background:#c7d6d0;border-radius:99px}
.study-hub-intro{max-width:620px;margin:0 auto 14px;text-align:center}.study-hub-intro p{margin:0;color:#6c7d78;font-size:.82rem;line-height:1.45}

.study-hub-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.study-hub-card{
  appearance:none;width:100%;min-height:88px;border:1px solid #d9e3dd;border-radius:20px;padding:14px 15px;
  display:grid;grid-template-columns:42px minmax(0,1fr) 18px;align-items:center;gap:12px;text-align:left;
  background:linear-gradient(145deg,#fffefa,#f6f9f5);color:#15372f;box-shadow:0 8px 20px rgba(19,50,43,.045),inset 0 1px 0 rgba(255,255,255,.8);
  cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease
}
.study-hub-card:hover{transform:translateY(-2px);border-color:#b9cec6;background:#fff;box-shadow:0 13px 28px rgba(19,50,43,.08)}
.study-hub-card:active{transform:translateY(0)}
.study-hub-card-feature{border-color:#a9d8cc;background:linear-gradient(145deg,#effaf6,#fffefa)}
.study-hub-icon{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;border:1px solid #d4e2dd;background:#eef5f1;color:#166f64;font-size:1.05rem;font-weight:950}
.study-hub-card-feature .study-hub-icon{background:linear-gradient(145deg,#0f756b,#159589);color:#fff;border-color:#128276;box-shadow:0 7px 16px rgba(15,118,110,.17)}
.study-hub-card>span:nth-child(2){display:grid;gap:3px;min-width:0}
.study-hub-card strong{font-size:.98rem;letter-spacing:-.02em;color:#183c35}.study-hub-card small{font-size:.68rem;color:#74837f;white-space:normal;line-height:1.28}.study-hub-card em{font-style:normal;color:#7d938d;font-size:1.5rem;justify-self:end}

.study-hub-section{margin-top:16px;padding-top:16px;border-top:1px solid #dbe5df}
.study-hub-section-title{display:flex;align-items:center;gap:8px;margin:0 0 9px;padding:0 3px;text-transform:uppercase}
.study-hub-section-title>span{width:9px;height:9px;border-radius:50%;background:#63cbb8;box-shadow:0 0 0 5px rgba(99,203,184,.10)}
.study-hub-section-title strong{font-size:.58rem;letter-spacing:.14em;color:#6c8f88}
#studyHubAudioSlot .home-audio-controls{
  margin:0!important;width:100%!important;max-width:none!important;padding:14px 16px!important;border:1px solid #d7e3dd!important;border-radius:20px!important;
  background:linear-gradient(145deg,#f7fbf8,#eef4f0)!important;color:#1a4039!important;box-shadow:none!important
}
#studyHubAudioSlot .home-audio-identity small{color:#78958e!important}
#studyHubAudioSlot .home-audio-identity strong{color:#254940!important}
#studyHubAudioSlot .home-audio-btn{min-height:40px!important;border-radius:12px!important}
#studyHubAudioSlot input[type="range"]{accent-color:#0f756b}

.study-hub-account{margin-top:16px;padding:16px 0 0;border-top:1px solid #dbe5df;display:grid;gap:12px}
.study-hub-account-copy{display:grid;gap:5px}.study-hub-account-copy strong{font-size:1.08rem;color:#173b34}.study-hub-account-copy p{margin:0;color:#6b7d77;font-size:.77rem;line-height:1.4;overflow-wrap:anywhere}
.study-hub-email-btn{appearance:none;width:100%;min-height:50px;border:1px solid #c7d8e7;border-radius:15px;background:linear-gradient(145deg,#f8fbff,#edf4fb);color:#1a4568;font:900 .9rem/1 inherit;cursor:pointer;box-shadow:0 7px 17px rgba(27,69,103,.05)}
.study-hub-email-btn:hover{background:#fff;border-color:#aec8df}
.study-hub-bottom-space{height:4px}

/* Desktop: Hub is a centred premium panel. */
@media(min-width:821px){
  .study-hub-sheet{padding:24px}
  .study-hub-frame{height:min(860px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);border:1px solid rgba(216,230,223,.92);border-radius:30px}
  .study-hub-scroll{padding:22px 28px 32px}
}

/* Mobile: full device viewport, sticky header, natural finger scroll. */
@media(max-width:820px){
  .study-hub-sheet{align-items:stretch;background:#f3f7f3;backdrop-filter:none;-webkit-backdrop-filter:none}
  .study-hub-frame{width:100%;height:100vh;height:100dvh;max-height:100dvh;border-radius:0;box-shadow:none}
  .study-hub-header{min-height:68px;padding-top:max(10px,env(safe-area-inset-top));grid-template-columns:40px 1fr 40px}
  .study-hub-header-home,.study-hub-close{width:38px;height:38px;border-radius:12px}
  .study-hub-heading h2{font-size:1.18rem}
  .study-hub-scroll{padding-top:14px;padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right));padding-bottom:max(34px,calc(env(safe-area-inset-bottom) + 30px));scrollbar-gutter:auto}
  .study-hub-intro{margin-bottom:11px;padding-inline:8px}.study-hub-intro p{font-size:.75rem}
  .study-hub-grid{grid-template-columns:1fr;gap:9px}
  .study-hub-card{min-height:76px;border-radius:18px;padding:11px 13px;grid-template-columns:38px minmax(0,1fr) 16px;gap:10px}
  .study-hub-icon{width:37px;height:37px;border-radius:12px;font-size:.98rem}
  .study-hub-card strong{font-size:.94rem}.study-hub-card small{font-size:.67rem}
  .study-hub-section{margin-top:14px;padding-top:14px}
  #studyHubAudioSlot .home-audio-controls{padding:12px!important;border-radius:18px!important}
  .study-hub-account{margin-top:14px;padding-top:14px}

  .sigma-v52-24-14 .topbar{min-height:64px;padding-left:10px;padding-right:10px}
  .sigma-v52-24-14 .global-home-btn{width:38px;height:38px;flex-basis:38px;border-radius:12px}
  .sigma-v52-24-14 #dashboardView .home-premium-hero{padding:17px!important;border-radius:23px!important}
  .sigma-v52-24-14 #dashboardView .home-primary-actions{margin-top:13px}
  .sigma-v52-24-14 .study-hub-launch{width:100%;min-width:0;max-width:310px;min-height:51px}
  .sigma-v52-24-14 #dashboardView .sigma-daily-card{padding:15px!important;border-radius:21px!important}
  .sigma-v52-24-14 #dashboardView .sigma-daily-titleline .gold-eyebrow{font-size:.49rem!important}
  .sigma-v52-24-14 #dashboardView .sigma-daily-scoreboard{display:none!important}
  .sigma-v52-24-14 .home-progress-summary-head{padding:12px 13px 7px}
  .sigma-v52-24-14 #dashboardView #statsGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:4px 7px 10px}
  .sigma-v52-24-14 #dashboardView #statsGrid .stat-card:nth-child(3){border-left:0!important;border-top:1px solid #dde6e0!important}
  .sigma-v52-24-14 #dashboardView #statsGrid .stat-card:nth-child(4){border-top:1px solid #dde6e0!important}

  .sigma-v52-24-14 .welcome-shell{padding:8px!important}.sigma-v52-24-14 .premium-welcome{padding:14px!important;border-radius:24px!important}
  .sigma-v52-24-14 .welcome-topline{margin-bottom:7px!important}.sigma-v52-24-14 .welcome-hero-grid{grid-template-columns:1fr!important;min-height:auto;gap:13px!important}
  .sigma-v52-24-14 .welcome-copy h1{font-size:clamp(2.55rem,12.3vw,4.1rem)!important;line-height:.93!important;margin:8px 0!important}
  .sigma-v52-24-14 .welcome-subtitle{font-size:.9rem!important;margin:10px 0!important}
  .sigma-v52-24-14 .sigma-welcome-visual{min-height:225px!important;max-height:31dvh!important}
  .sigma-v52-24-14 .sigma-welcome-image-wrap{min-height:225px!important;height:100%!important}
  .sigma-v52-24-14 .profile-entry-card{padding:12px!important;border-radius:18px!important;grid-template-columns:54px minmax(0,1fr)!important;gap:10px!important}
  .sigma-v52-24-14 .premium-avatar{width:52px!important;height:52px!important}
}

/* Extra-short phones: preserve tap target size; scrolling handles the rest. */
@media(max-width:820px) and (max-height:680px){
  .study-hub-header{min-height:60px}.study-hub-scroll{padding-top:10px}.study-hub-intro{display:none}.study-hub-card{min-height:70px;padding-top:9px;padding-bottom:9px}.study-hub-grid{gap:7px}
}

/* Respect accessibility motion preference without disabling scroll momentum. */
@media(prefers-reduced-motion:reduce){
  .study-hub-sheet,.study-hub-card,.study-hub-launch,.global-home-btn{transition:none!important}
  .study-hub-launch:before{display:none!important}
}

/* V52.24.12 navigation carry-forward: no floating bottom dock. */
.sigma-v52-24-14 .bottom-nav{display:none!important}
.sigma-v52-24-14 main{padding-bottom:max(28px,env(safe-area-inset-bottom))!important}


/* ============================================================
   V52.24.17 • Canonical Times Tables Centre
   One permanent Study Hub destination; the former in-Storm
   Tables Reference is physically moved here at runtime.
   ============================================================ */
.times-tables-centre-view{padding:0 0 24px}
.times-tables-centre-shell{width:min(1180px,100%);margin:0 auto;display:grid;gap:16px}
.times-tables-centre-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:27px 30px;border:1px solid #d6e3dc;border-radius:28px;background:linear-gradient(135deg,#fffdf7 0%,#f1f8f3 55%,#eef8f5 100%);box-shadow:0 18px 46px rgba(22,55,47,.08)}
.times-tables-centre-hero:after{content:"×";position:absolute;right:118px;top:-56px;font:950 12rem/1 system-ui;color:rgba(20,119,105,.045);pointer-events:none}
.times-tables-centre-kicker{display:block;margin-bottom:7px;font-size:.62rem;font-weight:950;letter-spacing:.17em;color:#9a7624}
.times-tables-centre-hero h2{margin:0;color:#163d35;font-size:clamp(2rem,4vw,3.35rem);letter-spacing:-.055em;line-height:.98}
.times-tables-centre-hero p{margin:10px 0 0;max-width:720px;color:#657a73;font-size:.92rem;line-height:1.5}
.times-tables-centre-badge{position:relative;z-index:1;flex:0 0 auto;width:96px;height:96px;border-radius:26px;display:grid;place-items:center;align-content:center;border:1px solid #b8d8ce;background:linear-gradient(145deg,#0e7468,#159486);color:#fff;box-shadow:0 12px 28px rgba(14,116,104,.22),inset 0 1px 0 rgba(255,255,255,.2)}
.times-tables-centre-badge span{font-size:1.65rem;font-weight:950;letter-spacing:-.05em}.times-tables-centre-badge small{margin-top:2px;font-size:.5rem;font-weight:950;letter-spacing:.14em;opacity:.78}

.times-tables-centre-modes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.times-tables-centre-modes button,.times-tables-centre-reference-row button{appearance:none;border:1px solid #d7e3dd;background:linear-gradient(145deg,#fffefa,#f5f8f5);color:#183b34;cursor:pointer;text-align:left;box-shadow:0 8px 20px rgba(21,54,46,.045);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}
.times-tables-centre-modes button{min-height:108px;padding:14px 15px;border-radius:20px;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"num num" "strong strong" "small small";align-content:center;gap:3px}
.times-tables-centre-modes button>span{grid-area:num;width:max-content;min-width:30px;height:24px;padding:0 7px;border-radius:99px;display:grid;place-items:center;background:#e9f4ef;color:#197568;font-size:.57rem;font-weight:950;letter-spacing:.06em}
.times-tables-centre-modes button>strong{grid-area:strong;font-size:1rem;letter-spacing:-.02em}.times-tables-centre-modes button>small{grid-area:small;color:#75857f;font-size:.66rem;line-height:1.3}
.times-tables-centre-modes button:hover,.times-tables-centre-reference-row button:hover{transform:translateY(-2px);border-color:#abcfc4;box-shadow:0 13px 28px rgba(21,54,46,.08)}
.times-tables-centre-modes button.active,.times-tables-centre-modes button[aria-pressed="true"]{border-color:#89c8b8;background:linear-gradient(145deg,#edf9f4,#fffefa);box-shadow:0 0 0 3px rgba(37,153,132,.08),0 12px 26px rgba(21,94,82,.08)}
.times-tables-centre-modes .times-tables-storm-launch{border-color:#173f5e;background:linear-gradient(145deg,#123551,#1c5a84);color:#fff;box-shadow:0 12px 26px rgba(20,62,91,.18)}
.times-tables-centre-modes .times-tables-storm-launch>span{background:rgba(255,255,255,.12);color:#f4d47e}.times-tables-centre-modes .times-tables-storm-launch>small{color:rgba(255,255,255,.72)}

.times-tables-centre-reference-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.times-tables-centre-reference-row button{min-height:72px;padding:12px 15px;border-radius:18px;display:grid;grid-template-columns:38px minmax(0,1fr) 18px;grid-template-rows:auto auto;column-gap:11px;align-items:center}
.times-tables-centre-reference-row button>span{grid-row:1/3;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#edf4f0;color:#156f63;font-size:1rem;font-weight:950}.times-tables-centre-reference-row button>strong{font-size:.88rem}.times-tables-centre-reference-row button>small{color:#75857f;font-size:.64rem}.times-tables-centre-reference-row button>em{grid-column:3;grid-row:1/3;font-style:normal;font-size:1.15rem;color:#728f87}
.times-tables-centre-reference-row button[aria-pressed="true"]{border-color:#9acabc;background:#f3faf6}

.times-tables-lab-slot{scroll-margin-top:82px}
#timesTablesView .times-reference-shell{width:100%;margin:0;padding:0}
#timesTablesView .times-reference-pill,#timesTablesView .times-reference-close{display:none!important}
#timesTablesView .times-reference-panel{margin:0;border-color:#d4e2dc;border-radius:24px;background:linear-gradient(180deg,#fff,#f8fbf8);box-shadow:0 18px 46px rgba(20,55,47,.08)}
#timesTablesView .times-reference-head{padding:20px 22px 17px;border-color:#dde8e2;background:linear-gradient(135deg,#edf8f3,#fffdf8)}
#timesTablesView .times-reference-head small{color:#9a7624}
#timesTablesView .times-reference-head h3{color:#173d36}
#timesTablesView .times-reference-head p{color:#687b75}
#timesTablesView .times-reference-tabs{border-color:#dde8e2;background:#fbfdfb}
#timesTablesView .times-reference-tabs button.active{background:#e8f6f0;border-color:#b9dfd3;color:#176f63}
#timesTablesView .times-reference-hear,#timesTablesView .times-reference-listen-controls button.primary{background:#174a42;border-color:#174a42}

@media(max-width:980px){
  .times-tables-centre-modes{grid-template-columns:repeat(3,minmax(0,1fr))}
  .times-tables-centre-modes .times-tables-storm-launch{grid-column:span 2}
}
@media(max-width:700px){
  .times-tables-centre-view{padding:0 0 max(24px,env(safe-area-inset-bottom))}
  .times-tables-centre-shell{gap:11px}
  .times-tables-centre-hero{padding:19px 18px;border-radius:22px;align-items:flex-start}
  .times-tables-centre-hero:after{display:none}.times-tables-centre-hero h2{font-size:2.18rem}.times-tables-centre-hero p{font-size:.78rem;margin-top:7px}
  .times-tables-centre-badge{width:72px;height:72px;border-radius:20px}.times-tables-centre-badge span{font-size:1.25rem}.times-tables-centre-badge small{font-size:.44rem}
  .times-tables-centre-modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .times-tables-centre-modes button{min-height:91px;padding:11px 12px;border-radius:17px}.times-tables-centre-modes button>strong{font-size:.9rem}.times-tables-centre-modes button>small{font-size:.6rem}
  .times-tables-centre-modes .times-tables-storm-launch{grid-column:1/-1;min-height:78px}
  .times-tables-centre-reference-row{grid-template-columns:1fr;gap:8px}.times-tables-centre-reference-row button{min-height:66px;border-radius:16px}
  #timesTablesView .times-reference-panel{border-radius:20px}.times-reference-grid-wrap{max-height:62dvh}
}
@media(max-width:430px){
  .times-tables-centre-hero{gap:12px}.times-tables-centre-hero h2{font-size:1.9rem}.times-tables-centre-badge{width:64px;height:64px;border-radius:18px}
  .times-tables-centre-modes button{min-height:86px}.times-tables-centre-kicker{font-size:.53rem}
}

/* ============================================================
   V52.24.18 • UNIVERSAL STUDENT SEARCH
   Search lives beside the permanent Home key and works globally.
   ============================================================ */
.sigma-v52-24-14 .global-search-btn{
  appearance:none;border:1px solid rgba(157,205,193,.18);width:42px;height:42px;flex:0 0 42px;
  display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.045));
  color:#effaf7;font:900 1.35rem/1 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 7px 16px rgba(3,24,21,.12);
  transition:transform .18s ease,background .18s ease,border-color .18s ease
}
.sigma-v52-24-14 .global-search-btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.13);border-color:rgba(157,205,193,.30)}
.sigma-v52-24-14 .global-search-btn:focus-visible{outline:3px solid rgba(122,220,196,.30);outline-offset:2px}

body.sigma-search-open{overflow-y:auto!important}
.sigma-search-sheet{
  position:fixed;inset:0;z-index:1200;display:none;align-items:flex-start;justify-content:center;
  padding:clamp(72px,10vh,112px) 18px 24px;background:rgba(5,17,16,.56);backdrop-filter:blur(14px);
}
.sigma-search-sheet.open{display:flex;animation:sigmaSearchFade .16s ease-out}
.sigma-search-panel{
  width:min(760px,100%);max-height:min(760px,calc(100dvh - 104px));display:flex;flex-direction:column;overflow:hidden;
  background:linear-gradient(180deg,#fffefa,#f4f7f3);border:1px solid rgba(98,138,128,.24);border-radius:28px;
  box-shadow:0 34px 88px rgba(2,21,18,.31),inset 0 1px 0 rgba(255,255,255,.9)
}
.sigma-search-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:21px 22px 13px}
.sigma-search-kicker{display:block;color:#0f766e;font-size:.69rem;font-weight:900;letter-spacing:.14em}
.sigma-search-head h2{margin:4px 0 0;color:#172825;font-size:clamp(1.26rem,3vw,1.62rem);letter-spacing:-.025em}
.sigma-search-close{
  width:42px;height:42px;border-radius:13px;border:1px solid #d7e1dc;background:#fffefa;color:#415b55;
  font-size:1.55rem;line-height:1;cursor:pointer
}
.sigma-search-box{
  margin:0 22px 10px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:7px 10px 7px 14px;
  border:1px solid #cbdad4;border-radius:17px;background:#fff;box-shadow:0 7px 24px rgba(15,58,50,.07)
}
.sigma-search-box>span{font-size:1.35rem;color:#0f766e}
.sigma-search-box input{width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#172825!important;font:700 1rem/1.3 system-ui,-apple-system,Segoe UI,sans-serif;padding:10px 2px!important}
.sigma-search-box input::placeholder{color:#82938e;font-weight:600}
.sigma-search-box kbd{border:1px solid #d9e2dd;background:#f2f5f2;color:#6e7e79;border-radius:8px;padding:5px 7px;font-size:.64rem;font-weight:900}
.sigma-search-body{min-height:0;overflow:auto;padding:0 14px 14px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.sigma-search-status{padding:7px 10px 8px;color:#71817c;font-size:.73rem;font-weight:800;letter-spacing:.025em}
.sigma-search-results{display:grid;gap:5px}
.sigma-search-result{
  appearance:none;width:100%;display:grid;grid-template-columns:46px minmax(0,1fr) auto 24px;align-items:center;gap:11px;
  border:1px solid transparent;border-radius:16px;background:transparent;padding:9px 10px;text-align:left;color:#20322e;cursor:pointer;
  transition:background .13s ease,border-color .13s ease,transform .13s ease
}
.sigma-search-result:hover,.sigma-search-result.active{background:#fff;border-color:#d8e3de;box-shadow:0 7px 17px rgba(19,57,49,.055);transform:translateY(-1px)}
.sigma-search-result-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#e6f2ed,#f7f3e7);color:#0d655d;font-size:1.1rem;font-weight:950}
.sigma-search-result-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.sigma-search-result-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#192d29;font-size:.92rem}
.sigma-search-result-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#72827d;font-size:.72rem;font-weight:650}
.sigma-search-result-group{justify-self:end;border:1px solid #dce5e0;border-radius:999px;background:#f5f7f4;color:#61736d;padding:4px 8px;font-size:.61rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.sigma-search-result-arrow{color:#77918a;font-weight:900}
.sigma-search-empty{padding:34px 16px 42px;text-align:center;color:#687a75}
.sigma-search-empty>span{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 12px;border-radius:18px;background:#e9f2ee;color:#0f766e;font-size:1.5rem}
.sigma-search-empty strong{display:block;color:#263b36;margin-bottom:4px}
.sigma-search-empty p{margin:0 auto;max-width:430px;font-size:.83rem;line-height:1.55}
.sigma-search-foot{display:flex;align-items:center;gap:18px;padding:10px 22px 13px;border-top:1px solid #e0e7e3;background:rgba(242,246,243,.86);color:#74827e;font-size:.67rem;font-weight:700}
.sigma-search-foot span:last-child{margin-left:auto}.sigma-search-foot strong{color:#425e57}
@keyframes sigmaSearchFade{from{opacity:0}to{opacity:1}}

html[data-theme="dark"] .sigma-search-panel{background:linear-gradient(180deg,#101f1c,#0d1816);border-color:#29423c}
html[data-theme="dark"] .sigma-search-head h2,html[data-theme="dark"] .sigma-search-result-copy strong{color:#edf5f2}
html[data-theme="dark"] .sigma-search-close,html[data-theme="dark"] .sigma-search-box,html[data-theme="dark"] .sigma-search-result:hover,html[data-theme="dark"] .sigma-search-result.active{background:#142521;border-color:#30483f;color:#d9e7e2}
html[data-theme="dark"] .sigma-search-box input{color:#eef6f3!important}
html[data-theme="dark"] .sigma-search-result-icon{background:#19312c;color:#8ad8c4}
html[data-theme="dark"] .sigma-search-result-group{background:#172824;border-color:#30443e;color:#9eb3ad}
html[data-theme="dark"] .sigma-search-foot{background:#0f1d1a;border-top-color:#293a35}

@media(max-width:650px){
  .sigma-v52-24-14 .global-search-btn{width:38px;height:38px;flex-basis:38px;border-radius:12px}
  .sigma-search-sheet{padding:0;background:rgba(5,17,16,.72)}
  .sigma-search-panel{width:100%;height:100dvh;max-height:none;border-radius:0;border:0}
  .sigma-search-head{padding:calc(14px + env(safe-area-inset-top)) 14px 10px}
  .sigma-search-box{margin:0 12px 8px;border-radius:15px}
  .sigma-search-body{padding:0 8px 92px}
  .sigma-search-result{grid-template-columns:42px minmax(0,1fr) 20px;gap:9px;padding:8px}
  .sigma-search-result-icon{width:40px;height:40px;border-radius:12px}
  .sigma-search-result-group{display:none}
  .sigma-search-result-copy strong{font-size:.89rem}.sigma-search-result-copy small{font-size:.69rem}
  .sigma-search-foot{position:fixed;left:0;right:0;bottom:0;padding:9px 13px calc(9px + env(safe-area-inset-bottom));gap:11px;font-size:.62rem}
  .sigma-search-foot span:last-child{display:none}
}
@media(prefers-reduced-motion:reduce){.sigma-search-sheet.open,.sigma-search-result{animation:none!important;transition:none!important}}

/* ============================================================
   V52.24.24 • PREMIUM SKIN COLLECTION
   Palette layer sits above the professional UI system while keeping
   Light / Dark appearance independent. Dedicated game art is preserved.
   ============================================================ */
html[data-skin="teal"]{
  --skin-chrome-1:#0b2523;--skin-chrome-2:#153d39;--skin-primary:#0f766e;--skin-primary-2:#159589;--skin-accent:#63cbb8;
  --skin-highlight:#e3c578;--skin-hero-1:#0b2422;--skin-hero-2:#174840;--skin-surface:#fffefa;--skin-tint:#edf6f2;--skin-paper:#f3f7f3;--skin-ink:#183c35;--skin-soft:#6e827c;
  --skin-rgb:15,118,110;--skin-glow-rgb:99,203,184
}
html[data-skin="midnight"]{
  --skin-chrome-1:#101d3d;--skin-chrome-2:#1a3970;--skin-primary:#2e5ebc;--skin-primary-2:#397ed0;--skin-accent:#55c8ff;
  --skin-highlight:#9edaff;--skin-hero-1:#101d3d;--skin-hero-2:#1d4d85;--skin-surface:#fbfcff;--skin-tint:#edf3fc;--skin-paper:#f2f5fa;--skin-ink:#1e3152;--skin-soft:#6a7890;
  --skin-rgb:46,94,188;--skin-glow-rgb:85,200,255
}
html[data-skin="violet"]{
  --skin-chrome-1:#25143f;--skin-chrome-2:#4e2878;--skin-primary:#6d3bbd;--skin-primary-2:#8755d0;--skin-accent:#b884ff;
  --skin-highlight:#e0c0ff;--skin-hero-1:#2b1748;--skin-hero-2:#66358d;--skin-surface:#fffaff;--skin-tint:#f3ecfb;--skin-paper:#f7f2fa;--skin-ink:#44275e;--skin-soft:#806c8f;
  --skin-rgb:109,59,189;--skin-glow-rgb:184,132,255
}
html[data-skin="ember"]{
  --skin-chrome-1:#2d1b18;--skin-chrome-2:#633023;--skin-primary:#b84c32;--skin-primary-2:#d36a3e;--skin-accent:#f2a34f;
  --skin-highlight:#ffd08a;--skin-hero-1:#35211d;--skin-hero-2:#7b3b29;--skin-surface:#fffaf5;--skin-tint:#f9eee6;--skin-paper:#faf4ed;--skin-ink:#533229;--skin-soft:#8a746c;
  --skin-rgb:184,76,50;--skin-glow-rgb:242,163,79
}
html[data-skin="forest"]{
  --skin-chrome-1:#142b1c;--skin-chrome-2:#255537;--skin-primary:#287a4b;--skin-primary-2:#39945f;--skin-accent:#75bf6a;
  --skin-highlight:#b9d985;--skin-hero-1:#163321;--skin-hero-2:#326a43;--skin-surface:#fbfdf8;--skin-tint:#edf5e9;--skin-paper:#f3f7f0;--skin-ink:#244a31;--skin-soft:#718271;
  --skin-rgb:40,122,75;--skin-glow-rgb:117,191,106
}
html[data-skin="aurora"]{
  --skin-chrome-1:#111d37;--skin-chrome-2:#1b4863;--skin-primary:#167da3;--skin-primary-2:#2f92b3;--skin-accent:#8b6be8;
  --skin-highlight:#7de6e8;--skin-hero-1:#14213e;--skin-hero-2:#245b73;--skin-surface:#fbfdff;--skin-tint:#edf5f9;--skin-paper:#f1f6f9;--skin-ink:#24445c;--skin-soft:#6b7f8d;
  --skin-rgb:22,125,163;--skin-glow-rgb:139,107,232
}
html[data-skin="graphite"]{
  --skin-chrome-1:#20262d;--skin-chrome-2:#3a4652;--skin-primary:#4d5966;--skin-primary-2:#667684;--skin-accent:#9fb3c8;
  --skin-highlight:#d2dbe4;--skin-hero-1:#20262d;--skin-hero-2:#46535e;--skin-surface:#fff;--skin-tint:#eef1f3;--skin-paper:#f4f5f6;--skin-ink:#303942;--skin-soft:#737d86;
  --skin-rgb:77,89,102;--skin-glow-rgb:159,179,200
}
html[data-skin="sunset"]{
  --skin-chrome-1:#3b1b2e;--skin-chrome-2:#74354f;--skin-primary:#b64d64;--skin-primary-2:#ce6270;--skin-accent:#f3a15f;
  --skin-highlight:#ffc985;--skin-hero-1:#482037;--skin-hero-2:#8c4658;--skin-surface:#fffaf9;--skin-tint:#f8ecee;--skin-paper:#fbf2ef;--skin-ink:#5e3341;--skin-soft:#8a7178;
  --skin-rgb:182,77,100;--skin-glow-rgb:243,161,95
}

/* V52.24.22 premium signature palettes */
html[data-skin="carbon-gold"]{
  --skin-chrome-1:#11100d;--skin-chrome-2:#30291d;--skin-primary:#a98132;--skin-primary-2:#d0a94f;--skin-accent:#e6c875;
  --skin-highlight:#ffe5a2;--skin-hero-1:#0d0d0c;--skin-hero-2:#40351f;--skin-surface:#fffdf7;--skin-tint:#f3ecdc;--skin-paper:#f4efe2;--skin-ink:#332c20;--skin-soft:#7e7463;
  --skin-rgb:169,129,50;--skin-glow-rgb:230,200,117
}
html[data-skin="neon-circuit"]{
  --skin-chrome-1:#06131c;--skin-chrome-2:#0a3142;--skin-primary:#087c91;--skin-primary-2:#10a9bf;--skin-accent:#34e9ff;
  --skin-highlight:#baf9ff;--skin-hero-1:#06131c;--skin-hero-2:#0b4150;--skin-surface:#fbfeff;--skin-tint:#e8f8fb;--skin-paper:#eef9fb;--skin-ink:#173c45;--skin-soft:#667f86;
  --skin-rgb:8,124,145;--skin-glow-rgb:52,233,255
}
html[data-skin="diamond-frost"]{
  --skin-chrome-1:#102330;--skin-chrome-2:#28566e;--skin-primary:#317e9d;--skin-primary-2:#4fa8c5;--skin-accent:#b7efff;
  --skin-highlight:#e7fbff;--skin-hero-1:#102330;--skin-hero-2:#3d7188;--skin-surface:#ffffff;--skin-tint:#eaf7fb;--skin-paper:#f3f9fb;--skin-ink:#244654;--skin-soft:#6e8791;
  --skin-rgb:49,126,157;--skin-glow-rgb:183,239,255
}
html[data-skin="nebula"]{
  --skin-chrome-1:#19132f;--skin-chrome-2:#48256d;--skin-primary:#7443a8;--skin-primary-2:#a84fc4;--skin-accent:#d46cff;
  --skin-highlight:#f1c6ff;--skin-hero-1:#17112b;--skin-hero-2:#56307a;--skin-surface:#fffbff;--skin-tint:#f4eafb;--skin-paper:#f8f1fb;--skin-ink:#4b2c5f;--skin-soft:#836e8e;
  --skin-rgb:116,67,168;--skin-glow-rgb:212,108,255
}

/* ============================================================
   V52.24.24 • SKIN-AWARE HOME CTA
   The permanent Home → Study Hub launch now belongs to the selected
   app skin instead of retaining the legacy Sigma Teal treatment.
   ============================================================ */
html[data-skin] .study-hub-launch{
  border-color:color-mix(in srgb,var(--skin-accent) 66%,white)!important;
  background:linear-gradient(135deg,
    color-mix(in srgb,var(--skin-chrome-1) 34%,var(--skin-primary)) 0%,
    var(--skin-primary) 42%,
    var(--skin-primary-2) 70%,
    color-mix(in srgb,var(--skin-chrome-2) 58%,var(--skin-primary)) 100%)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(var(--skin-rgb),.30),0 0 0 3px rgba(var(--skin-glow-rgb),.08),inset 0 1px 0 rgba(255,255,255,.25)!important
}
html[data-skin] .study-hub-launch:hover{
  box-shadow:0 16px 38px rgba(var(--skin-rgb),.36),0 0 0 4px rgba(var(--skin-glow-rgb),.11),inset 0 1px 0 rgba(255,255,255,.28)!important
}
html[data-skin] .study-hub-launch:focus-visible{
  outline:3px solid color-mix(in srgb,var(--skin-highlight) 70%,white)!important;
  outline-offset:3px!important
}
html[data-skin] .study-hub-launch-mark{
  border-color:rgba(255,255,255,.34)!important;
  background:color-mix(in srgb,var(--skin-chrome-1) 48%,transparent)!important;
  color:color-mix(in srgb,var(--skin-highlight) 72%,white)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 12px rgba(var(--skin-glow-rgb),.08)!important
}
html[data-skin] .study-hub-launch:before{
  background:linear-gradient(110deg,transparent 14%,rgba(255,255,255,.25) 42%,color-mix(in srgb,var(--skin-highlight) 20%,transparent) 50%,transparent 66%)!important
}

/* Premium signatures preserve the material character of each skin. */
html[data-skin="carbon-gold"] .study-hub-launch{
  border-color:rgba(230,200,117,.72)!important;
  background:radial-gradient(circle at 78% 0,rgba(255,229,162,.15),transparent 35%),linear-gradient(135deg,#11100d 0%,#5d4820 48%,#2c2415 77%,#a98132 140%)!important;
  color:#fff7dc!important;
  box-shadow:0 14px 34px rgba(55,39,13,.34),0 0 0 3px rgba(230,200,117,.09),inset 0 1px 0 rgba(255,242,199,.24)!important
}
html[data-skin="carbon-gold"] .study-hub-launch-mark{background:rgba(59,45,20,.62)!important;color:#ffe5a2!important;border-color:rgba(230,200,117,.42)!important}
html[data-skin="neon-circuit"] .study-hub-launch{
  border-color:rgba(52,233,255,.72)!important;
  background:linear-gradient(90deg,rgba(52,233,255,.08) 1px,transparent 1px),linear-gradient(135deg,#06131c,#087c91 58%,#162a54)!important;
  background-size:24px 100%,auto!important;
  box-shadow:0 14px 34px rgba(8,124,145,.34),0 0 0 3px rgba(52,233,255,.08),0 0 24px rgba(52,233,255,.10),inset 0 1px 0 rgba(255,255,255,.18)!important
}
html[data-skin="neon-circuit"] .study-hub-launch-mark{background:rgba(4,35,45,.72)!important;color:#baf9ff!important;border-color:rgba(52,233,255,.42)!important}
html[data-skin="diamond-frost"] .study-hub-launch{
  border-color:rgba(183,239,255,.76)!important;
  background:radial-gradient(circle at 78% 0,rgba(231,251,255,.26),transparent 34%),linear-gradient(135deg,#183847,#317e9d 55%,#4fa8c5)!important;
  box-shadow:0 14px 34px rgba(49,126,157,.28),0 0 0 3px rgba(183,239,255,.10),inset 0 1px 0 rgba(255,255,255,.34)!important
}
html[data-skin="diamond-frost"] .study-hub-launch-mark{background:rgba(16,55,72,.54)!important;color:#e7fbff!important;border-color:rgba(183,239,255,.48)!important}
html[data-skin="nebula"] .study-hub-launch{
  border-color:rgba(212,108,255,.58)!important;
  background:radial-gradient(circle at 18% 30%,rgba(212,108,255,.15) 0 1px,transparent 2px),radial-gradient(circle at 82% 22%,rgba(104,211,255,.14) 0 1px,transparent 2px),linear-gradient(135deg,#19132f,#7443a8 55%,#a84fc4)!important;
  background-size:48px 42px,67px 56px,auto!important;
  box-shadow:0 14px 34px rgba(116,67,168,.32),0 0 0 3px rgba(212,108,255,.08),0 0 22px rgba(212,108,255,.08),inset 0 1px 0 rgba(255,255,255,.20)!important
}
html[data-skin="nebula"] .study-hub-launch-mark{background:rgba(38,22,62,.58)!important;color:#f1c6ff!important;border-color:rgba(212,108,255,.38)!important}

html[data-skin] body:not(.sigma-storm-live){
  background:radial-gradient(circle at 14% 0%,rgba(var(--skin-rgb),.07),transparent 30rem),radial-gradient(circle at 90% 9%,rgba(var(--skin-glow-rgb),.055),transparent 24rem),linear-gradient(180deg,var(--skin-paper) 0,#fbfcfa 330px,var(--skin-paper) 100%)!important
}
html[data-skin] .topbar{background:radial-gradient(circle at 80% -120%,rgba(var(--skin-glow-rgb),.18),transparent 46%),linear-gradient(135deg,var(--skin-chrome-1),var(--skin-chrome-2))!important;box-shadow:0 12px 30px rgba(var(--skin-rgb),.18)!important}
html[data-skin] .bottom-nav{background:linear-gradient(135deg,color-mix(in srgb,var(--skin-chrome-1) 96%,transparent),color-mix(in srgb,var(--skin-chrome-2) 96%,transparent))!important;box-shadow:0 18px 44px rgba(var(--skin-rgb),.22),inset 0 1px 0 rgba(255,255,255,.05)!important}
html[data-skin] .nav-item{color:color-mix(in srgb,var(--skin-accent) 35%,#d9e4ea)!important}
html[data-skin] .nav-item.active{color:var(--skin-ink)!important;background:linear-gradient(145deg,var(--skin-surface),var(--skin-tint))!important}
html[data-skin] .nav-item.active:after{background:linear-gradient(90deg,var(--skin-primary),var(--skin-accent))!important}
html[data-skin] .compact-mark,html[data-skin] .mini-mark{color:var(--skin-primary)!important;background:linear-gradient(145deg,#fff,var(--skin-tint))!important}
html[data-skin] .sigma-version-badge{color:color-mix(in srgb,var(--skin-accent) 72%,white)!important}
html[data-skin] .global-home-btn,html[data-skin] .global-search-btn{border-color:rgba(255,255,255,.16)!important}

html[data-skin] #dashboardView .home-premium-hero{background:radial-gradient(circle at 88% 4%,rgba(var(--skin-glow-rgb),.20),transparent 31%),radial-gradient(circle at 3% 112%,rgba(var(--skin-glow-rgb),.09),transparent 31%),linear-gradient(135deg,var(--skin-hero-1),var(--skin-hero-2))!important;border-color:rgba(var(--skin-glow-rgb),.25)!important;box-shadow:0 24px 58px rgba(var(--skin-rgb),.20),0 3px 10px rgba(var(--skin-rgb),.08)!important}
html[data-skin] #dashboardView .home-premium-hero .gold-eyebrow,html[data-skin] #dashboardView .home-target-badge{color:var(--skin-highlight)!important}
html[data-skin] #dashboardView .hero-next-label{color:color-mix(in srgb,var(--skin-accent) 75%,white)!important;background:rgba(var(--skin-glow-rgb),.11)!important}
html[data-skin] #dashboardView .home-progress-card .orb-progress{stroke:var(--skin-accent)!important}
html[data-skin] #dashboardView .sigma-daily-card{background:radial-gradient(circle at 92% 0,rgba(var(--skin-glow-rgb),.20),transparent 35%),linear-gradient(135deg,color-mix(in srgb,var(--skin-hero-1) 88%,#101010),var(--skin-hero-2))!important;border-color:rgba(var(--skin-glow-rgb),.22)!important}

html[data-skin] #dashboardView .btn.primary,html[data-skin] #dashboardView .btn.brand-primary,
html[data-skin] #courseView .btn.primary,html[data-skin] #courseView .btn.brand-primary,
html[data-skin] #reviewView .btn.primary,html[data-skin] #reviewView .btn.brand-primary,
html[data-skin] #toolsView .btn.primary,html[data-skin] #toolsView .btn.brand-primary,
html[data-skin] #worksheetsView .btn.primary,html[data-skin] #worksheetsView .btn.brand-primary,
html[data-skin] #testsView .btn.primary,html[data-skin] #testsView .btn.brand-primary,
html[data-skin] #leaderboardView .btn.primary,html[data-skin] #leaderboardView .btn.brand-primary,
html[data-skin] #profileView .btn.primary,html[data-skin] #profileView .btn.brand-primary,
html[data-skin] #teacherView .btn.primary,html[data-skin] #parentView .btn.primary,
html[data-skin] #installView .btn.primary,html[data-skin] #settingsView .btn.primary{background:linear-gradient(145deg,var(--skin-primary),var(--skin-primary-2))!important;border-color:rgba(var(--skin-rgb),.28)!important;box-shadow:0 10px 22px rgba(var(--skin-rgb),.18),inset 0 1px 0 rgba(255,255,255,.14)!important}
html[data-skin] #toolsView .bt-tool-tabs button.active{background:linear-gradient(145deg,var(--skin-primary),var(--skin-primary-2))!important;box-shadow:0 12px 26px rgba(var(--skin-rgb),.18)!important}
html[data-skin] button:focus-visible,html[data-skin] .nav-item:focus-visible{outline-color:rgba(var(--skin-rgb),.38)!important}

html[data-skin] .welcome-screen{background:radial-gradient(circle at 14% 14%,rgba(var(--skin-glow-rgb),.17),transparent 29%),radial-gradient(circle at 84% 79%,rgba(var(--skin-glow-rgb),.11),transparent 30%),linear-gradient(145deg,var(--skin-hero-1),var(--skin-hero-2) 48%,var(--skin-paper) 100%)!important}
html[data-skin] .welcome-copy h1,html[data-skin] .welcome-copy h1 em,html[data-skin] .brand-name{color:var(--skin-ink)!important}
html[data-skin] .module-preview-chip span{background:var(--skin-tint)!important;color:var(--skin-primary)!important}
html[data-skin] .premium-avatar,html[data-skin] .profile-avatar{background:linear-gradient(145deg,var(--skin-primary),var(--skin-primary-2))!important}

html[data-skin] .study-hub-sheet{background:rgba(var(--skin-rgb),.13)!important}
html[data-skin] .study-hub-frame{background:linear-gradient(180deg,color-mix(in srgb,var(--skin-paper) 80%,white),var(--skin-paper))!important;color:var(--skin-ink)!important}
html[data-skin] .study-hub-header{background:color-mix(in srgb,var(--skin-surface) 92%,transparent)!important;border-color:color-mix(in srgb,var(--skin-primary) 16%,#dfe5df)!important}
html[data-skin] .study-hub-heading h2,html[data-skin] .study-hub-card strong,html[data-skin] .study-hub-account-copy strong{color:var(--skin-ink)!important}
html[data-skin] .study-hub-heading span,html[data-skin] .study-hub-card small,html[data-skin] .study-hub-intro p{color:var(--skin-soft)!important}
html[data-skin] .study-hub-card{background:linear-gradient(145deg,var(--skin-surface),var(--skin-tint))!important;border-color:color-mix(in srgb,var(--skin-primary) 17%,#dfe4df)!important;color:var(--skin-ink)!important}
html[data-skin] .study-hub-card-feature{background:linear-gradient(145deg,color-mix(in srgb,var(--skin-tint) 72%,white),var(--skin-surface))!important;border-color:color-mix(in srgb,var(--skin-primary) 38%,#d8dfdb)!important}
html[data-skin] .study-hub-icon{background:var(--skin-tint)!important;color:var(--skin-primary)!important;border-color:color-mix(in srgb,var(--skin-primary) 18%,#dce4df)!important}
html[data-skin] .study-hub-card-feature .study-hub-icon{background:linear-gradient(145deg,var(--skin-primary),var(--skin-primary-2))!important;color:#fff!important;border-color:rgba(var(--skin-rgb),.28)!important;box-shadow:0 7px 16px rgba(var(--skin-rgb),.18)!important}
html[data-skin] .study-hub-section-title>span{background:var(--skin-accent)!important;box-shadow:0 0 0 5px rgba(var(--skin-glow-rgb),.10)!important}
html[data-skin] #studyHubAudioSlot input[type="range"]{accent-color:var(--skin-primary)!important}
html[data-skin] .study-hub-header-home,html[data-skin] .study-hub-close{color:var(--skin-ink)!important;background:linear-gradient(145deg,var(--skin-surface),var(--skin-tint))!important;border-color:color-mix(in srgb,var(--skin-primary) 18%,#dbe3de)!important}

/* Skin Studio */
body.sigma-skin-open{overflow-y:auto!important}
.sigma-skin-sheet{position:fixed;inset:0;z-index:98;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(10,20,24,.58);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
.sigma-skin-sheet.open{opacity:1;visibility:visible;pointer-events:auto}
.sigma-skin-panel{width:min(980px,100%);max-height:min(900px,calc(100dvh - 36px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(var(--skin-rgb),.18);border-radius:30px;background:linear-gradient(180deg,var(--skin-surface),var(--skin-paper));box-shadow:0 34px 100px rgba(5,18,22,.34);color:var(--skin-ink)}
.sigma-skin-head{flex:0 0 auto;display:grid;grid-template-columns:1fr 44px;gap:18px;align-items:start;padding:22px 24px 19px;border-bottom:1px solid color-mix(in srgb,var(--skin-primary) 17%,#dce3df);background:linear-gradient(135deg,color-mix(in srgb,var(--skin-tint) 75%,white),var(--skin-surface))}
.sigma-skin-head>div{min-width:0}.sigma-skin-head span{display:block;font-size:.57rem;font-weight:950;letter-spacing:.17em;color:var(--skin-primary)}.sigma-skin-head h2{margin:3px 0 4px;font-size:1.7rem;letter-spacing:-.045em;color:var(--skin-ink)}.sigma-skin-head p{margin:0;color:var(--skin-soft);font-size:.8rem;line-height:1.45}
.sigma-skin-close{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--skin-primary) 18%,#dce4df);border-radius:13px;background:var(--skin-surface);color:var(--skin-ink);font:500 1.6rem/1 system-ui;box-shadow:0 5px 14px rgba(var(--skin-rgb),.07)}
.sigma-skin-scroll{overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:22px 24px max(26px,calc(env(safe-area-inset-bottom) + 18px))}
.sigma-skin-section+.sigma-skin-section{margin-top:27px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--skin-primary) 14%,#dce3df)}
.sigma-skin-section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}.sigma-skin-section-head span{display:block;font-size:.54rem;font-weight:950;letter-spacing:.16em;color:var(--skin-primary)}.sigma-skin-section-head h3{margin:3px 0 0;font-size:1.15rem;color:var(--skin-ink)}.sigma-skin-section-head>strong{font-size:.58rem;letter-spacing:.12em;color:var(--skin-soft);padding:7px 9px;border:1px solid color-mix(in srgb,var(--skin-primary) 14%,#dce3df);border-radius:999px;background:var(--skin-surface)}
.sigma-skin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sigma-skin-card{position:relative;appearance:none;display:grid;grid-template-rows:112px auto;gap:11px;min-width:0;padding:10px;text-align:left;border:1px solid color-mix(in srgb,var(--skin-primary) 15%,#dce3df);border-radius:20px;background:var(--skin-surface);color:var(--skin-ink);box-shadow:0 8px 21px rgba(var(--skin-rgb),.055);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.sigma-skin-card:not(.is-locked):hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--skin-primary) 42%,#d8dfdb);box-shadow:0 13px 29px rgba(var(--skin-rgb),.10)}
.sigma-skin-card.is-selected{border-color:var(--skin-primary);box-shadow:0 0 0 2px rgba(var(--skin-rgb),.13),0 13px 29px rgba(var(--skin-rgb),.11)}
.sigma-skin-preview{overflow:hidden;display:grid;grid-template-rows:24px 1fr 23px;border-radius:13px;border:1px solid rgba(0,0,0,.09);background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.sigma-skin-preview-top{background:linear-gradient(135deg,var(--p1),var(--p2))}.sigma-skin-preview-body{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:7px;padding:10px;background:var(--p4)}.sigma-skin-preview-body:before{content:"";grid-row:1/3;border-radius:8px;background:linear-gradient(145deg,#fff,rgba(255,255,255,.64));border:1px solid rgba(0,0,0,.06)}.sigma-skin-preview-body i{display:block;border-radius:6px;background:rgba(255,255,255,.72);border:1px solid rgba(0,0,0,.06)}.sigma-skin-preview-body i:first-of-type{background:var(--p3);opacity:.62}.sigma-skin-preview-nav{background:linear-gradient(135deg,var(--p1),color-mix(in srgb,var(--p1) 62%,var(--p3)))}
.sigma-skin-card-copy{display:grid;gap:5px;min-width:0}.sigma-skin-card-title{display:flex;align-items:center;justify-content:space-between;gap:7px}.sigma-skin-card-title strong{font-size:.87rem;letter-spacing:-.015em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sigma-skin-card-title em{font-style:normal;font-size:.48rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase;color:var(--skin-primary);background:var(--skin-tint);border-radius:999px;padding:4px 6px}.sigma-skin-card-copy small{min-height:2.55em;color:var(--skin-soft);font-size:.62rem;line-height:1.3}
.sigma-skin-swatches{display:flex;gap:4px;margin-top:2px}.sigma-skin-swatches i{width:15px;height:15px;border-radius:50%;border:1px solid rgba(0,0,0,.09)}
.sigma-skin-state{position:absolute;right:17px;top:17px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--skin-primary);font-weight:950;font-size:.72rem;box-shadow:0 3px 9px rgba(0,0,0,.13);opacity:0;transform:scale(.82);transition:.15s}
.sigma-skin-card.is-selected .sigma-skin-state,.sigma-skin-card.is-locked .sigma-skin-state{opacity:1;transform:scale(1)}
.sigma-skin-card.is-locked{cursor:not-allowed;filter:saturate(.76);opacity:.82}.sigma-skin-card.is-locked .sigma-skin-preview:after{content:"PREMIUM";position:absolute}.sigma-skin-premium-note{margin:-2px 0 12px;color:var(--skin-soft);font-size:.74rem;line-height:1.45}
.sigma-skin-grid-premium{grid-template-columns:repeat(4,minmax(0,1fr))}
.sigma-skin-card.is-premium{border-color:color-mix(in srgb,var(--skin-highlight) 34%,#d9dfdb);background:linear-gradient(145deg,var(--skin-surface),color-mix(in srgb,var(--skin-tint) 75%,white));box-shadow:0 10px 27px rgba(var(--skin-rgb),.085)}
.sigma-skin-card.is-premium:hover{border-color:color-mix(in srgb,var(--skin-highlight) 72%,var(--skin-primary));box-shadow:0 16px 36px rgba(var(--skin-rgb),.15),0 0 0 1px rgba(var(--skin-glow-rgb),.10)}
.sigma-skin-card.is-premium.is-selected{border-color:var(--skin-highlight);box-shadow:0 0 0 2px rgba(var(--skin-glow-rgb),.17),0 17px 38px rgba(var(--skin-rgb),.15)}
.sigma-premium-head>div>span{color:color-mix(in srgb,var(--skin-highlight) 60%,var(--skin-primary))!important}.sigma-premium-head>strong{color:color-mix(in srgb,var(--skin-highlight) 52%,var(--skin-ink))!important}
.sigma-skin-effect{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:5px;padding:3px 7px;border-radius:999px;background:color-mix(in srgb,var(--skin-tint) 72%,white);color:color-mix(in srgb,var(--skin-primary) 82%,var(--skin-ink));font-size:.50rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.sigma-premium-crown{position:absolute;left:8px;top:8px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.90);color:#9b7428;font-size:.65rem;box-shadow:0 3px 10px rgba(0,0,0,.15)}
.sigma-skin-card[data-skin-preview-id="carbon-gold"] .sigma-skin-preview{background:#12110e}.sigma-skin-card[data-skin-preview-id="carbon-gold"] .sigma-skin-preview-body{background:repeating-linear-gradient(135deg,rgba(0,0,0,.045) 0 3px,rgba(255,255,255,.06) 3px 6px),var(--p4)}.sigma-skin-card[data-skin-preview-id="carbon-gold"] .sigma-skin-preview-top{background:linear-gradient(105deg,#0c0c0b,#4b3a1c 54%,#d9b65f 56%,#1c1912 63%,#0d0d0c)}
.sigma-skin-card[data-skin-preview-id="neon-circuit"] .sigma-skin-preview-body{background:linear-gradient(rgba(52,233,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(52,233,255,.10) 1px,transparent 1px),var(--p4);background-size:12px 12px}.sigma-skin-card[data-skin-preview-id="neon-circuit"] .sigma-skin-preview-top{background:linear-gradient(90deg,#06131c,#0b3949 46%,#34e9ff 48%,#6537a6 52%,#07141d)}
.sigma-skin-card[data-skin-preview-id="diamond-frost"] .sigma-skin-preview-body{background:radial-gradient(circle at 78% 18%,rgba(183,239,255,.75),transparent 28%),linear-gradient(145deg,#ffffff,#e7f6fb 55%,#d7edf5)}.sigma-skin-card[data-skin-preview-id="diamond-frost"] .sigma-skin-preview-top{background:linear-gradient(115deg,#102330,#3e7c98 60%,#b7efff)}
.sigma-skin-card[data-skin-preview-id="nebula"] .sigma-skin-preview-body{background:radial-gradient(circle at 18% 26%,rgba(212,108,255,.26) 0 2px,transparent 3px),radial-gradient(circle at 78% 20%,rgba(94,220,255,.21) 0 2px,transparent 3px),radial-gradient(circle at 60% 70%,rgba(212,108,255,.18) 0 1px,transparent 2px),var(--p4);background-size:46px 42px,51px 47px,33px 37px,auto}.sigma-skin-card[data-skin-preview-id="nebula"] .sigma-skin-preview-top{background:linear-gradient(110deg,#17112b,#5b2c83 44%,#b648bc 72%,#22143c)}
.sigma-skin-footer-row{margin-top:24px;padding-top:18px;border-top:1px solid color-mix(in srgb,var(--skin-primary) 14%,#dce3df);display:flex;align-items:center;justify-content:space-between;gap:14px}.sigma-skin-footer-row button{border:1px solid color-mix(in srgb,var(--skin-primary) 22%,#d6ded9);border-radius:12px;background:var(--skin-surface);color:var(--skin-ink);padding:9px 12px;font-weight:850;font-size:.72rem}.sigma-skin-footer-row p{margin:0;color:var(--skin-soft);font-size:.68rem;text-align:right}

/* Premium live finishes */
html[data-skin="carbon-gold"] body:not(.sigma-storm-live){background:radial-gradient(circle at 76% 2%,rgba(230,200,117,.12),transparent 27rem),repeating-linear-gradient(135deg,rgba(32,25,12,.018) 0 4px,rgba(255,255,255,.025) 4px 8px),linear-gradient(180deg,#f4efe2,#fbfaf5 360px,#f4efe2)!important}
html[data-skin="carbon-gold"] .topbar,html[data-skin="carbon-gold"] .bottom-nav{background:radial-gradient(circle at 76% -100%,rgba(230,200,117,.22),transparent 42%),linear-gradient(120deg,#090909,#2b2418 46%,#15120d 73%,#3b301b)!important}
html[data-skin="carbon-gold"] .nav-item.active{background:linear-gradient(145deg,#fffdf7,#eee2c8)!important;box-shadow:inset 0 0 0 1px rgba(216,180,94,.22)!important}
html[data-skin="carbon-gold"] #dashboardView .home-premium-hero{background:radial-gradient(circle at 87% 10%,rgba(255,224,139,.25),transparent 29%),repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 4px,rgba(0,0,0,.028) 4px 8px),linear-gradient(125deg,#090909,#302817 70%,#17140d)!important}
html[data-skin="neon-circuit"] body:not(.sigma-storm-live){background:linear-gradient(rgba(52,233,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(52,233,255,.035) 1px,transparent 1px),radial-gradient(circle at 80% 0,rgba(212,108,255,.075),transparent 25rem),linear-gradient(180deg,#edf9fb,#fbfeff 330px,#edf9fb)!important;background-size:34px 34px,34px 34px,auto,auto!important}
html[data-skin="neon-circuit"] .topbar,html[data-skin="neon-circuit"] .bottom-nav{background:linear-gradient(90deg,rgba(52,233,255,.14) 1px,transparent 1px),linear-gradient(135deg,#051018,#0a2d3b 65%,#12203a)!important;background-size:42px 100%,auto!important;box-shadow:0 12px 34px rgba(7,144,166,.28),inset 0 -1px 0 rgba(52,233,255,.16)!important}
html[data-skin="neon-circuit"] .nav-item.active:after{box-shadow:0 0 14px rgba(52,233,255,.68)!important}
html[data-skin="neon-circuit"] #dashboardView .home-premium-hero{background:linear-gradient(rgba(52,233,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(52,233,255,.055) 1px,transparent 1px),radial-gradient(circle at 82% 9%,rgba(212,108,255,.19),transparent 26%),linear-gradient(135deg,#06131c,#0b4350)!important;background-size:34px 34px,34px 34px,auto,auto!important}
html[data-skin="diamond-frost"] body:not(.sigma-storm-live){background:radial-gradient(circle at 76% 5%,rgba(183,239,255,.36),transparent 25rem),radial-gradient(circle at 9% 30%,rgba(91,169,202,.10),transparent 28rem),linear-gradient(180deg,#eef8fb,#fff 360px,#eef7fa)!important}
html[data-skin="diamond-frost"] .topbar{background:radial-gradient(circle at 75% -70%,rgba(216,248,255,.25),transparent 46%),linear-gradient(125deg,#0d1f2a,#2b6078 72%,#183847)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
html[data-skin="diamond-frost"] .study-hub-card,html[data-skin="diamond-frost"] .sigma-skin-card{background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(234,247,251,.78))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 10px 26px rgba(49,126,157,.08)!important}
html[data-skin="diamond-frost"] #dashboardView .home-premium-hero{background:radial-gradient(circle at 84% 2%,rgba(221,250,255,.32),transparent 30%),linear-gradient(135deg,#0e2431,#3d7188)!important}
html[data-skin="nebula"] body:not(.sigma-storm-live){background:radial-gradient(circle at 14% 7%,rgba(212,108,255,.10),transparent 25rem),radial-gradient(circle at 86% 18%,rgba(88,210,255,.08),transparent 22rem),radial-gradient(circle at 58% 72%,rgba(128,83,199,.065),transparent 26rem),linear-gradient(180deg,#f8f1fb,#fff 340px,#f7effa)!important}
html[data-skin="nebula"] .topbar,html[data-skin="nebula"] .bottom-nav{background:radial-gradient(circle at 18% 40%,rgba(212,108,255,.18) 0 1px,transparent 2px),radial-gradient(circle at 72% 28%,rgba(115,216,255,.16) 0 1px,transparent 2px),linear-gradient(130deg,#141026,#442463 55%,#28163f)!important;background-size:58px 46px,73px 59px,auto!important}
html[data-skin="nebula"] #dashboardView .home-premium-hero{background:radial-gradient(circle at 15% 25%,rgba(212,108,255,.20) 0 2px,transparent 3px),radial-gradient(circle at 80% 18%,rgba(104,211,255,.18) 0 1px,transparent 2px),radial-gradient(circle at 88% 4%,rgba(212,108,255,.20),transparent 31%),linear-gradient(135deg,#17112b,#56307a)!important;background-size:66px 58px,81px 72px,auto,auto!important}

html[data-theme="dark"][data-skin] body:not(.sigma-storm-live){background:linear-gradient(180deg,color-mix(in srgb,var(--skin-chrome-1) 76%,#07100f),color-mix(in srgb,var(--skin-chrome-1) 58%,#080d0d))!important}
html[data-theme="dark"][data-skin] .study-hub-frame,html[data-theme="dark"][data-skin] .sigma-skin-panel{background:linear-gradient(180deg,color-mix(in srgb,var(--skin-chrome-1) 68%,#101615),color-mix(in srgb,var(--skin-chrome-1) 52%,#101615))!important;color:#edf3f1!important}
html[data-theme="dark"][data-skin] .study-hub-header,html[data-theme="dark"][data-skin] .sigma-skin-head{background:color-mix(in srgb,var(--skin-chrome-1) 74%,#111)!important;border-color:rgba(var(--skin-glow-rgb),.16)!important}
html[data-theme="dark"][data-skin] .study-hub-card,html[data-theme="dark"][data-skin] .sigma-skin-card{background:color-mix(in srgb,var(--skin-chrome-2) 33%,#121716)!important;border-color:rgba(var(--skin-glow-rgb),.15)!important;color:#edf3f1!important}
html[data-theme="dark"][data-skin] .study-hub-heading h2,html[data-theme="dark"][data-skin] .study-hub-card strong,html[data-theme="dark"][data-skin] .sigma-skin-head h2,html[data-theme="dark"][data-skin] .sigma-skin-section-head h3,html[data-theme="dark"][data-skin] .sigma-skin-card{color:#edf3f1!important}
html[data-theme="dark"][data-skin] .sigma-skin-close,html[data-theme="dark"][data-skin] .study-hub-header-home,html[data-theme="dark"][data-skin] .study-hub-close,html[data-theme="dark"][data-skin] .sigma-skin-footer-row button{background:rgba(255,255,255,.07)!important;color:#edf3f1!important;border-color:rgba(var(--skin-glow-rgb),.17)!important}
html[data-theme="dark"][data-skin] .sigma-skin-card-title em{background:rgba(var(--skin-glow-rgb),.10)!important;color:color-mix(in srgb,var(--skin-accent) 72%,white)!important}

html[data-theme="dark"][data-skin="carbon-gold"] .study-hub-frame,html[data-theme="dark"][data-skin="carbon-gold"] .sigma-skin-panel{background:linear-gradient(180deg,#17140f,#0d0d0c)!important}
html[data-theme="dark"][data-skin="carbon-gold"] .study-hub-card,html[data-theme="dark"][data-skin="carbon-gold"] .sigma-skin-card{background:linear-gradient(145deg,#201b12,#13120f)!important;border-color:rgba(230,200,117,.18)!important}
html[data-theme="dark"][data-skin="neon-circuit"] .study-hub-card,html[data-theme="dark"][data-skin="neon-circuit"] .sigma-skin-card{background:linear-gradient(145deg,rgba(8,35,45,.95),rgba(7,20,28,.98))!important;border-color:rgba(52,233,255,.18)!important}
html[data-theme="dark"][data-skin="diamond-frost"] .study-hub-card,html[data-theme="dark"][data-skin="diamond-frost"] .sigma-skin-card{background:linear-gradient(145deg,rgba(35,66,80,.74),rgba(13,31,42,.88))!important;border-color:rgba(183,239,255,.18)!important}
html[data-theme="dark"][data-skin="nebula"] .study-hub-card,html[data-theme="dark"][data-skin="nebula"] .sigma-skin-card{background:linear-gradient(145deg,rgba(62,33,83,.82),rgba(25,19,47,.96))!important;border-color:rgba(212,108,255,.17)!important}

@media(max-width:820px){
  .sigma-skin-sheet{padding:0;align-items:stretch;background:var(--skin-paper);backdrop-filter:none;-webkit-backdrop-filter:none}
  .sigma-skin-panel{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;box-shadow:none}
  .sigma-skin-head{padding:max(14px,env(safe-area-inset-top)) 14px 13px;grid-template-columns:1fr 40px}.sigma-skin-close{width:38px;height:38px}.sigma-skin-head h2{font-size:1.35rem}.sigma-skin-head p{font-size:.7rem}
  .sigma-skin-scroll{padding:16px 13px max(26px,calc(env(safe-area-inset-bottom) + 20px))}.sigma-skin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.sigma-skin-card{grid-template-rows:92px auto;padding:8px;border-radius:17px}.sigma-skin-card-copy small{font-size:.59rem}.sigma-skin-grid-premium{grid-template-columns:repeat(2,minmax(0,1fr))}.sigma-skin-footer-row{align-items:flex-start;flex-direction:column}.sigma-skin-footer-row p{text-align:left}
}
@media(max-width:410px){.sigma-skin-grid,.sigma-skin-grid-premium{grid-template-columns:1fr}.sigma-skin-card{grid-template-columns:112px 1fr;grid-template-rows:auto;align-items:center}.sigma-skin-preview{height:86px}.sigma-skin-card-copy small{min-height:0}}
@media(prefers-reduced-motion:reduce){.sigma-skin-sheet,.sigma-skin-card,.sigma-skin-state{transition:none!important}}

@media (max-width:420px){
  #timesGameView .storm-shop-shelves{gap:7px}
  #timesGameView .storm-shop-slot{min-height:178px;padding:9px;gap:7px}
  #timesGameView .storm-shop-slot-top{display:grid;gap:2px}
  #timesGameView .storm-shop-slot-price{font-size:9px}
  #timesGameView .storm-shop-slot-icon{width:43px;height:43px}
  #timesGameView .storm-shop-slot-copy strong{font-size:12px}
  #timesGameView .storm-shop-slot-copy span{font-size:9px;line-height:1.3}
  #timesGameView .storm-shop-slot>button{padding:9px 7px;font-size:9px}
}


/* ============================================================
   V52.24.30 • Storm Desktop True Full-Height Hard Lock (preserved from V52.24.26)
   Windows/PWA desktop safeguard: do not allow a stale visualViewport
   measurement to leave unused black space below the live Storm game.
   Desktop only; tablet/mobile viewport behavior is unchanged.
   ============================================================ */
html[data-display-layout="desktop"].sigma-storm-live-root,
html[data-display-layout="desktop"].sigma-storm-live-root body.sigma-storm-live{
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
}
html[data-display-layout="desktop"] body.sigma-storm-live main{
  inset:0!important;
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
}
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running,
html[data-display-layout="desktop"] #timesGameView.storm-running:fullscreen,
html[data-display-layout="desktop"] #timesGameView.storm-running:-webkit-full-screen{
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
}
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running .times-game-shell,
html[data-display-layout="desktop"] #timesGameView.storm-running:fullscreen .times-game-shell,
html[data-display-layout="desktop"] #timesGameView.storm-running:-webkit-full-screen .times-game-shell{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
}
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running .times-arena-wrap{
  min-height:0!important;
  height:100%!important;
}


/* ===== GradeRealm V52.24.30 Premium Focused Course Hub ===== */
.graderealm-topbar-title{display:none}
body.graderealm-course-hub-focus .maths-topbar-title{display:none}
body.graderealm-course-hub-focus .graderealm-topbar-title{display:block}
body.graderealm-course-hub-focus .topbar .sigma-mark{background:linear-gradient(145deg,#162e3c,#0b1721);border-color:rgba(126,228,255,.34);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 0 28px rgba(78,207,255,.10)}
body.graderealm-course-hub-focus .graderealm-top-courses{display:none}

.graderealm-top-courses{border:1px solid rgba(255,255,255,.18);background:rgba(10,22,35,.72);color:var(--text,#eef6ff);border-radius:12px;padding:9px 13px;font-weight:800;letter-spacing:.02em;cursor:pointer}
.graderealm-top-courses:hover{transform:translateY(-1px);border-color:rgba(77,220,255,.52)}
#courseHubView{height:calc(100dvh - 76px);min-height:620px;overflow:hidden;padding:clamp(16px,2.2vw,28px);background:radial-gradient(circle at 14% 8%,rgba(32,149,202,.07),transparent 26%),radial-gradient(circle at 88% 84%,rgba(124,88,255,.055),transparent 30%)}
.graderealm-hub-shell{width:min(1220px,100%);height:100%;margin:0 auto;display:flex;flex-direction:column}
.graderealm-hub-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:4px 2px 14px}
.graderealm-premium-kicker{color:#55cceb!important;letter-spacing:.18em;font-size:10px!important;font-weight:900;margin-bottom:7px!important}
.graderealm-hub-head h2{margin:0;color:#f7fbff;font-size:clamp(28px,3.3vw,44px);line-height:1.04;letter-spacing:-.035em;text-wrap:balance}
.graderealm-hub-subtitle{margin:8px 0 0;color:#b8c9d5;font-size:14px;line-height:1.48;max-width:700px}
.graderealm-hub-actions{display:flex;align-items:center;flex:0 0 auto}
.graderealm-refresh-link{appearance:none;border:1px solid rgba(176,214,231,.18);background:rgba(9,25,36,.58);color:#cde2ec;border-radius:999px;padding:8px 13px;font:800 11px/1 inherit;letter-spacing:.02em;cursor:pointer;transition:.18s ease}
.graderealm-refresh-link:hover{border-color:rgba(92,211,245,.45);color:#fff;transform:translateY(-1px)}
.graderealm-course-status{height:22px;padding:0 2px 8px;color:#71909f;font-size:10px;letter-spacing:.02em}.graderealm-course-status.is-offline{color:#d9a96b}
.graderealm-course-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.72fr) minmax(330px,.78fr);gap:18px;margin:0}

.graderealm-primary-course{position:relative;overflow:hidden;min-height:0;border-radius:26px;border:1px solid rgba(151,224,249,.22);background:linear-gradient(145deg,rgba(8,25,37,.99),rgba(8,36,54,.98) 58%,rgba(11,28,44,.99));box-shadow:0 26px 72px rgba(1,9,16,.22),inset 0 1px 0 rgba(255,255,255,.035);padding:clamp(24px,3vw,38px);display:flex;flex-direction:column;color:#f7fbff;isolation:isolate}
.graderealm-primary-course:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 50%,rgba(86,211,249,.04) 50.2% 50.6%,transparent 50.8%),linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:auto,34px 34px,34px 34px;pointer-events:none;z-index:-1}
.graderealm-primary-glow{position:absolute;width:460px;height:460px;right:-150px;top:-180px;border-radius:50%;background:radial-gradient(circle,rgba(38,190,244,.24),rgba(38,190,244,.07) 38%,transparent 68%);filter:blur(3px);z-index:-1}
.graderealm-primary-top{display:flex;align-items:center;justify-content:space-between}
.graderealm-primary-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;background:linear-gradient(145deg,rgba(38,167,215,.24),rgba(17,62,80,.34));border:1px solid rgba(116,223,255,.28);font-size:30px;font-weight:900;color:#ecfbff;box-shadow:inset 0 0 24px rgba(73,214,255,.07)}
.graderealm-premium-badge{font-size:10px;letter-spacing:.14em;font-weight:900;padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.08)}.graderealm-premium-badge.is-live{color:#9df6d8;background:rgba(26,164,116,.11);border-color:rgba(84,225,169,.18)}.graderealm-premium-badge.is-locked{color:#ffd0a0;background:rgba(176,112,50,.11)}
.graderealm-primary-copy{margin:auto 0;padding:18px 0}.graderealm-primary-copy small{display:block;color:#62d5f2;font-size:10px;letter-spacing:.18em;font-weight:900;margin-bottom:8px}.graderealm-primary-copy h3{font-size:clamp(35px,4.8vw,64px);line-height:.98;letter-spacing:-.05em;margin:0 0 14px;max-width:720px;color:#fff}.graderealm-primary-copy p{margin:0;max-width:680px;color:#c4d5de;font-size:clamp(14px,1.5vw,17px);line-height:1.58;font-weight:520}
.graderealm-primary-meta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.graderealm-primary-meta span{min-width:112px;padding:10px 13px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.065)}.graderealm-primary-meta strong{display:block;font-size:13px;color:#f6fbff}.graderealm-primary-meta small{display:block;margin-top:2px;color:#8299a6;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
.graderealm-primary-foot{margin-top:0}.graderealm-continue-btn{width:100%;appearance:none;border:1px solid rgba(111,225,255,.3);background:linear-gradient(105deg,#087eb4,#0ba7d1 54%,#42c7e5);color:#fff;border-radius:16px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;font:900 15px/1 inherit;letter-spacing:.01em;cursor:pointer;box-shadow:0 13px 30px rgba(0,139,190,.18),inset 0 1px 0 rgba(255,255,255,.18);transition:.2s ease}.graderealm-continue-btn strong{font-size:22px;font-weight:500}.graderealm-continue-btn:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 17px 35px rgba(0,139,190,.25)}.graderealm-continue-btn.disabled{background:rgba(255,255,255,.06);box-shadow:none;color:#91a4ae;cursor:not-allowed}

.graderealm-future-panel{min-height:0;border-radius:26px;padding:20px;background:linear-gradient(160deg,rgba(16,34,46,.94),rgba(9,22,32,.98));border:1px solid rgba(255,255,255,.09);box-shadow:0 24px 60px rgba(0,0,0,.15);display:flex;flex-direction:column;color:#fff}
.graderealm-future-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:2px 2px 15px}.graderealm-future-heading small{display:block;color:#8198a5;font-size:9px;letter-spacing:.16em;font-weight:900;margin-bottom:5px}.graderealm-future-heading h3{font-size:20px;letter-spacing:-.025em;margin:0;color:#f5fbff}.graderealm-future-heading>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(96,211,243,.08);border:1px solid rgba(96,211,243,.14);color:#9feafa;font-weight:900;font-size:12px}
.graderealm-future-list{display:grid;gap:9px}.graderealm-future-course{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border-radius:17px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06);transition:.18s ease}.graderealm-future-course:hover{background:rgba(255,255,255,.052);border-color:rgba(105,205,235,.14)}.graderealm-future-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:rgba(81,187,220,.08);border:1px solid rgba(97,204,235,.12);color:#a9e8f8;font-size:19px}.graderealm-future-copy{min-width:0}.graderealm-future-copy small{display:block;color:#6f8b99;font-size:8px;letter-spacing:.12em;font-weight:900}.graderealm-future-copy h4{margin:3px 0 2px;color:#f2f8fb;font-size:15px;letter-spacing:-.01em}.graderealm-future-copy p{margin:0;color:#9eb2bd;font-size:11px;line-height:1.32}.graderealm-coming-pill{font-size:8px;white-space:nowrap;letter-spacing:.1em;font-weight:900;color:#b5c4cb;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.07);padding:6px 7px;border-radius:999px}
.graderealm-future-note{margin:auto 2px 0;padding-top:14px;color:#718894;font-size:10px;line-height:1.45}

@media(max-width:900px){#courseHubView{height:auto;min-height:calc(100dvh - 70px);overflow:visible}.graderealm-course-grid{grid-template-columns:1fr}.graderealm-primary-course{min-height:480px}.graderealm-future-panel{min-height:auto}.graderealm-hub-head{align-items:flex-start}.graderealm-hub-subtitle{max-width:560px}}
@media(max-width:620px){#courseHubView{padding:12px}.graderealm-hub-head{display:block;padding-bottom:10px}.graderealm-hub-head h2{font-size:30px}.graderealm-hub-subtitle{font-size:13px}.graderealm-hub-actions{margin-top:10px}.graderealm-course-grid{gap:12px}.graderealm-primary-course{min-height:430px;border-radius:22px;padding:21px}.graderealm-primary-copy h3{font-size:39px}.graderealm-primary-meta span{min-width:88px;flex:1}.graderealm-future-panel{border-radius:22px;padding:15px}.graderealm-future-course{grid-template-columns:40px minmax(0,1fr)}.graderealm-coming-pill{grid-column:2;justify-self:start}.graderealm-future-icon{width:40px;height:40px}.graderealm-top-courses{padding:8px 10px;font-size:12px}}


/* ============================================================
   V52.24.30 • Premium GradeRealm Course Hub Rendering Fix
   Hard-locks the hub's contrast and layout independently of the
   learner's selected Sigma theme, and prevents a slow cloud call
   from leaving an empty course area.
   ============================================================ */
#courseHubView{
  color:#f4f9fc!important;
  background:
    radial-gradient(circle at 12% 5%,rgba(18,139,190,.18),transparent 30%),
    radial-gradient(circle at 88% 84%,rgba(84,73,190,.12),transparent 32%),
    linear-gradient(155deg,#06111b 0%,#081722 48%,#07111a 100%)!important;
}
#courseHubView .graderealm-hub-shell{color:#f4f9fc!important}
#courseHubView .graderealm-hub-head h2{color:#ffffff!important;text-shadow:0 1px 16px rgba(0,0,0,.28)}
#courseHubView .graderealm-hub-subtitle{color:#c9d8e1!important;font-weight:560}
#courseHubView .graderealm-premium-kicker{color:#71ddf4!important}
#courseHubView .graderealm-course-status{color:#91a9b6!important}
#courseHubView .graderealm-primary-course{
  background:linear-gradient(145deg,#071a28 0%,#092c40 58%,#0a1c2b 100%)!important;
  border-color:rgba(126,221,252,.28)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
#courseHubView .graderealm-primary-copy h3{color:#fff!important}
#courseHubView .graderealm-primary-copy p{color:#d0dee5!important}
#courseHubView .graderealm-primary-meta strong{color:#fff!important}
#courseHubView .graderealm-primary-meta small{color:#a3b8c3!important}
#courseHubView .graderealm-future-panel{
  background:linear-gradient(160deg,#102635 0%,#091923 100%)!important;
  border-color:rgba(255,255,255,.11)!important;
  box-shadow:0 26px 68px rgba(0,0,0,.34)!important;
}
#courseHubView .graderealm-future-heading h3,
#courseHubView .graderealm-future-copy h4{color:#fff!important}
#courseHubView .graderealm-future-copy p{color:#b7c9d2!important}
#courseHubView .graderealm-future-copy small,
#courseHubView .graderealm-future-heading small{color:#8eabb8!important}
#courseHubView .graderealm-future-course{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.08)!important}
#courseHubView .graderealm-future-note{color:#93aab5!important}
#courseHubView .graderealm-refresh-link{color:#dff5fb!important;background:#102b39!important;border-color:rgba(120,214,241,.25)!important}
body.graderealm-course-hub-focus .topbar{
  background:linear-gradient(90deg,#07131d,#0a2130 58%,#091823)!important;
  border-bottom-color:rgba(112,216,247,.16)!important;
}
body.graderealm-course-hub-focus .topbar .eyebrow{color:#88dff4!important}
body.graderealm-course-hub-focus .topbar h1{color:#fff!important}

@media(min-width:901px){
  #courseHubView{height:calc(100dvh - 74px)!important;min-height:560px!important;padding:18px 24px!important;overflow:hidden!important}
  #courseHubView .graderealm-hub-head{padding:2px 2px 12px!important}
  #courseHubView .graderealm-course-grid{grid-template-columns:minmax(0,1.68fr) minmax(320px,.82fr)!important;gap:16px!important;min-height:0!important}
  #courseHubView .graderealm-primary-course{padding:clamp(22px,2.4vw,34px)!important}
  #courseHubView .graderealm-primary-copy h3{font-size:clamp(34px,4.2vw,58px)!important}
  #courseHubView .graderealm-future-panel{padding:18px!important}
}

/* ============================================================
   V52.24.30 • GradeRealm One-Screen Premium Fit
   Desktop-only compression pass: keeps the complete GradeRealm
   hierarchy, active Maths CTA and all future pathways visible in
   one viewport without sacrificing premium spacing or legibility.
   ============================================================ */
@media(min-width:901px){
  #courseHubView{
    height:calc(100dvh - 72px)!important;
    min-height:500px!important;
    padding:12px 22px 14px!important;
    overflow:hidden!important;
  }
  #courseHubView .graderealm-hub-shell{
    width:min(1180px,100%)!important;
    height:100%!important;
  }
  #courseHubView .graderealm-hub-head{
    min-height:0!important;
    padding:0 2px 8px!important;
    align-items:center!important;
    gap:16px!important;
  }
  #courseHubView .graderealm-premium-kicker{
    margin:0 0 3px!important;
    font-size:8px!important;
    line-height:1.1!important;
  }
  #courseHubView .graderealm-hub-head h2{
    font-size:clamp(22px,2.25vw,32px)!important;
    line-height:1.02!important;
    margin:0!important;
  }
  #courseHubView .graderealm-hub-subtitle{
    margin:4px 0 0!important;
    font-size:12px!important;
    line-height:1.3!important;
  }
  #courseHubView .graderealm-refresh-link{
    padding:7px 11px!important;
    font-size:10px!important;
  }
  #courseHubView .graderealm-course-status{
    height:15px!important;
    padding:0 2px 5px!important;
    font-size:9px!important;
    line-height:1!important;
  }
  #courseHubView .graderealm-course-grid{
    flex:1 1 auto!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1.78fr) minmax(300px,.72fr)!important;
    gap:14px!important;
    align-items:stretch!important;
  }
  #courseHubView .graderealm-primary-course{
    min-height:0!important;
    height:100%!important;
    padding:18px 22px!important;
    border-radius:22px!important;
  }
  #courseHubView .graderealm-primary-top{
    min-height:42px!important;
  }
  #courseHubView .graderealm-primary-icon{
    width:48px!important;
    height:48px!important;
    border-radius:14px!important;
    font-size:24px!important;
  }
  #courseHubView .graderealm-premium-badge{
    font-size:8px!important;
    padding:6px 9px!important;
  }
  #courseHubView .graderealm-primary-copy{
    margin:0!important;
    padding:11px 0 9px!important;
  }
  #courseHubView .graderealm-primary-copy small{
    margin-bottom:5px!important;
    font-size:8px!important;
  }
  #courseHubView .graderealm-primary-copy h3{
    max-width:680px!important;
    font-size:clamp(30px,3.55vw,48px)!important;
    line-height:.96!important;
    margin:0 0 8px!important;
  }
  #courseHubView .graderealm-primary-copy p{
    max-width:650px!important;
    font-size:clamp(12px,1.08vw,14px)!important;
    line-height:1.38!important;
  }
  #courseHubView .graderealm-primary-meta{
    gap:8px!important;
    margin:0 0 10px!important;
  }
  #courseHubView .graderealm-primary-meta span{
    min-width:92px!important;
    padding:7px 10px!important;
    border-radius:11px!important;
  }
  #courseHubView .graderealm-primary-meta strong{
    font-size:11px!important;
  }
  #courseHubView .graderealm-primary-meta small{
    margin-top:1px!important;
    font-size:7px!important;
  }
  #courseHubView .graderealm-primary-foot{
    margin-top:auto!important;
  }
  #courseHubView .graderealm-continue-btn{
    min-height:42px!important;
    padding:11px 15px!important;
    border-radius:13px!important;
    font-size:13px!important;
  }
  #courseHubView .graderealm-continue-btn strong{
    font-size:19px!important;
  }
  #courseHubView .graderealm-future-panel{
    min-height:0!important;
    height:100%!important;
    padding:14px!important;
    border-radius:22px!important;
  }
  #courseHubView .graderealm-future-heading{
    padding:0 1px 9px!important;
    gap:8px!important;
  }
  #courseHubView .graderealm-future-heading small{
    margin-bottom:3px!important;
    font-size:7px!important;
  }
  #courseHubView .graderealm-future-heading h3{
    font-size:16px!important;
    line-height:1.08!important;
  }
  #courseHubView .graderealm-future-heading>span{
    width:27px!important;
    height:27px!important;
    border-radius:9px!important;
    font-size:10px!important;
  }
  #courseHubView .graderealm-future-list{
    gap:7px!important;
  }
  #courseHubView .graderealm-future-course{
    grid-template-columns:36px minmax(0,1fr) auto!important;
    gap:9px!important;
    padding:9px 10px!important;
    border-radius:14px!important;
  }
  #courseHubView .graderealm-future-icon{
    width:36px!important;
    height:36px!important;
    border-radius:11px!important;
    font-size:16px!important;
  }
  #courseHubView .graderealm-future-copy small{
    font-size:6.5px!important;
  }
  #courseHubView .graderealm-future-copy h4{
    margin:2px 0 1px!important;
    font-size:13px!important;
  }
  #courseHubView .graderealm-future-copy p{
    font-size:9px!important;
    line-height:1.2!important;
  }
  #courseHubView .graderealm-coming-pill{
    font-size:6.5px!important;
    padding:5px 6px!important;
  }
  #courseHubView .graderealm-future-note{
    margin:auto 1px 0!important;
    padding-top:8px!important;
    font-size:8px!important;
    line-height:1.3!important;
  }
}

/* Extra safety for shorter Windows laptop viewports. */
@media(min-width:901px) and (max-height:760px){
  #courseHubView{padding-top:9px!important;padding-bottom:10px!important}
  #courseHubView .graderealm-hub-head h2{font-size:26px!important}
  #courseHubView .graderealm-hub-subtitle{font-size:11px!important}
  #courseHubView .graderealm-primary-course{padding:15px 19px!important}
  #courseHubView .graderealm-primary-icon{width:44px!important;height:44px!important;font-size:22px!important}
  #courseHubView .graderealm-primary-copy{padding:8px 0 7px!important}
  #courseHubView .graderealm-primary-copy h3{font-size:38px!important;margin-bottom:6px!important}
  #courseHubView .graderealm-primary-copy p{font-size:12px!important;line-height:1.3!important}
  #courseHubView .graderealm-primary-meta{margin-bottom:8px!important}
  #courseHubView .graderealm-primary-meta span{padding:6px 9px!important}
  #courseHubView .graderealm-continue-btn{min-height:39px!important;padding:9px 14px!important}
  #courseHubView .graderealm-future-panel{padding:12px!important}
  #courseHubView .graderealm-future-course{padding:8px 9px!important}
  #courseHubView .graderealm-future-note{display:none!important}
}

/* ============================================================
   V52.24.31 • GradeRealm Active Course Focus
   Future courses are intentionally reduced to a discreet roadmap
   strip so the live Maths course owns the visual hierarchy.
   ============================================================ */
#courseHubView .graderealm-course-grid{
  grid-template-columns:1fr!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  gap:12px!important;
}
#courseHubView .graderealm-primary-course{
  width:100%!important;
  min-height:0!important;
}
#courseHubView .graderealm-roadmap-strip{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:46px;
  padding:10px 14px;
  border:1px solid rgba(130,211,236,.13);
  border-radius:16px;
  background:linear-gradient(90deg,rgba(10,28,40,.88),rgba(8,22,32,.92));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  color:#dce9ef;
  overflow:hidden;
}
#courseHubView .graderealm-roadmap-label{
  flex:0 0 auto;
  font-size:8px;
  font-weight:900;
  letter-spacing:.15em;
  color:#76d9ee;
  white-space:nowrap;
}
#courseHubView .graderealm-roadmap-courses{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  min-width:0;
}
#courseHubView .graderealm-roadmap-item{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  font-weight:750;
  color:#d7e4ea;
  white-space:nowrap;
}
#courseHubView .graderealm-roadmap-icon{
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:7px;
  background:rgba(80,183,219,.09);
  border:1px solid rgba(101,204,235,.11);
  color:#9de8f7;
  font-size:10px;
}
#courseHubView .graderealm-roadmap-dot{color:#506d7a;font-size:10px}

@media(min-width:901px){
  #courseHubView .graderealm-primary-course{padding:20px 26px!important}
  #courseHubView .graderealm-primary-copy h3{max-width:760px!important;font-size:clamp(34px,4vw,54px)!important}
  #courseHubView .graderealm-primary-copy p{max-width:720px!important}
  #courseHubView .graderealm-roadmap-strip{min-height:44px!important;padding:8px 12px!important}
}
@media(max-width:700px){
  #courseHubView .graderealm-roadmap-strip{align-items:flex-start;flex-direction:column;gap:7px;padding:11px 12px}
  #courseHubView .graderealm-roadmap-courses{gap:7px 9px}
  #courseHubView .graderealm-roadmap-dot{display:none}
}


/* ============================================================
   V52.24.32 • GradeRealm Single Active Course Hub
   One active course only. No future pathways or coming-soon UI.
   Robust single-card viewport layout, independent of legacy grid rules.
   ============================================================ */
#courseHubView .graderealm-roadmap-strip,
#courseHubView .graderealm-future-panel,
#courseHubView .graderealm-future-list,
#courseHubView .graderealm-future-course{display:none!important}
#courseHubView .graderealm-course-grid{
  display:block!important;
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  margin:0!important;
}
#courseHubView .graderealm-primary-course{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  box-sizing:border-box!important;
  margin:0!important;
}
#courseHubView .graderealm-hub-head{padding-bottom:8px!important}
#courseHubView .graderealm-hub-subtitle{max-width:620px!important}
@media(min-width:901px){
  #courseHubView{height:calc(100dvh - 72px)!important;min-height:500px!important;padding:12px 22px 14px!important;overflow:hidden!important}
  #courseHubView .graderealm-hub-shell{width:min(1120px,100%)!important;height:100%!important}
  #courseHubView .graderealm-course-status{height:14px!important;padding:0 2px 4px!important}
  #courseHubView .graderealm-primary-course{padding:24px 30px!important;border-radius:24px!important}
  #courseHubView .graderealm-primary-copy{margin:auto 0!important;padding:14px 0!important}
  #courseHubView .graderealm-primary-copy h3{font-size:clamp(38px,4.7vw,62px)!important;max-width:780px!important;margin-bottom:10px!important}
  #courseHubView .graderealm-primary-copy p{font-size:14px!important;max-width:700px!important;line-height:1.45!important}
  #courseHubView .graderealm-primary-meta{margin-bottom:14px!important}
  #courseHubView .graderealm-continue-btn{min-height:48px!important;padding:13px 17px!important;font-size:14px!important}
}
@media(min-width:901px) and (max-height:760px){
  #courseHubView .graderealm-primary-course{padding:19px 24px!important}
  #courseHubView .graderealm-primary-copy{padding:9px 0!important}
  #courseHubView .graderealm-primary-copy h3{font-size:42px!important;margin-bottom:7px!important}
  #courseHubView .graderealm-primary-meta{margin-bottom:9px!important}
  #courseHubView .graderealm-continue-btn{min-height:42px!important;padding:10px 15px!important}
}
@media(max-width:900px){
  #courseHubView .graderealm-course-grid{display:block!important}
  #courseHubView .graderealm-primary-course{height:auto!important;min-height:430px!important}
}


/* ============================================================
   V52.24.34 • GradeRealm Analytics + Update Coherence
   Removes dead vertical space and keeps the active course action
   close to the course information on desktop/laptop screens.
   ============================================================ */
@media(min-width:901px){
  #courseHubView{
    height:calc(100dvh - 72px)!important;
    min-height:500px!important;
    padding:12px 22px 18px!important;
    overflow:hidden!important;
  }
  #courseHubView .graderealm-hub-shell{
    width:min(1080px,100%)!important;
    height:auto!important;
    min-height:0!important;
    justify-content:flex-start!important;
  }
  #courseHubView .graderealm-hub-head{
    padding:0 2px 7px!important;
    align-items:center!important;
  }
  #courseHubView .graderealm-premium-kicker{margin-bottom:2px!important}
  #courseHubView .graderealm-hub-head h2{
    font-size:clamp(22px,2.2vw,30px)!important;
  }
  #courseHubView .graderealm-hub-subtitle{
    margin-top:3px!important;
    font-size:11px!important;
    line-height:1.28!important;
  }
  #courseHubView .graderealm-course-status{
    height:14px!important;
    padding:0 2px 4px!important;
  }
  #courseHubView .graderealm-course-grid{
    display:block!important;
    flex:0 0 auto!important;
    min-height:0!important;
  }
  #courseHubView .graderealm-primary-course{
    display:flex!important;
    height:auto!important;
    min-height:0!important;
    padding:20px 24px 22px!important;
    border-radius:24px!important;
    gap:0!important;
  }
  #courseHubView .graderealm-primary-top{
    min-height:0!important;
    margin-bottom:10px!important;
  }
  #courseHubView .graderealm-primary-icon{
    width:48px!important;height:48px!important;border-radius:14px!important;font-size:24px!important;
  }
  #courseHubView .graderealm-primary-copy{
    margin:0!important;
    padding:0!important;
  }
  #courseHubView .graderealm-primary-copy small{margin-bottom:4px!important}
  #courseHubView .graderealm-primary-copy h3{
    font-size:clamp(36px,4vw,52px)!important;
    line-height:.98!important;
    margin:0 0 7px!important;
    max-width:780px!important;
  }
  #courseHubView .graderealm-primary-copy p{
    max-width:720px!important;
    font-size:13px!important;
    line-height:1.4!important;
  }
  #courseHubView .graderealm-primary-meta{
    margin:14px 0 14px!important;
    gap:8px!important;
  }
  #courseHubView .graderealm-primary-meta span{
    min-width:96px!important;
    padding:7px 10px!important;
    border-radius:11px!important;
  }
  #courseHubView .graderealm-primary-foot{
    margin-top:0!important;
  }
  #courseHubView .graderealm-continue-btn{
    min-height:46px!important;
    padding:12px 16px!important;
    border-radius:14px!important;
    font-size:13px!important;
  }
}
@media(min-width:901px) and (max-height:700px){
  #courseHubView{padding-top:8px!important;padding-bottom:10px!important}
  #courseHubView .graderealm-hub-head{padding-bottom:5px!important}
  #courseHubView .graderealm-primary-course{padding:16px 20px 18px!important}
  #courseHubView .graderealm-primary-top{margin-bottom:7px!important}
  #courseHubView .graderealm-primary-copy h3{font-size:38px!important}
  #courseHubView .graderealm-primary-meta{margin:10px 0!important}
  #courseHubView .graderealm-continue-btn{min-height:42px!important;padding:10px 14px!important}
}

/* V52.24.42 — advanced graphical inequalities + interactive inequality lab */
.inequality-topic-lab .graph-lab-wrap{max-width:610px;margin:14px auto 0}.ineq-lab-toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:end}.ineq-lab-toolbar label{display:flex;flex-direction:column;gap:4px;color:#9abed2;font-size:.65rem;font-weight:900;text-transform:uppercase}.ineq-lab-toolbar input[type=number],.ineq-lab-toolbar select{height:40px;width:92px;border:1px solid rgba(103,222,250,.32);border-radius:10px;background:#061522;color:#fff;padding:6px 9px;font-size:1rem;font-weight:900}.ineq-lab-toolbar .ineq-check{flex-direction:row;align-items:center;min-height:40px;text-transform:none;font-size:.75rem}.ineq-question{margin:12px 0 4px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);color:#f4fbff;text-align:center;font-size:1.05rem;font-weight:950}.inequality-svg{background:#f8fbff;border-radius:14px;touch-action:manipulation}.inequality-svg.challenge{cursor:crosshair}.ineq-shade{fill:rgba(80,170,235,.25)}.ineq-boundary{stroke:#182b3a;stroke-width:3.2}.ineq-boundary.dashed{stroke-dasharray:10 8}.ineq-boundary.secondary{stroke:#8a4b18}.ineq-boundary.tertiary{stroke:#6c3a8f}.ineq-user-point{fill:#9b35e8;stroke:#fff;stroke-width:2}.ineq-point-label{font-size:11px;fill:#492063;font-weight:900}.ineq-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.ineq-choice-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:12px}.ineq-choice-row span{font-size:.7rem;color:#9abed2;font-weight:900}.ineq-choice-row button{min-height:40px;border:1px solid rgba(103,222,250,.25);border-radius:10px;background:#071b2a;color:#dff7ff;padding:7px 12px;font-weight:900}.ineq-choice-row button.selected{border-color:#69eaff;background:rgba(69,220,245,.14)}.ineq-feedback{margin:10px 0 0;padding:10px 12px;border-radius:11px;background:rgba(117,92,255,.1);color:#dff8ff;font-size:.78rem;font-weight:800}.ineq-boundary-key{display:grid;gap:8px;margin-top:14px;color:#a9cad9;font-size:.72rem}.ineq-boundary-key span{display:flex;align-items:center;gap:9px}.ineq-boundary-key i{display:inline-block;width:42px;border-top:3px solid #dceff5}.ineq-boundary-key i.dashed{border-top-style:dashed}
@media(max-width:520px){.ineq-lab-toolbar label{flex:1 1 80px}.ineq-lab-toolbar input[type=number],.ineq-lab-toolbar select{width:100%}.ineq-question{font-size:.88rem}.ineq-actions .btn{flex:1 1 140px}.ineq-choice-row button{flex:1 1 72px}}
/* V52.24.42 — premium interactive graphical inequalities worksheets */
.worksheet-graph-host{margin:16px 0 10px}.worksheet-ineq-card{border:1px solid rgba(112,141,181,.32);border-radius:22px;background:linear-gradient(180deg,rgba(10,21,38,.96),rgba(6,14,27,.98));overflow:hidden;color:#eef7ff}.worksheet-ineq-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(145,174,210,.2)}.worksheet-ineq-head>div:first-child{display:grid;gap:2px}.worksheet-ineq-head small{font-size:10px;font-weight:900;letter-spacing:.14em;color:#8fb8d7}.worksheet-ineq-head strong{font-size:15px}.worksheet-ineq-progress{display:flex;gap:6px}.worksheet-ineq-progress span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13)}.worksheet-ineq-progress span.active{background:rgba(118,216,255,.16);border-color:rgba(118,216,255,.7)}.worksheet-ineq-progress span.done{background:rgba(120,224,167,.16);border-color:rgba(120,224,167,.65)}.worksheet-ineq-stage{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:16px;padding:16px}.worksheet-ineq-svg{width:100%;aspect-ratio:1/1;max-height:470px;border-radius:18px;touch-action:manipulation;cursor:crosshair;background:#f8fbff;border:1px solid rgba(255,255,255,.12)}.worksheet-ineq-bg{fill:#fbfdff}.worksheet-ineq-grid line{stroke:#d9e2ec;stroke-width:1}.worksheet-ineq-axis{stroke:#4b6278;stroke-width:2.1}.worksheet-ineq-labels text{font-size:9px;fill:#557087;font-weight:700}.worksheet-ineq-user-point circle{fill:#192f4a;stroke:#fff;stroke-width:2}.worksheet-ineq-user-point text{font-size:10px;fill:#152538;font-weight:900;paint-order:stroke;stroke:#fff;stroke-width:3}.worksheet-ineq-boundary{stroke-width:4;stroke-linecap:round;fill:none}.worksheet-ineq-boundary.solid{stroke-dasharray:none}.worksheet-ineq-boundary.dashed{stroke-dasharray:10 8}.worksheet-ineq-boundary.line-0{stroke:#6b4fd3}.worksheet-ineq-boundary.line-1{stroke:#cb5b3d}.worksheet-ineq-boundary.line-2{stroke:#238a72}.worksheet-ineq-shade{opacity:.16}.worksheet-ineq-shade.shade-0{fill:#7257d4}.worksheet-ineq-shade.shade-1{fill:#d56a4a}.worksheet-ineq-shade.shade-2{fill:#2a9b80}.worksheet-ineq-side{display:flex;flex-direction:column;gap:14px;min-width:0}.worksheet-ineq-task{display:grid;gap:5px;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.035)}.worksheet-ineq-task small{font-size:10px;letter-spacing:.12em;font-weight:900;color:#8fb8d7}.worksheet-ineq-task strong{font-size:24px;line-height:1.1}.worksheet-ineq-task span{font-size:12px;color:#b8c8d8;line-height:1.45}.worksheet-ineq-controls{display:grid;gap:8px}.worksheet-ineq-controls>span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#b5c5d4}.worksheet-ineq-controls>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.worksheet-ineq-controls button{min-height:42px;border-radius:12px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);color:#eef7ff;font-weight:800;padding:8px 10px}.worksheet-ineq-controls button.selected{border-color:#88cbe9;background:rgba(105,193,232,.16);box-shadow:inset 0 0 0 1px rgba(136,203,233,.23)}.worksheet-ineq-controls .worksheet-ineq-check{background:linear-gradient(180deg,#eef7fb,#cbdce8);color:#11263a;border-color:#ddecf5;margin-top:4px}.worksheet-ineq-controls .worksheet-ineq-reset{background:transparent;color:#b7c8d6}.worksheet-ineq-controls button:disabled{opacity:.45}.worksheet-ineq-feedback{padding:11px 16px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:750;color:#d5e2ec;background:rgba(255,255,255,.025)}.worksheet-ineq-feedback.success{color:#c8f6d9;background:rgba(80,190,126,.08)}
@media(max-width:760px){.worksheet-ineq-stage{grid-template-columns:1fr}.worksheet-ineq-svg{max-height:none}.worksheet-ineq-side{display:grid;grid-template-columns:1fr}.worksheet-ineq-task strong{font-size:20px}}@media(max-width:440px){.worksheet-ineq-card{border-radius:16px}.worksheet-ineq-stage{padding:10px;gap:10px}.worksheet-ineq-head{padding:11px 12px}.worksheet-ineq-controls>div{grid-template-columns:1fr 1fr}.worksheet-ineq-controls button{font-size:12px;padding:7px}.worksheet-ineq-feedback{padding:10px 12px}}

/* V52.24.43 — 100% graphical Graphs of Inequalities worksheet */
.gr43-question .question-text{font-size:1.02rem}.gr43-display,.gr43-construct{max-width:720px;margin:14px auto 4px}.gr43-svg{display:block;width:min(100%,560px);margin:0 auto;background:#fbfdff;border:1px solid rgba(49,140,188,.32);border-radius:16px;box-shadow:0 12px 28px rgba(0,22,40,.12);touch-action:manipulation}.gr43-clickable{cursor:crosshair}.gr43-grid line{stroke:#d7e2e9;stroke-width:1}.gr43-grid text{fill:#5a7283;font-size:8px;font-weight:700}.gr43-axis{stroke:#183345;stroke-width:2.2}.gr43-axislabel{fill:#122c3d;font-size:14px;font-weight:900}.gr43-boundary{stroke:#162f40;stroke-width:3;fill:none}.gr43-boundary.dashed{stroke-dasharray:10 8}.gr43-boundary.line-1{stroke:#8b4f17}.gr43-boundary.line-2{stroke:#673d91}.gr43-shade rect{fill:rgba(69,166,224,.20)}.gr43-region-label{fill:#193e67;font-size:25px;font-weight:950}.gr43-testpoint{fill:#ed7d31;stroke:#fff;stroke-width:2}.gr43-pointlabel{fill:#8b3d0b;font-size:13px;font-weight:950}.gr43-missing{fill:#d34c4c;font-size:14px;font-weight:950}.gr43-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.gr43-options button,.gr43-controls button{min-height:44px;border:1px solid rgba(74,177,220,.32);border-radius:11px;background:#071b2a;color:#eaf9ff;padding:9px 12px;font-weight:900}.gr43-options button.selected,.gr43-controls button.selected{border-color:#67e5ff;background:rgba(51,195,232,.18);box-shadow:0 0 0 2px rgba(103,229,255,.12)}.gr43-target{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 auto 10px;max-width:560px;padding:10px 12px;border-radius:12px;background:rgba(43,164,211,.1);border:1px solid rgba(79,196,235,.22)}.gr43-target span{font-weight:950;font-size:1.05rem}.gr43-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:12px}.gr43-controls>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#8bb3c7;font-weight:950}.gr43-controls .gr43-check{background:linear-gradient(135deg,#0787af,#05b8b2)}.gr43-controls .gr43-reset{background:#101c27}.gr43-feedback{max-width:560px;margin:10px auto 0;padding:10px 12px;border-radius:10px;background:rgba(118,92,255,.1);font-weight:800}.gr43-feedback.success{background:rgba(30,174,112,.12);color:#b9ffe0}@media(max-width:650px){.gr43-options{grid-template-columns:1fr}.gr43-target{align-items:flex-start;flex-direction:column}.gr43-svg{border-radius:12px}}

/* V52.24.44 Guided Graphs of Inequalities Virtual Lab */
.gr44-stagebar{display:grid;grid-template-columns:repeat(7,minmax(80px,1fr));gap:7px;margin:0 0 8px}.gr44-stagebar button{border:1px solid rgba(103,222,250,.16);background:#071826;color:#98b9c9;border-radius:12px;padding:9px 6px;display:flex;align-items:center;gap:7px;justify-content:center;font-weight:900;min-height:48px}.gr44-stagebar button b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#102a3c;color:#bfefff}.gr44-stagebar button.active{border-color:#62e8ff;background:rgba(50,211,239,.12);color:#fff}.gr44-stagebar button.done b{background:#1ca777;color:#fff}.gr44-progress{height:5px;border-radius:999px;background:#0a2233;overflow:hidden;margin-bottom:12px}.gr44-progress span{display:block;height:100%;background:linear-gradient(90deg,#43d9f2,#72f0bb);transition:width .25s}.gr44-lab{align-items:start}.gr44-main{min-height:620px}.gr44-stage-title small{color:#59def3;font-weight:950;letter-spacing:.1em}.gr44-stage-title h3{font-size:1.35rem;margin:5px 0}.gr44-stage-title p{color:#a9c7d5;margin:0 0 12px}.gr44-equation-controls{display:flex;gap:8px;flex-wrap:wrap}.gr44-equation-controls label{display:grid;gap:4px;color:#88adbe;font-size:.66rem;font-weight:900;text-transform:uppercase}.gr44-equation-controls input,.gr44-equation-controls select{width:96px;height:42px;border:1px solid rgba(90,222,244,.28);border-radius:10px;background:#061522;color:#fff;padding:7px;font-size:1rem;font-weight:900}.gr44-big-equation{font-size:1.35rem;font-weight:950;text-align:center;padding:10px;margin:10px 0;border-radius:12px;background:rgba(255,255,255,.05)}.gr44-graphwrap{max-width:520px;margin:10px auto}.gr44-svg{display:block;width:100%;background:#fbfdff;border-radius:15px;border:1px solid #d8e6ef;touch-action:manipulation}.gr44-svg.clickable{cursor:crosshair}.gr44-grid line{stroke:#d9e4eb;stroke-width:1}.gr44-axis{stroke:#263945;stroke-width:2}.gr44-svg text{font-size:10px;fill:#4d6270;font-weight:700}.gr44-line{stroke:#164660;stroke-width:3.2}.gr44-line.dashed{stroke-dasharray:10 7}.gr44-line.ghost{stroke:#839eac;stroke-dasharray:6 6;opacity:.6}.gr44-line.guide{stroke:#61a7c5;opacity:.7}.gr44-line.secondary{stroke:#b36d26}.gr44-line.tertiary{stroke:#774bb1}.gr44-shade{fill:rgba(63,180,225,.25)}.gr44-overlap{fill:rgba(76,214,147,.32);stroke:rgba(34,157,103,.4);stroke-width:1.5}.gr44-point{fill:#7d37d8;stroke:#fff;stroke-width:2}.gr44-test-point{fill:#e59c2f;stroke:#fff;stroke-width:2}.gr44-point-label{font-size:11px!important;fill:#442066!important;font-weight:950!important}.gr44-region-r{font-size:28px!important;fill:#17633d!important;font-weight:950!important}.gr44-action-card{display:grid;gap:4px;margin:12px 0;padding:12px;border-radius:12px;background:rgba(69,220,245,.08);border:1px solid rgba(69,220,245,.16)}.gr44-action-card span{color:#9fc4d3;font-size:.76rem}.gr44-action-card strong{color:#effdff;font-size:1.05rem}.gr44-next{width:100%;margin-top:10px}.gr44-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.gr44-choice-grid button,.gr44-region-options button{border:1px solid rgba(103,222,250,.22);background:#071b2a;color:#dff7ff;border-radius:12px;padding:13px;font-weight:900}.gr44-choice-grid button.selected,.gr44-region-options button:hover{border-color:#62e8ff;background:rgba(69,220,245,.12)}.gr44-choice-grid i{display:block;width:70px;margin:0 auto 8px;border-top:4px solid #dceff5}.gr44-choice-grid i.dashed{border-top-style:dashed}.gr44-choice-grid span{display:block;color:#8fb3c3;font-size:.7rem;margin-top:3px}.gr44-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.gr44-choice-row.compact{grid-template-columns:repeat(4,1fr)}.gr44-choice-row button{min-height:44px;border:1px solid rgba(103,222,250,.22);background:#071b2a;color:#dff7ff;border-radius:10px;font-weight:900}.gr44-choice-row button.selected{border-color:#62e8ff;background:rgba(69,220,245,.14)}.ineq-feedback.good{background:rgba(41,185,126,.14);color:#c8ffe6}.ineq-feedback.bad{background:rgba(225,106,91,.12);color:#ffd7d2}.gr44-rule-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.gr44-rule-pair div{display:grid;text-align:center;gap:5px;padding:14px;border-radius:12px;background:rgba(255,255,255,.04)}.gr44-rule-pair strong{font-size:1.4rem;color:#fff}.gr44-rule-pair span{font-size:.72rem;color:#9dbdcb}.gr44-rule-pair b{color:#5de0f3}.gr44-multi-list{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin:10px 0}.gr44-multi-list span{padding:8px 11px;border-radius:999px;background:#0a2131;border:1px solid rgba(103,222,250,.18);font-weight:900}.gr44-region-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gr44-region-options small{font-size:.68rem;color:#9fc3d2}.gr44-coach{position:sticky;top:10px}.gr44-coach-head{display:grid;gap:3px;margin-bottom:12px}.gr44-coach-head span{color:#5de0f3;font-size:.7rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.gr44-coach-head strong{font-size:1.2rem}.gr44-coach p{color:#abcbd8;line-height:1.5}
@media(max-width:980px){.gr44-stagebar{grid-template-columns:repeat(4,1fr)}.gr44-main{min-height:0}.gr44-coach{position:static}}@media(max-width:560px){.gr44-stagebar{display:flex;overflow-x:auto;padding-bottom:5px}.gr44-stagebar button{min-width:94px}.gr44-choice-row.compact{grid-template-columns:1fr 1fr}.gr44-region-options{grid-template-columns:1fr}.gr44-equation-controls label{flex:1 1 80px}.gr44-equation-controls input,.gr44-equation-controls select{width:100%}}

/* V52.24.46 Guided Teaching graph-native fix */
.sigma-guided-graph-mount{margin:14px 0 16px}.sigma-guided-graph-mount .g45-graphwrap,.sigma-guided-graph-mount .gr43-display,.sigma-guided-graph-native{max-width:560px;margin:0 auto}.sigma-guided-answer-hidden{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}.sigma-guided-graph-native .gr43-controls{margin-top:10px}

/* V52.24.48 — multi-part mathematical answers: never use semicolon separators */
.gr43-answer-stack{display:grid;gap:6px;text-align:left;width:100%}
.gr43-answer-stack>span{display:grid;grid-template-columns:24px 1fr;align-items:center;gap:8px;padding:6px 9px;border-radius:9px;background:rgba(255,255,255,.55)}
.gr43-answer-stack em{font-style:normal;font-weight:900;color:#64748b}
.answer-value .gr43-answer-stack{margin-top:6px;min-width:220px}


/* ===== V52.24.50 Clean Worksheet Top UI ===== */
#worksheetsView #worksheetAdaptivityStatus.worksheet-adaptivity-hook{display:none!important}
#worksheetsView #sigmaRankLegendWorksheet,
#worksheetsView .worksheet-feature-strip{display:none!important}
#worksheetsView .worksheet-builder-card{margin-bottom:14px}
#worksheetsView #worksheetWorkspace:not(.hidden){margin-top:0}

/* V52.24.51 — live inequality boundary + non-selectable graph labels */
.worksheet-ineq-svg,.worksheet-ineq-svg *{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}
.worksheet-ineq-labels,.worksheet-ineq-labels *, .worksheet-ineq-grid, .worksheet-ineq-grid *, .worksheet-ineq-user-point text{pointer-events:none!important}
.worksheet-ineq-boundary.user-preview{stroke:#203e68;opacity:.96;filter:drop-shadow(0 1px 1px rgba(15,30,50,.18))}
.worksheet-ineq-boundary.user-preview.preview{stroke-dasharray:4 5;stroke-width:3;opacity:.62}
.worksheet-ineq-shade.user-preview{fill:#4d8db7;opacity:.12;pointer-events:none}

/* V52.24.53 inequality construction interaction hard fix */
.gr43-svg,.gr43-svg *{-webkit-user-select:none;user-select:none}.gr43-grid,.gr43-grid *,.gr43-axis,.gr43-axislabel{pointer-events:none}.gr43-user-boundary{stroke-width:4;filter:drop-shadow(0 1px 1px rgba(0,0,0,.18));pointer-events:none}.gr43-userpoint{fill:#111827;stroke:#fff;stroke-width:2;pointer-events:none}

/* V52.24.55 worksheet interaction hardening */
.gr43-svg,.g45-svg,.v49-visual svg{user-select:none;-webkit-user-select:none;touch-action:manipulation}.gr43-svg text,.g45-svg text,.v49-visual svg text{user-select:none;-webkit-user-select:none;pointer-events:none}.gr43-clickable{cursor:crosshair;touch-action:none}

/* V52.24.55 live inequality shading preview */
.gr43-user-shade rect{fill:rgba(69,166,224,.28);pointer-events:none}.gr43-user-shade{pointer-events:none}

/* V52.24.56 — explicit beginner test-point teaching */
.gr44-test-method{max-width:520px;margin:10px auto 12px;padding:12px;border:1px solid rgba(103,222,250,.2);border-radius:14px;background:rgba(7,27,42,.82)}
.gr44-test-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:9px}.gr44-test-head span{font-size:.68rem;font-weight:950;letter-spacing:.09em;color:#63def2}.gr44-test-head strong{color:#fff}
.gr44-test-steps{display:grid;gap:7px}.gr44-test-steps>div{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.04)}.gr44-test-steps b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#102a3c;color:#c9f6ff}.gr44-test-steps span{color:#d8edf5;font-weight:750}.gr44-test-steps .pass{background:rgba(41,185,126,.13)}.gr44-test-steps .fail{background:rgba(225,106,91,.12)}
.gr44-test-conclusion{margin-top:9px;padding:10px;border-radius:10px;color:#c9e5ef;background:rgba(255,255,255,.04);font-weight:850}.gr44-test-conclusion.correct{background:rgba(41,185,126,.16);color:#d4ffea}.gr44-test-conclusion.incorrect{background:rgba(225,106,91,.14);color:#ffe0dc}
.gr44-test-ring{fill:none;stroke:#e59c2f;stroke-width:2;opacity:.42;pointer-events:none}.gr44-test-ring.active{stroke-width:3;opacity:1;animation:gr44TestPulse .8s ease-out 2}.gr44-test-point.decision{filter:drop-shadow(0 0 5px rgba(229,156,47,.85))}.gr44-live-shade{animation:gr44ShadeReveal .28s ease-out both}
@keyframes gr44TestPulse{0%{r:10;opacity:1}100%{r:22;opacity:.15}}@keyframes gr44ShadeReveal{from{opacity:.08}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.gr44-test-ring.active,.gr44-live-shade{animation:none}}

/* V52.24.58: align stacked fractions with inline + − × ÷ operators and mixed whole numbers. */
.question-text .sigma-exam-fraction{vertical-align:middle;top:-.08em;margin-inline:.16em}.question-text{font-variant-numeric:lining-nums tabular-nums}

/* V52.24.59: sentence-centred fraction typography for generated questions. */
.question-text .sigma-exam-fraction{vertical-align:middle!important;position:relative;top:-.08em!important}

/* ===== GradeRealm V52.24.61 — No mascot brand treatment ===== */
.graderealm-brand-tile{display:grid;place-items:center;flex:0 0 auto;width:72px;height:72px;border-radius:20px;background:linear-gradient(145deg,#102b3c,#0a1723);border:1px solid rgba(216,177,92,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 28px rgba(3,13,22,.18);color:#d9b35f;font:950 1.18rem/1 system-ui,sans-serif;letter-spacing:-.08em}
.graderealm-brand-tile.auth-mark{width:68px;height:68px;border-radius:18px}
.graderealm-brand-tile.welcome-mark{width:148px;height:148px;border-radius:34px;font-size:2.4rem}
.graderealm-welcome-mark-wrap{background:linear-gradient(145deg,#f6f8fb,#edf2f6)!important}
.graderealm-coach-mark{display:grid!important;place-items:center!important;background:linear-gradient(145deg,#102b3c,#0a1723)!important;border:1px solid rgba(216,177,92,.35)!important;color:#d9b35f!important;font:950 1.5rem/1 system-ui,sans-serif!important;letter-spacing:-.08em!important}
.graderealm-brand-tile.record-mark{width:96px;height:96px;border-radius:22px;font-size:1.5rem}
.graderealm-brand-tile.tutor-mark{width:92px;height:92px;border-radius:22px;font-size:1.45rem}
.graderealm-brand-tile.email-mark{width:72px;height:72px;border-radius:12px}
.graderealm-brand-tile.result-mark{width:94px;height:94px;border-radius:18px;font-size:1.45rem}
.graderealm-ai-orb-mark,.graderealm-chat-mark{display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;color:#d9b35f;font:950 .68rem/1 system-ui,sans-serif;letter-spacing:-.08em;background:linear-gradient(145deg,#102b3c,#0a1723)}
.sigma-chat-sigma-avatar .graderealm-chat-mark{width:31px;height:31px}
@media(max-width:760px){.graderealm-brand-tile.result-mark{width:68px;height:68px}.graderealm-brand-tile.record-mark{width:74px;height:74px}}
@media(max-width:640px){.graderealm-brand-tile.tutor-mark{width:66px;height:66px}}
@media(max-width:440px){.graderealm-brand-tile.result-mark{width:82px;height:82px}}

.graderealm-brand-tile.support-mark{width:76px;height:76px;border-radius:18px}.graderealm-brand-tile.celebration-mark{width:96px;height:96px;border-radius:26px;font-size:1.5rem;margin:0 auto 10px}

/* GradeRealm V52.24.66 • live Teacher Dashboard */
.gr-teacher-view{max-width:1480px;margin:0 auto;padding-bottom:40px}
.gr-teacher-head{align-items:flex-start;gap:18px}
.gr-teacher-cloud-banner{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin:0 0 20px;padding:16px 18px;border:1px solid color-mix(in srgb,var(--brand,#27d1a3) 28%,transparent);border-radius:18px;background:linear-gradient(135deg,rgba(18,58,53,.94),rgba(9,25,34,.96));box-shadow:0 14px 40px rgba(0,0,0,.16)}
.gr-teacher-cloud-banner strong{display:block;font-size:15px}.gr-teacher-cloud-banner p{margin:4px 0 0;color:var(--muted,#a9b7be);font-size:12px;line-height:1.5}.gr-teacher-cloud-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.08);font-size:20px}.gr-teacher-live-pill{padding:6px 9px;border:1px solid rgba(75,235,176,.4);border-radius:999px;background:rgba(38,187,132,.12);font-size:10px;font-weight:900;letter-spacing:.14em;color:#aef5d5}
#teacherCloudStatus[data-tone="error"]{color:#ffb5b5}#teacherCloudStatus[data-tone="success"]{color:#b8f7dc}#teacherCloudStatus[data-tone="loading"]{color:#d8eef7}
.gr-teacher-shell{display:grid;grid-template-columns:minmax(220px,270px) minmax(0,1fr);gap:20px;align-items:start}.gr-teacher-sidebar,.gr-teacher-main{min-width:0}.gr-teacher-sidebar{position:sticky;top:86px;padding:14px;border:1px solid var(--line,rgba(255,255,255,.11));border-radius:20px;background:rgba(9,23,31,.72);backdrop-filter:blur(16px)}.gr-teacher-sidebar-head{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:4px 4px 12px}.gr-teacher-sidebar-head span{font-size:11px;font-weight:900;letter-spacing:.12em}.gr-teacher-sidebar-head small{font-size:10px;color:var(--muted,#9aa9b1)}
.gr-teacher-class-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;margin:0 0 8px;padding:13px;border:1px solid transparent;border-radius:14px;background:rgba(255,255,255,.045);color:inherit;cursor:pointer;transition:.16s ease}.gr-teacher-class-card:hover{background:rgba(255,255,255,.075)}.gr-teacher-class-card.active{border-color:rgba(72,226,174,.38);background:linear-gradient(135deg,rgba(26,111,91,.38),rgba(255,255,255,.04));box-shadow:inset 3px 0 0 #56ddb5}.gr-teacher-class-card span{display:flex;flex-direction:column;gap:4px;min-width:0}.gr-teacher-class-card strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.gr-teacher-class-card small{text-transform:capitalize;color:var(--muted,#9aa9b1);font-size:10px}.gr-teacher-class-card i{font-style:normal;font-size:21px;opacity:.65}
.gr-teacher-main{display:grid;gap:16px}.gr-teacher-class-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.gr-teacher-class-head h3{margin:3px 0 4px;font-size:26px}.gr-teacher-class-head p{margin:0;color:var(--muted,#9aa9b1);font-size:12px}.gr-teacher-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gr-teacher-metrics article{padding:16px;border:1px solid var(--line,rgba(255,255,255,.11));border-radius:17px;background:rgba(255,255,255,.045)}.gr-teacher-metrics small,.gr-teacher-metrics span{display:block;color:var(--muted,#9aa9b1);font-size:10px}.gr-teacher-metrics strong{display:block;margin:5px 0 2px;font-size:25px;letter-spacing:-.03em}
.gr-teacher-roster-panel{overflow:hidden;border:1px solid var(--line,rgba(255,255,255,.11));border-radius:20px;background:rgba(9,23,31,.68)}.gr-teacher-roster-tools{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;padding:17px 18px;border-bottom:1px solid var(--line,rgba(255,255,255,.11))}.gr-teacher-roster-tools h3{margin:4px 0 0;font-size:18px}.gr-teacher-filters{display:flex;gap:10px;align-items:flex-end}.gr-teacher-filters label{display:grid;gap:5px}.gr-teacher-filters label>span{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#9aa9b1)}.gr-teacher-filters input,.gr-teacher-filters select{min-height:38px;border:1px solid var(--line,rgba(255,255,255,.14));border-radius:10px;background:rgba(2,13,20,.7);color:inherit;padding:0 10px;font:inherit;font-size:12px}.gr-teacher-filters input{width:180px}.gr-teacher-table-head,.gr-teacher-row{display:grid;grid-template-columns:minmax(170px,1.25fr) .62fr .66fr .78fr .7fr minmax(170px,1.15fr) auto;gap:12px;align-items:center}.gr-teacher-table-head{padding:10px 18px;background:rgba(255,255,255,.025);color:var(--muted,#9aa9b1);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.gr-teacher-row{padding:13px 18px;border-top:1px solid rgba(255,255,255,.06)}.gr-teacher-row:hover{background:rgba(255,255,255,.025)}.gr-teacher-row>div:not(.gr-teacher-person):not(.gr-teacher-latest-cell):not(.gr-teacher-row-action){display:flex;flex-direction:column;gap:2px}.gr-teacher-row strong{font-size:13px}.gr-teacher-row small,.gr-teacher-muted{font-size:10px;color:var(--muted,#9aa9b1)}.gr-teacher-person{display:flex;align-items:center;gap:10px;min-width:0}.gr-teacher-person>span:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}.gr-teacher-person strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-teacher-avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,rgba(69,216,171,.23),rgba(84,154,224,.18));border:1px solid rgba(99,225,189,.2);font-size:12px;font-weight:900}.gr-teacher-latest{display:flex;flex-direction:column;gap:2px}.gr-teacher-latest strong{font-size:14px}.gr-teacher-row-action .btn{white-space:nowrap;padding:8px 10px;font-size:10px}.gr-teacher-empty{display:grid;justify-items:center;gap:7px;padding:34px 20px;text-align:center;color:var(--muted,#9aa9b1)}.gr-teacher-empty strong{color:var(--text,#eef5f6);font-size:14px}.gr-teacher-empty span{font-size:11px;max-width:440px;line-height:1.5}.gr-teacher-empty.compact{padding:18px 8px}.gr-teacher-spinner{width:22px;height:22px;border:2px solid rgba(255,255,255,.12);border-top-color:#64deb9;border-radius:50%;animation:grTeacherSpin .8s linear infinite}@keyframes grTeacherSpin{to{transform:rotate(360deg)}}.gr-teacher-privacy{margin:0}
.gr-teacher-dialog{width:min(680px,calc(100vw - 28px));border:1px solid rgba(255,255,255,.14);border-radius:22px;background:#0b1b24;color:inherit;padding:0;box-shadow:0 26px 80px rgba(0,0,0,.45)}.gr-teacher-dialog::backdrop{background:rgba(0,7,12,.68);backdrop-filter:blur(4px)}.gr-teacher-dialog-shell{position:relative;padding:24px}.gr-teacher-dialog-shell h2{margin:5px 0 18px}.gr-teacher-snapshot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.gr-teacher-snapshot-grid article{padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.04)}.gr-teacher-snapshot-grid small{display:block;color:var(--muted,#9aa9b1);font-size:10px}.gr-teacher-snapshot-grid strong{display:block;margin-top:5px;font-size:17px}.gr-teacher-snapshot-latest{margin-top:12px;padding:16px;border-radius:15px;background:rgba(50,190,148,.08);border:1px solid rgba(76,218,176,.16)}.gr-teacher-snapshot-latest span{display:block;color:var(--muted,#9aa9b1);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.gr-teacher-snapshot-latest strong{display:block;margin:5px 0}.gr-teacher-snapshot-latest p,.gr-teacher-snapshot-note{margin:0;color:var(--muted,#9aa9b1);font-size:11px;line-height:1.55}.gr-teacher-snapshot-note{margin-top:14px}
@media(max-width:980px){.gr-teacher-shell{grid-template-columns:1fr}.gr-teacher-sidebar{position:static}.gr-teacher-sidebar #teacherClassList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gr-teacher-class-card{margin:0}.gr-teacher-metrics{grid-template-columns:repeat(2,1fr)}.gr-teacher-table-head{display:none}.gr-teacher-row{grid-template-columns:1.15fr repeat(2,.7fr);gap:10px}.gr-teacher-latest-cell,.gr-teacher-row-action{grid-column:auto/span 1}.gr-teacher-row>div::before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--muted,#9aa9b1);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.gr-teacher-person::before,.gr-teacher-row-action::before{display:none!important}}
@media(max-width:680px){.gr-teacher-head{display:grid}.gr-teacher-head .btn{width:100%}.gr-teacher-cloud-banner{grid-template-columns:auto 1fr}.gr-teacher-live-pill{display:none}.gr-teacher-sidebar #teacherClassList{grid-template-columns:1fr}.gr-teacher-metrics{grid-template-columns:1fr 1fr}.gr-teacher-roster-tools{align-items:stretch;flex-direction:column}.gr-teacher-filters{display:grid;grid-template-columns:1fr 1fr}.gr-teacher-filters input{width:100%}.gr-teacher-row{grid-template-columns:1fr 1fr;padding:14px}.gr-teacher-person{grid-column:1/-1}.gr-teacher-latest-cell{grid-column:1/-1}.gr-teacher-row-action{grid-column:1/-1}.gr-teacher-row-action .btn{width:100%}.gr-teacher-snapshot-grid{grid-template-columns:1fr 1fr}}

/* V52.24.66 — live learner analytics + full assignments UI */
.gr-teacher-tabs{display:flex;gap:6px;padding:5px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:14px;background:rgba(255,255,255,.035);width:max-content;max-width:100%}.gr-teacher-tabs button{border:0;border-radius:10px;background:transparent;color:var(--muted,#9aa9b1);padding:9px 16px;font:inherit;font-size:11px;font-weight:900;cursor:pointer}.gr-teacher-tabs button.active{background:rgba(71,214,173,.15);color:var(--text,#f4fbff);box-shadow:inset 0 0 0 1px rgba(85,222,182,.24)}
.gr-teacher-insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gr-teacher-insight-card{padding:17px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:18px;background:rgba(255,255,255,.04)}.gr-teacher-insight-card h3{margin:4px 0 13px;font-size:16px}.gr-signal-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.gr-signal-pair>div{display:grid;gap:2px;padding:12px;border-radius:13px;background:rgba(255,255,255,.035)}.gr-signal-pair small{font-size:9px;color:var(--muted,#9aa9b1);text-transform:uppercase;letter-spacing:.08em}.gr-signal-pair strong{font-size:14px}.gr-signal-pair span{font-size:20px;font-weight:950;color:#77e2bd}.gr-signal-pair>div:last-child span{color:#ffbb73}.gr-signal-meta{margin:10px 0 0;color:var(--muted,#9aa9b1);font-size:10px}.gr-attention-clear{display:flex;gap:10px;align-items:center;padding:12px;border-radius:13px;background:rgba(63,198,154,.08)}.gr-attention-clear strong{font-size:12px;color:#8ce6c6}.gr-attention-clear span{font-size:10px;color:var(--muted,#9aa9b1)}.gr-attention-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-top:1px solid rgba(255,255,255,.06);background:transparent;color:inherit;padding:10px 3px;text-align:left;cursor:pointer}.gr-attention-row:first-child{border-top:0}.gr-attention-row>span{display:grid;gap:3px;min-width:0}.gr-attention-row strong{font-size:12px}.gr-attention-row small{font-size:9px;color:var(--muted,#9aa9b1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-attention-row b{display:grid;place-items:center;min-width:28px;height:28px;border-radius:9px;background:rgba(240,133,80,.12);color:#ffc18c;font-size:11px}
.gr-teacher-dialog{width:min(920px,calc(100vw - 28px));max-height:calc(100vh - 30px);overflow:auto}.gr-teacher-dialog-shell.wide{width:100%;box-sizing:border-box}.gr-dialog-intro{margin:-10px 0 18px;color:var(--muted,#9aa9b1);font-size:11px}.gr-learner-analytics-section{margin-top:16px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.gr-analytics-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.gr-analytics-section-head h3,.gr-learner-analytics-two h3{margin:3px 0 0;font-size:15px}.gr-analytics-section-head>small{color:var(--muted,#9aa9b1);font-size:10px}.gr-learner-analytics-two{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gr-learner-analytics-two>section{padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.gr-performance-list{margin-top:11px}.gr-performance-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 0;border-top:1px solid rgba(255,255,255,.055)}.gr-performance-row:first-child{border-top:0}.gr-performance-row>span{display:grid;gap:2px;min-width:0}.gr-performance-row strong{font-size:11px}.gr-performance-row small{font-size:9px;color:var(--muted,#9aa9b1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-performance-row b{font-size:14px}.gr-performance-row b.strong{color:#7ae3bf}.gr-progress-trend{height:160px;display:flex;align-items:flex-end;gap:7px;padding:12px 8px 26px;border-radius:14px;background:rgba(2,13,20,.45);position:relative}.gr-trend-col{height:100%;flex:1;min-width:10px;position:relative;display:flex;align-items:flex-end;justify-content:center}.gr-trend-score{width:min(22px,70%);min-height:4px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#6be1ba,#3aa7d3);opacity:.85}.gr-trend-col i{position:absolute;left:50%;width:7px;height:7px;border-radius:50%;background:#ffd36c;transform:translate(-50%,50%);box-shadow:0 0 0 2px rgba(9,23,31,.9)}.gr-trend-col small{position:absolute;bottom:-21px;font-size:8px;color:var(--muted,#9aa9b1)}.gr-trend-key{display:flex;gap:16px;margin-top:8px;color:var(--muted,#9aa9b1);font-size:9px}.gr-history-table>div{display:grid;grid-template-columns:1fr auto auto;gap:13px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.055)}.gr-history-table>div:first-child{border-top:0}.gr-history-table span{display:grid;gap:2px;min-width:0}.gr-history-table strong{font-size:11px}.gr-history-table small{font-size:9px;color:var(--muted,#9aa9b1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-history-table b{font-size:14px}.gr-history-table em{font-style:normal;font-size:9px;color:var(--muted,#9aa9b1)}
.gr-teacher-assignments-panel{display:grid;gap:14px}.gr-assignment-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-end}.gr-assignment-panel-head h3{margin:4px 0;font-size:20px}.gr-assignment-panel-head p{margin:0;color:var(--muted,#9aa9b1);font-size:11px}.gr-assignment-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.gr-assignment-summary article{padding:14px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:15px;background:rgba(255,255,255,.04)}.gr-assignment-summary small,.gr-assignment-summary span{display:block;color:var(--muted,#9aa9b1);font-size:9px}.gr-assignment-summary strong{display:block;margin:4px 0 2px;font-size:20px}.gr-assignment-card-list{display:grid;gap:11px}.gr-assignment-teacher-card{padding:16px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:18px;background:rgba(255,255,255,.035)}.gr-assignment-teacher-card.draft{border-style:dashed}.gr-assignment-teacher-card.closed{opacity:.76}.gr-assignment-card-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.gr-assignment-card-top h4{margin:7px 0 4px;font-size:16px}.gr-assignment-card-top p{margin:0;color:var(--muted,#9aa9b1);font-size:10px}.gr-assignment-status{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(72,208,164,.11);color:#82e6c5;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.gr-assignment-status.draft{background:rgba(154,166,177,.1);color:#bdc8cf}.gr-assignment-status.closed{background:rgba(126,132,140,.1);color:#aab2b8}.gr-assignment-status.overdue{background:rgba(236,107,80,.12);color:#ffad92}.gr-assignment-status.completed{background:rgba(70,207,158,.13);color:#85e8c4}.gr-assignment-status.in-progress{background:rgba(77,161,234,.14);color:#9bd0ff}.gr-assignment-due{text-align:right;min-width:120px}.gr-assignment-due small{display:block;color:var(--muted,#9aa9b1);font-size:8px;letter-spacing:.09em}.gr-assignment-due strong{display:block;margin-top:3px;font-size:11px}.gr-assignment-progress-row{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:14px}.gr-assignment-progress-row>div{padding:9px;border-radius:11px;background:rgba(255,255,255,.03)}.gr-assignment-progress-row strong,.gr-assignment-progress-row span{display:block}.gr-assignment-progress-row strong{font-size:13px}.gr-assignment-progress-row span{font-size:8px;color:var(--muted,#9aa9b1)}.gr-assignment-progress-track{height:5px;margin:11px 0;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}.gr-assignment-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#46ca9e,#4eacd8)}.gr-assignment-card-actions{display:flex;gap:7px;flex-wrap:wrap}.gr-assignment-card-actions .btn{padding:8px 11px;font-size:9px}
.gr-assignment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.gr-assignment-form-grid label{display:grid;gap:5px}.gr-assignment-form-grid label.full{grid-column:1/-1}.gr-assignment-form-grid label>span,.gr-recipient-head strong{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;color:var(--muted,#9aa9b1)}.gr-assignment-form-grid input,.gr-assignment-form-grid select,.gr-assignment-form-grid textarea{width:100%;box-sizing:border-box;border:1px solid var(--line,rgba(255,255,255,.13));border-radius:11px;background:rgba(2,13,20,.55);color:inherit;padding:10px 11px;font:inherit;font-size:11px}.gr-assignment-form-grid input,.gr-assignment-form-grid select{min-height:42px}.gr-assignment-form-grid textarea{resize:vertical}.gr-recipient-builder{margin-top:16px;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(255,255,255,.025)}.gr-recipient-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.gr-recipient-head>div{display:grid;gap:3px}.gr-recipient-head small{font-size:9px;color:var(--muted,#9aa9b1)}.gr-whole-class{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:800}.gr-recipient-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px;max-height:260px;overflow:auto}.gr-recipient-row{display:flex;align-items:center;gap:8px;padding:9px;border-radius:11px;background:rgba(255,255,255,.03);cursor:pointer}.gr-recipient-row input{flex:0 0 auto}.gr-recipient-row>span:last-child{display:grid;gap:2px;min-width:0}.gr-recipient-row strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-recipient-row small{font-size:8px;color:var(--muted,#9aa9b1)}.gr-teacher-avatar.small{width:28px;height:28px;flex-basis:28px;border-radius:8px;font-size:10px}.gr-assignment-form-status{min-height:18px;margin-top:9px;color:#ffc184;font-size:10px}.gr-assignment-error{display:grid;gap:5px;margin-top:12px;padding:12px;border:1px solid rgba(237,110,80,.18);border-radius:13px;background:rgba(237,110,80,.07)}.gr-assignment-error strong{font-size:11px}.gr-assignment-error span{font-size:9px;color:var(--muted,#9aa9b1)}
.gr-assignment-detail-head{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.gr-assignment-detail-head span{padding:6px 9px;border-radius:9px;background:rgba(255,255,255,.04);font-size:9px;color:var(--muted,#9aa9b1)}.gr-assignment-detail-list{border:1px solid rgba(255,255,255,.07);border-radius:14px;overflow:hidden}.gr-assignment-detail-row{display:grid;grid-template-columns:auto 1fr auto 60px;gap:10px;align-items:center;padding:11px 12px;border-top:1px solid rgba(255,255,255,.055)}.gr-assignment-detail-row:first-child{border-top:0}.gr-assignment-detail-row.overdue{background:rgba(229,105,75,.055)}.gr-assignment-detail-row .name{display:grid;gap:2px}.gr-assignment-detail-row .name strong{font-size:11px}.gr-assignment-detail-row .name small,.gr-assignment-detail-row .status{font-size:9px;color:var(--muted,#9aa9b1);text-transform:capitalize}.gr-assignment-detail-row .score{text-align:right;font-size:13px}
.gr-assignments-view{max-width:1180px;margin:0 auto;padding-bottom:40px}.gr-assignment-inbox-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;margin-bottom:14px;border:1px solid rgba(80,216,174,.18);border-radius:19px;background:linear-gradient(135deg,rgba(19,66,56,.65),rgba(9,25,34,.72))}.gr-assignment-inbox-banner>div:first-child{display:grid;gap:3px}.gr-assignment-inbox-banner strong{font-size:14px}.gr-assignment-inbox-banner p{margin:0;color:var(--muted,#9aa9b1);font-size:10px}.gr-assignment-inbox-count{text-align:center;min-width:80px;padding:10px;border-radius:14px;background:rgba(255,255,255,.055)}.gr-assignment-inbox-count strong{display:block;font-size:25px}.gr-assignment-inbox-count span{font-size:9px;color:var(--muted,#9aa9b1);text-transform:uppercase;letter-spacing:.08em}.gr-learner-assignment-filters{display:flex;gap:6px;margin:0 0 12px}.gr-learner-assignment-filters button{border:1px solid var(--line,rgba(255,255,255,.1));border-radius:999px;background:transparent;color:var(--muted,#9aa9b1);padding:7px 12px;font:inherit;font-size:9px;font-weight:900;cursor:pointer}.gr-learner-assignment-filters button.active{background:rgba(71,214,173,.12);color:var(--text,#f4fbff);border-color:rgba(83,216,178,.25)}.gr-learner-assignment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gr-learner-assignment-card{display:grid;gap:12px;padding:17px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:19px;background:rgba(255,255,255,.038)}.gr-learner-assignment-card.overdue{border-color:rgba(236,108,81,.26)}.gr-learner-assignment-card.completed{border-color:rgba(72,207,161,.16);opacity:.88}.gr-learner-assignment-top{display:flex;justify-content:space-between;gap:14px}.gr-learner-assignment-top h3{margin:7px 0 4px;font-size:17px}.gr-learner-assignment-top p,.gr-assignment-instructions{margin:0;color:var(--muted,#9aa9b1);font-size:10px;line-height:1.5}.gr-assignment-instructions{padding:10px;border-radius:11px;background:rgba(255,255,255,.03)}.gr-learner-assignment-meta{display:flex;gap:7px;flex-wrap:wrap}.gr-learner-assignment-meta span{padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.035);font-size:9px;color:var(--muted,#9aa9b1)}.gr-assignment-quick .quick-icon{font-size:18px}
@media(max-width:900px){.gr-teacher-insight-grid,.gr-learner-analytics-two{grid-template-columns:1fr}.gr-assignment-summary{grid-template-columns:1fr 1fr}.gr-learner-assignment-list{grid-template-columns:1fr}.gr-assignment-progress-row{grid-template-columns:repeat(3,1fr)}.gr-recipient-list{grid-template-columns:1fr}}
@media(max-width:620px){.gr-teacher-tabs{width:100%}.gr-teacher-tabs button{flex:1}.gr-signal-pair{grid-template-columns:1fr}.gr-assignment-panel-head,.gr-assignment-card-top,.gr-learner-assignment-top,.gr-assignment-inbox-banner{align-items:stretch;flex-direction:column}.gr-assignment-panel-head{display:flex}.gr-assignment-panel-head .btn{width:100%}.gr-assignment-summary{grid-template-columns:1fr 1fr}.gr-assignment-progress-row{grid-template-columns:1fr 1fr}.gr-assignment-due{text-align:left}.gr-assignment-form-grid{grid-template-columns:1fr}.gr-assignment-form-grid label.full{grid-column:auto}.gr-assignment-detail-row{grid-template-columns:auto 1fr auto}.gr-assignment-detail-row .status{display:none}.gr-learner-analytics-two{grid-template-columns:1fr}.gr-history-table>div{grid-template-columns:1fr auto}.gr-history-table em{display:none}}

/* ============================================================
   V52.24.67 • GradeRealm Number Percentage Lab
   Premium interactive increase/decrease, reverse and successive %
   ============================================================ */
.sigma-percentage-lab{padding:0;border-color:rgba(56,189,248,.28);background:linear-gradient(160deg,#07111f 0%,#0c1728 48%,#101b30 100%);box-shadow:0 24px 58px rgba(2,8,23,.28);color:#eaf4ff}
.sigma-percentage-lab .pct-lab-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 20px 18px;background:radial-gradient(circle at 88% 10%,rgba(34,211,238,.18),transparent 34%),linear-gradient(135deg,rgba(37,99,235,.18),rgba(15,23,42,.18));border-bottom:1px solid rgba(148,163,184,.14)}
.sigma-percentage-lab .pct-lab-hero>div:first-child{min-width:0}.sigma-percentage-lab .pct-lab-hero span{font-size:.66rem;letter-spacing:.14em;font-weight:950;color:#7dd3fc}.sigma-percentage-lab .pct-lab-hero h4{margin:4px 0 4px;font-size:clamp(1.35rem,3vw,2rem);line-height:1;color:#fff;letter-spacing:-.035em}.sigma-percentage-lab .pct-lab-hero p{margin:0;max-width:620px;color:#a9bad0;font-size:.84rem;line-height:1.45}
.pct-lab-orb{position:relative;flex:0 0 72px;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 35% 30%,#dffaff 0 8%,#38bdf8 9% 32%,#2563eb 62%,#172554 100%);box-shadow:0 0 0 1px rgba(125,211,252,.4),0 14px 35px rgba(14,165,233,.24),inset -12px -14px 26px rgba(23,37,84,.55);overflow:hidden}.pct-lab-orb b{font-size:1.75rem;color:#fff;text-shadow:0 3px 12px rgba(0,0,0,.25);z-index:1}.pct-lab-orb i{position:absolute;width:96px;height:22px;border:1px solid rgba(186,230,253,.4);border-radius:50%;transform:rotate(-19deg)}
.pct-lab-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:11px 14px;background:#081321;border-bottom:1px solid rgba(148,163,184,.12)}.pct-lab-tabs button{min-height:42px;padding:8px 10px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:rgba(255,255,255,.035);color:#9fb2c8;font-weight:850;font-size:.76rem;cursor:pointer;transition:.18s ease}.pct-lab-tabs button:hover{border-color:rgba(56,189,248,.32);color:#e0f2fe}.pct-lab-tabs button.active{background:linear-gradient(135deg,rgba(14,165,233,.24),rgba(37,99,235,.18));border-color:rgba(56,189,248,.55);color:#fff;box-shadow:inset 0 0 0 1px rgba(125,211,252,.07),0 8px 24px rgba(2,132,199,.10)}
.pct-lab-panel{padding:18px 18px 4px;animation:pctLabIn .18s ease}.pct-lab-panel[hidden]{display:none!important}@keyframes pctLabIn{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:none}}
.pct-lab-controls-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pct-lab-controls-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.pct-lab-controls-grid.single{grid-template-columns:minmax(0,1fr);max-width:520px;margin:0 auto}.sigma-percentage-lab .pct-lab-controls-grid label{margin:0;padding:12px 13px;border:1px solid rgba(148,163,184,.16);border-radius:15px;background:rgba(255,255,255,.035)}.sigma-percentage-lab .pct-lab-controls-grid label>span{display:block;margin-bottom:3px;color:#8fa4bb;font-size:.68rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.sigma-percentage-lab .pct-lab-controls-grid label>strong{display:block;margin:0 0 8px;color:#fff;font-size:1.05rem}.sigma-percentage-lab input[type=range]{height:22px;accent-color:#38bdf8}
.pct-lab-segment{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0;padding:5px;border-radius:13px;background:#050d18;border:1px solid rgba(148,163,184,.15)}.pct-lab-segment button{min-height:38px;border:0;border-radius:9px;background:transparent;color:#8ea2ba;font-weight:900;cursor:pointer}.pct-lab-segment button.active{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;box-shadow:0 7px 18px rgba(37,99,235,.22)}.pct-lab-segment.compact{margin:5px 0 0}.pct-lab-segment.compact button{min-height:34px;font-size:.74rem}
.pct-lab-visual{display:grid;grid-template-columns:1fr 36px 1fr;gap:10px;align-items:center;margin:15px 0}.pct-lab-arrow{text-align:center;color:#67e8f9;font-size:1.35rem;font-weight:950}.pct-lab-value{min-width:0}.pct-lab-value-head{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-bottom:6px}.pct-lab-value-head span{font-size:.67rem!important;color:#8399b0!important;letter-spacing:.08em!important}.pct-lab-value-head strong{color:#fff;font-size:.93rem}.pct-lab-track{position:relative;height:44px;border:1px solid rgba(148,163,184,.2);border-radius:12px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 9.7%,rgba(255,255,255,.07) 9.7% 10%);overflow:hidden}.pct-lab-track i{position:absolute;inset:0 auto 0 0;border-radius:10px;background:linear-gradient(90deg,#0ea5e9,#38bdf8);box-shadow:0 0 24px rgba(14,165,233,.24);transition:width .18s ease}.pct-lab-track.after i{background:linear-gradient(90deg,#22c55e,#06b6d4)}.pct-lab-track em{position:absolute;left:10px;top:50%;transform:translateY(-50%);z-index:2;font-size:.72rem;font-style:normal;font-weight:950;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.45)}
.pct-lab-formula{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap;margin:12px 0;padding:11px;border-radius:14px;background:rgba(14,165,233,.07);border:1px solid rgba(56,189,248,.18)}.pct-lab-formula span,.pct-lab-formula b,.pct-lab-formula strong{padding:5px 8px;border-radius:8px}.pct-lab-formula span{background:rgba(255,255,255,.05);color:#c9d7e6}.pct-lab-formula b{color:#7dd3fc}.pct-lab-formula strong{background:rgba(34,197,94,.10);color:#86efac}.pct-lab-formula.successive strong{color:#fde68a;background:rgba(250,204,21,.09)}
.sigma-percentage-lab .sigma-lab-output{margin:11px 0 0;background:linear-gradient(135deg,rgba(15,118,110,.14),rgba(14,165,233,.08));border:1px solid rgba(45,212,191,.18);font-size:.9rem;text-align:center}
.pct-reverse-stage,.pct-successive-flow{display:grid;align-items:stretch;gap:8px;margin:15px 0}.pct-reverse-stage{grid-template-columns:1fr auto 1fr}.pct-successive-flow{grid-template-columns:1fr auto 1fr auto 1fr}.pct-reverse-stage>div,.pct-successive-flow>div{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:92px;padding:10px;border:1px solid rgba(148,163,184,.16);border-radius:14px;background:rgba(255,255,255,.035);text-align:center}.pct-reverse-stage>div.final,.pct-successive-flow>div.final{border-color:rgba(34,197,94,.3);background:rgba(34,197,94,.06)}.pct-reverse-stage small,.pct-successive-flow small{color:#7f95ad;font-size:.61rem;font-weight:900;letter-spacing:.1em}.pct-reverse-stage strong,.pct-successive-flow strong{margin:5px 0;color:#fff;font-size:1.05rem}.pct-reverse-stage span,.pct-successive-flow span{color:#7dd3fc!important;font-size:.72rem!important;letter-spacing:0!important}.pct-reverse-stage>b,.pct-successive-flow>b{align-self:center;color:#93c5fd;white-space:nowrap;font-size:.9rem}
.pct-lab-rule{margin:12px 0;padding:14px 15px;border:1px solid rgba(250,204,21,.28);border-radius:15px;background:linear-gradient(135deg,rgba(113,63,18,.18),rgba(15,23,42,.12))}.pct-lab-rule small{display:block;color:#fde68a!important;font-size:.62rem!important;font-weight:950;letter-spacing:.1em!important}.pct-lab-rule strong{display:block;margin:5px 0;color:#fff;font-size:1rem}.pct-lab-rule p{margin:0;color:#b8c7d8;font-size:.78rem;line-height:1.45}
.pct-successive-directions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.pct-successive-directions>div>small{display:block;color:#7890aa;font-size:.61rem;font-weight:950;letter-spacing:.09em;text-align:center}
.pct-multiplier-stage{display:grid;grid-template-columns:130px 1fr;gap:18px;align-items:center;max-width:620px;margin:4px auto 15px}.pct-multiplier-100{display:grid;place-items:center;aspect-ratio:1;border-radius:28px;background:linear-gradient(145deg,#0ea5e9,#1d4ed8);font-size:2.1rem;font-weight:950;color:#fff;box-shadow:0 20px 40px rgba(37,99,235,.22)}.pct-multiplier-100 small{display:inline!important;font-size:.8rem!important;color:#dff7ff!important;letter-spacing:0!important}.pct-multiplier-stage>div:last-child{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:5px 10px}.pct-multiplier-stage>div:last-child span{font-size:1.05rem!important;color:#fca5a5!important;font-weight:900;letter-spacing:0!important}.pct-multiplier-stage>div:last-child strong{font-size:1.5rem;color:#fff}.pct-multiplier-stage>div:last-child em{color:#71869e;font-style:normal;font-size:.74rem}.pct-multiplier-stage>div:last-child b{grid-column:1/-1;font-size:2rem;color:#67e8f9;letter-spacing:-.03em}.pct-preset-row{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin:12px 0}.pct-preset-row button{padding:7px 11px;border:1px solid rgba(125,211,252,.25);border-radius:999px;background:rgba(14,165,233,.06);color:#bae6fd;font-weight:850;cursor:pointer}.pct-preset-row button:hover{background:rgba(14,165,233,.14)}
.pct-lab-challenge{margin:15px 18px 18px;padding:14px;border:1px solid rgba(167,139,250,.26);border-radius:17px;background:radial-gradient(circle at 92% 0,rgba(139,92,246,.16),transparent 35%),rgba(76,29,149,.08)}.pct-lab-challenge>div:first-child{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}.pct-lab-challenge small{color:#c4b5fd!important;font-size:.61rem!important;font-weight:950;letter-spacing:.1em!important}.pct-lab-challenge strong{color:#fff}.pct-challenge-answer{display:flex;align-items:center;gap:7px;margin-top:9px}.pct-challenge-prefix{color:#7dd3fc!important;font-size:1rem!important;font-weight:900;letter-spacing:0!important}.pct-challenge-input{min-width:0;flex:1;height:42px;padding:0 11px;border:1px solid rgba(148,163,184,.25);border-radius:11px;background:#07111f;color:#fff;font:800 .95rem ui-monospace,monospace;outline:none}.pct-challenge-input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.09)}.pct-challenge-check{height:42px;padding:0 16px;border:0;border-radius:11px;background:linear-gradient(135deg,#8b5cf6,#2563eb);color:#fff;font-weight:900;cursor:pointer}.pct-challenge-feedback{margin:8px 0 0;color:#91a6bd;font-size:.76rem}.pct-challenge-feedback.correct{color:#86efac}.pct-challenge-feedback.wrong{color:#fca5a5}.pct-challenge-feedback.warn{color:#fde68a}
@media(max-width:760px){.sigma-percentage-lab .pct-lab-hero{padding:17px 15px}.pct-lab-orb{flex-basis:58px;width:58px;height:58px}.pct-lab-orb b{font-size:1.45rem}.pct-lab-tabs{grid-template-columns:1fr 1fr;padding:9px}.pct-lab-panel{padding:14px 12px 3px}.pct-lab-controls-grid,.pct-lab-controls-grid.three{grid-template-columns:1fr}.pct-lab-visual{grid-template-columns:1fr}.pct-lab-arrow{transform:rotate(90deg);line-height:1}.pct-successive-directions{grid-template-columns:1fr}.pct-successive-flow{grid-template-columns:1fr}.pct-successive-flow>b{transform:rotate(90deg);padding:2px}.pct-reverse-stage{grid-template-columns:1fr}.pct-reverse-stage>b{transform:rotate(90deg);padding:2px}.pct-multiplier-stage{grid-template-columns:92px 1fr;gap:12px}.pct-multiplier-100{border-radius:21px;font-size:1.6rem}.pct-multiplier-stage>div:last-child strong{font-size:1.15rem}.pct-multiplier-stage>div:last-child b{font-size:1.55rem}.pct-lab-challenge{margin:13px 12px 14px}.pct-challenge-answer{align-items:stretch}.pct-challenge-check{padding:0 12px}}
@media(max-width:430px){.pct-lab-tabs button{min-height:40px;font-size:.7rem}.pct-lab-hero p{font-size:.76rem}.pct-lab-formula{font-size:.78rem}.pct-challenge-answer{display:grid;grid-template-columns:auto 1fr}.pct-challenge-check{grid-column:1/-1}.pct-lab-segment button{font-size:.72rem}}

/* ============================================================
   V52.24.72 • GRAPHS FLAGSHIP VIRTUAL CLASS — PREMIUM GRAPH LAB
   ============================================================ */
.gr-graph-lab{width:100%;border:1px solid rgba(45,212,191,.22);border-radius:24px;overflow:hidden;background:linear-gradient(155deg,#06141c 0%,#081a26 48%,#0c1727 100%);box-shadow:0 28px 70px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.03)}
.gr-graph-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px 18px;background:radial-gradient(circle at 88% 0,rgba(45,212,191,.16),transparent 36%),radial-gradient(circle at 6% 10%,rgba(56,189,248,.12),transparent 32%),linear-gradient(135deg,rgba(13,148,136,.10),rgba(37,99,235,.08));border-bottom:1px solid rgba(148,163,184,.12)}
.gr-graph-hero span{display:block;color:#5eead4;font-size:.64rem;font-weight:950;letter-spacing:.14em}.gr-graph-hero h3{margin:4px 0 5px!important;color:#fff!important;font-size:clamp(1.45rem,3vw,2.1rem)!important;letter-spacing:-.035em}.gr-graph-hero p{margin:0;max-width:700px;color:#9fb2c6;font-size:.82rem;line-height:1.45}.gr-graph-live{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 11px;border:1px solid rgba(45,212,191,.26);border-radius:999px;background:rgba(13,148,136,.09);color:#99f6e4;font-size:.68rem;font-weight:950;letter-spacing:.1em}.gr-graph-live i{width:7px;height:7px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 0 5px rgba(45,212,191,.09),0 0 15px rgba(45,212,191,.55);animation:grGraphPulse 1.6s ease-in-out infinite}@keyframes grGraphPulse{50%{opacity:.45;transform:scale(.82)}}
.gr-graph-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px 14px;background:#061019;border-bottom:1px solid rgba(148,163,184,.12)}.gr-graph-tabs button{min-height:42px;border:1px solid rgba(148,163,184,.15);border-radius:12px;background:rgba(255,255,255,.03);color:#8fa4b7;font-weight:900;cursor:pointer;transition:.16s ease}.gr-graph-tabs button:hover{color:#e6fffb;border-color:rgba(45,212,191,.34)}.gr-graph-tabs button.active{background:linear-gradient(135deg,rgba(13,148,136,.28),rgba(14,165,233,.16));border-color:rgba(45,212,191,.5);color:#fff;box-shadow:inset 0 0 0 1px rgba(94,234,212,.06),0 9px 24px rgba(13,148,136,.10)}
.gr-graph-main{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:14px;padding:15px}.gr-graph-main>.topic-lab-panel{border-radius:18px}.gr-graph-visual-panel{background:linear-gradient(160deg,rgba(3,17,26,.86),rgba(7,26,37,.82));border-color:rgba(45,212,191,.18)}
.gr-graph-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.gr-graph-control{display:block;margin:0;padding:11px 12px;border:1px solid rgba(148,163,184,.14);border-radius:14px;background:rgba(255,255,255,.03)}.gr-graph-control>span{display:block;margin-bottom:7px;color:#8ba0b5;font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.gr-graph-control>div{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:9px;align-items:center}.gr-graph-control input[type=range]{width:100%;height:22px;accent-color:#2dd4bf;cursor:grab}.gr-graph-control input[type=range]:active{cursor:grabbing}.gr-graph-control output{display:grid;place-items:center;min-height:34px;border:1px solid rgba(45,212,191,.22);border-radius:10px;background:#06131d;color:#ccfbf1;font:900 .9rem ui-monospace,SFMono-Regular,Menlo,monospace}
.gr-graph-second-line{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr 1fr;gap:10px;align-items:stretch;padding:9px;border:1px solid rgba(167,139,250,.18);border-radius:15px;background:rgba(124,58,237,.05)}.gr-graph-second-line>small{display:flex;align-items:center;padding:0 8px;color:#c4b5fd;font-size:.61rem;font-weight:950;letter-spacing:.12em}.gr-graph-second-line .gr-graph-control{border-color:rgba(167,139,250,.14)}.gr-graph-second-line .gr-graph-control input[type=range]{accent-color:#a78bfa}.gr-graph-second-line .gr-graph-control output{border-color:rgba(167,139,250,.24);color:#ddd6fe}
.gr-graph-signs{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:5px;border:1px solid rgba(148,163,184,.13);border-radius:13px;background:#050f17}.gr-graph-signs button{min-height:38px;border:0;border-radius:9px;background:transparent;color:#8ba0b5;font-size:1.15rem;font-weight:950;cursor:pointer}.gr-graph-signs button.active{background:linear-gradient(135deg,#0f766e,#0891b2);color:#fff;box-shadow:0 8px 18px rgba(8,145,178,.14)}
.gr-graph-stage{display:grid;place-items:center;position:relative;margin:5px auto 0}.gr-premium-graph-svg{width:min(100%,560px);background:radial-gradient(circle at 50% 50%,rgba(45,212,191,.045),transparent 54%),#04111a;border-color:rgba(94,234,212,.22);box-shadow:inset 0 0 45px rgba(8,145,178,.04)}.gr-premium-graph-svg .graph-grid line{stroke:rgba(148,216,226,.075)}.gr-premium-graph-svg .graph-axis{stroke:rgba(226,252,255,.55);stroke-width:2}.gr-premium-graph-svg .gr-line-a{stroke:#5eead4;stroke-width:5;filter:drop-shadow(0 0 5px rgba(45,212,191,.24))}.gr-premium-graph-svg .gr-line-b{stroke:#a78bfa;stroke-width:5;filter:drop-shadow(0 0 5px rgba(167,139,250,.20))}.gr-premium-graph-svg .graph-line.dashed{stroke-dasharray:13 10}.gr-graph-tick{fill:rgba(177,211,220,.55);font:600 10px ui-monospace,SFMono-Regular,Menlo,monospace}.gr-graph-axis-label{fill:#d9faff;font:900 14px ui-sans-serif,system-ui}.gr-graph-point-label{fill:#bffcf4;font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace;paint-order:stroke;stroke:#04111a;stroke-width:4px}.gr-graph-point-label.secondary{fill:#bae6fd}.gr-graph-point-label.intersection{fill:#fde68a}.gr-graph-step{fill:none;stroke:#fbbf24;stroke-width:3;stroke-dasharray:7 5;filter:drop-shadow(0 0 4px rgba(251,191,36,.18))}.gr-graph-ineq-shade{fill:rgba(45,212,191,.15);stroke:none}.gr-graph-intersection{fill:#fbbf24;stroke:#fff;stroke-width:3;filter:drop-shadow(0 0 7px rgba(251,191,36,.42))}
.gr-graph-live-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:11px 13px;border:1px solid rgba(45,212,191,.16);border-radius:13px;background:linear-gradient(135deg,rgba(13,148,136,.08),rgba(14,165,233,.05))}.gr-graph-live-strip span{color:#d5fffa;font:900 .86rem ui-monospace,SFMono-Regular,Menlo,monospace}.gr-graph-live-strip strong{color:#8ddbd5;font-size:.72rem;text-align:right}
.gr-graph-teaching{display:flex;flex-direction:column;background:linear-gradient(155deg,rgba(8,31,42,.82),rgba(17,25,52,.70))}.gr-graph-equation{margin:0 0 14px;padding:13px;border:1px solid rgba(94,234,212,.16);border-radius:14px;background:rgba(45,212,191,.06);color:#dffffa;font:900 1.05rem ui-monospace,SFMono-Regular,Menlo,monospace;text-align:center}.gr-graph-pair{display:grid;gap:7px;margin:0 0 14px}.gr-graph-pair span{padding:10px 11px;border:1px solid rgba(148,163,184,.13);border-radius:11px;background:rgba(255,255,255,.025);color:#dbeafe;font:800 .78rem ui-monospace,SFMono-Regular,Menlo,monospace}.gr-graph-pair span:first-child{border-color:rgba(45,212,191,.18);color:#bffcf4}.gr-graph-pair span:last-child{border-color:rgba(167,139,250,.18);color:#ddd6fe}
.gr-graph-challenge{margin-top:auto;padding:13px;border:1px solid rgba(251,191,36,.2);border-radius:15px;background:radial-gradient(circle at 96% 0,rgba(251,191,36,.10),transparent 38%),rgba(120,53,15,.05)}.gr-graph-challenge>div:first-child{display:grid;gap:4px}.gr-graph-challenge small{color:#fcd34d;font-size:.59rem;font-weight:950;letter-spacing:.11em}.gr-graph-challenge strong{color:#fff;font-size:.82rem;line-height:1.35}.gr-graph-answer-row{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:9px}.gr-graph-answer-row input{min-width:0;height:40px;padding:0 11px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#06131d;color:#fff;font:800 .9rem ui-monospace,monospace;outline:none}.gr-graph-answer-row input:focus{border-color:#2dd4bf;box-shadow:0 0 0 3px rgba(45,212,191,.08)}.gr-graph-answer-row button,.gr-graph-choice-row button{border:0;border-radius:10px;background:linear-gradient(135deg,#0f766e,#0891b2);color:#fff;font-weight:900;cursor:pointer}.gr-graph-answer-row button{padding:0 14px}.gr-graph-choice-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.gr-graph-choice-row button{min-height:40px}.gr-graph-feedback{margin:8px 0 0;color:#8fa4b8;font-size:.72rem;line-height:1.4}.gr-graph-feedback.correct{color:#86efac}.gr-graph-feedback.wrong{color:#fca5a5}.gr-graph-feedback.warn{color:#fde68a}
@media(max-width:980px){.gr-graph-main{grid-template-columns:1fr}.gr-graph-teaching{min-height:0}.gr-graph-challenge{margin-top:14px}}
@media(max-width:680px){.gr-graph-hero{padding:16px 14px}.gr-graph-hero p{font-size:.76rem}.gr-graph-live{padding:7px 9px}.gr-graph-tabs{padding:8px}.gr-graph-tabs button{font-size:.72rem;min-height:40px}.gr-graph-main{padding:10px;gap:10px}.gr-graph-controls{grid-template-columns:1fr}.gr-graph-second-line{grid-column:auto;grid-template-columns:1fr}.gr-graph-second-line>small{padding:3px 2px}.gr-graph-signs{grid-column:auto}.gr-graph-visual-panel{padding:12px}.gr-graph-live-strip{align-items:flex-start}.gr-graph-live-strip strong{text-align:left}.gr-graph-teaching{padding:15px}.gr-graph-answer-row{grid-template-columns:1fr}.gr-graph-answer-row button{min-height:40px}}
@media(max-width:430px){.gr-graph-hero{align-items:flex-start}.gr-graph-live{font-size:.6rem}.gr-graph-tabs button{padding:7px 4px;font-size:.67rem}.gr-graph-control>div{grid-template-columns:minmax(0,1fr) 50px}.gr-graph-choice-row{grid-template-columns:1fr}}


/* ============================================================
   V52.24.72 • Tutor-guided Virtual Class introductions
   ============================================================ */
.gr-virtual-class-intro{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);gap:18px;align-items:stretch;max-width:1120px;margin:0 auto;padding:8px}
.gr-vc-tutor-card,.gr-vc-preview{border:1px solid rgba(125,211,252,.18);border-radius:24px;background:radial-gradient(circle at 8% 0,rgba(14,165,233,.13),transparent 34%),linear-gradient(155deg,rgba(8,22,38,.98),rgba(5,13,24,.98));box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.035)}
.gr-vc-tutor-card{padding:22px}.gr-vc-tutor-identity{display:flex;align-items:center;gap:14px}.gr-vc-tutor-mark{position:relative;flex:0 0 68px;width:68px;height:68px;display:grid;place-items:center;border-radius:22px;background:radial-gradient(circle at 32% 25%,#dffafe 0 6%,#22d3ee 7% 25%,#2563eb 58%,#172554 100%);box-shadow:0 0 0 1px rgba(125,211,252,.36),0 14px 34px rgba(37,99,235,.25);overflow:hidden}.gr-vc-tutor-mark:after{content:"";position:absolute;inset:9px;border:1px solid rgba(255,255,255,.26);border-radius:17px}.gr-vc-tutor-mark span{position:relative;z-index:1;color:#fff;font-size:1.08rem;font-weight:1000;letter-spacing:-.06em}.gr-vc-tutor-mark i{position:absolute;width:88px;height:24px;border:1px solid rgba(165,243,252,.38);border-radius:50%;transform:rotate(-19deg)}
.gr-vc-tutor-identity small{display:block;color:#67e8f9;font-size:.64rem;font-weight:950;letter-spacing:.14em}.gr-vc-tutor-identity strong{display:block;margin:4px 0 3px;color:#fff;font-size:clamp(1.12rem,2.4vw,1.55rem);line-height:1.05}.gr-vc-tutor-identity>div:last-child>span{display:block;color:#8197ae;font-size:.72rem;font-weight:800;letter-spacing:.06em}
.gr-vc-speech{position:relative;margin:20px 0 16px;padding:18px 18px 17px 20px;border:1px solid rgba(148,163,184,.17);border-radius:19px;background:rgba(255,255,255,.035)}.gr-vc-speech:before{content:"";position:absolute;left:25px;top:-8px;width:14px;height:14px;border-left:1px solid rgba(148,163,184,.17);border-top:1px solid rgba(148,163,184,.17);background:#0b1827;transform:rotate(45deg)}.gr-vc-speech-label{position:relative;z-index:1;display:block;margin-bottom:7px;color:#fde68a;font-size:.63rem;font-weight:950;letter-spacing:.12em}.gr-vc-speech p{position:relative;z-index:1;margin:0;color:#d7e4f1;font-size:.96rem;line-height:1.65}
.gr-vc-learn{padding:15px;border-radius:18px;background:rgba(14,165,233,.055);border:1px solid rgba(56,189,248,.14)}.gr-vc-learn>small{display:block;margin-bottom:10px;color:#8da3b9;font-size:.61rem;font-weight:950;letter-spacing:.12em}.gr-vc-learn>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gr-vc-learn span{display:flex;align-items:center;gap:8px;min-width:0;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.035);color:#c9d7e6;font-size:.78rem;font-weight:800}.gr-vc-learn span i{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:rgba(34,197,94,.13);color:#86efac;font-size:.7rem;font-style:normal}
.gr-vc-intro-actions{display:flex;gap:9px;margin-top:16px}.gr-vc-intro-actions .btn{min-height:45px}.gr-vc-intro-actions .brand-primary{flex:1}.gr-vc-voice-status{margin:9px 2px 0;color:#7289a2;font-size:.7rem;line-height:1.4}
.gr-vc-preview{padding:20px}.gr-vc-preview>span{display:block;color:#c4b5fd;font-size:.63rem;font-weight:950;letter-spacing:.13em}.gr-vc-preview ol{display:grid;gap:10px;margin:15px 0 0;padding:0;list-style:none}.gr-vc-preview li{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid rgba(148,163,184,.12);border-radius:15px;background:rgba(255,255,255,.028)}.gr-vc-preview li>b{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,rgba(14,165,233,.22),rgba(124,58,237,.22));border:1px solid rgba(125,211,252,.18);color:#bae6fd;font-size:.78rem}.gr-vc-preview strong{display:block;color:#fff;font-size:.82rem}.gr-vc-preview small{display:block;margin-top:3px;color:#8499af;font-size:.7rem;line-height:1.4}
@media(max-width:820px){.gr-virtual-class-intro{grid-template-columns:1fr}.gr-vc-preview ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gr-virtual-class-intro{padding:0}.gr-vc-tutor-card,.gr-vc-preview{padding:15px;border-radius:19px}.gr-vc-tutor-mark{flex-basis:56px;width:56px;height:56px;border-radius:18px}.gr-vc-learn>div,.gr-vc-preview ol{grid-template-columns:1fr}.gr-vc-intro-actions{display:grid;grid-template-columns:1fr}.gr-vc-speech p{font-size:.86rem}.gr-vc-tutor-identity strong{font-size:1.08rem}}

/* ============================================================
   V52.24.72 • CONTEXT-AWARE LIVE TUTOR — VIRTUAL CLASSES
   ============================================================ */
.gr-live-tutor-coach{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 14px;padding:14px 16px;border:1px solid rgba(94,234,212,.22);border-radius:18px;background:radial-gradient(circle at 4% 0,rgba(45,212,191,.13),transparent 32%),radial-gradient(circle at 96% 12%,rgba(59,130,246,.10),transparent 30%),linear-gradient(145deg,rgba(5,25,35,.97),rgba(8,20,36,.97));box-shadow:0 18px 42px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.035);position:relative;overflow:hidden}
.gr-live-tutor-coach:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(94,234,212,.6),rgba(96,165,250,.35),transparent)}
.gr-live-tutor-id{display:flex;align-items:center;gap:10px;min-width:190px}.gr-live-tutor-orb{position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(94,234,212,.35);border-radius:14px;background:linear-gradient(145deg,rgba(13,148,136,.24),rgba(14,165,233,.13));box-shadow:inset 0 0 18px rgba(45,212,191,.08),0 8px 20px rgba(0,0,0,.2)}.gr-live-tutor-orb span{color:#e6fffb;font-size:.72rem;font-weight:1000;letter-spacing:.06em}.gr-live-tutor-orb i{position:absolute;right:-2px;bottom:-2px;width:10px;height:10px;border:2px solid #06131d;border-radius:50%;background:#2dd4bf;box-shadow:0 0 13px rgba(45,212,191,.65)}
.gr-live-tutor-id>div:last-child{display:grid;gap:2px}.gr-live-tutor-id small{color:#5eead4;font-size:.56rem;font-weight:1000;letter-spacing:.13em}.gr-live-tutor-id strong{color:#fff;font-size:.9rem;letter-spacing:-.01em}.gr-live-tutor-id>div:last-child>span{display:flex;align-items:center;gap:5px;color:#8fa9ba;font-size:.53rem;font-weight:950;letter-spacing:.1em}.gr-live-tutor-id>div:last-child>span i{width:5px;height:5px;border-radius:50%;background:#38bdf8;box-shadow:0 0 8px rgba(56,189,248,.65)}
.gr-live-tutor-message{min-width:0;padding:10px 13px;border-left:1px solid rgba(148,163,184,.14);border-right:1px solid rgba(148,163,184,.14)}.gr-live-tutor-message small{display:block;margin-bottom:3px;color:#7dd3fc;font-size:.53rem;font-weight:950;letter-spacing:.11em}.gr-live-tutor-message p{margin:0;color:#dcecf6;font-size:.79rem;line-height:1.48}.gr-live-tutor-message.pulse{animation:grTutorCoachPulse .48s ease-out}@keyframes grTutorCoachPulse{0%{background:rgba(45,212,191,.12)}100%{background:transparent}}
.gr-live-tutor-actions{display:grid;justify-items:end;gap:6px;min-width:190px}.gr-live-tutor-actions .btn{min-height:36px;padding:7px 11px;font-size:.68rem;white-space:nowrap}.gr-live-tutor-actions span{max-width:210px;color:#7890a2;font-size:.57rem;line-height:1.35;text-align:right}
@media(max-width:900px){.gr-live-tutor-coach{grid-template-columns:auto minmax(0,1fr)}.gr-live-tutor-actions{grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;justify-items:start;min-width:0}.gr-live-tutor-actions span{max-width:none;text-align:left}.gr-live-tutor-message{border-right:0}}
@media(max-width:600px){.gr-live-tutor-coach{grid-template-columns:1fr;gap:10px;padding:12px}.gr-live-tutor-id{min-width:0}.gr-live-tutor-message{padding:10px 0;border-left:0;border-right:0;border-top:1px solid rgba(148,163,184,.12);border-bottom:1px solid rgba(148,163,184,.12)}.gr-live-tutor-actions{grid-column:auto;grid-template-columns:1fr}.gr-live-tutor-actions .btn{width:100%}.gr-live-tutor-actions span{text-align:center;width:100%}}

/* V52.24.72 • Premium Geometry Virtual Class */
.geometry-lab-shell{width:100%;display:grid;gap:14px}.geometry-lab-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid rgba(74,222,128,.18);border-radius:22px;background:radial-gradient(circle at 8% 0,rgba(34,197,94,.14),transparent 34%),radial-gradient(circle at 92% 10%,rgba(59,130,246,.10),transparent 30%),linear-gradient(150deg,rgba(4,25,28,.96),rgba(7,20,38,.96));box-shadow:0 18px 48px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.035)}.geometry-lab-hero span{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#8ef0b4}.geometry-lab-hero h3{margin:4px 0 5px;font-size:1.32rem;color:#f2fff7}.geometry-lab-hero p{margin:0;max-width:720px;color:#b8d8cf;line-height:1.5}.geometry-live-badge{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 12px;border:1px solid rgba(74,222,128,.18);border-radius:999px;background:rgba(34,197,94,.08);font-size:.72rem;font-weight:900;letter-spacing:.1em;color:#bbf7d0}.geometry-live-badge i{width:8px;height:8px;border-radius:999px;background:#4ade80;box-shadow:0 0 0 5px rgba(74,222,128,.09),0 0 18px rgba(74,222,128,.55)}
.geometry-mode-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:6px;border:1px solid rgba(114,219,246,.12);border-radius:18px;background:rgba(4,16,29,.72)}.geometry-mode-tabs button,.geometry-transform-tabs button{min-height:44px;border:1px solid transparent;border-radius:13px;background:transparent;color:#9fbfca;font-weight:900;cursor:pointer}.geometry-mode-tabs button:hover,.geometry-transform-tabs button:hover{background:rgba(255,255,255,.035);color:#e8fbff}.geometry-mode-tabs button.active,.geometry-transform-tabs button.active{border-color:rgba(74,222,128,.22);background:linear-gradient(180deg,rgba(34,197,94,.18),rgba(16,185,129,.08));color:#eafff1;box-shadow:inset 0 1px rgba(255,255,255,.04)}
.geometry-mode-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:16px}.geometry-visual-panel,.geometry-teaching-panel{min-width:0}.geometry-control-grid,.geometry-transform-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.geometry-control-grid label,.geometry-transform-controls label{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label out" "range range";align-items:center;gap:7px;padding:12px 13px;border:1px solid rgba(114,219,246,.13);border-radius:15px;background:rgba(255,255,255,.025)}.geometry-control-grid label span,.geometry-transform-controls label span{grid-area:label;color:#b9d7df;font-size:.78rem;font-weight:800}.geometry-control-grid output,.geometry-transform-controls output{grid-area:out;min-width:48px;text-align:right;color:#effcff;font-size:.82rem;font-weight:950}.geometry-control-grid input,.geometry-transform-controls input{grid-area:range;width:100%;accent-color:#4ade80}
.geometry-dual-stage{display:grid;grid-template-columns:1fr 1fr;gap:12px}.geometry-dual-stage article{min-width:0;padding:14px;border:1px solid rgba(114,219,246,.12);border-radius:18px;background:linear-gradient(160deg,rgba(6,22,34,.74),rgba(10,26,46,.6))}.geometry-dual-stage article>small{display:block;margin-bottom:7px;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#8de9b1}.geometry-dual-stage article p{margin:8px 0 0;color:#aac8d1;font-size:.8rem;line-height:1.45}.geometry-angle-svg,.geometry-polygon-svg,.geometry-circle-svg,.geometry-transform-svg{display:block;width:100%;height:auto;max-height:360px}.geometry-parallel{stroke:#66e4f2;stroke-width:5;stroke-linecap:round}.geometry-transversal{stroke:#a78bfa;stroke-width:5;stroke-linecap:round}.geometry-angle-point{fill:#facc15}.geometry-angle-label{fill:#dffbff;font-size:18px;font-weight:900}.geometry-angle-label.alt{fill:#bbf7d0}.geometry-angle-label.supp{fill:#fde68a}.geometry-polygon-svg polygon{fill:rgba(34,197,94,.12);stroke:#4ade80;stroke-width:5;stroke-linejoin:round;filter:drop-shadow(0 12px 24px rgba(34,197,94,.12))}.geometry-polygon-svg circle{fill:#facc15}.geometry-polygon-svg text{fill:#cde9df;font-size:15px;font-weight:800}.geometry-stat-row,.geometry-circle-stats,.geometry-scale-powers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.geometry-stat-row span,.geometry-circle-stats span,.geometry-scale-powers span{padding:10px 11px;border:1px solid rgba(114,219,246,.12);border-radius:13px;background:rgba(255,255,255,.025)}.geometry-stat-row small,.geometry-circle-stats small,.geometry-scale-powers small{display:block;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#85aeb9}.geometry-stat-row strong,.geometry-circle-stats strong,.geometry-scale-powers strong{display:block;margin-top:4px;color:#eefcff;font-size:.86rem}
.geometry-circle-stage{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:14px;align-items:center}.geometry-circle-outline{fill:rgba(34,197,94,.035);stroke:#67e8f9;stroke-width:4}.geometry-sector-fill{fill:rgba(74,222,128,.24);stroke:#4ade80;stroke-width:2}.geometry-radius-line{stroke:#facc15;stroke-width:4;stroke-linecap:round}.geometry-radius-line.secondary{stroke:#a78bfa}.geometry-circle-svg circle:not(.geometry-circle-outline){fill:#f8fafc}.geometry-radius-label,.geometry-sector-label{fill:#ecfeff;font-size:15px;font-weight:900}.geometry-circle-stats{grid-template-columns:1fr 1fr;margin:0}.geometry-circle-stats span{min-height:64px}.geometry-circle-stats strong{line-height:1.35}
.geometry-transform-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:10px;padding:5px;border-radius:15px;background:rgba(255,255,255,.025);border:1px solid rgba(114,219,246,.12)}.geometry-transform-controls.geometry-transform-note{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid rgba(114,219,246,.12);border-radius:15px;background:rgba(255,255,255,.025)}.geometry-transform-note span{font-size:.75rem;color:#9fbfca}.geometry-transform-note strong{color:#eafaff}.geometry-transform-stage{display:grid;grid-template-columns:minmax(280px,1fr) minmax(190px,.45fr);gap:14px;align-items:center}.geometry-transform-svg{border:1px solid rgba(114,219,246,.12);border-radius:18px;background:rgba(2,13,24,.58)}.geometry-grid line{stroke:rgba(148,163,184,.10);stroke-width:1}.geometry-axis{stroke:rgba(226,232,240,.38);stroke-width:2}.geometry-shape-original{fill:rgba(96,165,250,.13);stroke:#60a5fa;stroke-width:4}.geometry-shape-image{fill:rgba(74,222,128,.18);stroke:#4ade80;stroke-width:4}.geometry-point-label{font-size:14px;font-weight:900}.geometry-point-label.original{fill:#93c5fd}.geometry-point-label.image{fill:#86efac}.geometry-transform-summary{padding:15px;border:1px solid rgba(74,222,128,.16);border-radius:17px;background:linear-gradient(160deg,rgba(34,197,94,.08),rgba(59,130,246,.04))}.geometry-transform-summary small,.geometry-invariant-card small{display:block;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:#8fe7b0}.geometry-transform-summary strong,.geometry-invariant-card strong{display:block;margin:6px 0;color:#effff5}.geometry-transform-summary span{display:block;color:#b9d8cf;font-size:.82rem;line-height:1.45}.geometry-invariant-card{margin-top:15px;padding:14px;border:1px solid rgba(74,222,128,.14);border-radius:16px;background:rgba(34,197,94,.045)}.geometry-invariant-card p{margin:6px 0 0;color:#aecbd2;font-size:.82rem;line-height:1.45}
.geometry-similarity-stage{min-height:300px;display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(170px,1.35fr);gap:14px;align-items:center;justify-items:center;padding:18px;border:1px solid rgba(114,219,246,.12);border-radius:20px;background:radial-gradient(circle at 15% 20%,rgba(34,197,94,.08),transparent 30%),rgba(3,15,26,.54)}.geometry-similarity-stage article{display:grid;justify-items:center;gap:8px}.geometry-similarity-stage article small{font-size:.66rem;letter-spacing:.16em;color:#8cdca9}.geometry-similarity-stage article p{margin:0;color:#a9c7cf;font-size:.8rem}.geometry-sim-shape{display:grid;place-items:center;min-width:72px;min-height:48px;border-radius:16px;transition:width .18s ease,height .18s ease}.geometry-sim-shape.original{border:3px solid #60a5fa;background:rgba(96,165,250,.13)}.geometry-sim-shape.image{border:3px solid #4ade80;background:rgba(74,222,128,.15);box-shadow:0 18px 36px rgba(34,197,94,.10)}.geometry-sim-shape span{font-weight:950;color:#f1fbff}.geometry-scale-arrow{display:grid;justify-items:center;gap:2px;color:#eafaff}.geometry-scale-arrow span{font-size:.75rem;color:#bbf7d0}.geometry-scale-arrow i{font-style:normal;font-size:2rem;color:#72e5f4}.geometry-scale-powers{margin-top:14px}.geometry-scale-powers span:nth-child(2){border-color:rgba(74,222,128,.16);background:rgba(34,197,94,.04)}.geometry-scale-powers span:nth-child(3){border-color:rgba(167,139,250,.18);background:rgba(139,92,246,.04)}
.geometry-challenge{margin-top:16px;padding:15px;border:1px solid rgba(250,204,21,.16);border-radius:17px;background:radial-gradient(circle at 4% 0,rgba(250,204,21,.10),transparent 34%),rgba(255,255,255,.025)}.geometry-challenge>small{display:block;font-size:.65rem;letter-spacing:.17em;text-transform:uppercase;color:#f7d86f}.geometry-challenge>strong{display:block;margin:6px 0 10px;color:#f8fbff;line-height:1.4}.geometry-answer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.geometry-answer-row input{min-width:0;height:42px;padding:0 12px;border:1px solid rgba(114,219,246,.18);border-radius:11px;background:#061522;color:#fff;font-weight:800}.geometry-answer-row button{height:42px;padding:0 15px;border:1px solid rgba(74,222,128,.2);border-radius:11px;background:linear-gradient(180deg,rgba(34,197,94,.2),rgba(22,163,74,.12));color:#eafff1;font-weight:950;cursor:pointer}.geometry-feedback{margin:10px 0 0;color:#a9c7cf;font-size:.8rem;line-height:1.45}.geometry-feedback.correct{color:#bbf7d0}.geometry-feedback.wrong{color:#fecaca}.geometry-feedback.warn{color:#fde68a}.geometry-hidden-answer{display:none}
@media(max-width:1050px){.geometry-mode-grid{grid-template-columns:1fr}.geometry-circle-stage,.geometry-transform-stage{grid-template-columns:1fr}.geometry-circle-svg,.geometry-transform-svg{max-width:520px;margin-inline:auto}.geometry-circle-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.geometry-lab-hero{align-items:flex-start;flex-direction:column}.geometry-mode-tabs{grid-template-columns:1fr 1fr}.geometry-dual-stage{grid-template-columns:1fr}.geometry-control-grid,.geometry-transform-controls{grid-template-columns:1fr}.geometry-circle-stats,.geometry-stat-row,.geometry-scale-powers{grid-template-columns:1fr 1fr}.geometry-transform-tabs{grid-template-columns:1fr 1fr}.geometry-similarity-stage{grid-template-columns:1fr;min-height:0}.geometry-scale-arrow i{transform:rotate(90deg)}.geometry-sim-shape{max-width:90%}}
@media(max-width:480px){.geometry-mode-tabs{grid-template-columns:1fr}.geometry-circle-stats,.geometry-stat-row,.geometry-scale-powers{grid-template-columns:1fr}.geometry-answer-row{grid-template-columns:1fr}.geometry-answer-row button{width:100%}.geometry-lab-hero,.geometry-dual-stage article,.geometry-challenge{padding:12px}.geometry-transform-tabs{grid-template-columns:1fr 1fr}.geometry-similarity-stage{padding:12px}.geometry-live-badge{white-space:normal}}

/* V52.24.73 • Premium Pythagoras & Trigonometry Virtual Class */
.trig-lab-shell{width:100%;display:grid;gap:14px}.trig-lab-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid rgba(251,146,60,.2);border-radius:22px;background:radial-gradient(circle at 8% 0,rgba(249,115,22,.18),transparent 34%),radial-gradient(circle at 92% 10%,rgba(245,158,11,.1),transparent 30%),linear-gradient(150deg,rgba(31,17,5,.97),rgba(12,20,35,.97));box-shadow:0 18px 48px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.035)}
.trig-lab-hero span{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#fdba74}.trig-lab-hero h3{margin:4px 0 5px;font-size:1.34rem;color:#fff7ed}.trig-lab-hero p{margin:0;max-width:760px;color:#dcc9b9;line-height:1.5}.trig-live-badge{display:flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 12px;border:1px solid rgba(251,146,60,.2);border-radius:999px;background:rgba(249,115,22,.1);font-size:.72rem;font-weight:900;letter-spacing:.1em;color:#ffedd5}.trig-live-badge i{width:8px;height:8px;border-radius:999px;background:#fb923c;box-shadow:0 0 0 5px rgba(251,146,60,.1),0 0 18px rgba(249,115,22,.6)}
.trig-mode-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.trig-mode-tabs button,.trig-subtabs button,.trig-exact-buttons button{min-height:44px;border:1px solid rgba(251,146,60,.14);border-radius:14px;background:rgba(255,255,255,.025);color:#cbd5e1;font-weight:850;cursor:pointer}.trig-mode-tabs button.active,.trig-subtabs button.active,.trig-exact-buttons button.active{border-color:rgba(251,146,60,.44);background:linear-gradient(180deg,rgba(249,115,22,.2),rgba(194,65,12,.1));color:#fff7ed;box-shadow:inset 0 1px rgba(255,255,255,.04),0 8px 24px rgba(249,115,22,.08)}
.trig-mode-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(330px,.72fr);gap:14px}.trig-visual-panel,.trig-teaching-panel{position:relative;overflow:hidden}.trig-visual-panel:before,.trig-teaching-panel:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(251,146,60,.55),rgba(245,158,11,.18),transparent)}
.trig-subtabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.trig-subtabs.four{grid-template-columns:repeat(4,minmax(0,1fr))}.trig-subtabs button{min-height:38px;font-size:.78rem}.trig-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.trig-control-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.trig-control-grid label{display:grid;gap:7px;padding:11px 12px;border:1px solid rgba(251,146,60,.11);border-radius:14px;background:rgba(255,255,255,.025)}.trig-control-grid label>span{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#d4b59e}.trig-control-grid label>output{font-size:.9rem;font-weight:900;color:#fff7ed}.trig-control-grid input[type=range]{width:100%;accent-color:#f97316}
.trig-triangle-stage,.trig-nonright-stage,.trig-cuboid-stage,.trig-exact-stage{display:grid;place-items:center;min-height:300px;margin-top:8px;border:1px solid rgba(251,146,60,.1);border-radius:20px;background:radial-gradient(circle at 50% 50%,rgba(249,115,22,.08),transparent 58%),linear-gradient(160deg,rgba(10,18,31,.78),rgba(22,13,6,.5));overflow:hidden}.trig-triangle-svg,.trig-nonright-svg,.trig-cuboid-stage svg,.trig-exact-stage svg{width:min(100%,620px);max-height:340px}.trig-triangle-fill{fill:url(#trigTriFill)}.trig-side{stroke-width:5;stroke-linecap:round}.trig-side.adjacent{stroke:#fb923c}.trig-side.opposite{stroke:#facc15}.trig-side.hyp{stroke:#60a5fa}.trig-right-mark{fill:none;stroke:#e2e8f0;stroke-width:3}.trig-angle-arc{fill:none;stroke:#fdba74;stroke-width:3}.trig-angle-label{fill:#fed7aa;font-size:14px;font-weight:900}.trig-side-label{font-size:13px;font-weight:900}.trig-side-label.adjacent{fill:#fdba74}.trig-side-label.opposite{fill:#fde68a;writing-mode:tb}.trig-side-label.hyp{fill:#bfdbfe}.trig-side-label.unknown{fill:#fff7ed}
.trig-live-equation{display:grid;gap:5px;margin-top:12px;padding:14px 16px;border:1px solid rgba(251,146,60,.15);border-radius:16px;background:radial-gradient(circle at 4% 0,rgba(249,115,22,.12),transparent 35%),rgba(255,255,255,.025)}.trig-live-equation small{font-size:.67rem;letter-spacing:.18em;color:#fdba74;text-transform:uppercase}.trig-live-equation strong{font-size:1.05rem;color:#fff7ed}.trig-live-equation span{color:#d5c5b8;font-size:.82rem;line-height:1.45}
.trig-ratio-deck{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.trig-ratio-deck span{display:grid;gap:4px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.025)}.trig-ratio-deck span.active{border-color:rgba(251,146,60,.34);background:rgba(249,115,22,.11);box-shadow:0 10px 24px rgba(249,115,22,.08)}.trig-ratio-deck small{font-size:.68rem;letter-spacing:.16em;color:#fdba74}.trig-ratio-deck strong{font-size:.82rem;color:#eef6fb}
.trig-challenge{margin-top:16px;padding:15px;border:1px solid rgba(251,146,60,.16);border-radius:18px;background:linear-gradient(145deg,rgba(249,115,22,.08),rgba(255,255,255,.025))}.trig-challenge>small{display:block;font-size:.67rem;letter-spacing:.18em;color:#fdba74;text-transform:uppercase}.trig-challenge>strong{display:block;margin:7px 0 10px;color:#fff7ed;line-height:1.4}.trig-answer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.trig-answer-row input{min-height:42px;border:1px solid rgba(251,146,60,.18);border-radius:12px;background:#091321;color:#fff;padding:0 12px;font-weight:800}.trig-answer-row button{min-width:92px;border:0;border-radius:12px;background:linear-gradient(180deg,#fb923c,#ea580c);color:#fff7ed;font-weight:950;cursor:pointer}.trig-feedback{margin:10px 0 0;color:#cbd5e1;font-size:.8rem;line-height:1.45}.trig-feedback.correct{color:#86efac}.trig-feedback.wrong{color:#fca5a5}.trig-feedback.warn{color:#fde68a}
.trig-nonright-svg polygon{fill:rgba(249,115,22,.1);stroke:#fb923c;stroke-width:4;stroke-linejoin:round}.trig-nonright-svg text{fill:#e5eef5;font-size:14px;font-weight:850}.trig-nr-side{fill:#bfdbfe!important}.trig-nr-side.unknown{fill:#fde68a!important}
.trig-cuboid-face{stroke:#94a3b8;stroke-width:2;fill:rgba(148,163,184,.035)}.trig-cuboid-face.top{fill:rgba(249,115,22,.06)}.trig-cuboid-face.side{fill:rgba(96,165,250,.05)}.trig-cuboid-edge{stroke:#64748b;stroke-width:2;stroke-dasharray:6 6}.trig-base-diagonal{stroke:#facc15;stroke-width:4;stroke-dasharray:9 6}.trig-space-diagonal{stroke:#fb923c;stroke-width:5}.trig-cuboid-stage text{fill:#cbd5e1;font-size:13px;font-weight:800}.trig-cuboid-stage text.base{fill:#fde68a}.trig-cuboid-stage text.space{fill:#fdba74}.trig-stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.trig-stat-row span{display:grid;gap:3px;padding:11px 12px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.025)}.trig-stat-row small{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:#9fb2c0}.trig-stat-row strong{font-size:.8rem;color:#eef6fb}
.trig-exact-buttons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px}.trig-exact-buttons button{min-height:38px}.trig-quarter-circle{fill:none;stroke:rgba(251,146,60,.45);stroke-width:4}.trig-exact-axis{stroke:#64748b;stroke-width:2}.trig-exact-radius{stroke:#fb923c;stroke-width:5}.trig-exact-proj{stroke:#facc15;stroke-width:3;stroke-dasharray:6 5}.trig-exact-stage circle{fill:#fff7ed;stroke:#fb923c;stroke-width:3}.trig-exact-label{font-size:13px;font-weight:900}.trig-exact-label.cos{fill:#fdba74}.trig-exact-label.sin{fill:#fde68a}.trig-exact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.trig-exact-cards span{display:grid;gap:3px;padding:12px;border:1px solid rgba(251,146,60,.1);border-radius:14px;background:rgba(255,255,255,.025)}.trig-exact-cards small{font-size:.68rem;color:#d4b59e}.trig-exact-cards strong{font-size:1rem;color:#fff7ed}
@media(max-width:1000px){.trig-mode-grid{grid-template-columns:1fr}.trig-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.trig-lab-hero{align-items:flex-start;flex-direction:column}.trig-mode-tabs{grid-template-columns:1fr 1fr}.trig-subtabs.four{grid-template-columns:1fr 1fr}.trig-control-grid,.trig-control-grid.three{grid-template-columns:1fr}.trig-ratio-deck,.trig-stat-row,.trig-exact-cards{grid-template-columns:1fr}.trig-exact-buttons{grid-template-columns:repeat(5,minmax(0,1fr))}.trig-triangle-stage,.trig-nonright-stage,.trig-cuboid-stage,.trig-exact-stage{min-height:250px}}
@media(max-width:480px){.trig-mode-tabs{grid-template-columns:1fr}.trig-exact-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.trig-answer-row{grid-template-columns:1fr}.trig-answer-row button{min-height:42px}.trig-lab-hero,.trig-challenge{padding:12px}.trig-live-badge{white-space:normal}.trig-subtabs,.trig-subtabs.four{grid-template-columns:1fr 1fr}}

/* V52.24.74 • Premium Probability & Statistics Virtual Class */
.probstat-shell{width:100%;display:grid;gap:14px}.probstat-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border:1px solid rgba(94,234,212,.2);border-radius:20px;background:radial-gradient(circle at 4% 0,rgba(45,212,191,.14),transparent 34%),radial-gradient(circle at 96% 8%,rgba(59,130,246,.12),transparent 30%),linear-gradient(145deg,rgba(5,24,34,.96),rgba(10,22,39,.96));box-shadow:0 18px 42px rgba(0,0,0,.18)}.probstat-hero span{display:block;font-size:.68rem;letter-spacing:.18em;color:#86e8dc;text-transform:uppercase}.probstat-hero h3{margin:4px 0 4px;font-size:1.55rem;color:#f4fdff}.probstat-hero p{margin:0;color:#bad4df;max-width:760px}.probstat-live{display:flex;gap:8px;align-items:center;white-space:nowrap;font-size:.7rem;letter-spacing:.14em;color:#b8f9ee}.probstat-live i{width:8px;height:8px;border-radius:999px;background:#5eead4;box-shadow:0 0 0 5px rgba(94,234,212,.1),0 0 18px rgba(94,234,212,.65)}
.probstat-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.probstat-tabs button{min-height:46px;padding:8px 10px;border-radius:14px;border:1px solid rgba(148,163,184,.12);background:rgba(8,23,37,.78);color:#a9c6d2;font-weight:800}.probstat-tabs button.active{border-color:rgba(94,234,212,.34);background:linear-gradient(180deg,rgba(45,212,191,.18),rgba(59,130,246,.11));color:#f1feff;box-shadow:inset 0 0 22px rgba(45,212,191,.06)}
.probstat-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:14px}.probstat-visual{overflow:hidden}.probstat-controls{display:grid;gap:10px;margin-bottom:14px}.probstat-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.probstat-controls.four{grid-template-columns:repeat(4,minmax(0,1fr))}.probstat-controls label,.scatter-controls label,.hist-controls label,.stats-data-controls label{display:grid;gap:6px;padding:10px 12px;border:1px solid rgba(148,163,184,.1);border-radius:13px;background:rgba(255,255,255,.025)}.probstat-controls label>span,.scatter-controls label>span,.hist-controls label>span,.stats-data-controls label>span{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#8db7c7}.probstat-controls input,.scatter-controls input,.hist-controls input,.stats-data-controls input{width:100%}.probstat-controls output,.scatter-controls output,.hist-controls output,.stats-data-controls output{color:#eefbff;font-weight:900}.probstat-toggle button{height:36px;border-radius:10px;border:1px solid rgba(94,234,212,.18);background:rgba(45,212,191,.08);color:#ddfffb;font-weight:900}.probstat-toggle button.active{background:rgba(96,165,250,.12);border-color:rgba(96,165,250,.28)}
.chance-wheel{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;align-items:center}.chance-segments{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:8px;padding:16px;border-radius:18px;border:1px solid rgba(148,163,184,.1);background:linear-gradient(145deg,rgba(8,25,38,.8),rgba(13,28,48,.68))}.chance-segments span{aspect-ratio:1;display:grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(148,163,184,.08);color:#96b8c7;font-weight:900}.chance-segments span.fav{background:linear-gradient(180deg,rgba(45,212,191,.8),rgba(13,148,136,.66));color:#042a2f;box-shadow:0 8px 20px rgba(45,212,191,.13)}.chance-equation{padding:16px;border-radius:18px;border:1px solid rgba(94,234,212,.16);background:rgba(45,212,191,.055)}.chance-equation small,.chance-sim-card small{display:block;font-size:.65rem;letter-spacing:.14em;color:#8fe8dd}.chance-equation strong{display:block;margin-top:7px;font-size:1.15rem;color:#f0fffd}.chance-sim-card{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:14px;padding:14px 16px;border-radius:17px;border:1px solid rgba(96,165,250,.16);background:rgba(59,130,246,.05)}.chance-sim-card strong{display:block;margin:4px 0;color:#f0f8ff}.chance-sim-card span{color:#9fc2d2;font-size:.8rem}.probstat-meter{position:relative;height:16px;margin-top:14px;border-radius:999px;background:rgba(255,255,255,.05);overflow:visible;border:1px solid rgba(148,163,184,.1)}.probstat-meter>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,rgba(45,212,191,.9),rgba(59,130,246,.8))}.probstat-meter>i{position:absolute;top:-5px;width:4px;height:26px;border-radius:4px;background:#facc15;box-shadow:0 0 14px rgba(250,204,21,.45)}.probstat-meter-label{display:flex;justify-content:space-between;margin-top:7px;color:#90acb8;font-size:.75rem}
.tree-diagram{position:relative;min-height:290px;margin-top:10px}.tree-diagram svg{position:absolute;inset:0;width:100%;height:100%;z-index:0}.tree-diagram svg path{fill:none;stroke:rgba(127,214,234,.24);stroke-width:3}.tree-root,.tree-stage span{position:relative;z-index:1;display:grid;place-items:center;border-radius:14px;border:1px solid rgba(255,255,255,.1);font-weight:950}.tree-root{width:88px;height:40px;margin:0 auto;background:rgba(255,255,255,.04);color:#c8e2ea}.tree-stage{position:absolute;left:0;right:0;display:flex;justify-content:space-around}.tree-stage.one{top:74px}.tree-stage.two{top:190px}.tree-stage span{width:94px;min-height:58px}.tree-stage span.red{background:linear-gradient(180deg,rgba(244,63,94,.28),rgba(159,18,57,.12));color:#fecdd3}.tree-stage span.blue{background:linear-gradient(180deg,rgba(59,130,246,.28),rgba(30,64,175,.13));color:#dbeafe}.tree-stage small{font-weight:700;color:#aac2cf}.tree-result-strip,.venn-result-strip,.stats-metric-cards,.hist-density-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tree-result-strip span,.venn-result-strip span,.stats-metric-cards span,.hist-density-cards span{padding:11px 12px;border-radius:13px;border:1px solid rgba(148,163,184,.1);background:rgba(255,255,255,.025)}.tree-result-strip small,.venn-result-strip small,.stats-metric-cards small,.hist-density-cards small{display:block;color:#8fb0be;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase}.tree-result-strip strong,.venn-result-strip strong,.stats-metric-cards strong,.hist-density-cards strong{display:block;margin-top:4px;color:#f2fbff}
.venn-stage{padding:14px}.venn-universe{position:relative;min-height:320px;border:2px solid rgba(148,163,184,.16);border-radius:20px;background:linear-gradient(145deg,rgba(8,26,39,.82),rgba(12,27,49,.68));overflow:hidden}.venn-circle{position:absolute;top:58px;width:220px;height:220px;border-radius:50%;display:grid;place-items:center;border:2px solid}.venn-circle.a{left:80px;border-color:rgba(45,212,191,.75);background:rgba(45,212,191,.13)}.venn-circle.b{right:80px;border-color:rgba(96,165,250,.75);background:rgba(96,165,250,.13)}.venn-circle b{position:absolute;top:28px;font-size:1.15rem}.venn-circle.a b{left:55px;color:#91f4e8}.venn-circle.b b{right:55px;color:#bfdbfe}.venn-circle span{font-size:1.35rem;font-weight:950}.venn-circle.a span{transform:translateX(-42px);color:#b7fff4}.venn-circle.b span{transform:translateX(42px);color:#d8e8ff}.venn-overlap{position:absolute;top:138px;left:50%;transform:translateX(-50%);z-index:3;text-align:center}.venn-overlap small{display:block;color:#d6eff5}.venn-overlap strong{font-size:1.45rem;color:#fff}.venn-neither{position:absolute;right:18px;bottom:14px;color:#98b6c2;font-size:.8rem}.venn-neither strong{color:#e7f5fa;font-size:1.1rem}
.stats-data-controls{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:12px}.stats-data-controls label{padding:8px}.stats-metric-cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}.stats-dotplot,.stats-boxplot,.histogram-svg,.scatter-svg{width:100%;border-radius:17px;border:1px solid rgba(148,163,184,.1);background:linear-gradient(145deg,rgba(7,23,36,.76),rgba(12,26,46,.64))}.stats-dotplot line,.stats-boxplot line,.histogram-svg line,.scatter-svg .axis{stroke:rgba(177,214,228,.38);stroke-width:2}.stats-dotplot circle{fill:#5eead4;stroke:#042f2e;stroke-width:2}.stats-dotplot text,.stats-boxplot text,.histogram-svg text{fill:#9bbbc8;font-size:12px}.stats-boxplot rect{fill:rgba(96,165,250,.18);stroke:#60a5fa;stroke-width:2}.stats-boxplot .median{stroke:#facc15;stroke-width:4}
.hist-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}.histogram-svg rect{fill:rgba(45,212,191,.26);stroke:#5eead4;stroke-width:2}.histogram-svg .hist-axis-label{fill:#8fb0be}.hist-density-cards{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px}
.scatter-controls{display:grid;grid-template-columns:1.2fr .8fr;gap:10px;margin-bottom:10px}.probstat-choice-row{display:flex;flex-wrap:wrap;gap:8px}.probstat-choice-row button{min-height:40px;padding:8px 13px;border-radius:12px;border:1px solid rgba(148,163,184,.13);background:rgba(255,255,255,.035);color:#b8d1dc;font-weight:850}.probstat-choice-row button.active{background:rgba(45,212,191,.13);border-color:rgba(94,234,212,.3);color:#edfffc}.scatter-svg g line{stroke:rgba(148,163,184,.07);stroke-width:1}.scatter-svg circle{fill:#60a5fa;stroke:#dbeafe;stroke-width:1.5}.scatter-svg .best-fit{stroke:#facc15;stroke-width:4;stroke-dasharray:8 8}.scatter-insight{margin-top:10px;padding:13px 15px;border-radius:15px;border:1px solid rgba(96,165,250,.14);background:rgba(59,130,246,.05)}.scatter-insight small{display:block;font-size:.66rem;letter-spacing:.14em;color:#8fb9f8}.scatter-insight strong{display:block;margin:4px 0;color:#edf6ff}.scatter-insight span{color:#a9c2cf;font-size:.8rem}
.probstat-challenge{margin-top:16px;padding:15px;border-radius:17px;border:1px solid rgba(250,204,21,.17);background:radial-gradient(circle at 5% 0,rgba(250,204,21,.1),transparent 35%),rgba(255,255,255,.02)}.probstat-challenge>small{display:block;font-size:.67rem;letter-spacing:.16em;color:#f5d66b}.probstat-challenge>strong{display:block;margin:6px 0 10px;color:#f5fbff}.probstat-answer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.probstat-answer-row input{min-height:42px;padding:0 12px;border-radius:11px;border:1px solid rgba(148,163,184,.18);background:#071625;color:#fff}.probstat-answer-row button{padding:0 16px;border-radius:11px;border:1px solid rgba(94,234,212,.25);background:rgba(45,212,191,.12);color:#e9fffb;font-weight:900}.probstat-feedback{margin:10px 0 0;color:#aac4cf;font-size:.82rem;line-height:1.45}.probstat-feedback.correct{color:#86efac}.probstat-feedback.wrong{color:#fda4af}.probstat-feedback.warn{color:#fde68a}
@media(max-width:1050px){.probstat-tabs{grid-template-columns:repeat(3,1fr)}.probstat-grid{grid-template-columns:1fr}.probstat-controls.four{grid-template-columns:repeat(2,1fr)}.stats-data-controls{grid-template-columns:repeat(4,1fr)}}
@media(max-width:700px){.probstat-hero{align-items:flex-start;flex-direction:column}.probstat-tabs{grid-template-columns:repeat(2,1fr)}.probstat-controls.three,.probstat-controls.four,.scatter-controls,.hist-controls{grid-template-columns:1fr}.chance-wheel{grid-template-columns:1fr}.chance-sim-card{align-items:stretch;flex-direction:column}.tree-stage.two span{width:72px;font-size:.78rem}.venn-circle{width:180px;height:180px}.venn-circle.a{left:25px}.venn-circle.b{right:25px}.venn-circle.a span{transform:translateX(-30px)}.venn-circle.b span{transform:translateX(30px)}.stats-data-controls{grid-template-columns:repeat(2,1fr)}.stats-metric-cards,.hist-density-cards{grid-template-columns:repeat(2,1fr)}}

/* ===== V52.24.75 • Factors & Multiples Virtual Class ===== */
.gr-factors-lab .topic-lab-panel{position:relative;overflow:hidden}.gr-factors-lab .topic-lab-panel:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(94,234,212,.55),rgba(96,165,250,.35),transparent)}
.gr-factors-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gr-factors-toolbar label{display:grid;grid-template-columns:1fr auto;grid-template-areas:"name out" "range range";gap:7px;color:#9fc4d3;font-size:.66rem;font-weight:950;letter-spacing:.04em;text-transform:uppercase}.gr-factors-toolbar label output{grid-area:out;color:#ecfeff;font-size:1rem}.gr-factors-toolbar input{grid-area:range;width:100%;accent-color:#5eead4}
.gr-factors-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.gr-factors-tabs button,.gr-factors-switch button{min-height:38px;border:1px solid rgba(125,211,252,.19);border-radius:11px;background:rgba(8,27,42,.76);color:#9fc8d8;padding:8px 12px;font-weight:900;cursor:pointer}.gr-factors-tabs button.active,.gr-factors-switch button.active{border-color:rgba(94,234,212,.55);background:rgba(45,212,191,.12);color:#e6fffb;box-shadow:inset 0 0 18px rgba(45,212,191,.04)}
.gr-factor-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gr-factor-lists article{padding:14px;border:1px solid rgba(125,211,252,.14);border-radius:15px;background:rgba(3,18,30,.62)}.gr-factor-lists small,.gr-prime-structure small,.gr-multiple-race small{display:block;margin-bottom:10px;color:#7dd3fc;font-size:.58rem;font-weight:1000;letter-spacing:.11em}
.gr-factor-chip-row{display:flex;gap:7px;flex-wrap:wrap}.gr-factor-chip-row span{display:grid;place-items:center;min-width:38px;height:38px;padding:0 7px;border:1px solid rgba(148,163,184,.17);border-radius:10px;background:rgba(255,255,255,.035);color:#b8d4df;font-size:.78rem;font-weight:900}.gr-factor-chip-row span.common{border-color:rgba(96,165,250,.42);background:rgba(59,130,246,.12);color:#dbeafe}.gr-factor-chip-row span.hcf{border-color:rgba(94,234,212,.68);background:rgba(45,212,191,.18);color:#ecfeff;box-shadow:0 0 18px rgba(45,212,191,.12)}
.gr-factor-overlap{display:grid;gap:8px;margin-top:12px;padding:14px;border:1px solid rgba(94,234,212,.2);border-radius:15px;background:linear-gradient(145deg,rgba(13,148,136,.08),rgba(59,130,246,.06))}.gr-factor-overlap>span{color:#5eead4;font-size:.58rem;font-weight:1000;letter-spacing:.1em}.gr-factor-overlap>div{display:flex;gap:8px;flex-wrap:wrap}.gr-factor-overlap b{display:grid;place-items:center;min-width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.05);color:#d8edf5}.gr-factor-overlap b.winner{background:rgba(45,212,191,.18);color:#fff;border:1px solid rgba(94,234,212,.5)}.gr-factor-overlap>strong{color:#eefeff;font-size:.82rem}
.gr-multiple-race{display:grid;gap:10px}.gr-multiple-race>div:not(.gr-multiple-meet){display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:12px;border:1px solid rgba(125,211,252,.14);border-radius:14px;background:rgba(3,18,30,.58)}.gr-multiple-race>div>small{width:100%;margin-bottom:2px}.gr-multiple-race span{display:grid;place-items:center;min-width:46px;height:36px;border-radius:9px;background:rgba(255,255,255,.04);color:#b8d5e1;font-size:.72rem;font-weight:900}.gr-multiple-race span.meeting{background:rgba(45,212,191,.17);border:1px solid rgba(94,234,212,.58);color:#fff}.gr-multiple-meet{display:grid;grid-template-columns:1fr auto;grid-template-areas:"small value" "label value";gap:2px 12px;padding:14px 16px;border:1px solid rgba(94,234,212,.24);border-radius:15px;background:rgba(45,212,191,.08)}.gr-multiple-meet small{grid-area:small;margin:0}.gr-multiple-meet strong{grid-area:value;align-self:center;color:#ecfeff;font-size:1.55rem}.gr-multiple-meet span{grid-area:label;display:block;height:auto;background:none;justify-content:start;color:#9fc8d7}
.gr-prime-structure{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gr-prime-structure article{padding:13px;border:1px solid rgba(125,211,252,.13);border-radius:14px;background:rgba(3,18,30,.6)}.gr-prime-structure article.shared,.gr-prime-structure article.all{background:rgba(45,212,191,.055)}.gr-prime-expression{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap;color:#eefcff;font-weight:950}.gr-prime-expression i{color:#64889a;font-style:normal}.gr-prime-structure article>strong{display:block;margin-top:8px;color:#5eead4}
.gr-factors-challenge{margin-top:14px;padding:14px;border:1px solid rgba(167,139,250,.2);border-radius:16px;background:linear-gradient(145deg,rgba(76,29,149,.08),rgba(14,116,144,.06))}.gr-factors-challenge-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.gr-factors-challenge-head small{display:block;color:#c4b5fd;font-size:.56rem;font-weight:1000;letter-spacing:.1em}.gr-factors-challenge-head strong{display:block;margin-top:3px;color:#f3f7ff;font-size:.84rem}.gr-factors-switch{display:flex;gap:5px}.gr-factors-answer{display:flex;gap:8px;margin-top:11px}.gr-factors-answer input{min-width:0;flex:1;height:42px;border:1px solid rgba(125,211,252,.25);border-radius:11px;background:#061522;color:#fff;padding:8px 11px;font-weight:900}.gr-factors-challenge p{margin:9px 0 0;color:#a9c7d3;font-size:.74rem;line-height:1.45}.gr-factors-challenge p.correct{color:#99f6e4}.gr-factors-answer-key{display:none}.gr-factor-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.gr-factor-summary span{padding:12px;border:1px solid rgba(94,234,212,.15);border-radius:13px;background:rgba(255,255,255,.025)}.gr-factor-summary small{display:block;color:#84aabc;font-size:.56rem;font-weight:900}.gr-factor-summary strong{display:block;margin-top:3px;color:#ecfeff;font-size:1.05rem}

/* ===== V52.24.77 • Misconception Recovery Engine UI ===== */
.gr-misconception-alert{margin-top:14px;padding:14px;border:1px solid rgba(251,191,36,.22);border-radius:16px;background:radial-gradient(circle at 0 0,rgba(251,191,36,.09),transparent 36%),linear-gradient(145deg,rgba(19,28,37,.97),rgba(12,24,36,.97));box-shadow:inset 0 1px rgba(255,255,255,.03)}.gr-misconception-alert-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.gr-misconception-pulse{width:10px;height:10px;border-radius:50%;background:#fbbf24;box-shadow:0 0 13px rgba(251,191,36,.5)}.gr-misconception-alert-head small{display:block;color:#fcd34d;font-size:.53rem;font-weight:1000;letter-spacing:.1em}.gr-misconception-alert-head strong{display:block;margin-top:2px;color:#fff;font-size:.86rem}.gr-misconception-alert-head em{font-style:normal;color:#aebfca;font-size:.6rem;font-weight:850}.gr-misconception-alert>p{margin:11px 0;color:#c9d8e1;font-size:.76rem;line-height:1.5}.gr-misconception-alert>p b{color:#fff}.gr-misconception-fix{display:grid;gap:3px;padding:10px 11px;border-radius:11px;background:rgba(251,191,36,.055)}.gr-misconception-fix small{color:#fbbf24;font-size:.52rem;font-weight:1000;letter-spacing:.1em}.gr-misconception-fix span{color:#dce9ef;font-size:.72rem;line-height:1.45}.gr-misconception-alert .btn{margin-top:11px}
.gr-recovery-dock{margin:0 0 14px;padding:15px;border:1px solid rgba(251,191,36,.25);border-radius:18px;background:radial-gradient(circle at 4% 0,rgba(251,191,36,.1),transparent 28%),linear-gradient(145deg,rgba(18,27,35,.98),rgba(7,25,37,.98));box-shadow:0 18px 42px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.03)}.gr-recovery-head{display:flex;justify-content:space-between;gap:14px;align-items:start}.gr-recovery-head small,.gr-recovery-complete small{display:block;color:#fcd34d;font-size:.55rem;font-weight:1000;letter-spacing:.11em}.gr-recovery-head h3,.gr-recovery-complete h3{margin:4px 0 0;color:#fff;font-size:1rem}.gr-recovery-head em{font-style:normal;color:#9db5c1;font-size:.62rem;font-weight:900}.gr-recovery-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.gr-recovery-steps span{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid rgba(148,163,184,.13);border-radius:10px;color:#7f9aaa;font-size:.61rem;font-weight:900}.gr-recovery-steps i{display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:rgba(148,163,184,.1);font-style:normal}.gr-recovery-steps span.active{border-color:rgba(251,191,36,.35);color:#fef3c7;background:rgba(251,191,36,.06)}.gr-recovery-steps span.done{border-color:rgba(94,234,212,.25);color:#ccfbf1;background:rgba(45,212,191,.055)}.gr-recovery-steps span.done i{background:rgba(45,212,191,.14)}
.gr-recovery-question{padding:13px;border:1px solid rgba(125,211,252,.14);border-radius:14px;background:rgba(3,17,28,.64)}.gr-recovery-question>small{display:block;color:#7dd3fc;font-size:.52rem;font-weight:1000;letter-spacing:.1em}.gr-recovery-question>strong{display:block;margin-top:5px;color:#f4fbff;font-size:.9rem;line-height:1.45}.gr-recovery-question>p{margin:7px 0 0;color:#9fbac7;font-size:.68rem;line-height:1.45}.gr-recovery-answer-row{display:flex;gap:8px;margin-top:11px}.gr-recovery-answer-row input{min-width:0;flex:1;height:42px;border:1px solid rgba(125,211,252,.25);border-radius:11px;background:#061522;color:#fff;padding:8px 11px;font-weight:900}.gr-recovery-feedback{min-height:18px;margin-top:8px;color:#99f6e4;font-size:.68rem;font-weight:800}.gr-recovery-feedback.wrong{color:#fde68a}.gr-recovery-complete p{margin:8px 0 12px;color:#bdd0d9;font-size:.75rem;line-height:1.5}.gr-recovery-dock.complete{border-color:rgba(94,234,212,.28);background:radial-gradient(circle at 0 0,rgba(45,212,191,.09),transparent 30%),rgba(5,23,32,.96)}
@media(max-width:700px){.gr-factor-lists,.gr-prime-structure,.gr-factor-summary{grid-template-columns:1fr}.gr-factors-toolbar{grid-template-columns:1fr}.gr-factors-challenge-head{align-items:stretch;flex-direction:column}.gr-factors-answer,.gr-recovery-answer-row{flex-direction:column}.gr-recovery-answer-row .btn,.gr-factors-answer .btn{width:100%}.gr-recovery-steps{grid-template-columns:1fr}.gr-misconception-alert-head{grid-template-columns:auto 1fr}.gr-misconception-alert-head em{grid-column:2}}

/* ============================================================
   V52.24.89 • PREMIUM EXAM PAPER PRESENTATION ENGINE
   Original GradeRealm presentation inspired by standard exam/worksheet UX.
   ============================================================ */
.gr-v89-practice-ribbon,.gr-v89-paper-ribbon{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:18px 0;background:#d9e0e8;border:1px solid #d9e0e8;border-radius:10px;overflow:hidden}
.gr-v89-practice-ribbon>span,.gr-v89-paper-ribbon>span{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:#f8fafc}.gr-v89-practice-ribbon small,.gr-v89-paper-ribbon small{font-size:.56rem;letter-spacing:.12em;font-weight:900;color:#718096}.gr-v89-practice-ribbon strong,.gr-v89-paper-ribbon strong{font-size:.82rem;color:#10243f}

.gr-v89-practice-paper{width:min(1120px,100%);padding:34px 38px}.gr-v89-practice-paper .paper-header{margin-bottom:18px}.gr-v89-practice-grid{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;counter-reset:grpractice}.gr-v89-practice-grid>li{counter-increment:grpractice;min-width:0;margin:0!important;padding:18px 0!important;border:0!important;border-bottom:1px solid #dfe4ea!important}.gr-v89-practice-grid>li.gr-v89-practice-wide{grid-column:1/-1}.gr-v89-practice-qhead{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.gr-v89-practice-qhead strong{font-size:.72rem;letter-spacing:.03em;color:#26384b}.gr-v89-practice-qhead span{font-size:.66rem;font-weight:850;color:#63758a}.gr-v89-practice-grid .question-text{font-size:1rem;line-height:1.55;min-height:1.6em}.gr-v89-practice-grid .worksheet-question-meta{margin-top:5px}.gr-v89-practice-grid .student-answer-label{margin-top:10px}.gr-v89-practice-grid .student-answer-input{min-height:42px;padding:8px 10px}.gr-v89-practice-grid .maths-keys-shell{display:none!important}.gr-v89-practice-grid>li:focus-within .maths-keys-shell{display:flex!important}.gr-v89-practice-working{margin-top:8px;border:1px solid #e2e8f0;border-radius:9px;background:#fafbfd;overflow:hidden}.gr-v89-practice-working summary{cursor:pointer;padding:7px 10px;font-size:.66rem;font-weight:850;color:#53677d;list-style:none}.gr-v89-practice-working summary::-webkit-details-marker{display:none}.gr-v89-practice-working summary:before{content:'＋';margin-right:6px}.gr-v89-practice-working[open] summary:before{content:'−'}.gr-v89-practice-working .worksheet-workings-label{margin:0;padding:8px 10px 0}.gr-v89-practice-working .worksheet-workings-input{width:calc(100% - 20px);margin:6px 10px 10px;min-height:70px}

.gr-v89-exam-paper{width:min(920px,100%);padding:46px 52px;border:1px solid #cfd6df;border-radius:8px;box-shadow:0 20px 55px rgba(10,28,46,.12)}.gr-v89-exam-paper .paper-header{border-bottom:3px solid #132c49}.gr-v89-exam-paper .paper-brand{color:#173d65}.gr-v89-exam-list{list-style:none!important;padding:0!important;margin:0!important}.gr-v89-exam-list>li{position:relative;margin:0!important;padding:24px 0 18px 0!important;border:0!important;border-bottom:1.5px solid #aeb8c3!important;break-inside:avoid}.gr-v89-exam-list>li:first-child{padding-top:8px!important}.gr-v89-exam-qhead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:13px}.gr-v89-qnum{display:grid;place-items:center;width:32px;height:32px;border:1.5px solid #173b63;border-radius:50%;font-size:.82rem;font-weight:950;color:#173b63}.gr-v89-qmarks{font-size:.72rem;font-weight:900;color:#52657a}.gr-v89-exam-list .question-text{font-family:Georgia,'Times New Roman',serif;font-size:1.03rem;font-weight:500;line-height:1.65;color:#111827}.gr-v89-exam-list .worksheet-question-meta{margin-top:8px}.gr-v89-exam-working{margin-top:16px}.gr-v89-exam-working>label{display:block;margin-bottom:6px;font-size:.67rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#607286}.gr-v89-exam-working textarea{box-sizing:border-box;width:100%;min-height:var(--gr-working-height,88px);resize:vertical;padding:12px 13px;border:1px solid #d6dde5;border-radius:8px;background:repeating-linear-gradient(to bottom,#fff 0,#fff 27px,#edf1f5 28px);color:#172335;font:600 .93rem/28px system-ui,-apple-system,sans-serif;outline:none}.gr-v89-exam-working textarea:focus{border-color:#466f98;box-shadow:0 0 0 3px rgba(70,111,152,.12)}.gr-v89-exam-working textarea[readonly]{background:#f7f9fb}.gr-v89-exam-list .student-answer-label{margin-top:12px}.gr-v89-exam-list .student-answer-input{max-width:360px;background:#fff}.gr-v89-question-total{margin-top:16px;padding-top:7px;border-top:1px solid #d8dee5;text-align:right;font-family:Georgia,'Times New Roman',serif;font-size:.73rem;font-weight:700;color:#303b48}.gr-v89-exam-paper[data-paper-mode="exam"] .question-topic,.gr-v89-exam-paper[data-paper-mode="exam"] .sigma-exam-grade{display:none!important}

.gr-v89-worked-solutions{border-top:5px solid #173b63}.gr-v89-worked-solutions .paper-header p{font-weight:700}.gr-v89-solution-list{list-style:none!important;padding:0!important}.gr-v89-solution-card{margin:0 0 18px!important;padding:18px!important;border:1px solid #dce3ea;border-radius:12px;background:#fbfcfd;break-inside:avoid}.gr-v89-solution-head{display:flex;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #e1e7ed}.gr-v89-solution-head span{font-weight:950;color:#153858}.gr-v89-solution-head b{font-size:.72rem;color:#65778a}.gr-v89-final-answer{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin:12px 0;padding:11px 12px;border-radius:9px;background:#edf5fb}.gr-v89-final-answer small{font-size:.58rem;letter-spacing:.12em;font-weight:950;color:#56748f}.gr-v89-final-answer strong{font-size:1rem;color:#0f2f4e}.gr-v89-method-steps{list-style:none;padding:0;margin:10px 0;display:grid;gap:7px}.gr-v89-method-steps>li{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start}.gr-v89-method-steps>li>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#173b63;color:#fff;font-size:.66rem;font-weight:900}.gr-v89-method-steps strong{display:block;font-size:.78rem;color:#263b50}.gr-v89-method-steps small{display:block;margin-top:2px;color:#5e7185}.gr-v89-solution-method,.gr-v89-solution-diagnosis{margin-top:10px;padding:10px 12px;border-left:3px solid #9bb0c5;background:#fff}.gr-v89-solution-method strong,.gr-v89-solution-diagnosis strong{display:block;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:#536b83}.gr-v89-solution-method p,.gr-v89-solution-diagnosis p{margin:4px 0 0;font-size:.82rem;line-height:1.5;color:#35485b}.gr-v89-solution-diagnosis{border-left-color:#d19b32;background:#fffaf0}

html[data-theme="dark"] .gr-v89-practice-paper,html[data-theme="dark"] .gr-v89-exam-paper{background:#fff!important;color:#111827!important}html[data-theme="dark"] .gr-v89-practice-paper .paper-header h1,html[data-theme="dark"] .gr-v89-exam-paper .paper-header h1{color:#0b1f36!important}html[data-theme="dark"] .gr-v89-practice-working{background:#fafbfd}
@media(max-width:820px){.gr-v89-practice-paper,.gr-v89-exam-paper{padding:26px 20px;border-radius:10px}.gr-v89-practice-grid{grid-template-columns:1fr}.gr-v89-practice-grid>li{grid-column:1!important}.gr-v89-practice-ribbon,.gr-v89-paper-ribbon{grid-template-columns:1fr 1fr 1fr}.gr-v89-practice-ribbon>span,.gr-v89-paper-ribbon>span{padding:8px}.gr-v89-practice-ribbon strong,.gr-v89-paper-ribbon strong{font-size:.7rem}.gr-v89-exam-list .question-text{font-size:.98rem}.gr-v89-exam-working textarea{min-height:max(86px,var(--gr-working-height))}}
@media(max-width:480px){.gr-v89-practice-paper,.gr-v89-exam-paper{padding:20px 14px;margin-inline:-2px;width:calc(100% + 4px)}.gr-v89-qnum{width:29px;height:29px}.gr-v89-exam-list>li{padding-block:20px!important}.gr-v89-exam-list .student-answer-input{max-width:none}.gr-v89-paper-ribbon small,.gr-v89-practice-ribbon small{font-size:.48rem}.gr-v89-paper-ribbon strong,.gr-v89-practice-ribbon strong{font-size:.62rem}.gr-v89-solution-card{padding:13px}}
@media print{.gr-v89-practice-ribbon,.gr-v89-paper-ribbon{break-inside:avoid}.gr-v89-practice-paper,.gr-v89-exam-paper{box-shadow:none!important;border:0!important;padding:12mm!important}.gr-v89-practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10mm}.gr-v89-practice-grid>li.gr-v89-practice-wide{grid-column:1/-1}.gr-v89-practice-grid .maths-keys-shell,.gr-v89-practice-working{display:none!important}.gr-v89-exam-working{display:none!important}.gr-v89-exam-list .student-answer-label,.gr-v89-exam-list .student-answer-input,.gr-v89-exam-list .maths-keys-shell{display:none!important}.gr-v89-exam-list .print-answer-space{display:block!important;height:var(--gr-print-space,28mm)!important;border-bottom:1px dotted #cfd6dd!important}.gr-v89-question-total{display:block!important}.gr-v89-solution-card{box-shadow:none;background:#fff}.gr-v89-worked-solutions{border-top:0}}

/* ===== GradeRealm V52.24.96 — Cross-Board Blueprint & Gap Audit ===== */
.sigma-test-lab-hero[data-mode="challenge"] .sigma-mode-card[data-test-mode="challenge"]{border-color:#f1cb6a;background:linear-gradient(145deg,rgba(255,233,175,.19),rgba(95,53,177,.16));box-shadow:0 16px 34px rgba(8,24,41,.25),inset 0 0 0 1px rgba(241,203,106,.28)}
.gr-v96-challenge-mode .sigma-mode-card-icon{background:linear-gradient(145deg,rgba(241,203,106,.24),rgba(124,58,237,.24));box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.gr-v96-blueprint-controls{margin-bottom:16px;padding:16px;border:1px solid rgba(163,190,205,.18);border-radius:20px;background:linear-gradient(145deg,rgba(7,38,42,.72),rgba(18,28,48,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.gr-v96-control-head{display:grid;gap:3px;margin-bottom:12px}.gr-v96-control-head>span{font-size:.62rem;letter-spacing:.17em;font-weight:950;color:#a8d5d0}.gr-v96-control-head>strong{font-size:.93rem;color:#f8fbff}.gr-v96-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gr-v96-control-grid label{display:grid;gap:6px}.gr-v96-control-grid label>span{font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#aebfce}.gr-v96-control-grid select{min-width:0;width:100%;min-height:42px;border:1px solid rgba(168,213,208,.2);border-radius:12px;background:#0b1d29;color:#f7fbff;padding:0 10px;font:800 .78rem/1 system-ui,-apple-system,sans-serif}.gr-v96-blueprint-controls>small{display:block;margin-top:10px;color:#d5e2eb;font-size:.73rem;line-height:1.45}.gr-v96-frequency-note{margin:9px 0 0;padding:9px 10px;border-radius:11px;background:rgba(241,203,106,.08);color:#d7cda8;font-size:.67rem;line-height:1.48}.gr-v96-blueprint-controls.challenge-active{opacity:.68}.gr-v96-blueprint-controls.challenge-active:after{content:'Realm Challenge uses its own Grade 7–9 transfer blueprint. Board controls apply again when you return to Adaptive or Exam Simulation.';display:block;margin-top:10px;color:#f0d58c;font-size:.68rem;line-height:1.45}
.gr-v96-audit,.gr-v96-challenge-board{margin:16px 0;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:linear-gradient(145deg,rgba(11,32,46,.95),rgba(15,45,49,.91));box-shadow:0 16px 38px rgba(4,17,28,.14),inset 0 1px 0 rgba(255,255,255,.04);color:#eaf2f7}.gr-v96-audit-copy{max-width:800px}.gr-v96-audit-copy h3{margin:5px 0 6px;font-size:1.06rem}.gr-v96-audit-copy p{margin:0;color:#bdcbd6;font-size:.78rem;line-height:1.56}.gr-v96-audit-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}.gr-v96-audit-metrics article{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.04)}.gr-v96-audit-metrics strong{display:block;font-size:1.18rem;color:#fff}.gr-v96-audit-metrics span{display:block;margin-top:3px;font-size:.64rem;line-height:1.35;color:#9eb1bf}.gr-v96-audit-details{margin-top:12px;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.gr-v96-audit-details summary{cursor:pointer;color:#dfe9ef;font-size:.74rem;font-weight:900}.gr-v96-audit-details>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:10px}.gr-v96-audit-details span{padding:8px 9px;border-radius:10px;background:rgba(255,255,255,.035);font-size:.68rem;line-height:1.4;color:#bdcbd6}
.gr-v96-challenge-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.gr-v96-challenge-head>div{display:grid;gap:3px}.gr-v96-challenge-head>div>span{font-size:.6rem;letter-spacing:.18em;font-weight:950;color:#f0cd70}.gr-v96-challenge-head>div>strong{font-size:1rem;color:#fff}.gr-v96-challenge-head>div>small{color:#aebdca;font-size:.7rem}.gr-v96-toggle{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.04);font-size:.69rem;font-weight:850;color:#dbe7ed}.gr-v96-toggle input{accent-color:#d5b458}.gr-v96-leader-list{display:grid;gap:6px;margin-top:13px}.gr-v96-leader-row{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.035)}.gr-v96-leader-row>b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(241,203,106,.11);color:#efd37e;font-size:.7rem}.gr-v96-leader-row span{display:grid;gap:2px;min-width:0}.gr-v96-leader-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;color:#f4f8fb}.gr-v96-leader-row small{font-size:.62rem;color:#99adba}.gr-v96-leader-row em{font-style:normal;font-weight:950;color:#f0cd70;font-size:.8rem}.gr-v96-board-note{margin:11px 0 0;color:#aebdca;font-size:.7rem;line-height:1.5}
.gr-v96-spice{display:inline-flex;align-items:center;margin:0 0 10px;padding:5px 8px;border:1px solid rgba(139,92,246,.24);border-radius:999px;background:linear-gradient(135deg,rgba(241,203,106,.13),rgba(124,58,237,.09));color:#583b90;font-size:.64rem;font-weight:950;letter-spacing:.035em}.gr-v96-challenge-nudge{margin:12px 0;border:1px solid #e2d6ad;border-radius:10px;background:#fffdf6;overflow:hidden}.gr-v96-challenge-nudge summary{cursor:pointer;padding:9px 11px;color:#554717;font-size:.7rem;font-weight:900;list-style:none}.gr-v96-challenge-nudge summary::-webkit-details-marker{display:none}.gr-v96-challenge-nudge summary:before{content:'◇';margin-right:7px}.gr-v96-challenge-nudge.used summary:before{content:'✓'}.gr-v96-challenge-nudge>div{padding:0 11px 10px}.gr-v96-challenge-nudge strong{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:#735e19}.gr-v96-challenge-nudge p{margin:5px 0;color:#413b28;font-size:.76rem;line-height:1.5}.gr-v96-challenge-nudge small{color:#756e55;font-size:.61rem;line-height:1.45}.gr-v96-exam-visual{max-width:560px;margin:14px auto}.gr-v96-exam-visual>.v49-visual,.gr-v96-exam-visual>.g45-graphwrap{margin:0 auto}.gr-v89-exam-paper[data-paper-mode="challenge"]{border-top:5px solid #8a6a13}.gr-v89-exam-paper[data-paper-mode="challenge"] .gr-v89-paper-ribbon>span:first-child strong{color:#6c5211}
@media(max-width:820px){.gr-v96-control-grid,.gr-v96-audit-details>div{grid-template-columns:1fr}.gr-v96-audit-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-v96-audit,.gr-v96-challenge-board{padding:15px}.gr-v96-challenge-head{align-items:flex-start;flex-direction:column}.gr-v96-toggle{align-self:flex-start}.sigma-mode-card-grid{grid-template-columns:1fr}}
@media(max-width:480px){.gr-v96-audit-metrics{grid-template-columns:1fr 1fr}.gr-v96-audit-metrics article{padding:10px}.gr-v96-control-grid select{font-size:.73rem}.gr-v96-leader-row{grid-template-columns:25px 1fr auto;padding:8px}.gr-v96-leader-row small{font-size:.57rem}.gr-v96-spice{font-size:.58rem}.gr-v96-exam-visual{margin-inline:-4px}}
@media print{.gr-v96-audit,.gr-v96-challenge-board,.gr-v96-blueprint-controls,.gr-v96-challenge-nudge{display:none!important}.gr-v96-spice{border:0!important;background:none!important;padding:0!important}.gr-v96-exam-visual{break-inside:avoid}}

/* ===== GradeRealm V97.1 checkpoint — shared six-stage Virtual Labs framework ===== */
.gr-v97-lab-framework{display:grid;gap:18px}.gr-v97-mission{position:relative;overflow:hidden;padding:16px;border:1px solid rgba(65,190,176,.24);border-radius:20px;background:linear-gradient(145deg,rgba(7,39,43,.98),rgba(13,28,46,.97));box-shadow:0 16px 38px rgba(2,18,28,.16),inset 0 1px 0 rgba(255,255,255,.05);color:#effbfa}.gr-v97-mission:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#54d7c7,#e7c66b)}.gr-v97-mission-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.gr-v97-mission-head>div{display:grid;gap:3px}.gr-v97-mission-head small,.gr-v97-task small{font-size:.6rem;letter-spacing:.14em;font-weight:950;color:#8fded5}.gr-v97-mission-head strong{font-size:1rem;color:#fff}.gr-v97-progress{display:flex;align-items:baseline;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.05)}.gr-v97-progress b{font-size:.78rem}.gr-v97-progress em{font-style:normal;font-size:.63rem;color:#a9c1c9}.gr-v97-stage-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:14px}.gr-v97-stage{display:grid;justify-items:center;gap:5px;min-width:0;padding:8px 5px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:rgba(255,255,255,.035);opacity:.58}.gr-v97-stage b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#183b47;font-size:.61rem;color:#bcd3d7}.gr-v97-stage em{font-style:normal;font-size:.57rem;font-weight:850;color:#aec2ca;white-space:nowrap}.gr-v97-stage.active{opacity:1;border-color:rgba(84,215,199,.38);background:rgba(84,215,199,.08)}.gr-v97-stage.active b{background:#4bcdbd;color:#082a2a}.gr-v97-stage.done{opacity:1}.gr-v97-stage.done b{background:#dbc06a;color:#342a08}.gr-v97-stage.done em{color:#f2e6bd}.gr-v97-progress-bar{height:4px;margin:10px 0 13px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.gr-v97-progress-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4bcdbd,#dbc06a);transition:width .24s ease}.gr-v97-task{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center;padding:13px;border-radius:15px;background:rgba(255,255,255,.045)}.gr-v97-task>div:first-child{display:grid;gap:4px}.gr-v97-task strong{font-size:.84rem;color:#fff}.gr-v97-task p{margin:0;color:#bfd0d7;font-size:.72rem;line-height:1.48}.gr-v97-choice-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.gr-v97-choice-row button{min-height:38px;padding:0 12px;border:1px solid rgba(84,215,199,.28);border-radius:10px;background:#102f39;color:#effafa;font:850 .7rem/1 system-ui,-apple-system,sans-serif;cursor:pointer}.gr-v97-choice-row button:hover,.gr-v97-choice-row button:focus-visible{border-color:#66ddcf;background:#16404a}.gr-v97-waiting{display:flex;align-items:center;gap:8px;max-width:280px;color:#c8d8dd;font-size:.68rem;line-height:1.35}.gr-v97-waiting i{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:#54d7c7;box-shadow:0 0 0 5px rgba(84,215,199,.1)}.gr-v97-feedback{grid-column:1/-1;min-height:0!important;color:#f0d88f!important;font-weight:800}.gr-v97-task.mastered{border:1px solid rgba(219,192,106,.22);background:linear-gradient(135deg,rgba(219,192,106,.08),rgba(84,215,199,.05))}.gr-v97-return{white-space:nowrap}.gr-v97-lab-content{min-width:0}
@media(max-width:760px){.gr-v97-stage-track{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-v97-task{grid-template-columns:1fr}.gr-v97-choice-row{justify-content:flex-start}.gr-v97-waiting{max-width:none}.gr-v97-stage em{font-size:.55rem}}
@media(max-width:430px){.gr-v97-mission{padding:13px 11px 13px 14px}.gr-v97-stage-track{gap:5px}.gr-v97-stage{padding:7px 3px}.gr-v97-stage b{width:23px;height:23px}.gr-v97-mission-head strong{font-size:.9rem}.gr-v97-progress{padding:6px 8px}}

/* V97.3 — Ratio Virtual Lab specialist */
.gr-ratio-lab{align-items:start}.gr-ratio-toolbar{display:grid;grid-template-columns:1fr 1fr minmax(150px,.8fr);gap:12px;margin-bottom:14px}.gr-ratio-toolbar label{display:grid;gap:7px;padding:11px 12px;border:1px solid rgba(116,226,232,.14);border-radius:14px;background:rgba(4,18,28,.5);font-size:.7rem;font-weight:900;letter-spacing:.04em}.gr-ratio-toolbar label>span{display:grid;grid-template-columns:1fr 38px;gap:8px;align-items:center}.gr-ratio-toolbar output{font-weight:1000;text-align:center}.gr-ratio-toolbar input[type=number]{width:100%;box-sizing:border-box}.gr-ratio-tabs{display:flex;gap:8px;margin-bottom:14px}.gr-ratio-tabs button{flex:1;border:1px solid rgba(114,220,233,.18);background:rgba(4,20,30,.7);color:#eefcff;border-radius:12px;padding:10px 12px;font-weight:950;cursor:pointer}.gr-ratio-tabs button.active{border-color:rgba(91,231,217,.65);box-shadow:0 0 0 1px rgba(91,231,217,.16) inset;background:linear-gradient(135deg,rgba(35,146,146,.28),rgba(24,85,116,.22))}.gr-ratio-workspace{display:grid;gap:13px}.gr-ratio-concept-card,.gr-ratio-check-card{border:1px solid rgba(108,220,234,.14);background:rgba(1,13,22,.5);border-radius:16px;padding:14px}.gr-ratio-live-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:13px}.gr-ratio-live-head small,.gr-ratio-check-card>small,.gr-ratio-simplest small{display:block;color:#79dfe7;font-size:.61rem;font-weight:1000;letter-spacing:.12em}.gr-ratio-live-head strong{display:block;font-size:1.55rem;line-height:1.05}.gr-ratio-live-head>span{font-size:.72rem;color:var(--muted,#a9bcc9);text-align:right}.gr-ratio-parts{display:grid;grid-template-columns:repeat(var(--ratio-cols),minmax(54px,1fr));gap:7px;margin:10px 0 14px}.gr-ratio-cell{min-height:72px;border-radius:12px;display:grid;place-items:center;align-content:center;gap:3px}.gr-ratio-cell small{font-size:.55rem;font-weight:1000;letter-spacing:.08em}.gr-ratio-cell b{font-size:.66rem}.gr-ratio-cell.first{border:1px solid rgba(70,225,237,.55);background:linear-gradient(145deg,rgba(31,193,209,.27),rgba(14,82,105,.18))}.gr-ratio-cell.second{border:1px solid rgba(178,145,255,.48);background:linear-gradient(145deg,rgba(126,92,245,.28),rgba(66,52,139,.17))}.gr-ratio-equation-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.gr-ratio-equation-strip span{display:grid;gap:3px;padding:10px;border-radius:12px;background:rgba(9,31,43,.72);border:1px solid rgba(117,214,230,.1)}.gr-ratio-equation-strip small{font-size:.55rem;color:#75dce5;font-weight:900}.gr-ratio-equation-strip b{font-size:.72rem}.gr-ratio-equation-strip em{font-style:normal;font-size:.58rem;color:var(--muted,#9fb2c0)}.gr-ratio-check-card h4{margin:4px 0 4px;font-size:1rem}.gr-ratio-check-card p{margin:5px 0 12px}.gr-ratio-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.gr-ratio-answer-grid label{display:grid;gap:4px;font-size:.63rem;font-weight:850}.gr-ratio-answer-grid input,.gr-ratio-single-answer input{min-width:0;width:100%;box-sizing:border-box}.gr-ratio-feedback{margin:10px 0 0!important;font-size:.7rem;color:var(--muted,#a9bbc7)}.gr-ratio-feedback.good{color:#8bf2c0}.gr-ratio-scale{display:grid;grid-template-columns:auto 1fr 48px;gap:10px;align-items:center;margin:6px 0 14px;font-size:.7rem;font-weight:900}.gr-ratio-scale output{text-align:center;font-weight:1000}.gr-ratio-equivalent-board{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.gr-ratio-equivalent-board article{padding:12px;border:1px solid rgba(100,218,232,.13);border-radius:14px;background:rgba(4,19,28,.52)}.gr-ratio-equivalent-board article>small{display:block;font-size:.56rem;color:#79dfe7;font-weight:1000;letter-spacing:.1em;margin-bottom:9px}.gr-ratio-equivalent-board article>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.gr-ratio-equivalent-board b{font-size:1rem}.gr-ratio-equivalent-board em{font-size:1rem;font-style:normal;font-weight:1000}.gr-ratio-times{font-size:1.15rem;font-weight:1000}.gr-ratio-mini-blocks{display:flex;gap:2px;flex-wrap:wrap;max-width:150px}.gr-ratio-mini-blocks i{width:9px;height:24px;border-radius:4px;display:block}.gr-ratio-mini-blocks.first i{background:rgba(61,220,233,.75)}.gr-ratio-mini-blocks.second i{background:rgba(168,135,250,.74)}.gr-ratio-proof{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0 0;padding:10px 12px;border-radius:12px;background:rgba(8,31,42,.63);font-size:.69rem}.gr-ratio-proof i{font-style:normal;color:var(--muted,#9fb2c0)}.gr-ratio-proof>strong{width:100%;font-size:.65rem;color:#bfeef0}.gr-ratio-simplest{margin-top:10px;padding:10px 12px;border-left:3px solid rgba(105,224,218,.7);background:rgba(5,27,35,.56)}.gr-ratio-simplest strong{display:block;margin:2px 0;font-size:.95rem}.gr-ratio-simplest span{font-size:.63rem;color:var(--muted,#a5b7c3)}.gr-ratio-single-answer{display:grid;grid-template-columns:1fr auto;gap:8px}.gr-ratio-answer-key{display:none}.gr-ratio-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.gr-ratio-summary span{padding:10px;border:1px solid rgba(113,215,228,.12);border-radius:12px;background:rgba(4,19,28,.5)}.gr-ratio-summary small{display:block;font-size:.55rem;color:var(--muted,#9fb2c0)}.gr-ratio-summary strong{display:block;margin-top:3px}
@media(max-width:900px){.gr-ratio-toolbar{grid-template-columns:1fr 1fr}.gr-ratio-toolbar label:last-child{grid-column:1/-1}.gr-ratio-parts{grid-template-columns:repeat(auto-fit,minmax(50px,1fr))}.gr-ratio-equation-strip{grid-template-columns:1fr 1fr}.gr-ratio-equivalent-board{grid-template-columns:1fr}.gr-ratio-times{text-align:center}.gr-ratio-answer-grid{grid-template-columns:1fr}.gr-ratio-summary{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:520px){.gr-ratio-toolbar{grid-template-columns:1fr}.gr-ratio-toolbar label:last-child{grid-column:auto}.gr-ratio-tabs{flex-direction:column}.gr-ratio-equation-strip{grid-template-columns:1fr}.gr-ratio-live-head{align-items:flex-start;flex-direction:column}.gr-ratio-live-head>span{text-align:left}.gr-ratio-summary{grid-template-columns:1fr}.gr-ratio-single-answer{grid-template-columns:1fr}.gr-ratio-single-answer .btn{width:100%}}

/* V97.4 — Algebra Balance Virtual Lab specialist */
.gr-algebra-lab{align-items:start}.gr-algebra-toolbar{display:grid;grid-template-columns:1fr 1fr minmax(150px,.8fr);gap:12px;margin-bottom:14px}.gr-algebra-toolbar label{display:grid;gap:7px;padding:11px 12px;border:1px solid rgba(120,216,241,.14);border-radius:14px;background:rgba(4,18,29,.52);font-size:.7rem;font-weight:900;letter-spacing:.04em}.gr-algebra-toolbar label>span{display:grid;grid-template-columns:1fr 40px;gap:8px;align-items:center}.gr-algebra-toolbar output{font-weight:1000;text-align:center}.gr-algebra-toolbar input[type=number]{width:100%;box-sizing:border-box}.gr-algebra-tabs{display:flex;gap:8px;margin-bottom:14px}.gr-algebra-tabs button{flex:1;border:1px solid rgba(120,220,241,.18);background:rgba(4,20,30,.72);color:#effcff;border-radius:12px;padding:10px 12px;font-weight:950;cursor:pointer}.gr-algebra-tabs button.active{border-color:rgba(94,224,216,.62);box-shadow:0 0 0 1px rgba(94,224,216,.15) inset;background:linear-gradient(135deg,rgba(37,151,152,.27),rgba(32,88,127,.23))}.gr-algebra-workspace{display:grid;gap:13px}.gr-algebra-concept-card,.gr-algebra-operation-card,.gr-algebra-solve-card{border:1px solid rgba(108,220,234,.14);background:rgba(1,13,22,.52);border-radius:16px;padding:14px}.gr-algebra-live-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:13px}.gr-algebra-live-head small,.gr-algebra-operation-card>small,.gr-algebra-solve-card>small{display:block;color:#7bdfe8;font-size:.61rem;font-weight:1000;letter-spacing:.12em}.gr-algebra-live-head strong{display:block;font-size:1.45rem;line-height:1.08}.gr-algebra-live-head>span{font-size:.7rem;color:var(--muted,#a6bac8);text-align:right}.gr-algebra-balance{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;gap:12px;min-height:190px;padding:15px;border-radius:16px;background:radial-gradient(circle at 50% 65%,rgba(50,147,154,.13),transparent 45%),rgba(5,24,35,.64);border:1px solid rgba(113,215,229,.1)}.gr-algebra-pan{min-height:130px;padding:12px;border-radius:16px;border:1px solid rgba(121,218,232,.16);background:linear-gradient(145deg,rgba(11,48,61,.72),rgba(8,31,45,.72));display:grid;align-content:center;justify-items:center;gap:10px}.gr-algebra-pan>small{font-size:.55rem;letter-spacing:.1em;color:#88dfe6;font-weight:950}.gr-algebra-pan.right strong{display:grid;place-items:center;min-width:72px;min-height:72px;border-radius:18px;background:rgba(226,198,105,.12);border:1px solid rgba(226,198,105,.34);font-size:1.55rem}.gr-algebra-x-group,.gr-algebra-number-group{display:flex;justify-content:center;gap:5px;flex-wrap:wrap}.gr-algebra-x-tile{width:36px;height:44px;border-radius:9px;display:grid;place-items:center;align-content:center;background:linear-gradient(150deg,rgba(52,207,211,.35),rgba(28,111,151,.24));border:1px solid rgba(76,221,224,.48)}.gr-algebra-x-tile small{font-size:.78rem;font-weight:1000}.gr-algebra-x-tile b{font-size:.48rem;color:#93ced6}.gr-algebra-number-group i{font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:.55rem;font-weight:950}.gr-algebra-number-group i.positive{background:rgba(127,214,137,.18);border:1px solid rgba(127,214,137,.42)}.gr-algebra-number-group i.negative{background:rgba(246,128,132,.14);border:1px solid rgba(246,128,132,.4)}.gr-algebra-number-group em{font-style:normal;font-size:.65rem;align-self:center}.gr-algebra-zero{font-size:.62rem;color:var(--muted,#a4b7c4)}.gr-algebra-balance-centre{display:grid;place-items:center;align-self:stretch;position:relative}.gr-algebra-balance-centre>span{position:absolute;top:48%;width:100%;height:6px;border-radius:999px;background:linear-gradient(90deg,#61d8d2,#dbc36c);transform:rotate(0deg);box-shadow:0 4px 10px rgba(0,0,0,.3)}.gr-algebra-balance-centre>i{position:absolute;top:49%;width:8px;height:62px;background:#99b7bd;border-radius:4px 4px 10px 10px;clip-path:polygon(38% 0,62% 0,100% 100%,0 100%)}.gr-algebra-balance-centre>b{z-index:2;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#102f3a;border:1px solid rgba(255,255,255,.18);font-size:1.15rem}.gr-algebra-rule{margin:12px 0 0!important;font-size:.7rem;line-height:1.5;color:var(--muted,#b0c0ca)}.gr-algebra-operation-card h4,.gr-algebra-solve-card h4{margin:4px 0 4px;font-size:1rem}.gr-algebra-operation-card p,.gr-algebra-solve-card p{margin:5px 0 10px}.gr-algebra-operation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gr-algebra-operation-grid button{min-height:52px;padding:9px 10px;border:1px solid rgba(104,217,226,.18);border-radius:12px;background:rgba(8,35,48,.72);color:#edfafa;font-weight:850;font-size:.67rem;cursor:pointer}.gr-algebra-operation-grid button:hover,.gr-algebra-operation-grid button:focus-visible{border-color:rgba(92,225,215,.64);background:rgba(18,66,73,.75)}.gr-algebra-feedback{margin:10px 0 0!important;font-size:.7rem;color:var(--muted,#a8bac6)}.gr-algebra-feedback.good{color:#8df0bc}.gr-algebra-transform{display:grid;gap:4px;margin-top:10px;padding:11px 12px;border-left:3px solid #63dacd;background:rgba(11,43,51,.62);border-radius:0 12px 12px 0}.gr-algebra-transform small{font-size:.54rem;color:#80dfe2;font-weight:950;letter-spacing:.1em}.gr-algebra-transform strong{font-size:1.05rem}.gr-algebra-transform span{font-size:.62rem;color:var(--muted,#abc0c9)}.gr-algebra-answer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.gr-algebra-answer-row input{min-width:0;width:100%;box-sizing:border-box}.gr-algebra-substitution{display:grid;gap:3px;margin-top:10px;padding:11px 12px;border:1px solid rgba(219,194,108,.22);border-radius:12px;background:rgba(219,194,108,.07)}.gr-algebra-substitution span{font-size:.55rem;color:#e2c96f;font-weight:1000;letter-spacing:.1em}.gr-algebra-substitution strong{font-size:.88rem}.gr-algebra-substitution small{font-size:.6rem;color:var(--muted,#aebfc8)}.gr-algebra-challenge-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:center}.gr-algebra-challenge-route span{display:flex;align-items:center;gap:7px;padding:10px;border-radius:12px;background:rgba(8,34,46,.68);font-size:.65rem;font-weight:850}.gr-algebra-challenge-route b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(91,219,211,.17);color:#8de7df}.gr-algebra-challenge-route i{font-style:normal;color:#d7c36f;font-weight:1000}.gr-algebra-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:12px}.gr-algebra-principles span{display:grid;place-items:center;gap:3px;padding:9px;border:1px solid rgba(112,211,226,.12);border-radius:11px;background:rgba(4,20,31,.52)}.gr-algebra-principles small{font-size:.52rem;color:var(--muted,#a4b7c4)}.gr-algebra-principles strong{font-size:1rem;color:#86e0dd}
@media(max-width:900px){.gr-algebra-toolbar{grid-template-columns:1fr 1fr}.gr-algebra-toolbar label:last-child{grid-column:1/-1}.gr-algebra-operation-grid{grid-template-columns:1fr}.gr-algebra-balance{grid-template-columns:1fr 54px 1fr}.gr-algebra-principles{grid-template-columns:1fr 1fr}.gr-algebra-challenge-route{grid-template-columns:1fr}.gr-algebra-challenge-route i{transform:rotate(90deg);text-align:center}}
@media(max-width:560px){.gr-algebra-toolbar{grid-template-columns:1fr}.gr-algebra-toolbar label:last-child{grid-column:auto}.gr-algebra-tabs{flex-direction:column}.gr-algebra-live-head{align-items:flex-start;flex-direction:column}.gr-algebra-live-head>span{text-align:left}.gr-algebra-balance{grid-template-columns:1fr;min-height:0}.gr-algebra-balance-centre{min-height:48px}.gr-algebra-balance-centre>span{top:50%;width:82%;}.gr-algebra-balance-centre>i{display:none}.gr-algebra-pan{min-height:105px}.gr-algebra-answer-row{grid-template-columns:1fr}.gr-algebra-answer-row .btn{width:100%}}
/* V97.4 Algebra contrast hardening after desktop/mobile visual QA */
.gr-algebra-concept-card,.gr-algebra-operation-card,.gr-algebra-solve-card,.gr-algebra-toolbar label{color:#eefafb}.gr-algebra-live-head strong,.gr-algebra-operation-card h4,.gr-algebra-solve-card h4{color:#f6ffff}.gr-algebra-operation-card>p,.gr-algebra-solve-card>p,.gr-algebra-rule{color:#bfd0d7!important}.gr-algebra-live-head>span{color:#b5c8cf}.gr-algebra-x-tile small{color:#efffff}.gr-algebra-pan.right strong{color:#fff4c7}.gr-algebra-operation-grid button{color:#f5ffff}.gr-algebra-answer-row input{color:#11243a;background:#fff}.gr-algebra-transform strong,.gr-algebra-substitution strong{color:#f8ffff}

/* V97.5 — Fractions Virtual Lab specialist */
.gr-fractions-lab{align-items:start}.gr-frac-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;margin-bottom:14px}.gr-frac-toolbar>fieldset{margin:0;padding:10px 12px;border:1px solid rgba(109,218,235,.16);border-radius:15px;background:rgba(4,19,30,.58);display:grid;grid-template-columns:1fr 2px 1fr;gap:10px;align-items:end;color:#eefbff}.gr-frac-toolbar legend{padding:0 5px;color:#83dfe9;font-size:.62rem;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}.gr-frac-toolbar label{display:grid;gap:5px;font-size:.58rem;font-weight:900;color:#b9d0d9}.gr-frac-toolbar input{width:100%;box-sizing:border-box;text-align:center}.gr-frac-toolbar>fieldset .gr-frac-line{width:2px;height:42px;align-self:end;background:linear-gradient(180deg,transparent,#83dfe9,transparent)}.gr-frac-toolbar>b{font-size:1.6rem;color:#8de7ef}.gr-frac-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.gr-frac-tabs button{border:1px solid rgba(120,220,241,.18);background:rgba(4,20,30,.72);color:#effcff;border-radius:12px;padding:10px 12px;font-weight:950;cursor:pointer}.gr-frac-tabs button.active{border-color:rgba(94,224,216,.62);box-shadow:0 0 0 1px rgba(94,224,216,.15) inset;background:linear-gradient(135deg,rgba(37,151,152,.27),rgba(32,88,127,.23))}.gr-frac-workspace{display:grid;gap:13px}.gr-frac-concept-card,.gr-frac-calc-card{border:1px solid rgba(108,220,234,.14);background:rgba(1,13,22,.52);border-radius:16px;padding:14px;color:#eefafb}.gr-frac-live-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;margin-bottom:13px}.gr-frac-live-head small,.gr-frac-calc-card>small{display:block;color:#7bdfe8;font-size:.61rem;font-weight:1000;letter-spacing:.12em}.gr-frac-live-head strong{display:block;font-size:1.38rem;line-height:1.08;color:#f6ffff}.gr-frac-live-head>span{max-width:320px;font-size:.68rem;color:#b5c8cf;text-align:right}.gr-frac-model-grid,.gr-frac-equivalent-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gr-frac-model{display:grid;gap:7px;padding:12px;border:1px solid rgba(112,217,232,.12);border-radius:14px;background:rgba(5,27,38,.68)}.gr-frac-model>small{font-size:.55rem;color:#92dfe8;font-weight:950;letter-spacing:.08em}.gr-frac-model>strong{font-size:1.05rem;color:#f4ffff}.gr-frac-model>strong span{padding:0 2px;color:#90bfc9}.gr-frac-model>em{font-style:normal;font-size:.58rem;color:#a8c0c9}.gr-frac-cells{display:grid;grid-template-columns:repeat(var(--frac-den),minmax(7px,1fr));gap:3px;min-height:58px}.gr-frac-cells i{display:block;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.035)}.gr-frac-model.first .gr-frac-cells i.filled{background:linear-gradient(180deg,rgba(46,211,223,.58),rgba(24,119,153,.42));border-color:rgba(87,226,232,.46)}.gr-frac-model.second .gr-frac-cells i.filled{background:linear-gradient(180deg,rgba(149,119,241,.6),rgba(87,62,167,.42));border-color:rgba(174,151,251,.48)}.gr-frac-denominator-rule{display:grid;grid-template-columns:auto 1fr;gap:7px 12px;margin-top:12px;padding:11px 12px;border-radius:12px;background:rgba(87,205,211,.07);font-size:.64rem}.gr-frac-denominator-rule b{color:#8ce2e6}.gr-frac-denominator-rule span{color:#b8cbd2}.gr-frac-calc-card h4{margin:4px 0;color:#f6ffff}.gr-frac-calc-card>p{margin:5px 0 10px;color:#bfd0d7}.gr-frac-answer-fraction{width:min(180px,100%);display:grid;grid-template-rows:auto 2px auto;gap:5px;margin:11px 0}.gr-frac-answer-fraction input{width:100%;box-sizing:border-box;text-align:center;font-weight:1000}.gr-frac-answer-fraction span{height:2px;background:#90e0e5}.gr-frac-feedback{margin:10px 0 0!important;font-size:.7rem;color:#a8bac6}.gr-frac-feedback.good{color:#8df0bc}.gr-frac-proof{display:grid;gap:4px;margin-top:10px;padding:11px 12px;border-left:3px solid #63dacd;background:rgba(11,43,51,.62);border-radius:0 12px 12px 0}.gr-frac-proof small{font-size:.54rem;color:#80dfe2;font-weight:950;letter-spacing:.1em}.gr-frac-proof strong{font-size:.9rem;color:#f8ffff}.gr-frac-proof span{font-size:.6rem;color:#abc0c9}.gr-frac-target-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.gr-frac-target-row label{display:grid;gap:6px;font-size:.65rem;color:#bed1d9;font-weight:850}.gr-frac-target-row input{width:100%;box-sizing:border-box}.gr-frac-equivalent-grid{margin-top:12px}.gr-frac-equation-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.gr-frac-equation-strip span{padding:9px 10px;border:1px solid rgba(112,217,232,.12);border-radius:11px;background:rgba(5,28,39,.62);font-size:.64rem;color:#c5d8df}.gr-frac-equation-strip b{color:#f4ffff}.gr-frac-locked{min-height:135px;margin-top:12px;display:grid;place-items:center;align-content:center;gap:8px;border:1px dashed rgba(122,218,232,.22);border-radius:14px;background:rgba(4,20,29,.4);text-align:center}.gr-frac-locked span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:rgba(89,218,217,.1);color:#85e0df;font-weight:1000}.gr-frac-locked strong{max-width:360px;font-size:.7rem;color:#a9c1c9}.gr-frac-challenge-question{font-size:1.4rem!important;font-weight:1000;color:#fff!important}.gr-frac-challenge-note{display:block;margin-bottom:8px;font-size:.62rem;color:#abc0c8}.gr-frac-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.gr-frac-principles span{display:grid;gap:3px;padding:9px;border:1px solid rgba(112,211,226,.12);border-radius:11px;background:rgba(4,20,31,.52)}.gr-frac-principles small{font-size:.52rem;color:#a4b7c4}.gr-frac-principles strong{font-size:.66rem;color:#e9fafa}.gr-frac-teaching{color:#eefafb}
@media(max-width:900px){.gr-frac-model-grid,.gr-frac-equivalent-grid,.gr-frac-equation-strip{grid-template-columns:1fr}.gr-frac-principles{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:560px){.gr-frac-toolbar{grid-template-columns:1fr}.gr-frac-toolbar>b{text-align:center}.gr-frac-tabs{grid-template-columns:1fr}.gr-frac-live-head{align-items:flex-start;flex-direction:column}.gr-frac-live-head>span{text-align:left}.gr-frac-target-row{grid-template-columns:1fr}.gr-frac-target-row .btn{width:100%}.gr-frac-principles{grid-template-columns:1fr}.gr-frac-cells{min-height:48px}}

/* V97.6 — Graphs Virtual Lab specialist */
.gr-v976-graphs{color:#eefafb}.gr-v976-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-v976-stage .is-clickable{cursor:crosshair}.gr-v976-target-line{stroke:rgba(94,234,212,.32);stroke-width:3;stroke-dasharray:8 8}.gr-v976-user-point circle{fill:#facc15;stroke:#fff;stroke-width:2.5;filter:drop-shadow(0 0 6px rgba(250,204,21,.35))}.gr-v976-user-point text{fill:#fff7bf;font:900 11px ui-monospace,SFMono-Regular,Menlo,monospace;paint-order:stroke;stroke:#04111a;stroke-width:4px}.gr-v976-plot-head,.gr-v976-pair{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;padding:11px 12px;border:1px solid rgba(94,234,212,.14);border-radius:13px;background:rgba(45,212,191,.05)}.gr-v976-plot-head small,.gr-v976-pair small,.gr-v976-gradient-check small,.gr-v976-intersection-check small{display:block;color:#7ee8dd;font-size:.57rem;font-weight:1000;letter-spacing:.11em}.gr-v976-plot-head strong,.gr-v976-pair strong{display:block;color:#f5ffff;font:950 .9rem ui-monospace,SFMono-Regular,Menlo,monospace}.gr-v976-plot-head>span{font-size:.65rem;color:#a9c2cc;font-weight:850}.gr-v976-plot-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.gr-v976-feedback{margin:9px 0 0!important;font-size:.69rem;color:#a9c0ca;line-height:1.45}.gr-v976-feedback.good{color:#8df0bc}.gr-v976-gradient-check,.gr-v976-intersection-check{margin-top:14px;padding:12px;border:1px solid rgba(251,191,36,.18);border-radius:14px;background:rgba(120,53,15,.05)}.gr-v976-gradient-check>strong,.gr-v976-intersection-check>strong{display:block;margin:4px 0 9px;color:#f8ffff;font-size:.78rem}.gr-v976-gradient-check>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.gr-v976-gradient-check input,.gr-v976-intersection-check input{width:100%;box-sizing:border-box;min-height:40px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#06131d;color:#fff;padding:0 10px;font-weight:900}.gr-v976-gradient-check button{min-height:40px;border:0;border-radius:10px;background:linear-gradient(135deg,#0f766e,#0891b2);color:#fff;font-weight:900}.gr-v976-pair{display:grid;grid-template-columns:1fr 1fr}.gr-v976-pair span{display:grid;gap:3px;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.025)}.gr-v976-pair span:last-child{border-left:2px solid rgba(167,139,250,.65)}.gr-v976-intersection-check>div{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}.gr-v976-intersection-check label{display:grid;gap:4px;font-size:.58rem;color:#aac4cf;font-weight:900}.gr-v976-teaching{color:#eefafb}.gr-v976-teaching h3{color:#f7ffff!important}
@media(max-width:680px){.gr-v976-tabs{grid-template-columns:1fr}.gr-v976-plot-head{align-items:flex-start;flex-direction:column}.gr-v976-plot-actions{grid-template-columns:1fr}.gr-v976-gradient-check>div,.gr-v976-intersection-check>div{grid-template-columns:1fr}.gr-v976-pair{grid-template-columns:1fr}.gr-v976-intersection-check .btn,.gr-v976-gradient-check button{width:100%}}

/* V97.7 — Percentage Virtual Lab specialist */
.gr-pct-shell{color:#eefafb}.gr-pct-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:12px;padding:15px 16px;border:1px solid rgba(72,220,197,.2);border-radius:17px;background:linear-gradient(135deg,rgba(8,44,51,.92),rgba(7,25,40,.95))}.gr-pct-hero span{font-size:.58rem;font-weight:1000;letter-spacing:.12em;color:#75e2d7}.gr-pct-hero h3{margin:4px 0;color:#f8ffff}.gr-pct-hero p{margin:0;max-width:650px;color:#b6cbd3;font-size:.72rem;line-height:1.5}.gr-pct-live{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:7px 10px;border:1px solid rgba(91,231,183,.25);border-radius:999px;background:rgba(32,172,126,.08);font-size:.55rem;font-weight:1000;letter-spacing:.08em;color:#aaf3d0}.gr-pct-live i{width:7px;height:7px;border-radius:50%;background:#53e8aa;box-shadow:0 0 10px rgba(83,232,170,.7)}.gr-pct-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.gr-pct-tabs button,.gr-pct-direction button{border:1px solid rgba(109,218,235,.18);border-radius:12px;background:rgba(4,20,30,.72);color:#eafaff;padding:10px 12px;font-weight:950;cursor:pointer}.gr-pct-tabs button.active,.gr-pct-direction button.active{border-color:rgba(94,224,216,.62);background:linear-gradient(135deg,rgba(37,151,152,.27),rgba(32,88,127,.23));box-shadow:0 0 0 1px rgba(94,224,216,.12) inset}.gr-pct-main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:14px;align-items:start}.gr-pct-workspace,.gr-pct-teaching{color:#eefafb}.gr-pct-toolbar{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-bottom:14px}.gr-pct-toolbar label{display:grid;gap:5px;padding:10px;border:1px solid rgba(108,220,234,.13);border-radius:13px;background:rgba(4,19,30,.5)}.gr-pct-toolbar label span{font-size:.56rem;font-weight:900;color:#a9c5cd}.gr-pct-toolbar label strong{font-size:.8rem;color:#f6ffff}.gr-pct-toolbar input{width:100%}.gr-pct-direction{display:grid;grid-template-columns:1fr 1fr;gap:6px}.gr-pct-direction button{min-height:58px}.gr-pct-bars{display:grid;gap:11px;margin:9px 0 14px;padding:13px;border:1px solid rgba(108,220,234,.14);border-radius:15px;background:rgba(1,13,22,.5)}.gr-pct-bars>div{display:grid;grid-template-columns:110px minmax(0,1fr) 150px;gap:9px;align-items:center}.gr-pct-bars span{font-size:.6rem;color:#b9ccd4;font-weight:850}.gr-pct-bars strong{font-size:.65rem;color:#efffff;text-align:right}.gr-pct-track{height:26px;border-radius:9px;background:rgba(255,255,255,.045);overflow:hidden}.gr-pct-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,rgba(41,207,215,.75),rgba(67,155,224,.68))}.gr-pct-track.after i{background:linear-gradient(90deg,rgba(113,224,164,.74),rgba(39,184,160,.72))}.gr-pct-equation-strip{display:grid;grid-template-columns:1fr auto 1fr;gap:9px;align-items:center;margin-bottom:12px}.gr-pct-equation-strip span{display:grid;gap:3px;padding:10px 12px;border:1px solid rgba(112,217,232,.12);border-radius:12px;background:rgba(5,28,39,.62)}.gr-pct-equation-strip small,.gr-pct-independent>small,.gr-pct-problem-head small,.gr-pct-proof small{font-size:.54rem;color:#80dfe2;font-weight:1000;letter-spacing:.1em}.gr-pct-equation-strip strong{font-size:.68rem;color:#f5ffff}.gr-pct-equation-strip>b{color:#7ce4df}.gr-pct-independent{margin-top:10px;padding:13px;border:1px solid rgba(251,191,36,.16);border-radius:14px;background:rgba(120,53,15,.045)}.gr-pct-independent h4{margin:4px 0;color:#f8ffff}.gr-pct-independent>p{margin:4px 0 10px;color:#b6c9d1;font-size:.67rem}.gr-pct-independent>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center}.gr-pct-independent>div>span{font-weight:1000;color:#eafcff}.gr-pct-independent input,.gr-pct-challenge-grid input{width:100%;box-sizing:border-box;min-height:40px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#06131d;color:#fff;padding:0 10px;font-weight:900}.gr-pct-feedback{margin:9px 0 0!important;font-size:.68rem;color:#a9c0ca;line-height:1.45}.gr-pct-feedback.good{color:#8df0bc}.gr-pct-problem-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px;padding:11px 12px;border:1px solid rgba(94,234,212,.14);border-radius:13px;background:rgba(45,212,191,.05)}.gr-pct-problem-head strong{display:block;margin-top:3px;color:#f6ffff;font-size:1.05rem}.gr-pct-problem-head>span{font-size:.65rem;color:#a9c2cc;font-weight:850}.gr-pct-reverse-model,.gr-pct-successive{display:grid;grid-template-columns:1fr auto 1fr;gap:9px;align-items:center;margin:10px 0 14px}.gr-pct-reverse-model span,.gr-pct-successive span{display:grid;gap:3px;padding:13px;border:1px solid rgba(112,217,232,.13);border-radius:13px;background:rgba(5,27,38,.68);text-align:center}.gr-pct-reverse-model small,.gr-pct-successive small{font-size:.52rem;color:#92dfe8;font-weight:950;letter-spacing:.08em}.gr-pct-reverse-model strong,.gr-pct-successive strong{font-size:1rem;color:#f4ffff}.gr-pct-reverse-model em,.gr-pct-successive em{font-style:normal;font-size:.62rem;color:#abc4cd}.gr-pct-reverse-model>b,.gr-pct-successive>b{color:#f5d67d;font-size:.75rem}.gr-pct-successive{grid-template-columns:1fr auto 1fr auto 1fr}.gr-pct-proof{display:grid;gap:4px;margin-top:10px;padding:11px 12px;border-left:3px solid #63dacd;background:rgba(11,43,51,.62);border-radius:0 12px 12px 0}.gr-pct-proof strong{font-size:.9rem;color:#f8ffff}.gr-pct-proof span{font-size:.6rem;color:#abc0c9}.gr-pct-challenge-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;align-items:end;margin-top:12px}.gr-pct-challenge-grid label{display:grid;gap:5px;font-size:.6rem;color:#b9cdd5;font-weight:900}.gr-pct-challenge-grid label>div{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.gr-pct-challenge-grid em{font-style:normal;font-size:.57rem;color:#c5d6dc;white-space:nowrap}.gr-pct-teaching h3{color:#f7ffff!important}
@media(max-width:900px){.gr-pct-main{grid-template-columns:1fr}.gr-pct-toolbar{grid-template-columns:1fr 1fr}.gr-pct-direction{grid-column:1/-1}.gr-pct-bars>div{grid-template-columns:90px minmax(0,1fr) 130px}}
@media(max-width:560px){.gr-pct-hero{flex-direction:column}.gr-pct-tabs,.gr-pct-toolbar{grid-template-columns:1fr}.gr-pct-direction{grid-column:auto}.gr-pct-bars>div{grid-template-columns:1fr}.gr-pct-bars strong{text-align:left}.gr-pct-equation-strip{grid-template-columns:1fr}.gr-pct-equation-strip>b{text-align:center}.gr-pct-problem-head{align-items:flex-start;flex-direction:column}.gr-pct-reverse-model,.gr-pct-successive{grid-template-columns:1fr}.gr-pct-reverse-model>b,.gr-pct-successive>b{text-align:center}.gr-pct-challenge-grid{grid-template-columns:1fr}.gr-pct-independent>div{grid-template-columns:auto minmax(0,1fr)}.gr-pct-independent>div .btn{grid-column:1/-1;width:100%}}

/* ===== V97.8 • Geometry Virtual Lab specialist ===== */
.gr-geom-shell{display:grid;gap:12px;color:#edfdf8}.gr-geom-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border:1px solid rgba(74,222,128,.2);border-radius:19px;background:radial-gradient(circle at 8% 0,rgba(34,197,94,.13),transparent 34%),linear-gradient(145deg,rgba(4,26,28,.96),rgba(7,20,38,.97));box-shadow:0 18px 45px rgba(0,0,0,.2)}.gr-geom-hero span{font-size:.58rem;font-weight:1000;letter-spacing:.13em;color:#8ef0b4}.gr-geom-hero h3{margin:4px 0;color:#f5fff8}.gr-geom-hero p{margin:0;max-width:700px;color:#b6d3cb;font-size:.72rem;line-height:1.5}.gr-geom-live{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(74,222,128,.24);border-radius:999px;background:rgba(34,197,94,.08);color:#bbf7d0;font-size:.55rem;font-weight:1000;letter-spacing:.08em;white-space:nowrap}.gr-geom-live i{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 10px rgba(74,222,128,.72)}
.gr-geom-tabs,.gr-geom-transform-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:5px;border:1px solid rgba(125,211,252,.13);border-radius:16px;background:rgba(4,16,28,.74)}.gr-geom-tabs button,.gr-geom-transform-tabs button{min-height:42px;border:1px solid transparent;border-radius:11px;background:transparent;color:#a4c3ce;font-weight:950;cursor:pointer}.gr-geom-tabs button.active,.gr-geom-transform-tabs button.active{border-color:rgba(74,222,128,.3);background:rgba(34,197,94,.12);color:#effff4}.gr-geom-main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:14px;align-items:start}.gr-geom-workspace,.gr-geom-teaching{color:#edfdf8}.gr-geom-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}.gr-geom-controls.one{grid-template-columns:1fr}.gr-geom-controls label{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label value" "range range";gap:6px;padding:10px 12px;border:1px solid rgba(125,211,252,.13);border-radius:13px;background:rgba(4,19,30,.53)}.gr-geom-controls label span{grid-area:label;color:#b4d1da;font-size:.61rem;font-weight:900}.gr-geom-controls label strong{grid-area:value;color:#f4ffff;font-size:.75rem}.gr-geom-controls input{grid-area:range;width:100%;accent-color:#4ade80}.gr-geom-angle-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gr-geom-angle-grid article{min-width:0;padding:12px;border:1px solid rgba(125,211,252,.12);border-radius:15px;background:rgba(3,18,30,.58)}.gr-geom-angle-grid article>small,.gr-geom-check>small,.gr-geom-current>small,.gr-geom-sim-stage small{display:block;color:#86efac;font-size:.54rem;font-weight:1000;letter-spacing:.1em}.gr-geom-angle-grid p{margin:7px 0 0;color:#aac5cf;font-size:.66rem;line-height:1.45}.gr-geom-svg{display:block;width:100%;height:auto;max-height:340px}.gr-geom-parallel{stroke:#67e8f9;stroke-width:5;stroke-linecap:round}.gr-geom-transversal{stroke:#a78bfa;stroke-width:5;stroke-linecap:round}.gr-geom-svg text{fill:#effcff;font-size:16px;font-weight:900}.gr-geom-svg text.alt{fill:#86efac}.gr-geom-svg text.supp{fill:#fde68a}.gr-geom-svg.polygon polygon{fill:rgba(34,197,94,.1);stroke:#4ade80;stroke-width:5;stroke-linejoin:round}.gr-geom-svg.polygon circle{fill:#facc15}.gr-geom-svg.polygon text{font-size:12px;fill:#b7d5cf}.gr-geom-stat{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gr-geom-stat span,.gr-geom-circle-info>span,.gr-geom-scale-strip span{padding:9px 10px;border:1px solid rgba(125,211,252,.12);border-radius:11px;background:rgba(255,255,255,.025)}.gr-geom-stat small,.gr-geom-circle-info small,.gr-geom-scale-strip small{display:block;color:#88aeb9;font-size:.51rem;font-weight:900;letter-spacing:.07em}.gr-geom-stat strong,.gr-geom-circle-info strong,.gr-geom-scale-strip strong{display:block;margin-top:3px;color:#f0ffff;font-size:.78rem}.gr-geom-circle-grid{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(230px,1.2fr);gap:12px;align-items:center}.gr-geom-svg.circle .outline{fill:rgba(34,197,94,.035);stroke:#67e8f9;stroke-width:4}.gr-geom-svg.circle .sector{fill:rgba(74,222,128,.22);stroke:#4ade80;stroke-width:2}.gr-geom-svg.circle .radius{stroke:#facc15;stroke-width:4}.gr-geom-svg.circle .radius.second{stroke:#a78bfa}.gr-geom-circle-info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gr-geom-circle-info .gr-geom-check{grid-column:1/-1}.gr-geom-check{margin-top:9px;padding:12px;border:1px solid rgba(250,204,21,.15);border-radius:13px;background:rgba(120,53,15,.045)}.gr-geom-check>strong{display:block;margin:4px 0 9px;color:#f8ffff;font-size:.78rem}.gr-geom-check>div:not(.gr-geom-two-answer){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.gr-geom-check input{min-width:0;width:100%;box-sizing:border-box;min-height:40px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#06131d;color:#fff;padding:0 10px;font-weight:900}.gr-geom-check button{min-height:40px;border:1px solid rgba(94,234,212,.24);border-radius:10px;background:rgba(45,212,191,.11);color:#effffc;padding:0 13px;font-weight:950}.gr-geom-check p{margin:8px 0 0;color:#a9c1ca;font-size:.64rem;line-height:1.45}.gr-geom-check p.good{color:#86efac}.gr-geom-transform-tabs{margin-bottom:10px}.gr-geom-reflect-note{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;margin-bottom:11px;border:1px solid rgba(125,211,252,.12);border-radius:12px;background:rgba(255,255,255,.025);font-size:.66rem;color:#b8d0d8}.gr-geom-reflect-note strong{color:#f0ffff}.gr-geom-transform-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,.65fr);gap:12px;align-items:center}.gr-geom-svg.transform{border:1px solid rgba(125,211,252,.12);border-radius:15px;background:rgba(2,13,24,.58)}.gr-geom-svg.transform .grid line{stroke:rgba(148,163,184,.1);stroke-width:1}.gr-geom-svg.transform .axis{stroke:rgba(226,232,240,.38);stroke-width:2}.gr-geom-svg.transform .original{fill:rgba(96,165,250,.12);stroke:#60a5fa;stroke-width:4}.gr-geom-svg.transform .image{fill:rgba(74,222,128,.17);stroke:#4ade80;stroke-width:4}.gr-geom-svg.transform .pt{font-size:13px}.gr-geom-svg.transform .original-label{fill:#93c5fd}.gr-geom-svg.transform .image-label{fill:#86efac}.gr-geom-current{padding:12px;border:1px solid rgba(74,222,128,.15);border-radius:13px;background:rgba(34,197,94,.05)}.gr-geom-current strong{display:block;margin:4px 0;color:#f3fff6;font-size:.78rem}.gr-geom-current span{color:#a9c7cf;font-size:.64rem;line-height:1.4}.gr-geom-sim-stage{min-height:230px;display:grid;grid-template-columns:1fr auto 1.35fr;gap:12px;align-items:center;justify-items:center;padding:14px;border:1px solid rgba(125,211,252,.12);border-radius:16px;background:rgba(3,18,30,.54)}.gr-geom-sim-stage article{display:grid;gap:8px;justify-items:center;text-align:center;color:#abc7d0;font-size:.62rem}.gr-geom-sim-stage .shape{width:96px;height:60px;border-radius:8px}.gr-geom-sim-stage .shape.original{border:3px solid #60a5fa;background:rgba(96,165,250,.1)}.gr-geom-sim-stage .shape.image{border:3px solid #4ade80;background:rgba(74,222,128,.1);max-width:230px;max-height:150px}.gr-geom-sim-stage>b{color:#fde68a;font-size:.8rem}.gr-geom-scale-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:10px}.gr-geom-two-answer{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:8px;align-items:end}.gr-geom-two-answer label{display:grid;gap:4px;color:#b7ced6;font-size:.58rem;font-weight:900}.gr-geom-teaching h3{color:#f5fff8!important}.gr-geom-teaching .topic-lab-memory{word-break:normal}
@media(max-width:900px){.gr-geom-main{grid-template-columns:1fr}.gr-geom-angle-grid,.gr-geom-circle-grid,.gr-geom-transform-grid{grid-template-columns:1fr}.gr-geom-svg{max-height:310px}.gr-geom-circle-info{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.gr-geom-hero{flex-direction:column;padding:14px}.gr-geom-live{align-self:flex-start}.gr-geom-tabs{grid-template-columns:1fr 1fr}.gr-geom-transform-tabs{grid-template-columns:1fr 1fr}.gr-geom-controls{grid-template-columns:1fr}.gr-geom-angle-grid{grid-template-columns:1fr}.gr-geom-circle-info{grid-template-columns:1fr}.gr-geom-sim-stage{grid-template-columns:1fr;min-height:0}.gr-geom-sim-stage>b{transform:rotate(90deg)}.gr-geom-scale-strip{grid-template-columns:1fr 1fr 1fr}.gr-geom-two-answer{grid-template-columns:1fr 1fr!important}.gr-geom-two-answer button{grid-column:1/-1}.gr-geom-check>div:not(.gr-geom-two-answer){grid-template-columns:1fr}.gr-geom-check button{width:100%}}

/* V97.9 Pythagoras & Trigonometry specialist Virtual Lab */
.gr-trig-shell{display:grid;gap:12px;color:#eef9ff}.gr-trig-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border:1px solid rgba(56,189,248,.2);border-radius:19px;background:radial-gradient(circle at 8% 0,rgba(14,165,233,.14),transparent 34%),linear-gradient(145deg,rgba(3,18,35,.97),rgba(13,18,38,.97));box-shadow:0 18px 45px rgba(0,0,0,.2)}.gr-trig-hero span{font-size:.58rem;font-weight:1000;letter-spacing:.13em;color:#7dd3fc}.gr-trig-hero h3{margin:4px 0;color:#f7fcff}.gr-trig-hero p{margin:0;max-width:720px;color:#b8cfdd;font-size:.72rem;line-height:1.5}.gr-trig-live{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(56,189,248,.24);border-radius:999px;background:rgba(14,165,233,.08);color:#bae6fd;font-size:.55rem;font-weight:1000;letter-spacing:.08em;white-space:nowrap}.gr-trig-live i{width:7px;height:7px;border-radius:50%;background:#38bdf8;box-shadow:0 0 10px rgba(56,189,248,.75)}
.gr-trig-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:5px;border:1px solid rgba(125,211,252,.13);border-radius:16px;background:rgba(4,16,28,.74)}.gr-trig-tabs button,.gr-trig-exact-buttons button{min-height:42px;border:1px solid transparent;border-radius:11px;background:transparent;color:#a9c8d8;font-weight:950;cursor:pointer}.gr-trig-tabs button.active,.gr-trig-exact-buttons button.active{border-color:rgba(56,189,248,.32);background:rgba(14,165,233,.14);color:#f1fbff}.gr-trig-main{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:14px;align-items:start}.gr-trig-workspace,.gr-trig-teaching{color:#eef9ff}.gr-trig-teaching h3{color:#f7fcff!important}.gr-trig-teaching .topic-lab-memory{word-break:normal}
.gr-trig-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:12px}.gr-trig-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-trig-controls label{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label value" "range range";gap:6px;padding:10px 12px;border:1px solid rgba(125,211,252,.13);border-radius:13px;background:rgba(4,19,30,.53)}.gr-trig-controls label span{grid-area:label;color:#bad2df;font-size:.61rem;font-weight:900}.gr-trig-controls label strong{grid-area:value;color:#f4fbff;font-size:.75rem}.gr-trig-controls input{grid-area:range;width:100%;accent-color:#38bdf8}.gr-trig-visual-card{position:relative;min-width:0;padding:11px;border:1px solid rgba(125,211,252,.12);border-radius:15px;background:rgba(3,18,30,.58)}.gr-trig-svg{display:block;width:100%;height:auto;max-height:340px}.gr-trig-svg .tri{fill:rgba(14,165,233,.09);stroke:#38bdf8;stroke-width:5;stroke-linejoin:round}.gr-trig-svg .right{fill:none;stroke:#facc15;stroke-width:4}.gr-trig-svg text{fill:#effaff;font-size:15px;font-weight:900}.gr-trig-stat{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:7px}.gr-trig-stat span,.gr-trig-exact-cards span{padding:9px 10px;border:1px solid rgba(125,211,252,.12);border-radius:11px;background:rgba(255,255,255,.025)}.gr-trig-stat small,.gr-trig-exact-cards small{display:block;color:#8eafc0;font-size:.51rem;font-weight:900;letter-spacing:.07em}.gr-trig-stat strong,.gr-trig-exact-cards strong{display:block;margin-top:3px;color:#f2fbff;font-size:.75rem}.gr-trig-soh-grid,.gr-trig-nr-grid,.gr-trig-3d-grid,.gr-trig-exact-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(235px,.8fr);gap:12px;align-items:center}.gr-trig-angle-badge{position:absolute;left:18px;bottom:16px;padding:6px 9px;border-radius:9px;background:rgba(250,204,21,.12);color:#fde68a;font-weight:950;font-size:.65rem}
.gr-trig-check{padding:12px;border:1px solid rgba(56,189,248,.16);border-radius:13px;background:rgba(14,116,144,.055)}.gr-trig-check>small{display:block;color:#7dd3fc;font-size:.54rem;font-weight:1000;letter-spacing:.1em}.gr-trig-check>strong{display:block;margin:4px 0 7px;color:#f8fcff;font-size:.8rem}.gr-trig-check>p{margin:7px 0;color:#adc7d4;font-size:.64rem;line-height:1.45}.gr-trig-check>p.good{color:#86efac}.gr-trig-check>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.gr-trig-check input{min-width:0;width:100%;box-sizing:border-box;min-height:40px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:#06131d;color:#fff;padding:0 10px;font-weight:900}.gr-trig-check button{min-height:40px;border:1px solid rgba(56,189,248,.24);border-radius:10px;background:rgba(14,165,233,.12);color:#effbff;padding:0 13px;font-weight:950}.gr-trig-check.dual{display:grid;gap:7px}.gr-trig-check.dual label{display:grid;gap:4px;color:#bdd1dc;font-size:.58rem;font-weight:900}.gr-trig-check.dual>button{width:100%}.gr-trig-check.dual>p{margin:2px 0}.gr-trig-svg.nonright .tri{fill:rgba(168,85,247,.08);stroke:#a78bfa}.gr-trig-svg.cuboid .face{fill:rgba(14,165,233,.045);stroke:#6b8ca1;stroke-width:2}.gr-trig-svg.cuboid .edge{stroke:#6b8ca1;stroke-width:2}.gr-trig-svg.cuboid .base-diag{stroke:#facc15;stroke-width:4}.gr-trig-svg.cuboid .space-diag{stroke:#38bdf8;stroke-width:5}.gr-trig-exact-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-bottom:10px}.gr-trig-exact-buttons button{border-color:rgba(125,211,252,.1);background:rgba(255,255,255,.02)}.gr-trig-exact-cards{display:grid;gap:8px}.gr-trig-visual-card.exact .quarter{fill:none;stroke:#38bdf8;stroke-width:5}.gr-trig-visual-card.exact .axis{stroke:rgba(226,232,240,.32);stroke-width:2}.gr-trig-visual-card.exact .radius{stroke:#facc15;stroke-width:5}
@media(max-width:900px){.gr-trig-main{grid-template-columns:1fr}.gr-trig-soh-grid,.gr-trig-nr-grid,.gr-trig-3d-grid,.gr-trig-exact-grid{grid-template-columns:1fr}.gr-trig-svg{max-height:310px}}
@media(max-width:600px){.gr-trig-hero{flex-direction:column;padding:14px}.gr-trig-live{align-self:flex-start}.gr-trig-tabs{grid-template-columns:1fr 1fr}.gr-trig-tabs button:last-child{grid-column:1/-1}.gr-trig-controls,.gr-trig-controls.three{grid-template-columns:1fr}.gr-trig-stat{grid-template-columns:1fr 1fr}.gr-trig-stat span:last-child{grid-column:1/-1}.gr-trig-exact-buttons{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.gr-trig-exact-buttons button{min-height:38px;padding:0 3px;font-size:.63rem}.gr-trig-check>div{grid-template-columns:1fr}.gr-trig-check button{width:100%}}

/* V97.10 • Probability & Statistics Virtual Lab specialist */
.gr-prob-shell{width:100%;display:grid;gap:14px}.gr-prob-hero{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 20px;border:1px solid rgba(45,212,191,.2);border-radius:20px;background:radial-gradient(circle at 5% 0,rgba(45,212,191,.14),transparent 34%),radial-gradient(circle at 95% 8%,rgba(59,130,246,.12),transparent 30%),linear-gradient(145deg,#061923,#0b1728);box-shadow:0 18px 42px rgba(0,0,0,.18)}.gr-prob-hero span{display:block;font-size:.68rem;letter-spacing:.18em;color:#99f6e4}.gr-prob-hero h3{margin:5px 0;color:#f0fdfa;font-size:1.55rem}.gr-prob-hero p{margin:0;max-width:760px;color:#b9d7df}.gr-prob-live{display:flex;align-items:center;gap:8px;color:#ccfbf1;font-size:.7rem;letter-spacing:.13em;white-space:nowrap}.gr-prob-live i{width:8px;height:8px;border-radius:50%;background:#5eead4;box-shadow:0 0 0 5px rgba(94,234,212,.1),0 0 18px rgba(94,234,212,.5)}
.gr-prob-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.gr-prob-tabs button{min-height:46px;border:1px solid rgba(148,163,184,.13);border-radius:14px;background:#0a1725;color:#a9c6d2;font-weight:850;padding:8px}.gr-prob-tabs button.active{color:#f0fdfa;border-color:rgba(94,234,212,.4);background:linear-gradient(180deg,rgba(45,212,191,.18),rgba(59,130,246,.1))}.gr-prob-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:14px}.gr-prob-workspace{overflow:hidden}.gr-prob-workspace h4,.gr-prob-teaching h3{color:#f8fafc}.gr-prob-controls{display:grid;gap:10px;margin-bottom:14px}.gr-prob-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-prob-controls.two{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-prob-controls label{display:grid;gap:6px;padding:11px 12px;border:1px solid rgba(148,163,184,.1);border-radius:13px;background:rgba(255,255,255,.025)}.gr-prob-controls span{color:#8eb7c6;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.gr-prob-controls strong{color:#f0fdfa}.gr-prob-controls input{width:100%}
.gr-prob-chance-stage{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:14px;align-items:center}.gr-prob-outcomes{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;padding:14px;border:1px solid rgba(148,163,184,.1);border-radius:17px;background:#081725}.gr-prob-outcomes span{aspect-ratio:1;display:grid;place-items:center;border-radius:11px;background:rgba(148,163,184,.08);color:#9cb8c5;font-weight:900}.gr-prob-outcomes span.fav{background:linear-gradient(180deg,#5eead4,#14b8a6);color:#042f2e}.gr-prob-theory{padding:15px;border:1px solid rgba(94,234,212,.16);border-radius:17px;background:rgba(45,212,191,.06)}.gr-prob-theory small,.gr-prob-simulation small,.gr-prob-independent>small,.gr-prob-final>small{display:block;color:#8fe8dd;font-size:.65rem;letter-spacing:.14em}.gr-prob-theory strong{display:block;margin:6px 0;color:#fff;font-size:1.35rem}.gr-prob-theory span{color:#bae6fd}.gr-prob-simulation{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px;padding:14px 15px;border:1px solid rgba(96,165,250,.16);border-radius:16px;background:rgba(59,130,246,.05)}.gr-prob-simulation strong{display:block;margin:4px 0;color:#f8fafc}.gr-prob-simulation span{color:#9fb8c5;font-size:.8rem}.gr-prob-compare{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:12px}.gr-prob-compare span{display:grid;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(148,163,184,.08)}.gr-prob-compare small{color:#8eb7c6}.gr-prob-compare strong{color:#f0fdfa}
.gr-prob-tree-head{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.gr-prob-tree-head span{display:grid;gap:4px;padding:11px;border:1px solid rgba(148,163,184,.1);border-radius:13px;background:#091827}.gr-prob-tree-head small{color:#8eb7c6}.gr-prob-tree-head strong{color:#f8fafc}.gr-prob-tree-head button{min-height:42px;border-radius:12px;border:1px solid rgba(94,234,212,.25);background:rgba(45,212,191,.08);color:#ccfbf1;font-weight:850}.gr-prob-tree-head button.active{background:rgba(59,130,246,.12)}.gr-prob-tree-svg{width:100%;min-height:220px;margin:8px 0}.gr-prob-tree-svg line{stroke:#5b7890;stroke-width:3}.gr-prob-tree-svg circle{fill:#10263a;stroke:#5eead4;stroke-width:3}.gr-prob-tree-svg text{fill:#d9f7f3;font-weight:800;font-size:14px}
.gr-prob-independent,.gr-prob-final{margin-top:12px;padding:15px;border:1px solid rgba(94,234,212,.16);border-radius:17px;background:linear-gradient(145deg,rgba(45,212,191,.06),rgba(59,130,246,.035))}.gr-prob-independent h4,.gr-prob-final h4{margin:6px 0;color:#f8fafc}.gr-prob-independent>p,.gr-prob-final>p{color:#afc7d2}.gr-prob-independent>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.gr-prob-independent input,.gr-prob-final input,.gr-prob-final select{min-height:43px;border:1px solid rgba(94,234,212,.18);border-radius:12px;background:#071522;color:#f8fafc;padding:0 12px;font-weight:850}.gr-prob-feedback{margin:10px 0 0;color:#b8cad2;font-size:.82rem}.gr-prob-feedback.good{color:#86efac}
.gr-prob-venn-wrap{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:center}.gr-prob-venn-svg{width:100%;min-height:290px}.gr-prob-venn-svg rect{fill:#071522;stroke:#385369;stroke-width:2}.gr-prob-venn-svg circle{fill:rgba(45,212,191,.08);stroke:#5eead4;stroke-width:3}.gr-prob-venn-svg circle+circle{fill:rgba(59,130,246,.08);stroke:#60a5fa}.gr-prob-venn-svg text{fill:#e6fffb;font-size:19px;font-weight:900}.gr-prob-venn-key{display:grid;gap:8px}.gr-prob-venn-key span,.gr-prob-stat-cards span{display:grid;padding:10px 11px;border-radius:12px;border:1px solid rgba(148,163,184,.1);background:rgba(255,255,255,.025)}.gr-prob-venn-key small,.gr-prob-stat-cards small{color:#8eb7c6;font-size:.68rem}.gr-prob-venn-key strong,.gr-prob-stat-cards strong{color:#f8fafc}
.gr-prob-data-row{display:flex;flex-wrap:wrap;gap:8px}.gr-prob-data-row span{min-width:46px;padding:10px 12px;border-radius:12px;text-align:center;background:#0a2031;border:1px solid rgba(94,234,212,.13);color:#f0fdfa;font-weight:900}.gr-prob-stat-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.gr-prob-box-svg{width:100%;min-height:180px}.gr-prob-box-svg line{stroke:#7dd3fc;stroke-width:4}.gr-prob-box-svg rect{fill:rgba(45,212,191,.12);stroke:#5eead4;stroke-width:3}.gr-prob-box-svg line.median{stroke:#facc15}.gr-prob-box-svg text{fill:#9fb8c5;font-weight:800}.gr-prob-note{padding:11px 12px;border-radius:13px;background:rgba(148,163,184,.05);color:#aebfca;font-size:.8rem}
.gr-prob-hist-svg,.gr-prob-scatter-svg{width:100%;min-height:285px}.gr-prob-hist-svg line,.gr-prob-scatter-svg line.axis{stroke:#8aa1b2;stroke-width:2}.gr-prob-hist-svg rect{fill:rgba(45,212,191,.28);stroke:#5eead4;stroke-width:2}.gr-prob-hist-svg text{fill:#b8d6df;font-size:13px;font-weight:800}.gr-prob-hist-table{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gr-prob-hist-table span{display:grid;gap:3px;padding:10px;border-radius:12px;background:#091827;border:1px solid rgba(148,163,184,.08)}.gr-prob-hist-table small{color:#8eb7c6}.gr-prob-hist-table strong{color:#f8fafc}.gr-prob-hist-table em{color:#9fb8c5;font-style:normal;font-size:.75rem}.gr-prob-scatter-svg g line{stroke:rgba(148,163,184,.09);stroke-width:1}.gr-prob-scatter-svg circle{fill:#5eead4;stroke:#ecfeff;stroke-width:2}.gr-prob-final-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:end}.gr-prob-final-grid label{display:grid;gap:6px}.gr-prob-final-grid label span{color:#a8c4cf;font-size:.75rem}.gr-prob-final-grid button{min-height:43px}
@media(max-width:1050px){.gr-prob-grid{grid-template-columns:1fr}.gr-prob-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.gr-prob-hero{align-items:flex-start;flex-direction:column}.gr-prob-tabs{grid-template-columns:1fr 1fr}.gr-prob-controls.three,.gr-prob-controls.two,.gr-prob-chance-stage,.gr-prob-tree-head,.gr-prob-venn-wrap,.gr-prob-final-grid{grid-template-columns:1fr}.gr-prob-stat-cards,.gr-prob-hist-table{grid-template-columns:1fr 1fr}.gr-prob-simulation{align-items:stretch;flex-direction:column}.gr-prob-simulation button{width:100%}.gr-prob-independent>div{grid-template-columns:1fr}.gr-prob-independent button{min-height:43px}.gr-prob-tree-svg,.gr-prob-venn-svg,.gr-prob-hist-svg,.gr-prob-scatter-svg{min-height:235px}}
@media(max-width:430px){.gr-prob-tabs,.gr-prob-stat-cards,.gr-prob-hist-table{grid-template-columns:1fr}.gr-prob-hero,.gr-prob-independent,.gr-prob-final{padding:12px}.gr-prob-live{white-space:normal}}
/* V97.10 visual refinement after desktop/mobile inspection */
.gr-prob-workspace,.gr-prob-teaching{background:linear-gradient(155deg,rgba(7,22,34,.98),rgba(12,28,43,.96));border-color:rgba(94,234,212,.13);box-shadow:0 14px 34px rgba(2,8,23,.12)}
.gr-prob-teaching .topic-lab-steps li{background:rgba(255,255,255,.028);border-color:rgba(148,163,184,.1)}
.gr-prob-teaching .topic-lab-steps span{color:#d6e8ee}.gr-prob-teaching .topic-lab-steps strong{color:#f8fafc}

/* GradeRealm V97.11 — Pressure Virtual Lab */
.gr-pressure-shell{display:grid;gap:18px;color:#eefbf8}
.gr-pressure-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;padding:22px;border:1px solid rgba(126,239,213,.24);border-radius:22px;background:linear-gradient(135deg,#08202a,#0d2930 55%,#172a31);box-shadow:0 18px 45px rgba(1,12,18,.24)}
.gr-pressure-hero span{font-size:.72rem;letter-spacing:.16em;font-weight:900;color:#7eefd5}.gr-pressure-hero h3{margin:5px 0 7px;font-size:clamp(1.5rem,3vw,2.3rem);color:#fff}.gr-pressure-hero p{margin:0;max-width:760px;color:#c7ddd9;line-height:1.55}
.gr-pressure-live{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:rgba(6,17,23,.55);border:1px solid rgba(126,239,213,.2);font-weight:900;font-size:.72rem;letter-spacing:.08em}.gr-pressure-live i{width:9px;height:9px;border-radius:50%;background:#6dffd1;box-shadow:0 0 14px #6dffd1}
.gr-pressure-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.gr-pressure-tabs button{border:1px solid rgba(125,225,211,.18);background:#10242b;color:#cfe4e1;border-radius:14px;padding:12px 10px;font-weight:850;cursor:pointer}.gr-pressure-tabs button.active{background:linear-gradient(135deg,#167765,#1d8976);color:#fff;border-color:#64e5c7;box-shadow:0 8px 22px rgba(15,115,96,.22)}
.gr-pressure-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.7fr);gap:16px}.gr-pressure-workspace,.gr-pressure-teaching{background:linear-gradient(180deg,#0d2028,#0a171d)!important;border-color:rgba(114,226,207,.16)!important;color:#edf9f7!important}.gr-pressure-workspace h4,.gr-pressure-teaching h3{color:#fff!important}.gr-pressure-teaching .topic-lab-steps li span,.gr-pressure-teaching .topic-lab-steps li strong{color:#e7f5f2!important}.gr-pressure-teaching .topic-lab-memory{background:#112930!important;color:#8af0d8!important;border-color:rgba(126,239,213,.18)!important}
.gr-pressure-controls{display:grid;gap:12px;margin-bottom:16px}.gr-pressure-controls.two{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-pressure-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-pressure-controls label{display:grid;gap:7px;padding:12px;border-radius:15px;background:#132a32;border:1px solid rgba(126,239,213,.11);color:#c6dcd8}.gr-pressure-controls label>span{font-size:.76rem;font-weight:800;letter-spacing:.04em}.gr-pressure-controls label>strong{font-size:1.12rem;color:#fff}.gr-pressure-controls input[type=range]{width:100%;accent-color:#63e9c8}
.gr-pressure-contact-stage{position:relative;min-height:245px;border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#102c36,#10232a 66%,#11191d);border:1px solid rgba(127,226,212,.15);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:24px}.gr-pressure-block{width:43%;max-width:270px;height:95px;border:1px solid #89dbc9;border-radius:15px 15px 7px 7px;background:linear-gradient(145deg,#237867,#11483f);display:grid;place-items:center;box-shadow:0 18px 30px rgba(0,0,0,.22);z-index:2}.gr-pressure-block span{font-size:1.25rem;font-weight:950;color:#fff}.gr-pressure-footprint{height:20px;min-width:70px;border-radius:6px 6px 2px 2px;background:#5de0bd;display:grid;place-items:center;z-index:2;transition:width .25s ease}.gr-pressure-footprint span{font-size:.7rem;font-weight:900;color:#062b23}.gr-pressure-surface{position:absolute;left:0;right:0;bottom:0;height:31px;background:repeating-linear-gradient(90deg,#27343a 0 14px,#202c31 14px 28px)}.gr-pressure-force-arrows{position:absolute;top:16px;display:flex;gap:28px}.gr-pressure-force-arrows i{width:4px;height:70px;background:linear-gradient(#ffdb6d,#e99232);border-radius:4px;position:relative}.gr-pressure-force-arrows i:after{content:"";position:absolute;bottom:-2px;left:-6px;border:8px solid transparent;border-top-color:#e99232}
.gr-pressure-live-strip{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:14px;padding:13px 15px;border-radius:16px;background:#112832;border:1px solid rgba(126,239,213,.14)}.gr-pressure-live-strip span{display:grid;gap:2px}.gr-pressure-live-strip span:last-child{text-align:right}.gr-pressure-live-strip small{font-size:.66rem;letter-spacing:.1em;color:#87aaa4;font-weight:850}.gr-pressure-live-strip strong{font-size:1.1rem;color:#fff}.gr-pressure-live-strip>b{color:#6fe9cd;font-size:.85rem}
.gr-pressure-measure,.gr-pressure-independent{margin-top:14px;padding:16px;border-radius:17px;background:#0f252d;border:1px solid rgba(126,239,213,.13)}.gr-pressure-measure{display:flex;align-items:center;justify-content:space-between;gap:14px}.gr-pressure-measure>div{display:grid;gap:4px}.gr-pressure-measure small,.gr-pressure-independent>small{color:#78e8ce;font-size:.68rem;font-weight:950;letter-spacing:.11em}.gr-pressure-measure strong{color:#fff}.gr-pressure-measure span,.gr-pressure-independent p{color:#b9d0cc;line-height:1.45}.gr-pressure-independent h4{margin:5px 0 5px;font-size:1.08rem}.gr-pressure-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.gr-pressure-answer-grid label{display:grid;gap:6px;color:#c6dcd8;font-size:.78rem;font-weight:800}.gr-pressure-answer-grid input{width:100%;box-sizing:border-box;border:1px solid rgba(126,239,213,.2);border-radius:11px;background:#081a20;color:#fff;padding:11px;font:inherit}.gr-pressure-feedback{margin:10px 0 0!important;color:#c1d6d2!important}.gr-pressure-feedback.good{color:#81f1cf!important}.gr-pressure-independent.challenge{border-color:rgba(236,194,94,.25);background:linear-gradient(145deg,#13272e,#1e271f)}
.gr-pressure-liquid-stage,.gr-pressure-gas-stage{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px;align-items:center;padding:18px;border-radius:20px;background:#0d222a;border:1px solid rgba(126,239,213,.13)}.gr-pressure-tank{height:285px;position:relative;border:3px solid #6f9ca3;border-top:0;border-radius:0 0 18px 18px;background:#071a21;overflow:hidden}.gr-pressure-water{position:absolute;left:0;right:0;top:18px;bottom:0;background:linear-gradient(180deg,rgba(56,181,222,.42),rgba(20,91,145,.68))}.gr-pressure-water:before{content:"";position:absolute;top:-4px;left:0;right:0;height:8px;background:rgba(119,231,246,.65);box-shadow:0 0 18px rgba(119,231,246,.45)}.gr-pressure-depth-line{position:absolute;left:7%;right:7%;display:flex;align-items:center;gap:8px;color:#fff;font-weight:900;transition:top .2s ease}.gr-pressure-depth-line:before{content:"";height:2px;background:#ffd56d;flex:1}.gr-pressure-depth-line i{width:14px;height:14px;border-radius:50%;background:#ffd56d;box-shadow:0 0 14px #ffd56d}.gr-pressure-surface-label{position:absolute;top:0;right:8px;color:#9fdbe5;font-size:.72rem}.gr-pressure-depth-arrow{position:absolute;left:8px;top:34px;bottom:12px;color:#a4e9ed;font-size:1.4rem;display:grid;place-items:center}
.gr-pressure-gauge{display:grid;justify-items:center;gap:8px}.gr-pressure-gauge-ring{width:150px;height:150px;border-radius:50%;padding:12px;background:conic-gradient(#60e4c6 var(--gauge),#17343b 0);box-shadow:inset 0 0 0 1px rgba(126,239,213,.16),0 14px 30px rgba(0,0,0,.2)}.gr-pressure-gauge-ring>span{width:100%;height:100%;box-sizing:border-box;border-radius:50%;background:#091b21;display:grid;place-content:center;text-align:center}.gr-pressure-gauge small{font-size:.64rem;letter-spacing:.1em;color:#7fa7a1;font-weight:900}.gr-pressure-gauge strong{font-size:1.5rem;color:#fff}.gr-pressure-gauge em{font-style:normal;color:#6fe8ce;font-weight:850}.gr-pressure-gauge p{text-align:center;margin:0;color:#a9c1bd;font-size:.75rem}
.gr-pressure-formula{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:14px;padding:13px;border-radius:15px;background:#132a32;border:1px solid rgba(126,239,213,.12)}.gr-pressure-formula span{font-weight:950;color:#72ecd0}.gr-pressure-formula strong{color:#fff}.gr-pressure-formula em{font-style:normal;color:#ffd66f;font-weight:900}
.gr-pressure-gas-box{height:260px;position:relative;border:3px solid #638e96;border-radius:20px;background:radial-gradient(circle at 50% 40%,#183740,#08191f);overflow:hidden;transition:width .25s ease;justify-self:center}.gr-pressure-gas-box>i{position:absolute;width:9px;height:9px;border-radius:50%;background:#78efd4;box-shadow:0 0 9px rgba(120,239,212,.85);animation:grPressureParticle var(--d) ease-in-out infinite alternate;animation-delay:var(--delay)}.gr-pressure-gas-box>span{position:absolute;bottom:10px;left:0;right:0;text-align:center;color:#b1d0cb;font-size:.73rem;font-weight:800}@keyframes grPressureParticle{0%{transform:translate(-9px,-7px)}33%{transform:translate(10px,5px)}66%{transform:translate(-4px,13px)}100%{transform:translate(12px,-10px)}}
.gr-pressure-hydraulic-stage{display:grid;grid-template-columns:minmax(110px,.6fr) minmax(120px,1fr) minmax(180px,1.4fr);align-items:end;gap:0;min-height:280px;padding:25px 14px;border-radius:20px;background:linear-gradient(180deg,#0b2229,#08181d);border:1px solid rgba(126,239,213,.13)}.gr-pressure-piston{display:grid;justify-items:center;align-content:end;gap:8px;height:190px;justify-self:center}.gr-pressure-piston span{font-weight:950;color:#ffd36e}.gr-pressure-piston i{width:100%;height:25px;background:linear-gradient(#9ebbc1,#5c787e);border-radius:8px 8px 2px 2px;position:relative}.gr-pressure-piston i:after{content:"";position:absolute;top:25px;left:calc(50% - 7px);width:14px;height:105px;background:#627f85}.gr-pressure-piston b{z-index:2;color:#bcd3cf;font-size:.75rem}.gr-pressure-fluid-link{height:54px;background:linear-gradient(180deg,#247ba2,#14506e);border:3px solid #557f89;border-left:0;border-right:0;display:grid;place-items:center;margin-bottom:18px}.gr-pressure-fluid-link span{font-size:.68rem;color:#daf7ff;font-weight:900;text-align:center;padding:3px}.gr-pressure-piston.large span{color:#7ff0ce}
@media(max-width:900px){.gr-pressure-grid{grid-template-columns:1fr}.gr-pressure-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-pressure-hero{align-items:flex-start;flex-direction:column}.gr-pressure-controls.three{grid-template-columns:1fr}.gr-pressure-liquid-stage,.gr-pressure-gas-stage{grid-template-columns:1fr}.gr-pressure-gauge-ring{width:130px;height:130px}.gr-pressure-hydraulic-stage{grid-template-columns:minmax(90px,.7fr) minmax(90px,1fr) minmax(120px,1.2fr)}}
@media(max-width:560px){.gr-pressure-shell{gap:12px}.gr-pressure-hero{padding:16px;border-radius:17px}.gr-pressure-tabs{gap:6px}.gr-pressure-tabs button{font-size:.78rem;padding:10px 6px}.gr-pressure-controls.two{grid-template-columns:1fr}.gr-pressure-contact-stage{min-height:210px;padding:18px}.gr-pressure-block{width:56%}.gr-pressure-live-strip{grid-template-columns:1fr;text-align:left}.gr-pressure-live-strip span:last-child{text-align:left}.gr-pressure-live-strip>b{padding:5px 0;border-top:1px solid rgba(126,239,213,.1);border-bottom:1px solid rgba(126,239,213,.1)}.gr-pressure-measure{align-items:stretch;flex-direction:column}.gr-pressure-measure button{width:100%}.gr-pressure-answer-grid{grid-template-columns:1fr}.gr-pressure-liquid-stage,.gr-pressure-gas-stage{padding:12px}.gr-pressure-tank{height:235px}.gr-pressure-gas-box{height:220px;min-width:62%}.gr-pressure-hydraulic-stage{grid-template-columns:1fr 45px 1.25fr;gap:0;padding:18px 6px;min-height:245px}.gr-pressure-fluid-link{height:42px;margin-bottom:20px}.gr-pressure-fluid-link span{writing-mode:vertical-rl;font-size:.58rem}.gr-pressure-piston{height:160px}.gr-pressure-piston i:after{height:82px}.gr-pressure-formula{align-items:flex-start;flex-direction:column;gap:5px}.gr-pressure-gauge-ring{width:118px;height:118px}.gr-pressure-gauge strong{font-size:1.3rem}}

/* V97.11 Pressure lab mobile hydraulic readability refinement */
@media(max-width:560px){
  .gr-pressure-hydraulic-stage{grid-template-columns:1fr;gap:10px;align-items:center;min-height:0;padding:16px 10px 20px}
  .gr-pressure-piston{height:132px;width:62%!important;min-width:150px;justify-self:center}
  .gr-pressure-piston.small{width:48%!important}
  .gr-pressure-piston.large{width:78%!important}
  .gr-pressure-piston i:after{height:66px}
  .gr-pressure-fluid-link{width:82%;height:42px;margin:0 auto;border:3px solid #557f89;border-radius:9px}
  .gr-pressure-fluid-link span{writing-mode:horizontal-tb;font-size:.66rem;line-height:1.2;padding:5px;text-align:center}
}

/* GradeRealm V97.12 — Speed, Distance & Time Virtual Lab */
.gr-sdt-shell{display:grid;gap:18px;color:#edf7ff}
.gr-sdt-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px;border-radius:22px;border:1px solid rgba(117,198,255,.24);background:linear-gradient(135deg,#0b1b31,#112842 54%,#192f42);box-shadow:0 18px 45px rgba(2,10,22,.28)}
.gr-sdt-hero>div:first-child{min-width:0}.gr-sdt-hero span{font-size:.72rem;letter-spacing:.15em;font-weight:900;color:#7ad4ff}.gr-sdt-hero h3{margin:5px 0 7px;font-size:clamp(1.5rem,3vw,2.3rem);color:#fff}.gr-sdt-hero p{margin:0;max-width:790px;color:#c8d9e9;line-height:1.55}.gr-sdt-live{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:rgba(4,13,25,.56);border:1px solid rgba(119,204,255,.2);font-weight:900;font-size:.72rem;letter-spacing:.08em}.gr-sdt-live i{width:9px;height:9px;border-radius:50%;background:#5ee6ff;box-shadow:0 0 14px #5ee6ff}
.gr-sdt-triangle{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"distance distance" "speed time";max-width:520px;margin:0 auto;border-radius:18px;overflow:hidden;border:1px solid rgba(125,206,255,.2);background:#0d2238;box-shadow:0 14px 30px rgba(2,11,23,.18)}.gr-sdt-triangle>span{padding:11px 16px;text-align:center;font-weight:950;color:#fff}.gr-sdt-triangle small{display:block;margin-top:3px;font-size:.68rem;font-weight:750;color:#9fc4dc}.gr-sdt-triangle .distance{grid-area:distance;background:linear-gradient(135deg,#17669a,#1487aa)}.gr-sdt-triangle .speed{grid-area:speed;border-right:1px solid rgba(125,206,255,.16)}.gr-sdt-triangle .time{grid-area:time}
.gr-sdt-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.gr-sdt-tabs button{border:1px solid rgba(123,201,255,.18);background:#11283d;color:#cfe2f0;border-radius:14px;padding:12px 10px;font-weight:850;cursor:pointer}.gr-sdt-tabs button.active{background:linear-gradient(135deg,#195f9f,#1488a8);color:#fff;border-color:#66d7ff;box-shadow:0 8px 22px rgba(18,113,169,.24)}
.gr-sdt-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(285px,.7fr);gap:16px}.gr-sdt-workspace,.gr-sdt-teaching{background:linear-gradient(180deg,#10263b,#091722)!important;border-color:rgba(117,198,255,.16)!important;color:#edf7ff!important}.gr-sdt-workspace h4,.gr-sdt-teaching h3{color:#fff!important}.gr-sdt-teaching .topic-lab-steps li span,.gr-sdt-teaching .topic-lab-steps li strong{color:#e5f1f9!important}.gr-sdt-teaching .topic-lab-memory{background:#112c43!important;color:#83ddff!important;border-color:rgba(117,198,255,.18)!important}
.gr-sdt-controls{display:grid;gap:12px;margin-bottom:16px}.gr-sdt-controls.one{grid-template-columns:1fr}.gr-sdt-controls.two{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-sdt-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-sdt-controls label{display:grid;gap:7px;padding:12px;border-radius:15px;background:#152f46;border:1px solid rgba(117,198,255,.12);color:#c9dae7}.gr-sdt-controls label>span{font-size:.76rem;font-weight:800;letter-spacing:.04em}.gr-sdt-controls label>strong{font-size:1.12rem;color:#fff}.gr-sdt-controls input[type=range]{width:100%;accent-color:#59cfff}
.gr-sdt-track-stage{min-height:245px;position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(123,201,255,.14);background:linear-gradient(180deg,#143b5b 0 55%,#86bdd1 55% 58%,#20313b 58%)}.gr-sdt-sky{position:absolute;inset:0 0 42% 0;background:radial-gradient(circle at 80% 18%,rgba(255,226,123,.58) 0 6%,transparent 7%),linear-gradient(#123c60,#2d7597)}.gr-sdt-sky i{position:absolute;width:90px;height:18px;border-radius:999px;background:rgba(255,255,255,.4)}.gr-sdt-sky i:nth-child(1){left:8%;top:22%}.gr-sdt-sky i:nth-child(2){left:48%;top:35%;width:120px}.gr-sdt-sky i:nth-child(3){right:8%;top:18%;width:68px}.gr-sdt-road{position:absolute;left:0;right:0;bottom:20px;height:78px;background:linear-gradient(#33444d,#1d282e);border-top:4px solid #b8d7df;box-shadow:0 -1px 0 #6b8c96}.gr-sdt-road:before{content:"";position:absolute;left:0;right:0;top:37px;height:4px;background:repeating-linear-gradient(90deg,#f8df72 0 40px,transparent 40px 72px)}.gr-sdt-road .start,.gr-sdt-road .finish{position:absolute;bottom:-17px;font-size:.68rem;color:#afc9d5;font-weight:800}.gr-sdt-road .start{left:12px}.gr-sdt-road .finish{right:12px}.gr-sdt-car{position:absolute;left:3%;top:14px;width:70px;height:36px;border-radius:10px 15px 8px 8px;background:linear-gradient(145deg,#ffb44c,#e76b33);box-shadow:0 9px 16px rgba(0,0,0,.28);display:grid;place-items:center;color:#151b20;font-weight:950;transform:translateX(0)}.gr-sdt-car:before,.gr-sdt-car:after{content:"";position:absolute;bottom:-8px;width:16px;height:16px;border-radius:50%;background:#071015;border:4px solid #80949c}.gr-sdt-car:before{left:8px}.gr-sdt-car:after{right:8px}.gr-sdt-car b{position:absolute;right:-22px;color:#ffd86f;font-size:1.15rem}.gr-sdt-car span{font-size:.72rem}.gr-sdt-car.run{animation:grSdtDrive 1.25s cubic-bezier(.2,.75,.2,1) both}@keyframes grSdtDrive{from{left:3%}to{left:calc(var(--finish) - 70px)}}
.gr-sdt-live-strip{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:14px;padding:13px 15px;border-radius:16px;background:#132e45;border:1px solid rgba(117,198,255,.14)}.gr-sdt-live-strip span{display:grid;gap:2px}.gr-sdt-live-strip span:last-child{text-align:right}.gr-sdt-live-strip small{font-size:.66rem;letter-spacing:.1em;color:#89aabd;font-weight:850}.gr-sdt-live-strip strong{font-size:1.1rem;color:#fff}.gr-sdt-live-strip>b{color:#70d6ff;font-size:.85rem}
.gr-sdt-measure,.gr-sdt-independent{margin-top:14px;padding:16px;border-radius:17px;background:#102b42;border:1px solid rgba(117,198,255,.13)}.gr-sdt-measure{display:flex;align-items:center;justify-content:space-between;gap:14px}.gr-sdt-measure>div{display:grid;gap:4px}.gr-sdt-measure small,.gr-sdt-independent>small{color:#73d7ff;font-size:.68rem;font-weight:950;letter-spacing:.11em}.gr-sdt-measure strong{color:#fff}.gr-sdt-measure span,.gr-sdt-independent p{color:#bdd1df;line-height:1.45}.gr-sdt-independent h4{margin:5px 0 5px;font-size:1.08rem}.gr-sdt-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.gr-sdt-answer-grid label{display:grid;gap:6px;color:#c8d9e6;font-size:.78rem;font-weight:800}.gr-sdt-answer-grid input{width:100%;box-sizing:border-box;border:1px solid rgba(117,198,255,.22);border-radius:11px;background:#071722;color:#fff;padding:11px;font:inherit}.gr-sdt-feedback{margin:10px 0 0!important;color:#c1d4df!important}.gr-sdt-feedback.good{color:#7ee9c6!important}.gr-sdt-independent.challenge{border-color:rgba(255,202,102,.25);background:linear-gradient(145deg,#112d43,#263120)}
.gr-sdt-graph-stage{padding:14px;border-radius:20px;background:linear-gradient(180deg,#0a1d2c,#0a1721);border:1px solid rgba(117,198,255,.14)}.gr-sdt-graph{display:block;width:100%;height:auto}.gr-sdt-graph .grid line{stroke:#29465b;stroke-width:1}.gr-sdt-graph .axes line{stroke:#a4c7da;stroke-width:2}.gr-sdt-graph .journey{fill:none;stroke:#64ddff;stroke-width:6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(100,221,255,.35))}.gr-sdt-graph circle{fill:#ffd36a;stroke:#13283a;stroke-width:3}.gr-sdt-graph text{fill:#a9c4d5;font-size:15px;font-weight:750}.gr-sdt-graph .stoplabel{fill:#ffd36a;font-size:12px;font-weight:900}
.gr-sdt-speedometer{min-height:250px;display:grid;grid-template-columns:1fr auto 1fr;gap:22px;align-items:center;justify-items:center;padding:20px;border-radius:20px;background:radial-gradient(circle at 20% 40%,#173a54,#091924 60%);border:1px solid rgba(117,198,255,.14)}.gr-sdt-speedometer .dial{width:180px;height:180px;border-radius:50%;padding:13px;background:conic-gradient(from -135deg,#59d7ff var(--angle),#17394f 0);box-shadow:inset 0 0 0 1px rgba(117,198,255,.18),0 18px 35px rgba(0,0,0,.25)}.gr-sdt-speedometer .dial>span{width:100%;height:100%;box-sizing:border-box;border-radius:50%;background:#081822;display:grid;place-content:center;text-align:center}.gr-sdt-speedometer small,.gr-sdt-speedometer .digital small{font-size:.65rem;letter-spacing:.1em;color:#87aabb;font-weight:900}.gr-sdt-speedometer strong{font-size:2.3rem;color:#fff}.gr-sdt-speedometer em,.gr-sdt-speedometer .digital em{font-style:normal;color:#72d7ff;font-weight:850}.gr-sdt-speedometer .equals{font-size:2rem;color:#ffd36c;font-weight:950}.gr-sdt-speedometer .digital{min-width:150px;padding:24px;border-radius:18px;background:#0d2b41;border:1px solid rgba(117,198,255,.18);text-align:center}.gr-sdt-speedometer .digital strong{display:block;font-size:2rem}.gr-sdt-convert-rule{display:grid;grid-template-columns:1fr auto 30px 1fr auto;align-items:center;gap:9px;margin-top:14px;padding:13px 15px;border-radius:15px;background:#132f46;border:1px solid rgba(117,198,255,.12)}.gr-sdt-convert-rule span{color:#c9dbe7;font-size:.78rem;font-weight:850}.gr-sdt-convert-rule strong{color:#73d8ff}.gr-sdt-convert-rule i{height:2px;background:#526f80;position:relative}.gr-sdt-convert-rule i:after{content:"";position:absolute;right:-1px;top:-4px;border:5px solid transparent;border-left-color:#526f80}
.gr-sdt-pursuit-stage{padding:18px;border-radius:20px;background:linear-gradient(180deg,#0b2234,#08151e);border:1px solid rgba(117,198,255,.14)}.gr-sdt-route{height:115px;position:relative;margin:5px 0 16px;border-bottom:8px solid #334a56}.gr-sdt-route:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:3px;background:repeating-linear-gradient(90deg,#ffd36b 0 35px,transparent 35px 62px)}.gr-sdt-route .a,.gr-sdt-route .b,.gr-sdt-route .meet{position:absolute;bottom:16px;padding:8px 10px;border-radius:11px;font-weight:950;font-size:.76rem}.gr-sdt-route .a{left:0;background:#55c8ff;color:#062033}.gr-sdt-route .b{right:0;background:#ff9c5d;color:#2b1308}.gr-sdt-route .meet{transform:translateX(-50%);background:#ffe17d;color:#28200a;box-shadow:0 0 18px rgba(255,225,125,.25)}.gr-sdt-pursuit-readout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gr-sdt-pursuit-readout span{display:grid;gap:4px;padding:11px;border-radius:13px;background:#122d42;text-align:center}.gr-sdt-pursuit-readout small{font-size:.62rem;letter-spacing:.08em;color:#88aabc;font-weight:850}.gr-sdt-pursuit-readout strong{color:#fff}
@media(max-width:900px){.gr-sdt-grid{grid-template-columns:1fr}.gr-sdt-hero{align-items:flex-start;flex-direction:column}.gr-sdt-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-sdt-controls.three{grid-template-columns:1fr}.gr-sdt-speedometer{grid-template-columns:1fr}.gr-sdt-speedometer .equals{transform:rotate(90deg)}.gr-sdt-convert-rule{grid-template-columns:1fr auto}.gr-sdt-convert-rule i{display:none}.gr-sdt-pursuit-readout{grid-template-columns:1fr}}
@media(max-width:560px){.gr-sdt-shell{gap:13px}.gr-sdt-hero{padding:17px;border-radius:18px}.gr-sdt-live{font-size:.63rem}.gr-sdt-tabs{gap:7px}.gr-sdt-tabs button{font-size:.76rem;padding:10px 7px}.gr-sdt-controls.two{grid-template-columns:1fr}.gr-sdt-track-stage{min-height:210px}.gr-sdt-live-strip{grid-template-columns:1fr}.gr-sdt-live-strip span:last-child{text-align:left}.gr-sdt-live-strip>b{padding:7px 0;border-top:1px solid rgba(117,198,255,.11);border-bottom:1px solid rgba(117,198,255,.11)}.gr-sdt-measure{align-items:stretch;flex-direction:column}.gr-sdt-measure .btn{width:100%}.gr-sdt-answer-grid{grid-template-columns:1fr}.gr-sdt-graph-stage{padding:7px}.gr-sdt-graph .stoplabel{font-size:10px}.gr-sdt-speedometer .dial{width:150px;height:150px}.gr-sdt-speedometer .dial strong{font-size:1.9rem}.gr-sdt-route{height:135px}.gr-sdt-route .a,.gr-sdt-route .b{bottom:12px}.gr-sdt-route .meet{bottom:62px}.gr-sdt-triangle{width:100%}}

/* ============================================================
   V97.13 • DESKTOP BLASTER TRUE FULL-SCREEN
   Combat must inherit the same full desktop viewport as Storm maths play.
   The previous desktop grid reserved a right-hand answer column even after
   the answer deck was hidden, which could leave the shoot-em-up looking
   constrained. This late override collapses combat to one full-width column,
   keeps the arena on the flexible row, and hard-locks its height to the
   remaining live viewport. Phone/tablet layouts are intentionally untouched.
   ============================================================ */
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-game-shell,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-game-shell,
html.sigma-storm-desktop-live #timesGameView.storm-running.blaster-active:fullscreen .times-game-shell,
html.sigma-storm-desktop-live #timesGameView.storm-running.blaster-active:-webkit-full-screen .times-game-shell{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:30px 24px 26px minmax(0,1fr) 34px!important;
  grid-template-areas:"hud" "controls" "wave" "arena" "powers"!important;
  gap:4px!important;
  overflow:hidden!important;
}
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena-wrap,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena-wrap{
  grid-area:arena!important;
  grid-column:1!important;
  grid-row:4!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  overflow:hidden!important;
}
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-arena{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
}
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-answer-deck,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-answer-deck{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
html.sigma-storm-desktop-live body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-power-grid,
html[data-display-layout="desktop"] body.sigma-storm-live #timesGameView.storm-running.blaster-active .times-power-grid{
  grid-area:powers!important;
  grid-column:1!important;
  width:100%!important;
  height:34px!important;
  min-height:34px!important;
}


/* V97.15 — embedded Algebra Balance Lab */
.gr-algebra-app-host{display:grid;gap:12px;min-width:0}
.gr-algebra-app-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(105,218,230,.16);border-radius:16px;background:linear-gradient(135deg,rgba(9,45,58,.74),rgba(12,31,49,.72));color:#eefcff}
.gr-algebra-app-intro small{display:block;color:#79e2df;font-size:.6rem;font-weight:1000;letter-spacing:.12em;margin-bottom:4px}
.gr-algebra-app-intro strong{display:block;font-size:1.05rem}.gr-algebra-app-intro p{margin:5px 0 0;color:#b9cdd5;font-size:.7rem;line-height:1.45;max-width:850px}
.gr-algebra-app-frame{display:block;width:100%;height:1100px;min-height:720px;border:0;border-radius:18px;background:#0b1220;overflow:hidden}
@media(max-width:700px){.gr-algebra-app-intro{align-items:flex-start;flex-direction:column}.gr-algebra-app-intro .btn{width:100%}.gr-algebra-app-frame{min-height:1150px;border-radius:14px}}


/* ===== GradeRealm V97.47 — Premium Virtual Labs Hub ===== */
.virtual-labs-library-view{height:calc(100dvh - 76px);min-height:0;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;touch-action:pan-y;pointer-events:auto!important;padding:clamp(18px,3vw,38px) clamp(14px,3vw,34px) max(110px,calc(env(safe-area-inset-bottom) + 88px));background:radial-gradient(circle at 82% 0,rgba(55,214,190,.12),transparent 28%),linear-gradient(180deg,#f8fbff 0,#f3f7fb 100%);scrollbar-gutter:stable;color:#122746}
.virtual-labs-library-shell{width:min(1120px,100%);margin:0 auto}
.virtual-labs-library-hero{display:grid;gap:18px;margin-bottom:18px;padding:clamp(20px,3vw,32px);border:1px solid #e0e8ef;border-radius:28px;background:linear-gradient(135deg,#102d4d 0,#174466 58%,#166858 100%);box-shadow:0 16px 42px rgba(24,41,67,.12);color:#fff;overflow:hidden;position:relative}
.virtual-labs-library-hero:after{content:'⚗';position:absolute;right:22px;bottom:-40px;font-size:150px;line-height:1;color:rgba(255,255,255,.045);pointer-events:none}
.virtual-labs-library-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;position:relative;z-index:1}
.virtual-labs-back{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.1);color:#fff;border-radius:999px;padding:10px 15px;font:inherit;font-weight:850;cursor:pointer;backdrop-filter:blur(10px)}
.virtual-labs-back:hover,.virtual-labs-back:focus-visible{background:rgba(255,255,255,.17);outline:none}
.virtual-labs-ready{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:rgba(5,22,35,.28);border:1px solid rgba(255,255,255,.12);font-size:.72rem;font-weight:850;color:#dffbf5}.virtual-labs-ready i{width:8px;height:8px;border-radius:50%;background:#4ce0c3;box-shadow:0 0 12px #4ce0c3}
.virtual-labs-library-heading{position:relative;z-index:1}.virtual-labs-library-heading>span{display:block;color:#4ce0c3;font-size:.72rem;font-weight:950;letter-spacing:.15em;margin-bottom:8px}.virtual-labs-library-heading h2{margin:0;color:#fff;font-size:clamp(2.15rem,4vw,3.4rem);line-height:.98;letter-spacing:-.035em}.virtual-labs-library-heading p{max-width:720px;margin:12px 0 0;color:#d1e2ed;font-size:clamp(.98rem,1.7vw,1.12rem);line-height:1.55}
.virtual-labs-method{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:11px;max-width:780px;padding:13px;border-radius:18px;background:rgba(5,20,33,.26);border:1px solid rgba(255,255,255,.1)}.virtual-labs-method>span{display:grid;grid-template-columns:31px 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center}.virtual-labs-method b{grid-row:1/3;width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#4ce0c3;color:#0d3046}.virtual-labs-method strong{font-size:.83rem}.virtual-labs-method small{font-size:.65rem;color:#bad1dd}.virtual-labs-method>i{font-style:normal;color:#79a5b7;font-weight:900}
.virtual-labs-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr) auto;align-items:center;gap:12px;margin-bottom:16px;padding:12px;border:1px solid #e0e7ee;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(24,41,67,.05)}
.virtual-labs-search{height:46px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid #e0e6ed;border-radius:14px;background:#f5f8fb;color:#5c6d83}.virtual-labs-search>span{font-size:20px}.virtual-labs-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#172943;font:inherit;font-size:.86rem}
.virtual-labs-filter-row{display:flex;gap:7px;overflow-x:auto;padding:2px;scrollbar-width:none}.virtual-labs-filter-row::-webkit-scrollbar{display:none}.virtual-labs-filter-row button{flex:0 0 auto;border:1px solid #e1e7ee;background:#fff;color:#55677e;border-radius:999px;padding:9px 12px;font:inherit;font-size:.69rem;font-weight:850;cursor:pointer}.virtual-labs-filter-row button.active{border-color:#19baa8;background:#e9fbf8;color:#087f72}.virtual-labs-visible-count{white-space:nowrap;color:#76869a;font-size:.7rem;font-weight:850;padding-right:5px}
.virtual-labs-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.virtual-lab-library-card{pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:rgba(21,184,166,.1);display:grid;grid-template-columns:54px minmax(0,1fr);grid-template-rows:1fr auto;align-items:center;gap:0 13px;width:100%;min-height:164px;padding:16px;text-align:left;border:1px solid #e0e7ee;border-radius:20px;background:#fff;color:#172a44;box-shadow:0 9px 26px rgba(24,41,67,.055);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.virtual-lab-library-card:hover,.virtual-lab-library-card:focus-visible{transform:translateY(-2px);border-color:rgba(21,184,166,.48);box-shadow:0 14px 34px rgba(24,41,67,.1);outline:none}.virtual-lab-library-card[hidden]{display:none!important}
.virtual-lab-library-icon{grid-row:1;display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(145deg,#103c5e,#16a892);color:#fff;font-size:1.35rem;font-weight:950;box-shadow:inset 0 1px rgba(255,255,255,.3),0 8px 18px rgba(20,132,121,.13)}
.virtual-lab-library-copy{grid-row:1;min-width:0}.virtual-lab-library-copy>small{display:block;color:#10a996;font-size:.58rem;line-height:1.1;font-weight:950;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.virtual-lab-library-copy strong{display:block;font-size:1rem;line-height:1.2;margin-bottom:5px}.virtual-lab-library-copy em{display:block;color:#6f7e91;font-size:.75rem;line-height:1.4;font-style:normal}
.virtual-lab-library-open{grid-column:1/-1;grid-row:2;display:flex;align-items:center;justify-content:space-between;margin-top:13px;padding-top:11px;border-top:1px solid #edf1f4;color:#31465e;font-size:.7rem;font-weight:900}.virtual-lab-library-open b{width:28px;height:28px;border-radius:10px;background:#eef6f6;color:#0d9c8c;display:grid;place-items:center;font-size:1rem}
.virtual-labs-empty{margin-top:20px;padding:34px;text-align:center;border:1px dashed #cfd9e2;border-radius:20px;background:#fff;color:#617287}.virtual-labs-empty strong,.virtual-labs-empty span{display:block}.virtual-labs-empty strong{color:#263c57;margin-bottom:5px}
.study-hub-card-labs .study-hub-icon{font-size:1.1rem}
@media(max-width:980px){.virtual-labs-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.virtual-labs-controls{grid-template-columns:1fr}.virtual-labs-visible-count{display:none}.virtual-labs-filter-row{width:100%}}
@media(max-width:700px){.virtual-labs-library-view{height:calc(100dvh - 72px);padding:12px 12px max(128px,calc(env(safe-area-inset-bottom) + 108px))}.virtual-labs-library-hero{padding:18px;border-radius:22px;gap:14px}.virtual-labs-library-topline{align-items:flex-start}.virtual-labs-ready{font-size:.62rem}.virtual-labs-library-heading h2{font-size:2.35rem}.virtual-labs-library-heading p{font-size:.92rem}.virtual-labs-method{grid-template-columns:1fr;gap:7px}.virtual-labs-method>i{display:none}.virtual-labs-method>span{grid-template-columns:28px 1fr}.virtual-labs-method b{width:28px;height:28px}.virtual-labs-controls{padding:10px;border-radius:17px}.virtual-labs-filter-row button{padding:8px 10px;font-size:.64rem}.virtual-labs-library-grid{grid-template-columns:1fr;gap:10px}.virtual-lab-library-card{min-height:128px;grid-template-columns:50px minmax(0,1fr);padding:14px;border-radius:18px}.virtual-lab-library-icon{width:50px;height:50px;border-radius:14px}.virtual-lab-library-open{margin-top:10px;padding-top:9px}}

/* Density + Recurring Decimals lab presentation retained in V97.28 */
/* GradeRealm V97.12.6 — Density Virtual Lab */
.gr-density-shell{display:grid;gap:18px;color:#f4fbff}.gr-density-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;padding:22px;border:1px solid rgba(111,211,255,.25);border-radius:22px;background:linear-gradient(135deg,#101d34,#102941 52%,#143044);box-shadow:0 18px 45px rgba(1,12,24,.25)}.gr-density-hero span{font-size:.72rem;letter-spacing:.16em;font-weight:900;color:#79d8ff}.gr-density-hero h3{margin:5px 0 7px;font-size:clamp(1.5rem,3vw,2.3rem);color:#fff}.gr-density-hero p{margin:0;max-width:780px;color:#cfdfeb;line-height:1.55}.gr-density-live{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:9px 12px;border-radius:999px;background:rgba(6,17,32,.58);border:1px solid rgba(111,211,255,.2);font-weight:900;font-size:.68rem;letter-spacing:.08em}.gr-density-live i{width:9px;height:9px;border-radius:50%;background:#6fe5ff;box-shadow:0 0 14px #6fe5ff}.gr-density-formula-board{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;border:1px solid rgba(106,205,247,.17);background:#0c1c2c}.gr-density-triangle{height:112px;position:relative;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(160deg,#2a75a6,#173857);display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;padding:14px 18px 9px;gap:2px}.gr-density-triangle>span{display:grid;place-items:center;align-content:center;font-weight:1000}.gr-density-triangle>span small{font-size:.48rem;text-transform:uppercase;letter-spacing:.08em}.gr-density-triangle .mass{grid-column:1/-1}.gr-density-triangle .density{border-right:1px solid rgba(255,255,255,.45)}.gr-density-formulas{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.gr-density-formulas span{padding:11px;border-radius:13px;background:#112b40;border:1px solid rgba(111,211,255,.12)}.gr-density-formulas small{display:block;font-size:.55rem;color:#79d8ff;font-weight:900;letter-spacing:.1em}.gr-density-formulas strong{display:block;margin-top:3px;font-size:.9rem}.gr-density-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.gr-density-tabs button{border:1px solid rgba(107,205,246,.16);background:#102437;color:#d8e8f3;border-radius:13px;padding:11px 8px;font-weight:850;cursor:pointer}.gr-density-tabs button.active{background:linear-gradient(135deg,#17668d,#2082a8);border-color:#6fdcff;color:#fff;box-shadow:0 8px 22px rgba(28,112,153,.23)}.gr-density-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(285px,.68fr);gap:16px}.gr-density-workspace,.gr-density-teaching{background:linear-gradient(180deg,#0c1d2a,#091620)!important;border-color:rgba(111,211,255,.15)!important;color:#edf8ff!important}.gr-density-workspace h4,.gr-density-teaching h3{color:#fff!important}.gr-density-teaching .topic-lab-steps li span,.gr-density-teaching .topic-lab-steps li strong{color:#e6f5fd!important}.gr-density-teaching .topic-lab-memory{background:#11283a!important;color:#8edfff!important;border-color:rgba(111,211,255,.17)!important}.gr-density-controls{display:grid;gap:10px;margin-bottom:14px}.gr-density-controls.two{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-density-controls.three{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-density-controls.four{grid-template-columns:repeat(4,minmax(0,1fr))}.gr-density-controls label{display:grid;gap:7px;padding:11px;border-radius:14px;background:#11283a;border:1px solid rgba(111,211,255,.1);color:#cbdce8}.gr-density-controls label>span{font-size:.69rem;font-weight:850}.gr-density-controls label>strong{color:#fff;font-size:1.02rem}.gr-density-controls input[type=range]{width:100%;accent-color:#5fd8ff}.gr-density-static small{font-size:.62rem;color:#9fb5c4}.gr-density-packing-stage{display:grid;grid-template-columns:minmax(250px,1.3fr) minmax(180px,.7fr);gap:14px;align-items:center;min-height:250px;padding:18px;border-radius:19px;background:radial-gradient(circle at 30% 30%,#163b52,#0a1a27 65%);border:1px solid rgba(111,211,255,.13)}.gr-density-sample{height:205px;position:relative;border:2px solid #76d9ff;border-radius:16px;background:linear-gradient(to top,rgba(43,150,194,.28) 0 var(--fill),rgba(10,24,35,.2) var(--fill) 100%);overflow:hidden;box-shadow:inset 0 0 34px rgba(80,199,240,.08)}.gr-density-sample i{position:absolute;width:9px;height:9px;border-radius:50%;background:#89e6ff;box-shadow:0 0 8px rgba(137,230,255,.55)}.gr-density-sample>span,.gr-density-sample>em{position:absolute;z-index:2;padding:8px 9px;border-radius:10px;background:rgba(4,15,23,.72);font-style:normal}.gr-density-sample>span{left:10px;top:10px}.gr-density-sample>em{right:10px;bottom:10px}.gr-density-sample small,.gr-density-meter small,.gr-density-live-strip small,.gr-density-measure small,.gr-density-independent>small,.gr-density-exam-banner small{display:block;font-size:.55rem;color:#7bdcff;font-weight:950;letter-spacing:.11em}.gr-density-sample b{display:block}.gr-density-meter{display:grid;justify-items:center;gap:4px}.gr-density-meter>strong{font-size:2.25rem}.gr-density-meter>span{font-size:.72rem;color:#b8d0df}.gr-density-meter>div{height:9px;width:100%;border-radius:99px;background:#163247;overflow:hidden;margin-top:7px}.gr-density-meter>div i{display:block;height:100%;background:linear-gradient(90deg,#68e1ff,#7a8cff);border-radius:99px}.gr-density-material-rail{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0}.gr-density-material-rail span{padding:8px;border-radius:10px;background:#102538;border:1px solid rgba(111,211,255,.09);text-align:center}.gr-density-material-rail span.near{border-color:#6fdcff;background:#17384d}.gr-density-material-rail b,.gr-density-material-rail small{display:block}.gr-density-material-rail small{font-size:.54rem;color:#9cb4c5}.gr-density-live-strip{display:grid;grid-template-columns:1fr auto 1fr;gap:9px;align-items:center;margin-top:10px;padding:12px;border-radius:14px;background:#10283a;border:1px solid rgba(111,211,255,.11)}.gr-density-live-strip span:last-child{text-align:right}.gr-density-live-strip strong{display:block}.gr-density-live-strip>b{color:#7bdcff}.gr-density-measure{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px;padding:13px;border-radius:15px;background:#0f2535;border:1px solid rgba(111,211,255,.1)}.gr-density-measure strong,.gr-density-measure span{display:block}.gr-density-measure span{font-size:.65rem;color:#a9c0cf;margin-top:3px}.gr-density-independent,.gr-density-mixture,.gr-density-exam-banner{margin-top:13px;padding:14px;border-radius:16px;background:#10283a;border:1px solid rgba(111,211,255,.12)}.gr-density-independent h4,.gr-density-exam-banner h4{margin:4px 0}.gr-density-independent p,.gr-density-exam-banner p{margin:5px 0 10px;color:#b6cad7}.gr-density-answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:10px 0}.gr-density-answer-grid label,.gr-density-exam-cards label{display:grid;gap:5px;font-size:.65rem;font-weight:850}.gr-density-answer-grid input,.gr-density-exam-cards input{width:100%;min-width:0;box-sizing:border-box}.gr-density-feedback{margin:10px 0 0!important;font-size:.7rem;color:#a9bfcd}.gr-density-feedback.good{color:#8cf3c1}.gr-density-tank-stage{display:grid;grid-template-columns:1fr minmax(190px,.55fr);gap:14px;align-items:center}.gr-density-tank{height:290px;border:2px solid #6ed8ff;border-top-width:1px;border-radius:10px 10px 24px 24px;overflow:hidden;position:relative;background:#0c1d2a}.gr-density-water{position:absolute;inset:18% 0 0;background:linear-gradient(180deg,rgba(52,164,213,.35),rgba(30,103,151,.6));border-top:2px solid #7be0ff}.gr-density-fluid-label{position:absolute;top:9%;left:12px;font-size:.65rem;color:#bce8fa}.gr-density-object{position:absolute;left:50%;transform:translateX(-50%);width:92px;height:72px;border-radius:12px;display:grid;place-items:center;align-content:center;background:linear-gradient(145deg,#f0a73b,#b86224);border:2px solid #ffd088;transition:top .35s ease;box-shadow:0 8px 20px rgba(0,0,0,.25)}.gr-density-object.suspended{background:linear-gradient(145deg,#7f8dff,#5360bd);border-color:#bac0ff}.gr-density-object.sinks{background:linear-gradient(145deg,#bb7788,#774555);border-color:#e8a7b7}.gr-density-object b,.gr-density-object small{color:#fff}.gr-density-object small{font-size:.54rem}.gr-density-compare{display:grid;gap:6px;text-align:center;padding:16px;border-radius:16px;background:#10283a}.gr-density-compare small{font-size:.55rem;color:#7bdcff;font-weight:900}.gr-density-compare strong{font-size:1.25rem}.gr-density-compare span{font-size:1.2rem;font-weight:1000}.gr-density-compare .floats{color:#7ff0bd}.gr-density-compare .sinks{color:#ff9da8}.gr-density-compare .suspended{color:#aeb8ff}.gr-density-rule-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.gr-density-rule-cards span{padding:10px;border-radius:12px;background:#10283a;text-align:center;border:1px solid rgba(111,211,255,.08)}.gr-density-rule-cards b,.gr-density-rule-cards small{display:block}.gr-density-rule-cards small{font-size:.6rem;color:#a9becb;margin-top:3px}.gr-density-shape-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.gr-density-shape-toolbar>div{display:flex;gap:6px}.gr-density-shape-toolbar button{border:1px solid rgba(111,211,255,.16);background:#11283a;color:#dcebf4;border-radius:10px;padding:8px 11px;font-weight:850}.gr-density-shape-toolbar button.active{background:#1d769d;border-color:#6fdcff}.gr-density-shape-toolbar>label{min-width:250px;display:grid;grid-template-columns:auto auto;gap:5px 10px;align-items:center;font-size:.65rem}.gr-density-shape-toolbar input{grid-column:1/-1;width:100%;accent-color:#5fd8ff}.gr-density-solid-stage{display:grid;grid-template-columns:minmax(210px,.65fr) 1fr;gap:18px;align-items:center;min-height:280px;padding:18px;border-radius:19px;background:radial-gradient(circle at 25% 35%,#183b55,#0a1824 70%);border:1px solid rgba(111,211,255,.12)}.gr-density-shape{margin:auto;position:relative;display:grid;place-items:center;color:#fff;font-weight:900}.gr-density-shape.cuboid{width:170px;height:125px;background:linear-gradient(145deg,#287ba3,#155171);border:2px solid #8de3ff;transform:skewY(-4deg);box-shadow:24px -18px 0 -2px #153e5a,25px -19px 0 0 #72cce9}.gr-density-shape.cuboid span{position:absolute;bottom:-24px}.gr-density-shape.cuboid em{position:absolute;right:-46px;top:38px;font-style:normal}.gr-density-shape.cuboid b{position:absolute;left:-42px}.gr-density-shape.cylinder{width:135px;height:170px;border-radius:50%/13%;background:linear-gradient(90deg,#15506f,#2a83ad 50%,#124763);border:2px solid #87e0ff;box-shadow:inset 0 14px 0 rgba(144,229,255,.16)}.gr-density-shape.cylinder span{position:absolute;top:-26px}.gr-density-shape.cylinder b{position:absolute;right:-56px}.gr-density-shape.sphere{width:165px;height:165px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#56b6dd,#1a6386 50%,#113c57 80%);border:2px solid #8be2ff;box-shadow:inset -18px -18px 24px rgba(0,0,0,.18)}.gr-density-solid-math{display:grid;gap:5px}.gr-density-solid-math small{font-size:.55rem;color:#7bdcff;font-weight:900;letter-spacing:.08em;margin-top:5px}.gr-density-solid-math strong{font-size:.9rem}.gr-density-solid-math b{font-size:1.25rem;color:#fff}.gr-density-unit-converter{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:15px;border-radius:17px;background:#10283a;border:1px solid rgba(111,211,255,.11)}.gr-density-unit-converter>span{font-size:1.2rem;font-weight:1000;color:#7bdcff}.gr-density-unit-converter small{display:block;font-size:.56rem;color:#7bdcff;font-weight:900}.gr-density-unit-converter strong{display:block;font-size:1.15rem}.gr-density-unit-converter label{display:grid;gap:6px}.gr-density-unit-converter input{width:100%;accent-color:#5fd8ff}.gr-density-unit-converter p{margin:3px 0 0;font-size:.62rem;color:#a8bdca}.gr-density-mixture-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-end}.gr-density-mixture-head small{font-size:.55rem;color:#7bdcff;font-weight:900;letter-spacing:.1em}.gr-density-mixture-head h4{margin:4px 0}.gr-density-mixture-head>strong{font-size:1.35rem}.gr-density-mixture-tubes{display:flex;align-items:flex-end;justify-content:center;gap:10px;min-height:170px;padding:13px}.gr-density-mixture-tubes>span:not(.plus):not(.arrow){width:76px;height:calc(48px + var(--parts)*12px);border:2px solid #7adfff;border-radius:7px 7px 18px 18px;display:grid;place-items:center;align-content:center;background:linear-gradient(to top,rgba(61,175,222,.6),rgba(28,97,138,.3));transition:height .2s}.gr-density-mixture-tubes .b{border-color:#b7a3ff!important;background:linear-gradient(to top,rgba(113,91,215,.58),rgba(57,49,126,.3))!important}.gr-density-mixture-tubes .c{width:100px!important;border-color:#80efc7!important;background:linear-gradient(to top,rgba(49,177,136,.62),rgba(22,94,79,.3))!important}.gr-density-mixture-tubes b,.gr-density-mixture-tubes small{display:block;text-align:center}.gr-density-mixture-tubes small{font-size:.55rem}.gr-density-mixture-tubes .plus,.gr-density-mixture-tubes .arrow{align-self:center;font-size:1.4rem;font-weight:1000}.gr-density-mixture-equation{padding:10px;border-radius:12px;background:#0c1d2b;text-align:center;font-size:.72rem;margin-bottom:10px}.gr-density-exam-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gr-density-exam-cards article{padding:15px;border-radius:16px;background:#10283a;border:1px solid rgba(111,211,255,.1)}.gr-density-exam-cards article>span{font-size:.56rem;color:#7bdcff;font-weight:950;letter-spacing:.1em}.gr-density-exam-cards h4{margin:5px 0 8px}.gr-density-exam-cards p,.gr-density-exam-cards li{font-size:.7rem;color:#b9ceda;line-height:1.45}.gr-density-exam-cards ol{padding-left:18px}.gr-density-prism-diagram{height:130px;display:flex;align-items:center;justify-content:center;gap:28px}.gr-density-prism-diagram>div{width:110px;height:86px;clip-path:polygon(0 100%,0 0,100% 100%);background:linear-gradient(145deg,#3289b0,#174e70);position:relative;border-left:3px solid #9ae6ff}.gr-density-prism-diagram b{position:absolute;left:6px;top:28px}.gr-density-prism-diagram em{position:absolute;left:44px;bottom:5px;font-style:normal}.gr-density-prism-diagram>span{font-size:1.1rem;font-weight:1000}.gr-density-bounds{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.gr-density-bounds span{padding:10px;border-radius:12px;background:#0c1d2b;text-align:center}.gr-density-bounds small,.gr-density-bounds b,.gr-density-bounds em{display:block}.gr-density-bounds small{font-size:.55rem;color:#7bdcff}.gr-density-bounds em{font-size:.56rem;color:#a9bdca;font-style:normal}.gr-density-exam-submit{width:100%;margin-top:12px}
@media(max-width:980px){.gr-density-grid{grid-template-columns:1fr}.gr-density-tabs{grid-template-columns:repeat(3,1fr)}.gr-density-tabs button:nth-child(4),.gr-density-tabs button:nth-child(5){grid-column:span 1}.gr-density-controls.four{grid-template-columns:1fr 1fr}.gr-density-exam-cards{grid-template-columns:1fr}.gr-density-solid-stage{grid-template-columns:1fr 1fr}.gr-density-formula-board{grid-template-columns:125px 1fr}}
@media(max-width:700px){.gr-density-hero{align-items:flex-start;flex-direction:column}.gr-density-formula-board{grid-template-columns:1fr}.gr-density-triangle{max-width:160px;width:100%;margin:auto}.gr-density-formulas{grid-template-columns:1fr}.gr-density-tabs{grid-template-columns:1fr 1fr}.gr-density-tabs button:last-child{grid-column:1/-1}.gr-density-controls.two,.gr-density-controls.three,.gr-density-controls.four{grid-template-columns:1fr}.gr-density-packing-stage,.gr-density-tank-stage,.gr-density-solid-stage{grid-template-columns:1fr}.gr-density-material-rail{grid-template-columns:repeat(2,1fr)}.gr-density-material-rail span:last-child{grid-column:1/-1}.gr-density-live-strip{grid-template-columns:1fr}.gr-density-live-strip span:last-child{text-align:left}.gr-density-answer-grid{grid-template-columns:1fr}.gr-density-rule-cards{grid-template-columns:1fr}.gr-density-shape-toolbar{align-items:stretch;flex-direction:column}.gr-density-shape-toolbar>label{min-width:0}.gr-density-unit-converter{grid-template-columns:1fr}.gr-density-unit-converter>span{text-align:center}.gr-density-mixture-tubes{gap:6px;transform:scale(.92);transform-origin:center}.gr-density-measure{align-items:stretch;flex-direction:column}}

/* GradeRealm V97.12.8 — Module 1 Question Quality Floor (V97.12.7 lab styling retained) */
.gr-sdt-tabs-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.gr-sdt-formula-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}.gr-sdt-formula-cards span{display:grid;gap:4px;padding:12px;border-radius:14px;background:#0b2133;border:1px solid rgba(117,198,255,.13);text-align:center}.gr-sdt-formula-cards small{font-size:.62rem;letter-spacing:.08em;color:#83a9bd;font-weight:900}.gr-sdt-formula-cards strong{color:#75dcff;font-size:.9rem}
.gr-sdt-clock-card{background:linear-gradient(145deg,#102b42,#152f3f)!important}.gr-sdt-clock-line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:13px 0 15px;padding:15px;border-radius:15px;background:#081b29;border:1px solid rgba(117,198,255,.14);text-align:center}.gr-sdt-clock-line>span{display:grid;gap:3px;color:#fff;font-size:1.35rem;font-weight:950}.gr-sdt-clock-line>span small{font-size:.58rem;letter-spacing:.1em;color:#81a9bd}.gr-sdt-clock-line>b{color:#ffd879;font-size:.88rem}.gr-sdt-controls.compact{margin:0}.gr-sdt-controls.compact label{padding:9px 10px}
.gr-sdt-journey-strip{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr;align-items:center;gap:8px;padding:16px;border-radius:19px;background:linear-gradient(145deg,#0b2132,#0a1822);border:1px solid rgba(117,198,255,.14)}.gr-sdt-journey-strip>span{display:grid;gap:4px;padding:13px;border-radius:14px;background:#143149;text-align:center}.gr-sdt-journey-strip>span.stop{background:#302b20;border:1px solid rgba(255,210,110,.15)}.gr-sdt-journey-strip b{font-size:.63rem;letter-spacing:.09em;color:#7bd9ff}.gr-sdt-journey-strip .stop b{color:#ffd36e}.gr-sdt-journey-strip strong{color:#fff}.gr-sdt-journey-strip small{color:#9fb8c7}.gr-sdt-journey-strip>i{height:3px;background:linear-gradient(90deg,#4ec8f1,#ffd36a);position:relative}.gr-sdt-journey-strip>i:after{content:"";position:absolute;right:-2px;top:-4px;border:5px solid transparent;border-left-color:#ffd36a}
.gr-sdt-average-warning{display:grid;gap:4px;margin-top:13px;padding:13px 15px;border-radius:15px;background:#2b271d;border:1px solid rgba(255,211,106,.18)}.gr-sdt-average-warning strong{color:#ffe08a}.gr-sdt-average-warning span{color:#d9d1b8;line-height:1.45;font-size:.8rem}
.gr-sdt-relative-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.gr-sdt-relative-switch>div{display:grid;gap:4px;padding:14px;border-radius:15px;background:#102c43;border:1px solid rgba(117,198,255,.13)}.gr-sdt-relative-switch small{color:#79d9ff;font-size:.62rem;font-weight:950;letter-spacing:.1em}.gr-sdt-relative-switch strong{color:#fff;font-size:1.05rem}.gr-sdt-relative-switch span{color:#abc5d3;font-size:.77rem}.gr-sdt-catchup{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px;padding:14px;border-radius:18px;background:#0a1d2b;border:1px solid rgba(117,198,255,.14)}.gr-sdt-catchup>div{display:grid;gap:4px;padding:11px;border-radius:13px;background:#122d42;text-align:center}.gr-sdt-catchup small{color:#80aabd;font-size:.6rem;letter-spacing:.08em;font-weight:900}.gr-sdt-catchup strong{color:#fff}.gr-sdt-catchup span{color:#b7ceda;font-size:.72rem}.gr-sdt-answer-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.gr-sdt-tabs-five{grid-template-columns:repeat(3,minmax(0,1fr))}.gr-sdt-answer-grid.three{grid-template-columns:1fr}.gr-sdt-catchup{grid-template-columns:1fr}}
@media(max-width:700px){.gr-sdt-tabs-five{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-sdt-formula-cards{grid-template-columns:1fr}.gr-sdt-clock-line{grid-template-columns:1fr}.gr-sdt-journey-strip{grid-template-columns:1fr}.gr-sdt-journey-strip>i{width:3px;height:22px;justify-self:center;background:linear-gradient(#4ec8f1,#ffd36a)}.gr-sdt-journey-strip>i:after{right:-4px;top:auto;bottom:-7px;border-left-color:transparent;border-top-color:#ffd36a}.gr-sdt-relative-switch{grid-template-columns:1fr}}

/* GradeRealm V97.12.10 — Recurring Decimals Virtual Lab */
.gr-recur-shell{display:grid;gap:16px}.gr-recur-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px;border:1px solid rgba(45,212,191,.24);border-radius:24px;background:linear-gradient(135deg,rgba(9,33,43,.96),rgba(11,48,45,.94));color:#fff;overflow:hidden}.gr-recur-hero>div:first-child{min-width:0}.gr-recur-hero span{font-size:.72rem;letter-spacing:.14em;font-weight:800;color:#99f6e4}.gr-recur-hero h3{margin:5px 0 7px;font-size:clamp(1.35rem,3vw,2rem);line-height:1.05}.gr-recur-hero p{margin:0;max-width:760px;color:#d7eeec;line-height:1.55}.gr-recur-live{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid rgba(153,246,228,.25);border-radius:999px;background:rgba(255,255,255,.07);font-size:.72rem;font-weight:900;letter-spacing:.08em}.gr-recur-live i{width:9px;height:9px;border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.14)}
.gr-recur-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:8px;border-radius:18px;background:rgba(7,19,31,.06);border:1px solid rgba(15,23,42,.09)}.gr-recur-tabs button{min-height:48px;border:0;border-radius:13px;background:transparent;color:var(--ink,#162033);font-weight:800;font-size:.84rem;padding:8px;cursor:pointer}.gr-recur-tabs button.active{background:#0b302d;color:#fff;box-shadow:0 5px 16px rgba(11,48,45,.18)}
.gr-recur-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);gap:16px;align-items:start}.gr-recur-workspace,.gr-recur-teaching{border-radius:20px!important}.gr-recur-workspace{display:grid;gap:16px;min-width:0}.gr-recur-teaching h3{margin:0 0 12px}.gr-recur-teaching ol{list-style:none;margin:0;padding:0;display:grid;gap:9px}.gr-recur-teaching li{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:start;padding:10px;border-radius:13px;background:rgba(15,118,110,.06)}.gr-recur-teaching li>b{display:grid;place-items:center;min-height:34px;border-radius:9px;background:#0f766e;color:#fff}.gr-recur-teaching li span{display:flex;flex-direction:column;gap:2px;font-size:.82rem}.gr-recur-teaching li strong{font-size:.74rem;color:var(--muted,#64748b);font-weight:650}.gr-recur-memory{margin-top:13px;padding:12px;border-left:4px solid #d6a54a;background:rgba(214,165,74,.1);font-size:.75rem;font-weight:900;letter-spacing:.04em;line-height:1.45}
.gr-recur-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gr-recur-controls label{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:11px 12px;border:1px solid rgba(15,23,42,.09);border-radius:14px;background:rgba(248,250,252,.72);font-size:.78rem;font-weight:800}.gr-recur-controls input{grid-column:1/-1;width:100%}.gr-recur-controls strong{font-size:1rem;color:#0f766e}.gr-recur-fraction-stage{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:18px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(15,118,110,.08),rgba(59,130,246,.05));border:1px solid rgba(15,118,110,.12)}.gr-recur-big-frac{display:grid;text-align:center;font-size:1.5rem;font-weight:900;min-width:58px}.gr-recur-big-frac i{height:2px;background:currentColor;margin:3px 0}.gr-recur-arrow{font-size:1.6rem;font-weight:900;color:#0f766e}.gr-recur-decimal{display:grid;gap:3px;min-width:0}.gr-recur-decimal small,.gr-recur-section-head small,.gr-recur-convert-number small,.gr-recur-independent>small,.gr-recur-exam-banner small,.gr-recur-record small{font-size:.68rem;letter-spacing:.11em;font-weight:900;color:#0f766e}.gr-recur-decimal strong{font-size:clamp(1.35rem,4vw,2.15rem);overflow-wrap:anywhere}.gr-recur-decimal span{font-size:.8rem;color:var(--muted,#64748b)}.gr-recur-over{text-decoration:overline;text-decoration-thickness:2px;text-decoration-skip-ink:none}.gr-recur-digit-tape{display:flex;align-items:center;flex-wrap:wrap;gap:5px;padding:14px;border-radius:16px;background:#07131f;color:#fff;min-height:62px}.gr-recur-digit-tape>b{font-size:1.35rem}.gr-recur-digit-tape span{display:grid;place-items:center;width:32px;height:38px;border-radius:9px;font-size:1.05rem;font-weight:900}.gr-recur-digit-tape .prefix{background:rgba(148,163,184,.2)}.gr-recur-digit-tape .repeat{background:rgba(45,212,191,.25);border:1px solid rgba(153,246,228,.4)}.gr-recur-digit-tape .echo{opacity:.62}.gr-recur-digit-tape em{font-size:1.3rem;color:#99f6e4}.gr-recur-rule-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gr-recur-rule-row span{display:grid;gap:4px;padding:11px;border-radius:13px;border:1px solid rgba(15,23,42,.08);background:#fff}.gr-recur-rule-row small{font-size:.62rem;font-weight:850;color:var(--muted,#64748b)}.gr-recur-rule-row strong{font-size:.9rem}.gr-recur-rule-row .term{background:rgba(34,197,94,.08)}.gr-recur-rule-row .recur{background:rgba(14,165,233,.08)}
.gr-recur-record{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:16px;background:rgba(15,118,110,.06);border:1px solid rgba(15,118,110,.1)}.gr-recur-record>div{display:grid;gap:3px;min-width:0}.gr-recur-record strong{font-size:.88rem;overflow-wrap:anywhere}.gr-recur-record span{font-size:.76rem;color:var(--muted,#64748b)}.gr-recur-record button{flex:0 0 auto}
.gr-recur-section-head{display:grid;gap:5px}.gr-recur-section-head h4,.gr-recur-independent h4,.gr-recur-exam-banner h4{margin:0;font-size:1.05rem}.gr-recur-section-head p,.gr-recur-independent p,.gr-recur-exam-banner p{margin:0;color:var(--muted,#64748b);font-size:.83rem;line-height:1.5}.gr-recur-entry-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gr-recur-entry-row label,.gr-recur-independent label,.gr-recur-proof-visual label{display:grid;gap:6px;font-size:.74rem;font-weight:800}.gr-recur-entry-row input,.gr-recur-independent input,.gr-recur-proof-visual input{min-height:44px;border:1px solid rgba(15,23,42,.15);border-radius:11px;padding:9px 11px;font-size:1rem;background:#fff;color:inherit}.gr-recur-notation-stage{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:20px;border-radius:18px;background:#07131f;color:#fff}.gr-recur-notation-stage>span{display:grid;gap:5px;text-align:center}.gr-recur-notation-stage small{font-size:.64rem;letter-spacing:.1em;color:#99f6e4;font-weight:850}.gr-recur-notation-stage strong{font-size:clamp(1.3rem,3.6vw,2rem)}.gr-recur-notation-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gr-recur-notation-examples article{display:grid;gap:4px;padding:12px;border-radius:13px;background:rgba(59,130,246,.05);border:1px solid rgba(59,130,246,.1)}.gr-recur-notation-examples b{font-size:1.1rem}.gr-recur-notation-examples span{font-size:.78rem}.gr-recur-notation-examples small{font-size:.68rem;color:var(--muted,#64748b)}
.gr-recur-convert-number{display:grid;gap:4px;padding:15px;text-align:center;border-radius:16px;background:rgba(214,165,74,.1);border:1px solid rgba(214,165,74,.2)}.gr-recur-convert-number strong{font-size:1.55rem}.gr-recur-convert-number span{font-size:.74rem;color:var(--muted,#64748b)}.gr-recur-algebra-stack{display:grid;gap:7px;padding:17px;border-radius:16px;background:#f8fafc;border:1px solid rgba(15,23,42,.08);font-variant-numeric:tabular-nums}.gr-recur-algebra-stack>div{display:grid;grid-template-columns:minmax(90px,.45fr) 30px minmax(0,1fr);align-items:center;gap:7px;font-size:1rem}.gr-recur-algebra-stack>div span:first-child{text-align:right;font-weight:900}.gr-recur-algebra-stack>div b{text-align:center}.gr-recur-algebra-stack>i{height:2px;background:#0f172a}.gr-recur-algebra-stack .subtract{color:#0f766e}.gr-recur-algebra-stack .result{padding-top:5px;font-size:1.08rem}.gr-recur-algebra-stack.compact{padding:12px}.gr-recur-independent{display:grid;gap:9px;padding:15px;border-radius:16px;border:1px solid rgba(214,165,74,.22);background:rgba(214,165,74,.07)}.gr-recur-answer-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.gr-recur-feedback{margin:0;font-size:.78rem;line-height:1.45;color:#8a4b16}.gr-recur-feedback.good{color:#087443;font-weight:800}
.gr-recur-number-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.gr-recur-number-cards article{display:grid;gap:4px;padding:14px;border-radius:15px;border:1px solid rgba(15,23,42,.09);background:#fff}.gr-recur-number-cards small{font-size:.65rem;font-weight:900;color:#0f766e}.gr-recur-number-cards strong{font-size:1.35rem}.gr-recur-number-cards span{font-size:.75rem;color:var(--muted,#64748b)}.gr-recur-choice-block{display:grid;gap:9px}.gr-recur-choice-block h4{margin:0;font-size:.95rem}.gr-recur-choice-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.gr-recur-choice-row button{min-height:46px;border:1px solid rgba(15,23,42,.12);border-radius:11px;background:#fff;font-weight:850;cursor:pointer}.gr-recur-choice-row button.selected{border-color:#0f766e;background:rgba(15,118,110,.08)}
.gr-recur-exam-banner{display:grid;gap:6px;padding:15px;border-radius:16px;background:linear-gradient(135deg,rgba(88,28,135,.08),rgba(15,118,110,.08));border:1px solid rgba(88,28,135,.12)}.gr-recur-proof-visual{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gr-recur-proof-visual article{display:grid;gap:10px;padding:15px;border:1px solid rgba(15,23,42,.1);border-radius:16px;background:#fff}.gr-recur-proof-visual article>span:first-child{width:max-content;padding:4px 8px;border-radius:999px;background:#0f766e;color:#fff;font-size:.68rem;font-weight:900}.gr-recur-proof-visual h4{margin:0}.gr-recur-proof-visual p{margin:0;font-size:.82rem;color:var(--muted,#64748b);line-height:1.5}.gr-recur-link{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:5px;align-items:center;text-align:center;padding:11px;border-radius:12px;background:#07131f;color:#fff;font-weight:850}.gr-recur-nine{padding:11px;border-radius:12px;background:rgba(14,165,233,.07);border:1px solid rgba(14,165,233,.12)}.gr-recur-nine small{font-size:.63rem;letter-spacing:.08em;font-weight:900;color:#0369a1}.gr-recur-nine p{margin-top:4px}.gr-recur-proof-submit{justify-self:start}
@media (max-width:900px){.gr-recur-grid{grid-template-columns:1fr}.gr-recur-teaching{order:2}.gr-recur-tabs{grid-template-columns:repeat(3,1fr)}.gr-recur-proof-visual{grid-template-columns:1fr}}
@media (max-width:620px){.gr-recur-hero{align-items:flex-start;flex-direction:column;padding:17px}.gr-recur-live{white-space:normal}.gr-recur-tabs{grid-template-columns:1fr 1fr}.gr-recur-controls,.gr-recur-entry-row,.gr-recur-rule-row,.gr-recur-notation-examples,.gr-recur-number-cards,.gr-recur-choice-row{grid-template-columns:1fr}.gr-recur-fraction-stage{grid-template-columns:1fr;text-align:center}.gr-recur-arrow{transform:rotate(90deg)}.gr-recur-notation-stage{grid-template-columns:1fr}.gr-recur-notation-stage .gr-recur-arrow{transform:rotate(90deg)}.gr-recur-record{align-items:stretch;flex-direction:column}.gr-recur-record button{width:100%}.gr-recur-answer-line{grid-template-columns:1fr}.gr-recur-algebra-stack>div{grid-template-columns:minmax(70px,.5fr) 22px minmax(0,1fr);font-size:.88rem}.gr-recur-proof-submit{width:100%}.gr-recur-link{grid-template-columns:1fr;gap:3px}}


/* ===== GradeRealm V97.28 — touch activation + navigation scroll hardening ===== */
.virtual-labs-library-view.active{display:block;position:relative;z-index:1;}
.virtual-lab-library-card{position:relative;z-index:2;-webkit-user-select:none;user-select:none;}
.virtual-lab-library-card>*{pointer-events:none;}
#worksheetTopicLabOverlay[data-global-topic-lab="true"]{pointer-events:auto!important;}


/* ===== GradeRealm V97.28 — stabilisation / single scroll ownership =====
   Fixed overlays scroll themselves. Normal learning pages never surrender body
   scrolling to Study Hub, Virtual Labs, Search or Skin Studio. Storm is the only
   feature allowed to own and lock the full viewport. */
html:not(.sigma-storm-live-root),
body:not(.sigma-storm-live){min-height:100%;overflow-y:auto}
body:not(.sigma-storm-live){overflow-x:hidden}
.view.active:not(#timesGameView){touch-action:pan-y}
.study-hub-sheet,.sigma-topic-lab-overlay,.sigma-search-sheet,.sigma-skin-sheet{
  overscroll-behavior:contain;
}
.study-hub-scroll,.sigma-topic-lab-overlay,.sigma-search-body,.sigma-skin-scroll{
  touch-action:pan-y;-webkit-overflow-scrolling:touch;
}
#courseView.active,#worksheetView.active,#testsView.active,#settingsView.active,#dashboardView.active{
  min-height:calc(100dvh - 84px);overflow:visible;
}

/* V97.37 — unambiguous recurring-decimal notation in every learner-facing maths surface. */
.sigma-recurring-notation{display:inline-block;text-decoration:overline;text-decoration-thickness:2px;text-decoration-skip-ink:none;text-decoration-color:currentColor;line-height:1.15;padding-top:.02em}


/* ============================================================
   GradeRealm V97.40 — full brand lockup + safe bottom scroll clearance
   Visual language locked to the approved V2.5 home reference.
   ============================================================ */
.gr-legacy-dashboard-hidden{display:none!important}
body.gr-v2-surface-active{background:#f5f7fb!important}
body.gr-v2-surface-active #appShell>header.topbar,
body.gr-v2-surface-active #appShell>nav.bottom-nav{display:none!important}
body.gr-v2-surface-active #appShell>main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body.gr-v2-surface-active .gr-v2-view.active{animation:none!important}
.gr-v2-view{--gr-navy:#122746;--gr-muted:#6e7a90;--gr-teal:#15b8a6;--gr-teal2:#32d3c1;--gr-line:#e5eaf1;--gr-canvas:#f5f7fb;--gr-card:#fff;--gr-shadow:0 12px 28px rgba(24,41,67,.08);color:var(--gr-navy);background:radial-gradient(circle at 78% 8%,rgba(255,232,196,.34),transparent 22%),linear-gradient(180deg,#f8fbff 0,#f4f7fc 100%);min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.gr-v2-page{min-height:100vh;padding-bottom:calc(116px + env(safe-area-inset-bottom));box-sizing:border-box;scroll-padding-bottom:calc(116px + env(safe-area-inset-bottom))}.gr-v2-view button{font:inherit;cursor:pointer}.gr-v2-view h1,.gr-v2-view h2,.gr-v2-view p{font-family:inherit}
.gr-v2-topbar{height:78px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--gr-line);display:flex;align-items:center;gap:18px;padding:0 clamp(18px,3vw,34px);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}
.gr-v2-brand{display:flex;align-items:center;gap:12px;flex:0 0 auto;min-width:0}.gr-v2-brand-mark{width:56px;height:40px;border-radius:12px;display:grid;place-items:center;overflow:hidden;background:transparent;flex:0 0 auto}.gr-v2-brand-mark img{width:196px;height:52px;max-width:none;object-fit:none;object-position:left center;display:block}.gr-v2-brand-name{font-size:20px;line-height:1;font-weight:900;letter-spacing:-.02em;color:#122746;white-space:nowrap}.gr-v2-side-brand{display:flex;align-items:center;gap:12px;min-height:42px;margin:0 auto 25px;width:100%}.gr-v2-brand-mark-side{width:52px;height:38px;border-radius:11px}.gr-v2-side-brand-name{font-size:28px;line-height:1;font-weight:900;letter-spacing:-.03em;color:#fff;white-space:nowrap}.gr-v2-search{flex:1;display:flex;align-items:center;gap:10px;min-width:0;max-width:470px;background:#f1f4f8;border:1px solid #e4e9f0;border-radius:18px;padding:0 16px;height:50px;color:#59677e;text-align:left}.gr-v2-search>span:first-child{font-size:25px;line-height:1}.gr-v2-search>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}
.gr-v2-streak{height:48px;min-width:98px;padding:0 13px;border-radius:999px;border:1px solid #e6e9ef;background:white;font-size:15px;font-weight:850;color:#17243b;display:flex;align-items:center;justify-content:center;gap:6px}.gr-v2-streak small{font-size:10px;color:#6d7c92;font-weight:700}.gr-v2-avatar{width:46px;height:46px;border-radius:50%;border:0;background:linear-gradient(145deg,#f6b65b,#d78131);box-shadow:0 0 0 3px white,0 0 0 4px #dfe5ec;color:white;font-weight:900;font-size:18px;flex:0 0 auto}
.gr-v2-content{width:min(930px,calc(100% - 40px));margin:0 auto;padding:22px 0 calc(182px + env(safe-area-inset-bottom))}.gr-v2-intro{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;margin-bottom:18px}.gr-v2-eyebrow{font-size:13px;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;font-weight:900;color:#62748f}.gr-v2-intro h1{font-size:40px;line-height:1.05;letter-spacing:-.035em;margin:8px 0 6px;color:#122746}.gr-v2-intro p{font-size:20px;color:#718097;margin:0}.gr-v2-xp{background:white;border:1px solid rgba(228,233,240,.9);box-shadow:var(--gr-shadow);border-radius:18px;min-width:170px;padding:12px 16px;display:flex;gap:10px;align-items:center;color:#122746}.gr-v2-xp>span:first-child{font-size:26px}.gr-v2-xp b{display:block;font-size:18px}.gr-v2-xp small{display:block;color:#718097;font-size:13px;margin-top:1px}.gr-v2-xp em{font-style:normal;margin-left:auto;color:#526783;font-weight:900}
.gr-v2-hero{position:relative;display:block;width:100%;height:370px;border:0;border-radius:22px;overflow:hidden;box-shadow:0 16px 32px rgba(20,45,72,.12);background:#0b2f4e url('assets/ui-v2/approved-mountain-hero.png') center/cover no-repeat;text-align:left;padding:0;color:white}.gr-v2-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#052f4c 0%,#052f4c 48%,rgba(5,47,76,.96) 52%,rgba(5,47,76,.52) 66%,rgba(5,47,76,0) 82%)}.gr-v2-hero-copy{position:absolute;z-index:2;left:34px;top:40px;width:min(47%,430px);display:block}.gr-v2-hero-copy small{display:block;color:#34dec9;letter-spacing:.14em;font-weight:900;font-size:18px}.gr-v2-hero-copy strong{display:block;font-size:54px;line-height:1;margin-top:18px;letter-spacing:-.035em;color:#fff}.gr-v2-hero-copy>span{display:block;font-size:27px;font-weight:800;margin-top:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gr-v2-hero-copy i{display:block;width:100%;height:18px;background:rgba(207,228,238,.35);border-radius:999px;margin-top:26px;overflow:hidden}.gr-v2-hero-copy i b{display:block;width:0;height:100%;background:linear-gradient(90deg,#22d7c5,#5ce8d3);border-radius:inherit;transition:width .35s ease}.gr-v2-hero-copy em{display:block;font-style:normal;font-size:17px;margin-top:10px}.gr-v2-hero-copy u{display:flex;align-items:center;justify-content:center;gap:14px;width:295px;max-width:100%;height:68px;margin-top:24px;border-radius:24px;text-decoration:none;background:linear-gradient(90deg,#5aefd7,#20dbc2);color:#082a42;font-size:21px;font-weight:900}.gr-v2-hero-copy u span{font-size:22px}
.gr-v2-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.gr-v2-card{background:#fff;border:1px solid rgba(227,232,239,.95);border-radius:22px;box-shadow:var(--gr-shadow)}.gr-v2-mini{min-height:150px;padding:22px 26px}.gr-v2-mini h2,.gr-v2-recommend h2,.gr-v2-achievements h2{font-size:21px;margin:0;color:#122746}.gr-v2-card-title{display:flex;justify-content:space-between;align-items:center}.gr-v2-mini>p{font-size:17px;color:#7b879a;margin:12px 0 0}.gr-v2-goal-circle{width:34px;height:34px;border:2px solid #8da3c0;border-radius:50%;display:grid;place-items:center}.gr-v2-goal-circle.done{border-color:#18b7a4;background:#e9fbf8}.gr-v2-goal-circle.done:after{content:'✓';color:#10a894;font-weight:900}.gr-v2-goal-bars{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:20px}.gr-v2-goal-bars span{height:11px;border-radius:999px;background:#e7ebf1}.gr-v2-goal-bars span.on{background:linear-gradient(90deg,#18b7a4,#2fd0be)}
.gr-v2-progress-body{display:flex;align-items:center;gap:18px;margin-top:10px}.gr-v2-ring{--gr-pct:0%;width:92px;height:92px;border-radius:50%;background:conic-gradient(var(--gr-teal) 0 var(--gr-pct),#e9eef3 var(--gr-pct) 100%);display:grid;place-items:center;position:relative;flex:0 0 auto}.gr-v2-ring:before{content:'';width:66px;height:66px;border-radius:50%;background:white}.gr-v2-ring span{position:absolute;font-weight:900;font-size:18px}.gr-v2-progress-body>div:last-child>b{font-size:18px}.gr-v2-progress-body p{color:#16b7a4;font-size:15px;margin:4px 0 0}
.gr-v2-recommend{margin-top:16px;padding:22px 28px}.gr-v2-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.gr-v2-section-head p{color:#718097;font-size:14px;margin:3px 0 0}.gr-v2-section-head button{border:0;background:transparent;color:#6c3cc7;text-decoration:underline;font-size:15px;font-weight:800;white-space:nowrap}.gr-v2-rec{display:grid;grid-template-columns:54px 1fr auto auto;align-items:center;gap:14px;padding:15px 0;border-top:1px solid #edf1f4}.gr-v2-rec:first-of-type{margin-top:12px}.gr-v2-rec-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:24px;background:#fff1c6;color:#163a68}.gr-v2-rec-icon.alt{background:#ffdcd5;font-weight:850}.gr-v2-rec b{display:block;font-size:17px}.gr-v2-rec small{display:block;color:#78869a;font-size:14px;margin-top:2px}.gr-v2-rec em{font-style:normal;padding:8px 15px;border-radius:999px;background:#fff6df;color:#e98208;font-weight:850;font-size:13px}.gr-v2-rec>button{border:0;border-radius:14px;background:#eef3f8;color:#20314c;font-weight:850;padding:11px 18px}
.gr-v2-achievements{margin-top:16px;margin-bottom:16px;padding:20px 28px 30px}.gr-v2-achievement-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:18px}.gr-v2-achievement{text-align:center;min-width:0}.gr-v2-achievement>span{height:62px;display:grid;place-items:center;margin-bottom:8px;font-size:40px;font-weight:900}.gr-v2-achievement b{display:block;font-size:14px;line-height:1.2}.gr-v2-achievement small{color:#78869a;font-size:12px}.gr-v2-bottom{position:fixed;left:0;right:0;bottom:0;z-index:30;height:74px;background:rgba(255,255,255,.97);border-top:1px solid #e5e9ef;display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom);backdrop-filter:blur(12px)}.gr-v2-bottom button{border:0;background:transparent;color:#5e7190;font-size:13px;font-weight:700;display:grid;place-items:center;align-content:center;gap:3px}.gr-v2-bottom button span{font-size:26px;line-height:1}.gr-v2-bottom button.active{color:#13b9a5}.gr-v2-side{display:none}

/* Study Hub V2 */
.gr-v2-study-content{width:min(1080px,calc(100% - 40px));margin:0 auto;padding:34px 0 calc(182px + env(safe-area-inset-bottom))}.gr-v2-study-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.gr-v2-study-heading h1{font-size:40px;line-height:1.05;margin:7px 0 7px;letter-spacing:-.035em;color:#122746}.gr-v2-study-heading p{margin:0;color:#718097;font-size:17px}.gr-v2-course-pill{background:#fff;border:1px solid #dfe6ef;border-radius:12px;padding:11px 14px;font-weight:800;font-size:14px;box-shadow:0 5px 15px rgba(30,47,72,.05)}.gr-v2-module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.gr-v2-module-card{border:1px solid #e2e8f0;background:#fff;border-radius:18px;min-height:250px;padding:18px;box-shadow:0 10px 24px rgba(24,41,67,.06);display:flex;flex-direction:column;text-align:left;color:#122746}.gr-v2-module-card small{font-weight:850;color:#6b7890;font-size:12px}.gr-v2-module-card h2{font-size:20px;line-height:1.05;margin:5px 0 12px;min-height:43px}.gr-v2-module-ring{--mod-pct:0%;width:68px;height:68px;margin:4px auto 12px;border-radius:50%;background:conic-gradient(#17b8a6 0 var(--mod-pct),#e8edf2 var(--mod-pct) 100%);display:grid;place-items:center;position:relative}.gr-v2-module-ring:before{content:'';width:49px;height:49px;border-radius:50%;background:#fff}.gr-v2-module-ring b{position:absolute;font-size:14px}.gr-v2-module-card p{font-size:13px;line-height:1.35;color:#687790;margin:0 0 14px;flex:1}.gr-v2-module-card>span:last-child{display:block;text-align:center;border-radius:12px;background:#eaf1f7;color:#243a59;font-weight:850;padding:10px 12px}.gr-v2-module-card.has-progress>span:last-child{background:linear-gradient(90deg,#15b8a6,#21c5b3);color:#fff}.gr-v2-module-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(24,41,67,.10)}.gr-v2-study-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.gr-v2-study-tools button{border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:16px;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;text-align:left;color:#122746;box-shadow:0 8px 20px rgba(24,41,67,.05)}.gr-v2-study-tools button>span{font-size:27px}.gr-v2-study-tools b{display:block;font-size:15px}.gr-v2-study-tools small{display:block;color:#728098;font-size:12px;margin-top:3px}.gr-v2-study-tools em{font-style:normal;font-size:22px;color:#76859b}

@media(min-width:1025px){body.gr-v2-surface-active .gr-v2-page{padding-left:210px}.gr-v2-side{display:flex;position:fixed;left:0;top:0;bottom:0;width:210px;background:linear-gradient(180deg,#102d4d,#122f50);color:white;z-index:40;flex-direction:column;padding:22px 16px}.gr-v2-side-brand{justify-content:flex-start}.gr-v2-side-brand .gr-v2-brand-mark img{filter:none;opacity:1}.gr-v2-side nav{display:flex;flex-direction:column;gap:5px}.gr-v2-side button{border:0;background:transparent;color:#dbe8f5;text-align:left;padding:12px 14px;border-radius:12px;font-weight:750;display:flex;gap:11px;align-items:center}.gr-v2-side button span{font-size:18px;width:22px;text-align:center}.gr-v2-side button.active{background:#224d76;color:#fff}.gr-v2-bottom{display:none}.gr-v2-content{padding-bottom:40px}.gr-v2-study-content{padding-bottom:48px}}
@media(max-width:900px){.gr-v2-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gr-v2-study-tools{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.gr-v2-topbar{height:72px;gap:10px;padding:0 14px}.gr-v2-brand{gap:10px}.gr-v2-brand-mark{width:50px;height:36px}.gr-v2-brand-mark img{transform:scale(.94);transform-origin:left center}.gr-v2-brand-name{font-size:18px}.gr-v2-search{height:46px;padding:0 12px}.gr-v2-search>span:last-child{font-size:15px}.gr-v2-search>span:first-child{font-size:21px}.gr-v2-streak{min-width:74px;height:44px;padding:0 10px}.gr-v2-streak small{display:none}.gr-v2-avatar{width:40px;height:40px}.gr-v2-content{width:min(100% - 28px,930px);padding-top:18px;padding-bottom:calc(204px + env(safe-area-inset-bottom))}.gr-v2-intro h1{font-size:34px}.gr-v2-intro p{font-size:17px}.gr-v2-xp{min-width:145px;padding:10px 12px}.gr-v2-xp b{font-size:16px}.gr-v2-xp small{font-size:12px}.gr-v2-hero{height:330px}.gr-v2-hero-copy{left:26px;top:34px;width:54%}.gr-v2-hero-copy strong{font-size:44px}.gr-v2-hero-copy>span{font-size:22px}.gr-v2-hero-copy small{font-size:15px}.gr-v2-hero-copy u{height:60px;width:250px;font-size:19px}.gr-v2-mini{padding:18px 20px;min-height:140px}.gr-v2-ring{width:78px;height:78px}.gr-v2-ring:before{width:56px;height:56px}.gr-v2-recommend{padding:18px 20px}.gr-v2-rec{grid-template-columns:46px 1fr auto auto;gap:10px}.gr-v2-rec-icon{width:42px;height:42px}.gr-v2-achievements{padding:18px 20px}.gr-v2-achievement-grid{gap:8px}.gr-v2-achievement>span{height:52px;font-size:34px}.gr-v2-achievement b{font-size:12px}.gr-v2-achievement small{font-size:11px}.gr-v2-study-content{width:min(100% - 28px,1080px);padding-top:24px;padding-bottom:calc(204px + env(safe-area-inset-bottom))}.gr-v2-study-heading h1{font-size:34px}}
@media(max-width:610px){.gr-v2-topbar{flex-wrap:wrap;height:auto;min-height:104px;padding-top:8px;padding-bottom:8px}.gr-v2-page{padding-bottom:calc(132px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(132px + env(safe-area-inset-bottom))}.gr-v2-brand{min-width:0;max-width:calc(100% - 120px)}.gr-v2-brand-mark{width:48px;height:34px}.gr-v2-brand-name{font-size:17px}.gr-v2-search{order:2;flex-basis:100%;max-width:none}.gr-v2-streak{margin-left:auto}.gr-v2-intro{grid-template-columns:1fr}.gr-v2-xp{display:none}.gr-v2-intro h1{font-size:31px}.gr-v2-hero{height:310px;background-position:62% center}.gr-v2-hero-shade{background:linear-gradient(90deg,#052f4c 0%,#052f4c 58%,rgba(5,47,76,.82) 72%,rgba(5,47,76,.12) 100%)}.gr-v2-hero-copy{left:20px;top:28px;width:62%}.gr-v2-hero-copy strong{font-size:37px}.gr-v2-hero-copy>span{font-size:19px}.gr-v2-hero-copy i{margin-top:20px;height:14px}.gr-v2-hero-copy u{height:54px;width:210px;margin-top:20px;font-size:17px}.gr-v2-pair{grid-template-columns:1fr}.gr-v2-rec{grid-template-columns:44px 1fr auto}.gr-v2-rec em{display:none}.gr-v2-achievement-grid{grid-template-columns:repeat(3,1fr)}.gr-v2-achievement:nth-child(4),.gr-v2-achievement:nth-child(5){display:none}.gr-v2-study-heading{align-items:flex-start}.gr-v2-study-heading .gr-v2-course-pill{font-size:11px;padding:9px 10px}.gr-v2-module-grid{grid-template-columns:1fr 1fr;gap:10px}.gr-v2-module-card{min-height:225px;padding:14px}.gr-v2-module-card h2{font-size:17px}.gr-v2-module-card p{font-size:12px}.gr-v2-study-tools{grid-template-columns:1fr 1fr;gap:10px}.gr-v2-study-tools button{grid-template-columns:34px 1fr;padding:13px}.gr-v2-study-tools button em{display:none}.gr-v2-content,.gr-v2-study-content{padding-bottom:calc(220px + env(safe-area-inset-bottom))}}
@media(max-width:430px){.gr-v2-brand{gap:8px}.gr-v2-brand-mark{width:44px;height:32px}.gr-v2-brand-name{font-size:16px}.gr-v2-module-grid{grid-template-columns:1fr}.gr-v2-module-card{min-height:205px}.gr-v2-module-ring{margin:2px auto 9px}.gr-v2-study-tools{grid-template-columns:1fr}.gr-v2-hero{height:295px}.gr-v2-hero-copy{width:70%}.gr-v2-hero-copy strong{font-size:34px}.gr-v2-page{padding-bottom:calc(146px + env(safe-area-inset-bottom));scroll-padding-bottom:calc(146px + env(safe-area-inset-bottom))}.gr-v2-content,.gr-v2-study-content{padding-bottom:calc(236px + env(safe-area-inset-bottom))}}
/* Immediate shell handoff while the JS observer updates body classes. */
body:has(#dashboardView.active) #appShell>header.topbar,
body:has(#dashboardView.active) #appShell>nav.bottom-nav,
body:has(#studyHubView.active) #appShell>header.topbar,
body:has(#studyHubView.active) #appShell>nav.bottom-nav,
body:has(#gamesHubView.active) #appShell>header.topbar,
body:has(#gamesHubView.active) #appShell>nav.bottom-nav{display:none!important}
body:has(#dashboardView.active) #appShell>main,
body:has(#studyHubView.active) #appShell>main,
body:has(#gamesHubView.active) #appShell>main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}


/* ======================================================================
   V97.43 • GradeRealm Module Page Upgrade
   The World remains the Study landing screen. These rules apply only after
   a city/module is opened, creating a clean bridge into learning.
   ====================================================================== */
.gr-module-v2{padding:4px 0 max(56px,env(safe-area-inset-bottom))}
.gr-module-v2-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 12px;padding:9px 13px;border:1px solid #dce6ef;border-radius:12px;background:#fff;color:#35516f;box-shadow:0 5px 14px rgba(19,47,76,.05)}
.gr-module-v2-hero{padding:24px 26px 20px;border-radius:28px;box-shadow:0 14px 34px rgba(17,54,86,.08);border:1px solid color-mix(in srgb,var(--accent) 20%,#dfe8f0)}
.gr-module-v2-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.gr-module-v2-identity{display:flex;align-items:center;gap:18px;min-width:0}.gr-module-v2-icon{width:74px;height:74px;border-radius:23px;flex:0 0 auto}.gr-module-v2-icon svg{width:42px;height:42px}.gr-module-v2-copy h2{font-size:clamp(2rem,5vw,3rem);letter-spacing:-.045em;margin:4px 0 5px}.gr-module-v2-copy p{font-size:.95rem;max-width:620px}
.gr-module-v2-progress-panel{display:flex;align-items:center;gap:15px;min-width:225px}.gr-module-v2-ring{--module-pct:0%;width:94px;height:94px;border-radius:50%;background:conic-gradient(var(--accent) 0 var(--module-pct),#e8eef3 var(--module-pct) 100%);display:grid;place-items:center;position:relative;flex:0 0 auto}.gr-module-v2-ring:before{content:"";position:absolute;width:68px;height:68px;border-radius:50%;background:#fff}.gr-module-v2-ring span{position:relative;z-index:1;font-size:1.25rem;font-weight:950;color:var(--accent)}.gr-module-v2-progress-copy{display:flex;flex-direction:column}.gr-module-v2-progress-copy small{font-size:.58rem;letter-spacing:.12em;font-weight:900;color:#7a8ba0}.gr-module-v2-progress-copy strong{font-size:1rem;color:var(--accent);margin:3px 0}.gr-module-v2-progress-copy span{font-size:.74rem;color:#66798d;font-weight:750}
.gr-module-v2-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:17px;padding-top:17px;border-top:1px solid color-mix(in srgb,var(--accent) 12%,#e8edf2)}.gr-module-v2-stats>div{padding:10px 12px;border-radius:14px;background:color-mix(in srgb,var(--accent) 4%,#f7fafc)}.gr-module-v2-stats strong{display:block;font-size:1.12rem;color:#17324f}.gr-module-v2-stats span{display:block;margin-top:2px;font-size:.67rem;color:#74859a;font-weight:800}
.gr-module-v2-next{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:18px 0 12px;padding:20px 22px;border:1px solid #dfe7ef;border-radius:22px;background:linear-gradient(135deg,#fff,#f6fbff);box-shadow:0 10px 26px rgba(17,54,86,.06)}.gr-module-v2-next-copy>span{display:block;font-size:.62rem;letter-spacing:.14em;color:#5d7390;font-weight:950}.gr-module-v2-next h3{margin:4px 0 4px;font-size:1.35rem;letter-spacing:-.02em}.gr-module-v2-next p{margin:0;color:#718197;font-size:.82rem}.gr-module-v2-continue{min-width:180px;min-height:58px;border:0;border-radius:18px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 78%,#54e8d4),var(--accent));color:#fff;font-weight:900;display:flex;align-items:center;justify-content:center;gap:11px;box-shadow:0 9px 20px color-mix(in srgb,var(--accent) 20%,transparent)}.gr-module-v2-continue span{font-size:1rem}.gr-module-v2-continue b{font-size:1rem}
.gr-module-v2-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 20px}.gr-module-v2-actions button{min-width:0;border:1px solid #e0e7ef;background:#fff;border-radius:18px;padding:15px 16px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;color:#17324f;box-shadow:0 7px 18px rgba(17,54,86,.05)}.gr-module-v2-actions button>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 8%,#f2f7fb);color:var(--accent);font-size:1.25rem;font-weight:900}.gr-module-v2-actions strong{display:block;font-size:.9rem}.gr-module-v2-actions small{display:block;color:#738398;font-size:.68rem;margin-top:2px;line-height:1.25}.gr-module-v2-actions em{font-style:normal;font-size:1.25rem;color:#8797aa}.gr-module-v2-actions button:hover{border-color:color-mix(in srgb,var(--accent) 35%,#dce5ed);transform:translateY(-1px)}
.gr-module-v2-topic-head{position:sticky;top:0;z-index:7;padding:13px 0 11px;margin-bottom:10px}.gr-module-v2-topic-head>div:first-child{min-width:0}.gr-module-v2-topic-note{margin:4px 0 0;color:#7a899c;font-size:.73rem;max-width:650px}.gr-module-v2 .filters{display:flex;gap:8px}.gr-module-v2 .filters input,.gr-module-v2 .filters select{min-height:42px;border-radius:12px}
.gr-module-v2 .v19-course-module{border-radius:22px;box-shadow:0 10px 28px rgba(17,54,86,.05);overflow:hidden}.gr-module-v2 .journey-topic{grid-template-columns:46px minmax(0,1fr) auto auto;min-height:80px;padding:13px 16px}.gr-module-v2 .journey-topic.current-topic{background:color-mix(in srgb,var(--accent) 5%,#fff)}.gr-module-v2 .journey-topic-copy .topic-title{font-size:.94rem}.gr-module-v2 .journey-topic-copy .topic-sub{font-size:.7rem;line-height:1.35}.gr-module-v2 .status-badge{font-size:.65rem}.gr-module-v2 .topic-open{min-width:82px}
html[data-theme="dark"] .gr-module-v2-back,html[data-theme="dark"] .gr-module-v2-next,html[data-theme="dark"] .gr-module-v2-actions button{background:#0d1c2e;border-color:#29445f;color:#eef5fb}html[data-theme="dark"] .gr-module-v2-ring:before{background:#0d1c2e}html[data-theme="dark"] .gr-module-v2-stats>div{background:#11263a}html[data-theme="dark"] .gr-module-v2-stats strong{color:#eef5fb}html[data-theme="dark"] .gr-module-v2-next p,html[data-theme="dark"] .gr-module-v2-actions small{color:#a9bbcc}
@media(max-width:760px){.gr-module-v2{padding-bottom:calc(118px + env(safe-area-inset-bottom))}.gr-module-v2-hero{padding:18px}.gr-module-v2-hero-grid{grid-template-columns:1fr;gap:16px}.gr-module-v2-progress-panel{justify-content:flex-start}.gr-module-v2-stats{grid-template-columns:repeat(2,1fr)}.gr-module-v2-next{grid-template-columns:1fr}.gr-module-v2-continue{width:100%;min-width:0}.gr-module-v2-actions{grid-template-columns:1fr}.gr-module-v2-topic-head{position:static;align-items:stretch;flex-direction:column}.gr-module-v2 .filters{width:100%;display:grid;grid-template-columns:1fr 1fr}.gr-module-v2 .journey-topic{grid-template-columns:42px minmax(0,1fr) auto}.gr-module-v2 .journey-topic .status-badge{display:none}.gr-module-v2 .topic-open{min-width:72px}.gr-module-v2-copy h2{font-size:2.1rem}}
@media(max-width:480px){.gr-module-v2-identity{align-items:flex-start}.gr-module-v2-icon{width:60px;height:60px;border-radius:19px}.gr-module-v2-icon svg{width:34px;height:34px}.gr-module-v2-progress-panel{min-width:0}.gr-module-v2-ring{width:82px;height:82px}.gr-module-v2-ring:before{width:58px;height:58px}.gr-module-v2 .filters{grid-template-columns:1fr}.gr-module-v2 .journey-topic{grid-template-columns:38px minmax(0,1fr);padding:12px}.gr-module-v2 .journey-topic .topic-open{grid-column:2;width:100%;margin-top:4px}.gr-module-v2 .journey-node{align-self:start}.gr-module-v2-topic-note{display:none}}


/* ======================================================================
   V97.46 • Premium Results & Review + Premium Worksheet Experience + GradeRealm Topic Learning + Module Mastery clarity
   Pure presentation overrides. Existing worksheet/marking/adaptive logic stays intact.
   ====================================================================== */
#topicDialog:not(.worksheet-help-mode){
  --gr44-navy:#122746;--gr44-teal:#15b8a6;--gr44-teal2:#32d3c1;
  width:min(800px,calc(100% - 20px));
  border-radius:28px;
  background:linear-gradient(180deg,#ffffff,#f7fafc);
}
#topicDialog:not(.worksheet-help-mode)::backdrop{background:rgba(10,31,52,.46);backdrop-filter:blur(7px)}
#topicDialog:not(.worksheet-help-mode) .dialog-shell{
  background:radial-gradient(520px 190px at 88% -5%,rgba(21,184,166,.10),transparent 64%),linear-gradient(180deg,#fff,#f7fafc);
  padding:18px 20px 25px;
}
#topicDialog:not(.worksheet-help-mode) .topic-dialog-nav{border-color:#e1e8ef;background:rgba(255,255,255,.94)}
#topicDialog:not(.worksheet-help-mode) .topic-dialog-nav .dialog-back.back-to-worksheet{
  border-color:rgba(21,184,166,.25);background:linear-gradient(135deg,#143453,#0e6d78);color:#fff;
}
#topicDialog:not(.worksheet-help-mode) .dialog-module{color:#138f83;letter-spacing:.16em}
#topicDialog:not(.worksheet-help-mode) .sigma-launch-title-block::before{background:linear-gradient(180deg,#42dcc9,#15b8a6 50%,#143453);box-shadow:0 0 14px rgba(21,184,166,.22)}
#topicDialog:not(.worksheet-help-mode) .dialog-title{color:var(--gr44-navy)}
.sigma-title-module-dot{background:linear-gradient(145deg,#3cddc9,#15b8a6);box-shadow:0 0 0 4px rgba(21,184,166,.10)}
.sigma-launch-kicker{border-color:rgba(21,184,166,.18);background:linear-gradient(180deg,#effcf9,#e6f8f5);color:#0d8d80}
.sigma-review-intelligence span{color:#15a997}
.sigma-launch-actions .quick-fire-btn{
  border-color:#0da996!important;background:linear-gradient(90deg,#22d9c4,#15b8a6)!important;color:#082f3f!important;
  box-shadow:0 10px 24px rgba(21,184,166,.22),0 1px 0 rgba(255,255,255,.34) inset!important;text-shadow:none!important;
}
.sigma-launch-progress-state::before{background:#15b8a6;box-shadow:0 0 0 3px rgba(21,184,166,.10)}
.sigma-launch-progress .progress-status-option.active{color:#0c8277!important;box-shadow:0 5px 14px rgba(21,120,110,.10),0 0 0 1px rgba(21,184,166,.30),0 1px 0 #fff inset!important}
#saveTopicBtn{border-color:#0d9d8e!important;background:linear-gradient(90deg,#1ccdb9,#15b8a6)!important;color:#082f3f!important;text-shadow:none!important;box-shadow:0 10px 24px rgba(21,184,166,.20),0 1px 0 rgba(255,255,255,.30) inset!important}
.sigma-guided-teaching-toggle{border-color:#cae9e5;background:radial-gradient(240px 90px at 82% 130%,rgba(21,184,166,.11),transparent 70%),linear-gradient(135deg,#f7fcfb,#eefaf8 55%,#fbfefd)}
.sigma-guided-teaching-toggle::before{background:linear-gradient(180deg,#42dcc9,#15b8a6)}
.sigma-guided-teaching-icon{background:linear-gradient(145deg,#143453,#126b76 62%,#15b8a6);font-size:.78rem;letter-spacing:-.03em}
.sigma-guided-teaching-copy small{color:#0d8d80}.sigma-guided-teaching-arrow{color:#0b8b7e}
.gr-module-v2-progress-copy span{max-width:235px;line-height:1.3}
.gr-module-v2-stats>div:first-child{background:color-mix(in srgb,var(--accent) 7%,#f7fafc)}
@media(max-width:650px){
  #topicDialog:not(.worksheet-help-mode){width:calc(100% - 10px);border-radius:22px}
  #topicDialog:not(.worksheet-help-mode) .dialog-shell{padding:10px 10px 18px}
  #topicDialog:not(.worksheet-help-mode) .sigma-launch-title-block{margin-bottom:13px}
  .sigma-launch-actions .btn{min-height:47px!important}
  .gr-module-v2-progress-copy span{max-width:none}
}


/* ============================================================
   GradeRealm V97.46 • Premium worksheet / question experience
   Home, GradeRealm World and Module UI remain frozen.
   ============================================================ */
#worksheetsView{--ws45-navy:#122746;--ws45-teal:#15b8a6;--ws45-teal2:#34d6c3;--ws45-line:#dfe7ee;--ws45-muted:#6e7c91;--ws45-soft:#f5f8fb;padding-bottom:150px}
#worksheetWorkspace.worksheet-clean-workspace{max-width:1040px;margin:24px auto 0;padding-bottom:150px}
.gr-ws45-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px!important;margin:0 0 10px!important;border:1px solid #e0e8ef!important;border-radius:18px!important;background:linear-gradient(135deg,#fff,#f8fbfd)!important;box-shadow:0 8px 24px rgba(19,42,69,.06)!important}
.gr-ws45-head-copy{min-width:0}.gr-ws45-head .eyebrow{color:#159b90!important}.gr-ws45-head h3{font-size:1.22rem!important;color:var(--ws45-navy)!important}.gr-ws45-head .muted{font-size:.72rem!important;color:var(--ws45-muted)!important}
.gr-ws45-save-state{display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:9px 11px;border-radius:14px;background:#effaf8;border:1px solid #d3efea;color:#24445b}.gr-ws45-save-state>span{width:28px;height:28px;border-radius:9px;background:#d7f5ef;color:#0d8b7d;display:grid;place-items:center;font-weight:950}.gr-ws45-save-state strong{display:block;font-size:.7rem}.gr-ws45-save-state small{display:block;margin-top:1px;font-size:.56rem;color:#6d7e91}
.gr-ws45-sessionbar{position:sticky;top:74px;z-index:18;display:grid;grid-template-columns:auto minmax(140px,1fr) auto;align-items:center;gap:16px;margin:0 0 12px;padding:11px 14px;border:1px solid rgba(218,229,238,.96);border-radius:17px;background:rgba(255,255,255,.94);box-shadow:0 10px 28px rgba(19,42,69,.08);backdrop-filter:blur(12px)}
.gr-ws45-session-copy{display:flex;flex-direction:column;min-width:128px}.gr-ws45-session-copy small{font-size:.52rem;font-weight:950;letter-spacing:.14em;color:#6e8198}.gr-ws45-session-copy strong{font-size:.88rem;color:var(--ws45-navy)}.gr-ws45-session-copy span{font-size:.62rem;color:#738297;margin-top:1px}.gr-ws45-session-track{height:8px;border-radius:999px;background:#e7edf2;overflow:hidden}.gr-ws45-session-track span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--ws45-teal),var(--ws45-teal2));transition:width .2s ease}.gr-ws45-next-unanswered{min-height:38px;padding:0 13px;border:1px solid #cfe4e0;border-radius:12px;background:#f1fbf9;color:#087d71;font-weight:900;font-size:.7rem;cursor:pointer}
#worksheetQuestionPaper.gr-ws45-paper{width:min(930px,100%);padding:0!important;margin:0 auto!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
#worksheetQuestionPaper>.paper-header{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
#worksheetQuestionList.question-paper-list{list-style:none;padding:0!important;margin:0;display:grid;gap:16px;counter-reset:none}
#worksheetQuestionList>.gr-ws45-question-card{position:relative;margin:0!important;padding:24px 26px 22px!important;border:1px solid #dfe7ee!important;border-left:1px solid #dfe7ee!important;border-radius:22px!important;background:#fff;box-shadow:0 12px 30px rgba(20,42,67,.07);line-height:1.5;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;scroll-margin-top:150px}
#worksheetQuestionList>.gr-ws45-question-card.is-current{border-color:#9fddd5!important;box-shadow:0 16px 34px rgba(15,97,91,.11),0 0 0 3px rgba(21,184,166,.06)}
.gr-ws45-question-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:15px;margin-bottom:18px;border-bottom:1px solid #edf1f4}.gr-ws45-question-head>div:first-child{display:flex;align-items:center;gap:10px}.gr-ws45-qnum{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#153d61,#0e2f4e);color:#fff;font-weight:950;font-size:.8rem;box-shadow:0 7px 16px rgba(18,48,77,.16)}.gr-ws45-question-head strong{font-size:.82rem;color:#263b54}.gr-ws45-question-badges{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.gr-ws45-question-badges span{padding:6px 9px;border-radius:999px;background:#f1f6f9;border:1px solid #e1e9ef;color:#66778b;font-size:.6rem;font-weight:900;white-space:nowrap}
#worksheetQuestionList .gr-ws45-question-text{font-size:clamp(1.18rem,2.1vw,1.52rem)!important;line-height:1.55!important;font-weight:760!important;letter-spacing:-.01em;color:#17283f;min-height:0;margin:0 0 12px}
#worksheetQuestionList .gr-ws45-question-meta{margin-top:4px!important}.gr-ws45-question-meta .question-topic{margin:0!important;color:#6b7c90!important;font-size:.61rem!important;background:#f4f7fa;padding:6px 9px;border-radius:999px;text-transform:none!important;letter-spacing:.01em!important}
.gr-ws45-answer-deck{margin-top:18px;padding:15px;border-radius:18px;background:linear-gradient(180deg,#f9fcfe,#f3f8fb);border:1px solid #dce8f0}.gr-ws45-answer-deck .student-answer-label{margin-top:0!important}.gr-ws45-answer-deck .student-answer-input{font-size:1.16rem!important;min-height:62px!important}
#worksheetQuestionList .maths-keys{margin-top:6px!important}
.gr-ws45-working{margin-top:12px;border:1px solid #e1e8ee;border-radius:15px;background:#fbfcfe;overflow:hidden}.gr-ws45-working summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;color:#31465d}.gr-ws45-working summary::-webkit-details-marker{display:none}.gr-ws45-working summary>span{font-size:.72rem;font-weight:900}.gr-ws45-working summary>small{font-size:.58rem;color:#7b8999}.gr-ws45-working[open] summary{border-bottom:1px solid #e5ebf0;background:#f7fafc}.gr-ws45-working .worksheet-workings-label{margin:12px 14px 0}.gr-ws45-working .worksheet-workings-input{box-sizing:border-box;width:calc(100% - 28px);margin:6px 14px 14px;min-height:118px;border-radius:12px}
.gr-ws45-question-actions{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:14px;padding-top:14px;border-top:1px solid #edf1f4}.gr-ws45-question-actions button{min-height:42px;border-radius:13px;border:1px solid #dbe5ec;background:#fff;color:#3f5269;font:850 .7rem/1 system-ui,-apple-system,sans-serif;padding:0 14px;cursor:pointer}.gr-ws45-question-actions button:disabled{opacity:.35}.gr-ws45-question-actions .gr-ws45-tutor{justify-self:center;border-color:transparent;background:transparent;color:#477087}.gr-ws45-question-actions .gr-ws45-next{border-color:#a8e4dc;background:linear-gradient(90deg,#19bea9,#33d3bf);color:#082e3d;min-width:132px}
.gr-ws45-correct-answer{display:block;margin-top:8px;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.62);font-weight:850;color:#763e00}.answer-feedback.review .sigma-feedback-explanation{margin-top:8px;padding-top:8px;border-top:1px solid rgba(154,87,0,.14)}
#worksheetQuestionList>.question-correct{border-color:#b9e8d3!important;border-left:1px solid #b9e8d3!important}#worksheetQuestionList>.question-review{border-color:#f2d1a1!important;border-left:1px solid #f2d1a1!important}
#worksheetQuestionList .gr-ws45-graph-host{margin:16px 0 4px;min-height:420px;border-radius:18px;overflow:hidden}
#worksheetWorkspace .worksheet-bottom-hub{margin-top:18px;margin-bottom:80px;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(20,42,67,.07)}
#worksheetWorkspace .worksheet-bottom-actions .worksheet-mark-action{min-height:44px!important;background:linear-gradient(90deg,#15b8a6,#2ed0bc)!important;border-color:transparent!important;color:#082e3d!important}

html[data-theme="dark"] #worksheetQuestionList>.gr-ws45-question-card{background:#0f1e2d;border-color:#2b4358!important;color:#eef5fb}html[data-theme="dark"] #worksheetQuestionList .gr-ws45-question-text{color:#f1f6fb}html[data-theme="dark"] .gr-ws45-sessionbar,html[data-theme="dark"] .gr-ws45-head{background:rgba(12,30,45,.95)!important;border-color:#29465d!important}html[data-theme="dark"] .gr-ws45-head h3,html[data-theme="dark"] .gr-ws45-session-copy strong{color:#eff7fb!important}html[data-theme="dark"] .gr-ws45-answer-deck,html[data-theme="dark"] .gr-ws45-working{background:#0b1926;border-color:#294359}html[data-theme="dark"] .gr-ws45-question-badges span,html[data-theme="dark"] .gr-ws45-question-meta .question-topic{background:#132638;border-color:#294359;color:#a9bccb!important}

@media(max-width:760px){
  #worksheetsView{padding-bottom:190px}#worksheetWorkspace.worksheet-clean-workspace{padding-bottom:190px;margin-top:12px}
  .gr-ws45-head{align-items:flex-start;flex-direction:column;padding:12px!important}.gr-ws45-save-state{width:100%;box-sizing:border-box}
  .gr-ws45-sessionbar{top:58px;grid-template-columns:1fr auto;gap:9px;padding:9px 10px}.gr-ws45-session-track{grid-column:1/-1;grid-row:2}.gr-ws45-next-unanswered{grid-column:2;grid-row:1}.gr-ws45-session-copy{min-width:0}
  #worksheetQuestionList>.gr-ws45-question-card{padding:18px 15px 17px!important;border-radius:18px!important;scroll-margin-top:135px}.gr-ws45-question-head{align-items:flex-start}.gr-ws45-question-head strong{display:none}.gr-ws45-question-badges span{font-size:.56rem;padding:5px 7px}.gr-ws45-qnum{width:34px;height:34px}
  #worksheetQuestionList .gr-ws45-question-text{font-size:1.28rem!important;line-height:1.55!important}
  .gr-ws45-answer-deck{padding:11px;border-radius:15px}.gr-ws45-answer-deck .student-answer-input{min-height:60px!important;font-size:1.12rem!important}
  #worksheetQuestionList .maths-keys-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}#worksheetQuestionList .maths-key{height:44px!important}
  .gr-ws45-working summary{align-items:flex-start;flex-direction:column;gap:2px}.gr-ws45-working .worksheet-workings-input{min-height:132px}
  .gr-ws45-question-actions{grid-template-columns:1fr 1fr}.gr-ws45-question-actions .gr-ws45-tutor{grid-column:1/-1;grid-row:2}.gr-ws45-question-actions button{width:100%;padding-inline:8px}.gr-ws45-question-actions .gr-ws45-next{min-width:0}
  #worksheetQuestionList .gr-ws45-graph-host{min-height:360px}
  #worksheetWorkspace .worksheet-bottom-hub{margin-bottom:120px}
}
@media(max-width:430px){.gr-ws45-session-copy span{font-size:.56rem}.gr-ws45-next-unanswered{font-size:.62rem;padding-inline:9px}#worksheetQuestionList>.gr-ws45-question-card{padding-inline:12px!important}#worksheetQuestionList .gr-ws45-question-text{font-size:1.22rem!important}.gr-ws45-question-badges{gap:4px}.gr-ws45-question-badges span:first-child{display:none}#worksheetQuestionList .maths-keys-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.gr-ws45-working .worksheet-workings-input{width:calc(100% - 20px);margin-inline:10px}}
@media print{.gr-ws45-sessionbar,.gr-ws45-save-state,.gr-ws45-question-actions{display:none!important}#worksheetQuestionPaper>.paper-header{position:static!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important}#worksheetQuestionList{display:block!important}#worksheetQuestionList>.gr-ws45-question-card{box-shadow:none!important;border:0!important;border-bottom:1px solid #bbb!important;border-radius:0!important;padding:12px 0!important}.gr-ws45-answer-deck,.gr-ws45-working{display:none!important}}


/* ============================================================
   V97.46 • GradeRealm Results & Review
   Premium post-worksheet learning loop. Layout only; marking stays unchanged.
   ============================================================ */
#worksheetResultSummary.gr-results46-host,.test-result-summary#worksheetResultSummary{width:min(930px,100%);box-sizing:border-box;margin:18px auto 8px;padding:0;border:0;border-radius:24px;background:transparent;display:block;box-shadow:none;scroll-margin-top:92px}
.gr-results46{--r46-navy:#122746;--r46-teal:#15b8a6;--r46-teal2:#35d6c2;--r46-muted:#6e7f93;--r46-line:#dfe8ef;overflow:hidden;border:1px solid #dce6ed;border-radius:24px;background:linear-gradient(180deg,#fff,#f9fbfd);box-shadow:0 18px 44px rgba(19,42,69,.10);color:var(--r46-navy)}
.gr-results46-hero{display:grid;grid-template-columns:148px 1fr;gap:24px;align-items:center;padding:26px 28px;background:radial-gradient(circle at 90% 0,rgba(52,214,194,.16),transparent 34%),linear-gradient(135deg,#f9fffe,#f5f9fd);border-bottom:1px solid var(--r46-line)}
.gr-results46-score{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--r46-teal) 0 var(--result-pct),#e6edf2 var(--result-pct) 100%);position:relative;box-shadow:0 11px 28px rgba(21,184,166,.16)}
.gr-results46-score:before{content:"";position:absolute;inset:12px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e6edf2}.gr-results46-score>div{position:relative;z-index:1;text-align:center}.gr-results46-score strong{display:block;font-size:1.85rem;line-height:1;color:#102b46}.gr-results46-score small{display:block;margin-top:5px;color:#718296;font-size:.66rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.gr-results46.review .gr-results46-score{background:conic-gradient(#e59b34 0 var(--result-pct),#eceff2 var(--result-pct) 100%)}.gr-results46.building .gr-results46-score{background:conic-gradient(#47a7bc 0 var(--result-pct),#e6edf2 var(--result-pct) 100%)}
.gr-results46-hero-copy .interactive-kicker{color:#0d9b8c}.gr-results46-hero-copy h3{margin:5px 0 7px;font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.025em}.gr-results46-hero-copy p{margin:0;color:var(--r46-muted);font-size:.9rem;line-height:1.55}.gr-results46-rank{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px}.gr-results46-rank>span{font-size:.58rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#7b899a}.gr-results46-rank>strong{padding:7px 10px;border-radius:999px;background:#edf9f7;color:#0c8276;font-size:.7rem}.gr-results46-rank>em{font-style:normal;color:#667a8e;font-size:.66rem;font-weight:850}
.gr-results46-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-bottom:1px solid var(--r46-line);background:#fff}.gr-results46-metrics article{padding:19px 20px;border-right:1px solid #e8eef3}.gr-results46-metrics article:last-child{border-right:0}.gr-results46-metrics span{display:block;color:#7a899a;font-size:.6rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.gr-results46-metrics strong{display:block;margin-top:5px;font-size:1.28rem}.gr-results46-metrics small{display:block;margin-top:3px;color:#75869a;font-size:.63rem;line-height:1.35}.gr-results46-metrics small.up{color:#0b9a87;font-weight:900}.gr-results46-metrics small.down{color:#c25b4d;font-weight:900}
.gr-results46-recovery{margin:18px 20px 0!important}
.gr-results46-next{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 20px 0;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#102d4d,#154668);color:#fff;box-shadow:0 10px 26px rgba(16,45,77,.14)}.gr-results46-next small{display:block;color:#57e0cf;font-size:.55rem;font-weight:1000;letter-spacing:.12em}.gr-results46-next strong{display:block;margin-top:4px;font-size:1rem}.gr-results46-next p{margin:5px 0 0;color:#c9dae6;font-size:.72rem;line-height:1.45}.gr-results46-next button{flex:0 0 auto;min-height:46px;padding:0 17px;border:0;border-radius:14px;background:linear-gradient(90deg,#50e8d3,#24cbb5);color:#082c3e;font:900 .73rem/1 system-ui,-apple-system,sans-serif;cursor:pointer;box-shadow:0 7px 18px rgba(36,203,181,.18)}
.gr-results46-review{margin:18px 20px 0;border:1px solid var(--r46-line);border-radius:18px;background:#fff;overflow:hidden}.gr-results46-review>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;cursor:pointer;list-style:none}.gr-results46-review>summary::-webkit-details-marker{display:none}.gr-results46-review>summary span{display:flex;flex-direction:column}.gr-results46-review>summary b{font-size:.82rem}.gr-results46-review>summary small{margin-top:2px;color:#7d8b9b;font-size:.61rem}.gr-results46-review>summary em{font-style:normal;padding:6px 9px;border-radius:999px;background:#f0f5f8;color:#64778c;font-size:.58rem;font-weight:900}.gr-results46-review[open]>summary{border-bottom:1px solid #e8eef3;background:#fafcfd}.gr-results46-review-list{padding:8px 14px 14px}
.gr-results46-review-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;padding:13px 4px;border-bottom:1px solid #edf1f4}.gr-results46-review-row:last-child{border-bottom:0}.gr-results46-review-num{width:38px;height:38px;border-radius:12px;background:#fff3e3;color:#a25d13;display:grid;place-items:center;font-size:.7rem;font-weight:950}.gr-results46-review-copy strong{display:block;font-size:.76rem}.gr-results46-review-copy>span{display:block;margin-top:3px;color:#66798d;font-size:.65rem}.gr-results46-review-copy p{margin:7px 0 0;padding:7px 9px;border-radius:9px;background:#f7fafc;color:#42596f;font-size:.64rem;line-height:1.45}.gr-results46-review-copy p+p{margin-top:4px}.gr-results46-review-row>button{min-height:34px;padding:0 9px;border:1px solid #d9e5ec;border-radius:10px;background:#fff;color:#4d687d;font-size:.58rem;font-weight:900;cursor:pointer}.gr-results46-perfect{display:flex;align-items:center;gap:11px;padding:15px 7px}.gr-results46-perfect>span{width:36px;height:36px;border-radius:50%;background:#e4f8f4;color:#0b9d8b;display:grid;place-items:center;font-weight:1000}.gr-results46-perfect strong{display:block;font-size:.78rem}.gr-results46-perfect small{display:block;margin-top:2px;color:#7b8999;font-size:.62rem}
.gr-results46-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;padding:18px 20px 22px}.gr-results46-actions button{min-height:40px;padding:0 13px;border:1px solid #dbe6ed;border-radius:12px;background:#fff;color:#425a70;font:850 .66rem/1 system-ui,-apple-system,sans-serif;cursor:pointer}.gr-results46-actions button:first-child{margin-right:auto}
html[data-theme="dark"] .gr-results46{background:linear-gradient(180deg,#0c1b28,#0b1824);border-color:#294356;color:#edf6fb}html[data-theme="dark"] .gr-results46-hero{background:radial-gradient(circle at 90% 0,rgba(52,214,194,.10),transparent 34%),linear-gradient(135deg,#0d2131,#10283b);border-color:#294356}html[data-theme="dark"] .gr-results46-score:before,html[data-theme="dark"] .gr-results46-metrics,html[data-theme="dark"] .gr-results46-review,html[data-theme="dark"] .gr-results46-actions button{background:#0e2130;color:#eef6fa}html[data-theme="dark"] .gr-results46-metrics article,html[data-theme="dark"] .gr-results46-review-row,html[data-theme="dark"] .gr-results46-review[open]>summary{border-color:#294356}html[data-theme="dark"] .gr-results46-review[open]>summary,html[data-theme="dark"] .gr-results46-review-copy p{background:#102638;color:#d3e1e9}
@media(max-width:760px){#worksheetResultSummary{scroll-margin-top:70px}.gr-results46-hero{grid-template-columns:104px 1fr;gap:15px;padding:20px 16px}.gr-results46-score{width:96px;height:96px}.gr-results46-score:before{inset:10px}.gr-results46-score strong{font-size:1.45rem}.gr-results46-metrics{grid-template-columns:1fr 1fr}.gr-results46-metrics article:nth-child(2){border-right:0}.gr-results46-metrics article:nth-child(-n+2){border-bottom:1px solid #e8eef3}.gr-results46-next{align-items:stretch;flex-direction:column;margin-inline:12px;padding:15px}.gr-results46-next button{width:100%}.gr-results46-recovery,.gr-results46-review{margin-inline:12px!important}.gr-results46-review-row{grid-template-columns:38px 1fr}.gr-results46-review-row>button{grid-column:2;justify-self:start}.gr-results46-actions{padding-inline:12px}.gr-results46-actions button:first-child{margin-right:0}}
@media(max-width:470px){.gr-results46-hero{grid-template-columns:1fr;text-align:center}.gr-results46-score{margin:auto}.gr-results46-rank{justify-content:center}.gr-results46-metrics article{padding:15px 12px}.gr-results46-review>summary{align-items:flex-start}.gr-results46-review-row{grid-template-columns:34px 1fr;gap:9px}.gr-results46-review-num{width:32px;height:32px}.gr-results46-actions{display:grid;grid-template-columns:1fr 1fr}.gr-results46-actions button{width:100%}.gr-results46-actions button:first-child{grid-column:1/-1}}
@media print{#worksheetResultSummary{display:none!important}}


/* ============================================================
   V97.48 • GradeRealm Premium Profile + Achievements + Trophy Cabinet
   Presentation layer only. Existing identity, XP, achievement and leaderboard state is preserved.
   ============================================================ */
#profileView.gr-profile48{--p48-navy:#122746;--p48-teal:#15b8a6;--p48-teal2:#35d6c2;--p48-muted:#708196;--p48-line:#dfe7ee;--p48-card:#fff;max-width:1180px;margin:0 auto;padding:4px 0 120px;color:var(--p48-navy)}
.gr-profile48-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin:4px 0 20px}.gr-profile48-head h2{margin:5px 0 6px;font-size:clamp(1.9rem,4vw,2.65rem);letter-spacing:-.035em}.gr-profile48-head .muted{max-width:690px;margin:0;font-size:.94rem;line-height:1.55}.gr-profile48-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
#profileView .gr-profile48-hero{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(300px,.78fr);gap:28px;align-items:center;margin:0 0 14px;padding:28px;border:1px solid #dce7ee;border-radius:26px;background:radial-gradient(circle at 88% 10%,rgba(44,214,192,.16),transparent 30%),linear-gradient(135deg,#fff 0,#f7fbfd 58%,#eef9f7 100%);box-shadow:0 18px 44px rgba(19,42,69,.09)}
.gr-profile48-avatar-block{display:flex;flex-direction:column;align-items:center;gap:10px}.gr-profile48-avatar-label{font-size:.56rem;font-weight:950;letter-spacing:.13em;color:#8492a3}.gr-profile48-copy>span{color:#0d9e90}.gr-profile48-copy h3{font-size:clamp(1.8rem,3vw,2.35rem);letter-spacing:-.035em}.gr-profile48-copy .sigma-frame-track{max-width:410px;height:10px;background:#e2eaef}.gr-profile48-copy .sigma-frame-track i{background:linear-gradient(90deg,#a86f42,#aebdcc 42%,#d9aa31 74%,#22c8b4)}
.gr-profile48-showcase{min-width:0;padding:17px;border:1px solid #dbe6ed;border-radius:20px;background:rgba(255,255,255,.84);box-shadow:0 10px 24px rgba(18,39,68,.06)}.gr-profile48-showcase-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px}.gr-profile48-showcase-head>span{display:flex;flex-direction:column}.gr-profile48-showcase-head small{font-size:.55rem;font-weight:950;letter-spacing:.1em;color:#7c899a}.gr-profile48-showcase-head strong{font-size:1.1rem;margin-top:2px}.gr-profile48-showcase-head em{font-style:normal;font-size:.58rem;font-weight:850;color:#6e7e91;background:#edf3f6;padding:6px 8px;border-radius:999px}.gr-profile48-showcase .sigma-achievement-showcase{min-height:82px}
#profileView .gr-profile48-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 14px}.gr-profile48-stats>div{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:74px;padding:14px 16px;border:1px solid var(--p48-line);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(19,42,69,.05)}.gr-profile48-stat-icon{grid-row:1/3;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#edf9f7;color:#0b9e8e;font-size:1rem;font-weight:950}.gr-profile48-stats strong{font-size:1.18rem;line-height:1}.gr-profile48-stats small{font-size:.62rem;color:#718195;margin-top:3px}
.gr-profile48-progress-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin-bottom:14px}.gr-profile48-completion-card,.gr-profile48-next-card{min-height:174px;display:flex;align-items:center;gap:20px;padding:20px!important}.gr-profile48-ring{--profile-ach-pct:0%;width:116px;height:116px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(var(--p48-teal) 0 var(--profile-ach-pct),#e7edf2 var(--profile-ach-pct) 100%);box-shadow:0 10px 26px rgba(21,184,166,.14)}.gr-profile48-ring:before{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e6edf2}.gr-profile48-ring>div{position:relative;z-index:1;text-align:center}.gr-profile48-ring strong{display:block;font-size:1.5rem}.gr-profile48-ring small{font-size:.58rem;color:#718195;text-transform:uppercase;font-weight:900;letter-spacing:.06em}.gr-profile48-completion-card h3,.gr-profile48-next-card h3{margin:4px 0 6px;font-size:1.1rem}.gr-profile48-completion-card p,.gr-profile48-next-card p{margin:0;color:#697b90;font-size:.76rem;line-height:1.5}.gr-profile48-completion-card button{margin-top:12px;border:0;background:transparent;padding:0;color:#0b9c8c;font-weight:900;font-size:.7rem;cursor:pointer}
.gr-profile48-next-card{background:linear-gradient(135deg,#102d4d,#154b6d)!important;color:#fff!important;border-color:#1b5272!important;box-shadow:0 13px 31px rgba(15,45,76,.17)}.gr-profile48-next-medal{width:104px;min-width:104px;min-height:104px;display:grid;place-items:center}.gr-profile48-next-medal .sigma-premium-medal.next,.gr-profile48-next-medal .sigma-premium-medal.next img{width:92px;height:92px}.gr-profile48-next-copy{min-width:0;flex:1}.gr-profile48-next-copy .interactive-kicker{color:#55e0ce}.gr-profile48-next-copy h3{color:#fff}.gr-profile48-next-copy p{color:#c8d9e6}.gr-profile48-next-track{height:9px;margin:13px 0 7px;border-radius:999px;background:rgba(255,255,255,.16);overflow:hidden}.gr-profile48-next-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4be4d0,#7df1df);transition:width .3s ease}.gr-profile48-next-copy>small{font-size:.62rem;color:#b8ccda}.gr-profile48-complete-mark{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#e8fbf7;color:#0da18f;font-size:2rem;font-weight:1000}
#profileView .gr-profile48-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;margin-bottom:14px}.gr-profile48-achievements,.gr-profile48-leaderboard,.gr-profile48-cabinet{border:1px solid var(--p48-line)!important;border-radius:22px!important;box-shadow:0 11px 28px rgba(19,42,69,.055)}.gr-profile48-achievements{padding:22px!important}.gr-profile48-achievements .sigma-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gr-profile48-achievements .sigma-achievement{min-height:112px}.gr-profile48-leaderboard{padding:22px!important;background:linear-gradient(180deg,#fff,#fbfdfe)}.gr-profile48-cabinet{margin-top:0!important;padding:24px!important}.gr-profile48-cabinet-head{margin-bottom:5px}.gr-profile48-cabinet-head h3{font-size:1.25rem}.gr-profile48-cabinet-head p{margin:5px 0 0;color:#748397;font-size:.74rem;line-height:1.45;max-width:720px}
#profileView .sigma-trophy-category-head{padding-top:5px}.gr-profile48-cabinet .sigma-trophy-medal-card{min-height:185px;justify-content:flex-start}.gr-profile48-cabinet .sigma-trophy-medal-card.featured{border-color:#e4c96d;background:linear-gradient(145deg,#fffef8,#fff8e9)}
#profileView .sigma-achievement-summary{padding:6px 9px;border-radius:999px;background:#edf7f5;color:#0c8f80;font-weight:900;white-space:nowrap}
#profileView .sigma-achievement.earned{border-color:#d9e8d8;background:linear-gradient(145deg,#fff,#f6fcf9)}
#profileView .sigma-achievement.locked{background:linear-gradient(145deg,#fff,#f7f9fb)}
#profileView .sigma-achievement-progress i{background:linear-gradient(90deg,#15b8a6,#57d7c6)}
html[data-theme="dark"] #profileView.gr-profile48{color:#edf6fb}html[data-theme="dark"] #profileView .gr-profile48-hero,html[data-theme="dark"] #profileView .gr-profile48-stats>div,html[data-theme="dark"] #profileView .gr-profile48-completion-card,html[data-theme="dark"] #profileView .gr-profile48-achievements,html[data-theme="dark"] #profileView .gr-profile48-leaderboard,html[data-theme="dark"] #profileView .gr-profile48-cabinet{background:#0e202f;border-color:#294356!important}html[data-theme="dark"] .gr-profile48-ring:before{background:#0e202f;border-color:#294356}html[data-theme="dark"] .gr-profile48-showcase{background:rgba(11,31,46,.8);border-color:#294356}html[data-theme="dark"] #profileView .sigma-achievement-summary{background:#12382f;color:#64e1cf}
@media(max-width:980px){#profileView .gr-profile48-hero{grid-template-columns:auto 1fr}.gr-profile48-showcase{grid-column:1/-1}.gr-profile48-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.gr-profile48-progress-grid,#profileView .gr-profile48-grid{grid-template-columns:1fr}.gr-profile48-achievements .sigma-achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#profileView.gr-profile48{padding-bottom:160px}.gr-profile48-head{flex-direction:column}.gr-profile48-actions{width:100%;justify-content:flex-start}.gr-profile48-actions .btn{flex:1}.gr-profile48-hero{grid-template-columns:1fr!important;text-align:center;padding:20px!important}.gr-profile48-avatar-block{margin:auto}.gr-profile48-copy .sigma-frame-track{margin-inline:auto}.gr-profile48-showcase{grid-column:auto}.gr-profile48-showcase-head{text-align:left}.gr-profile48-stats{grid-template-columns:1fr 1fr!important}.gr-profile48-stats>div{min-height:66px;padding:12px}.gr-profile48-progress-grid{grid-template-columns:1fr}.gr-profile48-completion-card,.gr-profile48-next-card{min-height:0}.gr-profile48-achievements .sigma-achievement-grid{grid-template-columns:1fr}.gr-profile48-cabinet{padding:18px!important}.gr-profile48-cabinet .sigma-trophy-category-grid{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.gr-profile48-stats{grid-template-columns:1fr!important}.gr-profile48-completion-card,.gr-profile48-next-card{align-items:flex-start;flex-direction:column}.gr-profile48-ring{width:100px;height:100px}.gr-profile48-next-medal{width:84px;min-width:84px;min-height:84px}.gr-profile48-next-medal .sigma-premium-medal.next,.gr-profile48-next-medal .sigma-premium-medal.next img{width:78px;height:78px}.gr-profile48-cabinet .sigma-trophy-category-grid{grid-template-columns:1fr}.gr-profile48-actions .btn{flex-basis:100%}}


/* ============================================================
   GradeRealm V97.49 — cleaner profile + premium Tests / Exam Mode
   ============================================================ */
/* Remove duplicate profile surfaces: the trophy cabinet already contains the
   lifetime achievement collection, and Leaderboard has its own dedicated page. */
#profileView .gr49-profile-duplicate{display:none!important}
#profileView .gr-profile48-grid{display:block!important;margin:0!important}
#profileView .gr-profile48-cabinet{margin-top:14px!important}
#profileView .gr-profile48-cabinet-head{align-items:flex-start}

/* Assessment centre: reduce repeated marketing copy and prioritise decisions. */
#testsView{--gr49-navy:#102c4b;--gr49-teal:#15b8a6;--gr49-line:#dce6ee;--gr49-soft:#f5f8fb}
#testsView .sigma-test-section-head{margin-bottom:14px}
#testsView .gr49-assessment-badge{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:10px 14px;border:1px solid var(--gr49-line);border-radius:14px;background:#fff;box-shadow:0 6px 18px rgba(18,39,68,.05)}
#testsView .gr49-assessment-badge strong{font-size:.8rem;color:var(--gr49-navy)}
#testsView .gr49-assessment-badge span{margin-top:2px;font-size:.62rem;color:#718195;font-weight:750}
#testsView .sigma-test-lab-hero{grid-template-columns:minmax(0,.92fr) minmax(360px,1.08fr);gap:18px;padding:22px;border-radius:24px}
#testsView .sigma-test-lab-hero h3{font-size:clamp(1.45rem,2.6vw,2rem);max-width:670px}
#testsView .sigma-test-lab-hero p{font-size:.86rem;line-height:1.5}
#testsView .gr49-assessment-trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
#testsView .gr49-assessment-trust span{padding:7px 10px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.07);color:#d6e5ef;font-size:.65rem;font-weight:800}
#testsView .sigma-test-hero-actions{margin-top:14px}
#testsView .sigma-test-hero-actions .btn{min-width:150px;min-height:46px}
#testsView .sigma-paper-mode-panel{padding:15px!important;border-radius:19px!important}
#testsView .sigma-mode-panel-head small{display:none}
#testsView .sigma-mode-card-grid{gap:7px!important}
#testsView .sigma-mode-card{min-height:74px!important;padding:10px 11px!important;border-radius:14px!important;grid-template-columns:34px 1fr!important;gap:9px!important}
#testsView .sigma-mode-card-icon{width:34px!important;height:34px!important;font-size:1rem!important;border-radius:10px!important}
#testsView .sigma-mode-card-copy strong{font-size:.78rem!important}
#testsView .sigma-mode-card-copy small{font-size:.61rem!important;line-height:1.3!important}
#testsView .sigma-premium-builder-grid{gap:12px;margin-top:14px}
#testsView .premium-test-card{padding:20px;border-radius:22px;box-shadow:0 10px 28px rgba(11,31,54,.065)}
#testsView .premium-test-card .test-builder-icon{width:48px;height:48px;border-radius:14px}
#testsView .premium-test-card h3{font-size:1.25rem;margin:2px 0 5px}
#testsView .premium-test-card .muted{font-size:.82rem;line-height:1.48}
#testsView .gr49-builder-note{margin:9px 0 0;font-size:.68rem;font-weight:800;color:#53708d}
#testsView .gr49-redundant-assessment-strip{display:none!important}
#testsView #grV96CoverageAudit{display:none!important}
#testsView .gr-v96-challenge-board:empty{display:none!important}

/* Advanced exam-board shaping stays available, but no longer dominates the page. */
#testsView details.gr-v96-blueprint-controls{margin-top:12px;border:1px solid #dbe5ee;border-radius:15px;background:#f8fbfd;overflow:hidden}
#testsView details.gr-v96-blueprint-controls>summary{list-style:none;cursor:pointer;padding:12px 14px;font-size:.72rem;font-weight:900;color:#294866;display:flex;align-items:center;justify-content:space-between}
#testsView details.gr-v96-blueprint-controls>summary::-webkit-details-marker{display:none}
#testsView details.gr-v96-blueprint-controls>summary:after{content:'Advanced options +';color:#0c9b8b;font-size:.65rem}
#testsView details.gr-v96-blueprint-controls[open]>summary:after{content:'Hide advanced options −'}
#testsView details.gr-v96-blueprint-controls .gr49-blueprint-inner{padding:0 14px 14px}
#testsView details.gr-v96-blueprint-controls .gr-v96-control-head{margin-top:0}

/* Generated paper toolbar: Mark is primary; print/rebuild/answers sit behind More. */
#testsView .gr49-test-toolbar{position:sticky;top:8px;z-index:18;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px!important;border:1px solid #dbe5ee!important;border-radius:18px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(12px);box-shadow:0 12px 32px rgba(17,38,64,.09)!important}
#testsView .gr49-test-title-block{min-width:0}
#testsView .gr49-test-title-block h3{margin:1px 0 2px;font-size:1.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#testsView .gr49-test-title-block .muted{font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:680px}
#testsView .gr49-test-primary-actions{display:flex;gap:8px;align-items:center;flex:0 0 auto}
#testsView .gr49-test-primary-actions>.btn{min-height:44px;border-radius:13px}
#testsView .gr49-test-more{position:relative}
#testsView .gr49-test-more>summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 14px;border:1px solid #d7e1eb;border-radius:13px;background:#fff;color:#26425e;font-size:.72rem;font-weight:900}
#testsView .gr49-test-more>summary::-webkit-details-marker{display:none}
#testsView .gr49-test-more-menu{position:absolute;right:0;top:calc(100% + 8px);width:210px;display:grid;gap:6px;padding:9px;border:1px solid #dce5ed;border-radius:15px;background:#fff;box-shadow:0 18px 44px rgba(10,31,53,.16)}
#testsView .gr49-test-more-menu .btn{width:100%;justify-content:flex-start;min-height:42px;border-radius:11px;font-size:.7rem}
#testsView .interactive-test-status{margin-top:12px;border-radius:17px!important}
#testsView .paper-sheet{border-radius:18px;box-shadow:0 10px 28px rgba(17,38,64,.07)}

html[data-theme="dark"] #testsView .gr49-assessment-badge,
html[data-theme="dark"] #testsView .gr49-test-toolbar,
html[data-theme="dark"] #testsView .gr49-test-more-menu,
html[data-theme="dark"] #testsView .gr49-test-more>summary{background:#0f2232!important;border-color:#294356!important;color:#e9f4fa}

@media(max-width:900px){
  #testsView .sigma-test-lab-hero{grid-template-columns:1fr}
  #testsView .sigma-mode-card-grid{grid-template-columns:1fr 1fr!important}
  #testsView .gr49-assessment-badge{align-items:flex-start;width:100%}
}
@media(max-width:700px){
  #testsView .gr49-test-toolbar{position:sticky;top:4px;align-items:stretch;flex-direction:column;gap:9px}
  #testsView .gr49-test-primary-actions{display:grid;grid-template-columns:auto 1fr auto;width:100%}
  #testsView .gr49-test-primary-actions>.btn{min-width:0}
  #testsView .gr49-test-more-menu{right:0;width:min(250px,82vw)}
  #testsView .sigma-test-hero-actions{display:grid;grid-template-columns:1fr 1fr}
  #testsView .sigma-test-hero-actions .btn{min-width:0;width:100%}
}
@media(max-width:500px){
  #testsView .sigma-mode-card-grid{grid-template-columns:1fr!important}
  #testsView .sigma-test-lab-hero{padding:17px;border-radius:20px}
  #testsView .sigma-test-hero-actions{grid-template-columns:1fr}
  #testsView .premium-test-card{padding:17px}
  #testsView .gr49-test-primary-actions{grid-template-columns:auto 1fr auto}
  #testsView .gr49-test-primary-actions>.btn{padding-inline:10px;font-size:.7rem}
}


/* ===== GradeRealm V97.52 — Clean Premium Games Hub ===== */
.gr-games-view{background:radial-gradient(circle at 80% 8%,rgba(255,225,176,.24),transparent 24%),linear-gradient(180deg,#f8fbff 0,#f4f7fc 100%)}
.gr-games-page{min-height:100vh}
.gr-games-content{width:min(1000px,calc(100% - 40px));margin:0 auto;padding:34px 0 calc(150px + env(safe-area-inset-bottom))}
.gr-games-heading{margin-bottom:22px}.gr-games-heading h1{margin:8px 0 7px;color:#122746;font-size:clamp(2.2rem,5vw,3.55rem);line-height:.98;letter-spacing:-.045em}.gr-games-heading p{margin:0;color:#718097;font-size:1.05rem}
.gr-games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gr-game-tile{position:relative;overflow:hidden;min-height:500px;border:1px solid #dfe6ed;border-radius:26px;background:#fff;box-shadow:0 16px 38px rgba(24,41,67,.09);display:grid;grid-template-rows:185px 1fr auto;transition:transform .16s ease,box-shadow .16s ease}
.gr-game-tile:hover{transform:translateY(-3px);box-shadow:0 22px 48px rgba(24,41,67,.13)}
.gr-game-art{position:relative;display:flex;align-items:flex-end;padding:22px 24px;overflow:hidden}
.gr-game-art>span{position:relative;z-index:2;width:70px;height:70px;display:grid;place-items:center;border-radius:22px;font-size:2rem;font-weight:950}
.gr-game-storm{background:linear-gradient(180deg,#0b263e 0,#102e49 37%,#fff 37.2%);border-color:#b9cfdd}.gr-game-storm .gr-game-art{background:radial-gradient(circle at 76% 40%,rgba(255,211,100,.38),transparent 18%),radial-gradient(circle at 76% 40%,rgba(39,214,236,.20),transparent 40%),linear-gradient(135deg,#071827,#123a58)}.gr-game-storm .gr-game-art:after{content:'⚡';position:absolute;right:38px;top:15px;font-size:8rem;line-height:1;color:rgba(245,197,76,.22);transform:rotate(6deg)}.gr-game-storm .gr-game-art>span{background:rgba(4,20,32,.64);border:1px solid rgba(255,255,255,.15);color:#f1c45a;box-shadow:0 12px 26px rgba(0,0,0,.18)}
.gr-game-crossgrid .gr-game-art{background:linear-gradient(145deg,#ebe7de,#faf8f3)}.gr-game-crossgrid .gr-game-art:before{content:'';position:absolute;right:32px;top:-38px;width:260px;height:250px;opacity:.72;background:linear-gradient(90deg,transparent 31%,rgba(36,38,40,.12) 32% 33%,transparent 34% 65%,rgba(36,38,40,.12) 66% 67%,transparent 68%),linear-gradient(0deg,transparent 31%,rgba(36,38,40,.12) 32% 33%,transparent 34% 65%,rgba(36,38,40,.12) 66% 67%,transparent 68%);transform:rotate(8deg)}.gr-game-crossgrid .gr-game-art>span{background:#fff;border:1px solid #d3ccc0;color:#22272c;box-shadow:0 11px 24px rgba(45,40,33,.09)}
.gr-game-copy{padding:24px 26px 18px}.gr-game-copy>small{display:block;color:#10a996;font-size:.64rem;font-weight:950;letter-spacing:.13em;margin-bottom:9px}.gr-game-copy h2{margin:0 0 8px;color:#132947;font-size:2rem;line-height:1;letter-spacing:-.035em}.gr-game-copy p{margin:0;color:#6e7d91;font-size:.94rem;line-height:1.5;max-width:390px}
.gr-game-records{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:22px}.gr-game-records>span{padding:12px 13px;border:1px solid #e5eaf0;border-radius:14px;background:#f7f9fb}.gr-game-records small{display:block;color:#7b899b;font-size:.58rem;font-weight:900;letter-spacing:.08em}.gr-game-records strong{display:block;margin-top:3px;color:#18324f;font-size:1.15rem}
.gr-game-play{margin:0 26px 26px;min-height:54px;border:0;border-radius:16px;background:linear-gradient(90deg,#14b7a5,#20c8b4);color:#fff;font:inherit;font-weight:900;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;box-shadow:0 10px 23px rgba(16,153,137,.18)}.gr-game-play:hover{filter:brightness(1.03)}.gr-game-storm .gr-game-play{background:linear-gradient(90deg,#e7bd59,#f1d589);color:#2b2314;box-shadow:0 10px 23px rgba(142,102,29,.18)}
@media(max-width:760px){.gr-games-content{width:min(100% - 28px,1000px);padding-top:24px;padding-bottom:calc(180px + env(safe-area-inset-bottom))}.gr-games-heading h1{font-size:2.55rem}.gr-games-grid{grid-template-columns:1fr;gap:14px}.gr-game-tile{min-height:440px;grid-template-rows:155px 1fr auto;border-radius:22px}.gr-game-copy{padding:20px}.gr-game-copy h2{font-size:1.7rem}.gr-game-play{margin:0 20px 20px}.gr-game-art{padding:18px 20px}.gr-game-art>span{width:60px;height:60px;border-radius:18px}.gr-game-records{margin-top:17px}}


/* ============================================================
   V97.51 • app-wide consistency pass
   One canonical five-item navigation on legacy learning surfaces.
   ============================================================ */
.bottom-nav.gr-canonical-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;width:min(620px,calc(100% - 18px))!important;gap:3px}
.bottom-nav.gr-canonical-nav .nav-item{min-width:0}
@media(max-width:650px){.bottom-nav.gr-canonical-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;width:calc(100% - 8px)!important;padding:5px!important}.bottom-nav.gr-canonical-nav .nav-item small{font-size:.56rem!important}}


/* ============================================================
   V97.54 • GAME EXIT + STORM TOUCH STABILITY HOTFIX
   - Games always expose a visible route back to the Games Hub.
   - Storm exit works during every run phase, including blaster combat.
   - Touch devices avoid native fullscreen/IME compositor conflicts.
   - Key presses use paint-stable states instead of filter/transform layers.
   ============================================================ */
body.storm-focus #timesGameView .times-mobile-live-controls{
  display:flex!important;
  position:relative!important;
  z-index:90!important;
}
body.storm-focus #timesGameView:not(.storm-running) .times-mobile-live-controls{
  order:0!important;
  justify-content:flex-start!important;
  min-height:38px!important;
  margin-bottom:2px!important;
}
body.storm-focus #timesGameView:not(.storm-running) .times-mobile-live-controls > *:not(#timesGamesExitBtn){display:none!important}
#timesGamesExitBtn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:86px!important;
  border-color:#4f86a8!important;
  background:#0b2940!important;
  color:#effbff!important;
  box-shadow:none!important;
}
#crossGridBackToGames{
  position:relative!important;
  z-index:20!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

@media (pointer:coarse), (max-width:900px){
  #timesGameView.storm-running .times-answer-deck,
  body.sigma-storm-live #timesGameView.storm-running .times-answer-deck{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    background:#06192a!important;
    box-shadow:0 8px 20px rgba(0,0,0,.22)!important;
    isolation:isolate!important;
    contain:layout paint!important;
  }
  #timesGameView.storm-running .times-number-pad,
  #timesGameView.storm-running .times-pad-grid,
  #timesGameView.storm-running .times-pad-key{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    filter:none!important;
    -webkit-filter:none!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  #timesGameView.storm-running .times-pad-key{
    transform:none!important;
    transition:background-color .08s linear,border-color .08s linear!important;
    box-shadow:inset 0 1px rgba(255,255,255,.05)!important;
  }
  #timesGameView.storm-running .times-pad-key:active:not(:disabled),
  #timesGameView.storm-running .times-pad-key:focus:not(:focus-visible){
    transform:none!important;
    filter:none!important;
    -webkit-filter:none!important;
    background:#1c4b6b!important;
    border-color:#72dff8!important;
    box-shadow:inset 0 0 0 1px rgba(126,232,255,.20)!important;
    outline:none!important;
  }
  #timesGameView.storm-running .times-answer-form input[readonly]{
    caret-color:transparent!important;
    user-select:none!important;
    -webkit-user-select:none!important;
    pointer-events:none!important;
  }
}

/* ============================================================
   V97.55 • Storm Stage 1 — readable evasion fleet
   Larger/slower drones now travel through the player's lane.
   Visual bodies are large; collision hulls stay forgiving in JS.
   ============================================================ */
.blaster-target{
  --travel-y:360px;
  width:74px;
  height:56px;
  margin:-28px 0 0 -37px;
  will-change:transform,opacity;
}
.blaster-target:before,.blaster-target:after{top:16px;width:31px;height:19px}
.blaster-target:before{left:-23px}.blaster-target:after{right:-23px}
.blaster-target .enemy-label{backdrop-filter:none}
.blaster-target.enemy-interceptor{width:66px;height:48px;margin:-24px 0 0 -33px}
.blaster-target.enemy-swarm{width:54px;height:40px;margin:-20px 0 0 -27px}
.blaster-target.enemy-armored{width:90px;height:66px;margin:-33px 0 0 -45px}
.blaster-target.enemy-splitter{width:78px;height:60px;margin:-30px 0 0 -39px}
.blaster-target.enemy-shard{width:42px;height:32px;margin:-16px 0 0 -21px}
.blaster-target.enemy-bomber{width:82px;height:62px;margin:-31px 0 0 -41px}
.blaster-target.enemy-phaser{width:74px;height:56px;margin:-28px 0 0 -37px;backdrop-filter:none}
.blaster-target.enemy-dodger{width:70px;height:52px;margin:-26px 0 0 -35px}
.blaster-target.enemy-tank{width:104px;height:76px;margin:-38px 0 0 -52px}
.blaster-target.enemy-cloaker{width:76px;height:58px;margin:-29px 0 0 -38px}
.blaster-target.enemy-charger{width:72px;height:58px;margin:-29px 0 0 -36px}
.blaster-target.enemy-oneup{width:72px;height:54px;margin:-27px 0 0 -36px}
.blaster-target.enemy-gunship{width:132px;height:82px;margin:-41px 0 0 -66px}

/* Every combat drone now reaches the lower flight lane instead of expiring
   after a short 100–150px animation. The JS sets --travel-y per spawn. */
@keyframes blasterDrone{
  0%{transform:translate(0,-25px) scale(.86);opacity:0}
  12%{opacity:1}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}
}
@keyframes blasterInterceptor{
  0%{transform:translate(-52px,-28px) scale(.82);opacity:0}
  14%{opacity:1}
  50%{transform:translate(52px,var(--travel-44)) scale(1)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}
}
@keyframes blasterBomber{
  0%{transform:translate(0,-35px) scale(.80);opacity:0}
  14%{opacity:1}
  70%{transform:translate(calc(var(--drift) * .45),var(--travel-66)) scale(1.08)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.16);opacity:.92}
}
@keyframes blasterPhaser{
  0%{transform:translate(-28px,-25px) scale(.84);opacity:0}
  12%{opacity:1}
  34%{transform:translate(42px,var(--travel-27)) scale(.95);opacity:.38}
  38%{opacity:.08}
  48%{transform:translate(-42px,var(--travel-40)) scale(1);opacity:1}
  75%{opacity:.38}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.86}
}
@keyframes blasterOneUp{
  0%{transform:translate(0,-20px) scale(.78);opacity:0}
  15%{opacity:1}
  55%{transform:translate(30px,var(--travel-48)) scale(1.04)}
  100%{transform:translate(-30px,var(--travel-y)) scale(1.08);opacity:.92}
}
@keyframes blasterSplitter{
  0%{transform:translate(0,-28px) rotate(0deg) scale(.82);opacity:0}
  14%{opacity:1}
  50%{transform:translate(calc(var(--drift) * -.35),var(--travel-42)) rotate(10deg)}
  100%{transform:translate(var(--drift),var(--travel-y)) rotate(-12deg) scale(1.10);opacity:.90}
}
@keyframes blasterShard{
  0%{transform:translate(0,0) scale(.78);opacity:1}
  35%{transform:translate(calc(var(--drift) * .5),var(--travel-35)) scale(1.03)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.14);opacity:.88}
}
@keyframes blasterDodger{
  0%{transform:translate(-58px,-28px) scale(.82);opacity:0}
  12%{opacity:1}
  28%{transform:translate(56px,var(--travel-20)) scale(.94)}
  48%{transform:translate(-54px,var(--travel-40)) scale(1)}
  70%{transform:translate(54px,var(--travel-66)) scale(1.04)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}
}
@keyframes blasterTank{
  0%{transform:translate(0,-22px) scale(.80);opacity:0}
  14%{opacity:1}
  75%{transform:translate(calc(var(--drift) * .28),var(--travel-70)) scale(1.02)}
  100%{transform:translate(calc(var(--drift) * .42),var(--travel-y)) scale(1.06);opacity:.94}
}
@keyframes blasterCloaker{
  0%{transform:translate(-24px,-26px) scale(.84);opacity:0}
  12%{opacity:1}
  28%{opacity:.18}
  42%{transform:translate(38px,var(--travel-35)) scale(.96);opacity:.92}
  58%{opacity:.12}
  72%{transform:translate(-38px,var(--travel-64)) scale(1.03);opacity:.94}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.86}
}
@keyframes blasterCharger{
  0%{transform:translate(0,-34px) scale(.70);opacity:0}
  12%{opacity:1}
  48%{transform:translate(calc(var(--drift) * .22),var(--travel-27)) scale(.86)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.26);opacity:.92}
}
@keyframes stormAceGunship{
  0%{transform:translate(0,-68px) scale(.78);opacity:0}
  12%{opacity:1}
  28%{transform:translate(calc(var(--drift) * .28),var(--travel-20)) scale(.94)}
  55%{transform:translate(calc(var(--drift) * -.22),var(--travel-42)) scale(1)}
  78%{transform:translate(calc(var(--drift) * .32),var(--travel-70)) scale(1.04)}
  100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.94}
}

.blaster-target.rammed{pointer-events:none!important;animation:stormDroneRam .18s ease-out forwards!important}
@keyframes stormDroneRam{to{transform:scale(1.42) rotate(12deg);filter:brightness(2.4);opacity:0}}
.drone-collision-pop{position:absolute;z-index:38;transform:translate(-50%,-50%);pointer-events:none;padding:6px 9px;border:1px solid rgba(255,121,103,.75);border-radius:999px;background:rgba(48,7,17,.9);color:#ffd4cc;font:1000 .58rem/1 ui-monospace;letter-spacing:.12em;text-shadow:0 0 10px #ff5948;animation:droneCollisionPop .76s ease-out forwards}
@keyframes droneCollisionPop{0%{opacity:0;transform:translate(-50%,-35%) scale(.82)}18%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-135%) scale(1.06)}}

@media(max-width:540px){
  .blaster-target{width:68px;height:52px;margin:-26px 0 0 -34px}
  .blaster-target.enemy-interceptor{width:62px;height:46px;margin:-23px 0 0 -31px}
  .blaster-target.enemy-swarm{width:50px;height:38px;margin:-19px 0 0 -25px}
  .blaster-target.enemy-armored{width:84px;height:62px;margin:-31px 0 0 -42px}
  .blaster-target.enemy-bomber{width:76px;height:58px;margin:-29px 0 0 -38px}
  .blaster-target.enemy-tank{width:94px;height:70px;margin:-35px 0 0 -47px}
  .blaster-target.enemy-gunship{width:108px;height:68px;margin:-34px 0 0 -54px}
}

/* ============================================================
   V97.56 • Storm Stage 2 — premium core game feel
   Compositor-safe movement feedback, muzzle flashes, impact sparks,
   layered destruction, restrained shake/hit-stop and ship damage cues.
   No new blur/backdrop effects are introduced here.
   ============================================================ */
#timesGameView.blaster-active .times-defender.shooter-live[data-gpu-flight="true"]{
  transform-origin:50% 50%!important;
}

/* Weapon muzzle personality. Short-lived and capped in JS. */
.storm-muzzle-flash{
  --muzzle-scale:1;
  position:absolute;z-index:22;width:28px;height:28px;
  transform:translate(-50%,-78%) scale(var(--muzzle-scale));
  pointer-events:none;opacity:0;
  animation:stormMuzzleFlash .10s ease-out forwards;
}
.storm-muzzle-flash::before,.storm-muzzle-flash::after{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  background:#fff;border-radius:999px;
}
.storm-muzzle-flash::before{width:8px;height:27px;box-shadow:0 0 8px rgba(154,244,255,.9)}
.storm-muzzle-flash::after{width:25px;height:5px;box-shadow:0 0 8px rgba(154,244,255,.7)}
.storm-muzzle-flash>i{position:absolute;top:10px;width:7px;height:18px;border-radius:50% 50% 70% 70%;background:linear-gradient(180deg,#fff,#84f2ff 38%,rgba(69,178,255,0));}
.storm-muzzle-flash>i:first-child{left:2px;transform:rotate(-18deg)}
.storm-muzzle-flash>i:last-child{right:2px;transform:rotate(18deg)}
.storm-muzzle-flash.weapon-twin::before{height:21px;box-shadow:-9px 0 0 -2px #8effe2,9px 0 0 -2px #8effe2}
.storm-muzzle-flash.weapon-lance{width:38px;height:38px}
.storm-muzzle-flash.weapon-lance::before{width:10px;height:38px;background:#fff4a6;box-shadow:0 0 10px rgba(255,225,102,.9)}
.storm-muzzle-flash.weapon-scatter::after{width:34px;height:6px;background:#ff9bea;box-shadow:0 0 9px rgba(255,102,224,.78)}
@keyframes stormMuzzleFlash{0%{opacity:1;transform:translate(-50%,-70%) scale(.72)}55%{opacity:.95}100%{opacity:0;transform:translate(-50%,-102%) scale(1.12)}}

/* Slightly richer projectile readability without increasing projectile count. */
.blaster-autofire-bolt{border-radius:70% 70% 25% 25%;}
.blaster-autofire-bolt::after{content:"";position:absolute;left:50%;top:70%;width:2px;height:28px;transform:translateX(-50%);background:linear-gradient(180deg,currentColor,transparent);opacity:.42;}
.blaster-autofire-bolt.weapon-pulse{color:#7feeff}
.blaster-autofire-bolt.weapon-twin{color:#77ffe2}
.blaster-autofire-bolt.weapon-lance{color:#ffe16d}
.blaster-autofire-bolt.weapon-scatter{color:#ff7fde}

/* Direct hit flash + directional sparks. */
.storm-hit-sparks{position:absolute;z-index:24;width:10px;height:10px;transform:translate(-50%,-50%);pointer-events:none}
.storm-hit-sparks>span{position:absolute;inset:-5px;border:2px solid rgba(255,255,255,.95);border-radius:50%;animation:stormHitRing .24s ease-out forwards}
.storm-hit-sparks>i{position:absolute;left:50%;top:50%;width:3px;height:20px;border-radius:999px;background:linear-gradient(180deg,#fff,#ffd16c 42%,rgba(255,92,62,0));transform-origin:50% 0;animation:stormHitSpark .30s ease-out forwards}
.storm-hit-sparks>i:nth-of-type(1){--spark-a:18deg}.storm-hit-sparks>i:nth-of-type(2){--spark-a:108deg}.storm-hit-sparks>i:nth-of-type(3){--spark-a:198deg}.storm-hit-sparks>i:nth-of-type(4){--spark-a:288deg}
.storm-hit-sparks.heavy>i{height:28px;width:4px}.storm-hit-sparks.elite{transform:translate(-50%,-50%) scale(1.35)}
@keyframes stormHitRing{0%{opacity:1;transform:scale(.35)}100%{opacity:0;transform:scale(1.8)}}
@keyframes stormHitSpark{0%{opacity:1;transform:rotate(var(--spark-a)) translateY(0) scaleY(.72)}100%{opacity:0;transform:rotate(var(--spark-a)) translateY(-30px) scaleY(.22)}}

/* Layered destruction: white core, hot secondary ring, existing outer ring/shards. */
.storm-destruction-burst>b,.storm-destruction-burst>em{position:absolute;left:50%;top:50%;pointer-events:none;border-radius:50%;transform:translate(-50%,-50%)}
.storm-destruction-burst>b{width:15px;height:15px;background:#fff;box-shadow:0 0 10px rgba(255,244,184,.95);animation:stormBurstCore .34s ease-out forwards}
.storm-destruction-burst>em{width:28px;height:28px;border:4px solid #ffb84f;animation:stormBurstHeat .46s ease-out forwards}
@keyframes stormBurstCore{0%{opacity:1;transform:translate(-50%,-50%) scale(.35)}60%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(3.2)}}
@keyframes stormBurstHeat{0%{opacity:.95;transform:translate(-50%,-50%) scale(.25)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.3)}}

/* Damage pulse is centered on the ship and does not use blur/filter effects. */
.storm-ship-impact{position:absolute;z-index:36;width:18px;height:18px;transform:translate(-50%,-50%);pointer-events:none}
.storm-ship-impact>i{position:absolute;inset:-20px;border-radius:50%;border:3px solid #ff6b72;background:radial-gradient(circle,rgba(255,255,255,.42),rgba(255,74,88,.18) 36%,transparent 68%);animation:stormShipImpactRing .50s ease-out forwards}
.storm-ship-impact>span{position:absolute;left:50%;top:-43px;transform:translateX(-50%);white-space:nowrap;padding:5px 8px;border-radius:999px;background:rgba(42,5,16,.88);border:1px solid rgba(255,111,119,.6);color:#ffd6d8;font:900 .54rem/1 ui-monospace;letter-spacing:.08em;animation:stormShipImpactText .58s ease-out forwards}
.storm-ship-impact.shield>i{border-color:#68ddff;background:radial-gradient(circle,rgba(255,255,255,.46),rgba(75,193,255,.16) 38%,transparent 70%)}
.storm-ship-impact.shield>span{background:rgba(5,28,48,.9);border-color:rgba(96,216,255,.62);color:#d9f8ff}
@keyframes stormShipImpactRing{0%{opacity:1;transform:scale(.28)}100%{opacity:0;transform:scale(2.2)}}
@keyframes stormShipImpactText{0%{opacity:0;transform:translate(-50%,8px) scale(.9)}22%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-20px) scale(1.04)}}

/* Evasion feedback: deliberately subtle; no score change. */
.storm-near-miss{position:absolute;z-index:25;transform:translate(-50%,-50%);pointer-events:none;color:#c8f8ff;font:1000 .52rem/1 ui-monospace;letter-spacing:.13em;text-shadow:0 0 8px rgba(84,226,255,.7);animation:stormNearMiss .50s ease-out forwards}
@keyframes stormNearMiss{0%{opacity:0;transform:translate(-50%,-20%) scale(.85)}25%{opacity:1}100%{opacity:0;transform:translate(-50%,-120%) scale(1.05)}}

/* Restrained compositor-only camera shake. */
#timesGameView.blaster-active .times-arena.storm-shake-light{animation:stormShakeLight .09s linear 1}
#timesGameView.blaster-active .times-arena.storm-shake-medium{animation:stormShakeMedium .12s linear 1}
#timesGameView.blaster-active .times-arena.storm-shake-heavy{animation:stormShakeHeavy .15s linear 1}
@keyframes stormShakeLight{0%,100%{transform:translate3d(0,0,0)}30%{transform:translate3d(-1px,1px,0)}65%{transform:translate3d(1px,-1px,0)}}
@keyframes stormShakeMedium{0%,100%{transform:translate3d(0,0,0)}20%{transform:translate3d(-2px,1px,0)}45%{transform:translate3d(2px,-1px,0)}70%{transform:translate3d(-1px,1px,0)}}
@keyframes stormShakeHeavy{0%,100%{transform:translate3d(0,0,0)}15%{transform:translate3d(-3px,2px,0)}35%{transform:translate3d(3px,-2px,0)}55%{transform:translate3d(-2px,1px,0)}75%{transform:translate3d(2px,-1px,0)}}

/* Major-impact micro hit-stop. Only gameplay movers pause; HUD/input stays live. */
#timesGameView.blaster-active .times-arena.storm-hit-stop .blaster-target,
#timesGameView.blaster-active .times-arena.storm-hit-stop .storm-asteroid{
  animation-play-state:paused!important;
}

@media (pointer:coarse), (max-width:900px){
  .storm-muzzle-flash{width:24px;height:24px}
  .storm-hit-sparks>i{height:17px}
  #timesGameView.blaster-active .times-arena.storm-shake-heavy{animation-name:stormShakeMedium}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.blaster-active .times-arena.storm-shake-light,
  #timesGameView.blaster-active .times-arena.storm-shake-medium,
  #timesGameView.blaster-active .times-arena.storm-shake-heavy{animation:none!important}
  .storm-muzzle-flash,.storm-hit-sparks>span,.storm-hit-sparks>i,.storm-destruction-burst>b,.storm-destruction-burst>em,.storm-ship-impact>i,.storm-ship-impact>span,.storm-near-miss{animation-duration:.001ms!important}
}


/* ============================================================
   V97.57 • Storm Stage 3 — authored enemy intelligence
   Recognisable formation scripts, tactical roles and telegraphed enemy fire.
   Movement remains transform/opacity based for Android compositor safety.
   ============================================================ */
.blaster-formation-callout{max-width:min(88%,620px);white-space:normal;text-align:center;line-height:1.35;padding:7px 12px;border-radius:999px;background:rgba(4,18,35,.86);border:1px solid rgba(115,235,255,.34);box-shadow:0 8px 22px rgba(0,0,0,.32);}
.blaster-target[data-formation]{transition:box-shadow .16s ease,border-color .16s ease;}
.blaster-target.attack-primed .drone-reactor{animation:stormEnemyCharge .22s linear infinite alternate!important;background:#fff4a4!important;box-shadow:0 0 7px #fff,0 0 18px #ffb74c!important;}
@keyframes stormEnemyCharge{to{transform:translateX(-50%) scale(1.24);opacity:.62}}

/* Formation movement: each pattern is authored and learnable. */
.blaster-target.storm-behavior-sweep-left{animation-name:stormFormationSweepLeft!important}
.blaster-target.storm-behavior-sweep-right{animation-name:stormFormationSweepRight!important}
.blaster-target.storm-behavior-dive{animation-name:stormFormationDive!important}
.blaster-target.storm-behavior-dive-left{animation-name:stormFormationDiveLeft!important}
.blaster-target.storm-behavior-dive-right{animation-name:stormFormationDiveRight!important}
.blaster-target.storm-behavior-side-left{animation-name:stormFormationSideLeft!important}
.blaster-target.storm-behavior-side-right{animation-name:stormFormationSideRight!important}
.blaster-target.storm-behavior-orbit-left{animation-name:stormFormationOrbitLeft!important}
.blaster-target.storm-behavior-orbit-right{animation-name:stormFormationOrbitRight!important}
.blaster-target.storm-behavior-anchor{animation-name:stormFormationAnchor!important}
.blaster-target.storm-behavior-heavy{animation-name:stormFormationHeavy!important}
.blaster-target.storm-behavior-pincer-left{animation-name:stormFormationPincerLeft!important}
.blaster-target.storm-behavior-pincer-right{animation-name:stormFormationPincerRight!important}
@keyframes stormFormationSweepLeft{0%{transform:translate(72px,-26px) scale(.84);opacity:0}13%{opacity:1}46%{transform:translate(-18px,var(--travel-35)) scale(.98)}75%{transform:translate(-70px,var(--travel-66)) scale(1.03)}100%{transform:translate(calc(var(--drift) - 70px),var(--travel-y)) scale(1.08);opacity:.90}}
@keyframes stormFormationSweepRight{0%{transform:translate(-72px,-26px) scale(.84);opacity:0}13%{opacity:1}46%{transform:translate(18px,var(--travel-35)) scale(.98)}75%{transform:translate(70px,var(--travel-66)) scale(1.03)}100%{transform:translate(calc(var(--drift) + 70px),var(--travel-y)) scale(1.08);opacity:.90}}
@keyframes stormFormationDive{0%{transform:translate(0,-34px) scale(.76);opacity:0}12%{opacity:1}35%{transform:translate(0,var(--travel-20)) scale(.94)}64%{transform:translate(0,var(--travel-64)) scale(1.08)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.14);opacity:.92}}
@keyframes stormFormationDiveLeft{0%{transform:translate(-36px,-28px) scale(.80);opacity:0}12%{opacity:1}42%{transform:translate(24px,var(--travel-27)) scale(.96)}72%{transform:translate(68px,var(--travel-64)) scale(1.04)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.10);opacity:.90}}
@keyframes stormFormationDiveRight{0%{transform:translate(36px,-28px) scale(.80);opacity:0}12%{opacity:1}42%{transform:translate(-24px,var(--travel-27)) scale(.96)}72%{transform:translate(-68px,var(--travel-64)) scale(1.04)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.10);opacity:.90}}
@keyframes stormFormationSideLeft{0%{transform:translate(-115px,0) scale(.82);opacity:0}18%{opacity:1;transform:translate(-22px,var(--travel-20)) scale(.94)}50%{transform:translate(72px,var(--travel-42)) scale(1)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}}
@keyframes stormFormationSideRight{0%{transform:translate(115px,0) scale(.82);opacity:0}18%{opacity:1;transform:translate(22px,var(--travel-20)) scale(.94)}50%{transform:translate(-72px,var(--travel-42)) scale(1)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}}
@keyframes stormFormationOrbitLeft{0%{transform:translate(-58px,-22px) scale(.82);opacity:0}12%{opacity:1}30%{transform:translate(55px,var(--travel-20)) rotate(12deg) scale(.95)}50%{transform:translate(78px,var(--travel-40)) rotate(-9deg) scale(1)}70%{transform:translate(-52px,var(--travel-64)) rotate(8deg) scale(1.03)}100%{transform:translate(var(--drift),var(--travel-y)) rotate(0) scale(1.08);opacity:.88}}
@keyframes stormFormationOrbitRight{0%{transform:translate(58px,-22px) scale(.82);opacity:0}12%{opacity:1}30%{transform:translate(-55px,var(--travel-20)) rotate(-12deg) scale(.95)}50%{transform:translate(-78px,var(--travel-40)) rotate(9deg) scale(1)}70%{transform:translate(52px,var(--travel-64)) rotate(-8deg) scale(1.03)}100%{transform:translate(var(--drift),var(--travel-y)) rotate(0) scale(1.08);opacity:.88}}
@keyframes stormFormationAnchor{0%{transform:translate(0,-38px) scale(.78);opacity:0}13%{opacity:1}22%{transform:translate(0,var(--travel-20)) scale(.98)}62%{transform:translate(calc(var(--drift) * .18),var(--travel-27)) scale(1)}74%{transform:translate(calc(var(--drift) * -.15),var(--travel-35)) scale(1.02)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.08);opacity:.90}}
@keyframes stormFormationHeavy{0%{transform:translate(0,-26px) scale(.80);opacity:0}14%{opacity:1}62%{transform:translate(calc(var(--drift) * .18),var(--travel-48)) scale(1)}100%{transform:translate(calc(var(--drift) * .40),var(--travel-y)) scale(1.06);opacity:.94}}
@keyframes stormFormationPincerLeft{0%{transform:translate(-80px,-20px) scale(.76);opacity:0}12%{opacity:1}44%{transform:translate(35px,var(--travel-35)) scale(.95)}72%{transform:translate(88px,var(--travel-66)) scale(1.08)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.22);opacity:.92}}
@keyframes stormFormationPincerRight{0%{transform:translate(80px,-20px) scale(.76);opacity:0}12%{opacity:1}44%{transform:translate(-35px,var(--travel-35)) scale(.95)}72%{transform:translate(-88px,var(--travel-66)) scale(1.08)}100%{transform:translate(var(--drift),var(--travel-y)) scale(1.22);opacity:.92}}

/* New tactical silhouettes. */
.blaster-target.enemy-sniper{--drone-edge:#ff78a9;--drone-glow:rgba(255,86,150,.58);--drone-hull-a:#8e365f;--drone-hull-b:#401d45;--drone-hull-c:#130817;--drone-core:#fff07b;--drone-glass:#ffc1d9;width:76px;height:48px;margin:-24px 0 0 -38px;clip-path:polygon(8% 40%,28% 10%,72% 10%,92% 40%,68% 100%,32% 100%);border-color:#ff79ae;box-shadow:0 0 28px rgba(255,76,142,.55)}
.blaster-target.enemy-sniper:before,.blaster-target.enemy-sniper:after{width:34px;height:8px;top:20px;background:#ff6da7;box-shadow:0 0 10px rgba(255,92,159,.72)}
.blaster-target.enemy-sniper .enemy-label{color:#ffb6ce}
.blaster-target.enemy-sentinel{--drone-edge:#65e9ff;--drone-glow:rgba(64,218,255,.62);--drone-hull-a:#347f9c;--drone-hull-b:#224f68;--drone-hull-c:#081a2a;--drone-core:#b6fbff;--drone-glass:#d7fbff;width:92px;height:68px;margin:-34px 0 0 -46px;border:2px solid #67eaff;border-radius:22%;background:linear-gradient(155deg,#4d9ab6 0 10%,#1f566d 11% 40%,#091a2b 41% 100%);box-shadow:0 0 0 4px rgba(85,226,255,.08),0 0 32px rgba(59,209,255,.56)}
.blaster-target.enemy-sentinel .enemy-label{color:#b9f7ff}.blaster-target.enemy-sentinel .enemy-hp{display:block;position:absolute;left:50%;top:-13px;transform:translateX(-50%);font:1000 .43rem/1 ui-monospace;color:#aef6ff;white-space:nowrap}
.blaster-target.enemy-sentinel.formation-sentinel-active::after{content:"";position:absolute;inset:-12px;border:2px solid rgba(107,235,255,.58);border-radius:50%;background:transparent;animation:stormSentinelRing 1.15s ease-in-out infinite;pointer-events:none}
.blaster-target.formation-shielded{box-shadow:0 0 0 3px rgba(103,230,255,.12),0 0 27px rgba(76,209,255,.48)!important}
.blaster-target.formation-shielded .drone-shell::before{content:"";position:absolute;inset:-5px;border:1px solid rgba(117,236,255,.48);border-radius:50%;pointer-events:none}
@keyframes stormSentinelRing{0%,100%{opacity:.35;transform:scale(.92)}50%{opacity:.85;transform:scale(1.05)}}

/* Fair enemy fire: warning locks the destination first, then the shot follows. */
.storm-enemy-reticle{position:absolute;z-index:31;width:46px;height:46px;margin:-23px 0 0 -23px;border:2px solid rgba(255,93,114,.82);border-radius:50%;pointer-events:none;animation:stormEnemyReticle .56s ease-in-out infinite alternate}
.storm-enemy-reticle::before,.storm-enemy-reticle::after{content:"";position:absolute;background:#ff7388;opacity:.82}.storm-enemy-reticle::before{left:50%;top:-9px;width:2px;height:62px;transform:translateX(-50%)}.storm-enemy-reticle::after{top:50%;left:-9px;width:62px;height:2px;transform:translateY(-50%)}
.storm-enemy-reticle.shot-sniper{border-color:#fff075}.storm-enemy-reticle.shot-sniper::before,.storm-enemy-reticle.shot-sniper::after{background:#ffe96d}
@keyframes stormEnemyReticle{from{opacity:.38;transform:scale(.84)}to{opacity:1;transform:scale(1.03)}}
.storm-enemy-warning{position:absolute;z-index:32;transform:translate(-50%,-50%);pointer-events:none;padding:5px 8px;border-radius:999px;background:rgba(36,5,15,.90);border:1px solid rgba(255,110,132,.62);color:#ffd2da;font:1000 .48rem/1 ui-monospace;letter-spacing:.12em;white-space:nowrap;animation:stormEnemyWarning .28s steps(2,end) infinite}
.storm-enemy-warning.warning-sniper{color:#fff2a3;border-color:rgba(255,228,91,.64);background:rgba(39,31,3,.92)}
@keyframes stormEnemyWarning{50%{opacity:.46}}
.storm-enemy-shot{--enemy-shot-x:0px;--enemy-shot-y:300px;--enemy-shot-life:1300ms;position:absolute;z-index:30;width:13px;height:24px;margin:-12px 0 0 -6px;border-radius:50% 50% 62% 62%;pointer-events:none;background:linear-gradient(180deg,#fff,#ff6e85 40%,#9d1534 72%,rgba(157,21,52,0));box-shadow:0 0 7px rgba(255,95,120,.88);animation:stormEnemyShotFly var(--enemy-shot-life) linear forwards;will-change:transform,opacity}
.storm-enemy-shot::after{content:"";position:absolute;left:50%;top:-18px;width:3px;height:25px;transform:translateX(-50%);background:linear-gradient(180deg,transparent,currentColor);opacity:.52}
.storm-enemy-shot.shot-heavy{width:18px;height:28px;margin:-14px 0 0 -9px;color:#ff9b57;background:linear-gradient(180deg,#fff8d1,#ff9b4f 36%,#8d2514 76%,rgba(141,37,20,0));box-shadow:0 0 9px rgba(255,119,57,.9)}
.storm-enemy-shot.shot-sniper{width:8px;height:34px;margin:-17px 0 0 -4px;color:#ffe66b;background:linear-gradient(180deg,#fff,#fff279 32%,#ff8650 70%,rgba(255,134,80,0));box-shadow:0 0 9px rgba(255,234,101,.95)}
.storm-enemy-shot.shot-phase{color:#9d8cff;background:linear-gradient(180deg,#fff,#a68aff 40%,#47338f 76%,rgba(71,51,143,0));box-shadow:0 0 9px rgba(144,115,255,.9)}
.storm-enemy-shot.shot-shield{color:#6ae7ff;background:linear-gradient(180deg,#fff,#64e9ff 40%,#177d9d 76%,rgba(23,125,157,0));box-shadow:0 0 9px rgba(89,225,255,.9)}
.storm-enemy-shot.shot-elite{width:17px;height:31px;margin:-15px 0 0 -8px;color:#ffb64e;background:linear-gradient(180deg,#fff,#ffbd55 37%,#bf3a34 76%,rgba(191,58,52,0));box-shadow:0 0 11px rgba(255,119,67,.92)}
.storm-enemy-shot.hit{animation:none!important;transform:scale(1.8);opacity:0;transition:transform .11s ease,opacity .11s ease}
@keyframes stormEnemyShotFly{0%{transform:translate3d(0,0,0) scale(.76);opacity:0}7%{opacity:1}100%{transform:translate3d(var(--enemy-shot-x),var(--enemy-shot-y),0) scale(1.06);opacity:.22}}

@media(max-width:540px){
  .blaster-target.enemy-sniper{width:68px;height:44px;margin:-22px 0 0 -34px}
  .blaster-target.enemy-sentinel{width:84px;height:62px;margin:-31px 0 0 -42px}
  .storm-enemy-reticle{width:40px;height:40px;margin:-20px 0 0 -20px}
  .storm-enemy-warning{font-size:.43rem}
}
@media(prefers-reduced-motion:reduce){
  .storm-enemy-reticle,.storm-enemy-warning,.blaster-target.enemy-sentinel.formation-sentinel-active::after{animation-duration:.001ms!important}
}

/* V97.58 • Storm Stage 4 — Android / performance hardening */
#timesGameView.blaster-active .times-arena{contain:paint;isolation:isolate}
#timesGameView.storm-perf-reduced .storm-depth-layer.depth-near{display:none!important}
#timesGameView.storm-perf-reduced .storm-hit-sparks i:nth-of-type(n+4),
#timesGameView.storm-perf-reduced .storm-destruction-burst i:nth-of-type(n+5){display:none!important}
#timesGameView.storm-perf-reduced .storm-muzzle-flash{animation-duration:.075s!important}
#timesGameView.storm-perf-reduced .storm-enemy-warning{animation-duration:.55s!important}
@media (pointer:coarse),(max-width:900px){
  #timesGameView.blaster-active .storm-depth-layer.depth-near{opacity:.52}
  #timesGameView.blaster-active .storm-destruction-burst i:nth-of-type(n+7),
  #timesGameView.blaster-active .storm-hit-sparks i:nth-of-type(n+6){display:none!important}
}


/* V97.59 • Storm Stage 5 • distinct weapon systems */
#timesGameView[data-weapon="pulse"]{--storm-weapon:#7feeff;--storm-weapon-rgb:127,238,255}
#timesGameView[data-weapon="twin"]{--storm-weapon:#77ffe2;--storm-weapon-rgb:119,255,226}
#timesGameView[data-weapon="lance"]{--storm-weapon:#ffe16d;--storm-weapon-rgb:255,225,109}
#timesGameView[data-weapon="scatter"]{--storm-weapon:#ff7fde;--storm-weapon-rgb:255,127,222}
#timesGameView .times-blaster-hud .blaster-hud-status{color:var(--storm-weapon,#7feeff)}
.blaster-beam.weapon-pulse{background:linear-gradient(180deg,rgba(127,238,255,.04),#dfffff 18%,#6feaff 68%,rgba(64,170,255,.04));box-shadow:0 0 8px rgba(127,238,255,.72)}
.blaster-beam.weapon-twin{width:3px;background:linear-gradient(180deg,rgba(119,255,226,.03),#eafffa 16%,#66ffd9 70%,rgba(64,215,181,.04));box-shadow:0 0 9px rgba(119,255,226,.68)}
.blaster-beam.weapon-lance{width:8px;background:linear-gradient(180deg,rgba(255,225,109,.02),#fff 10%,#ffe16d 45%,#ff9c4a 78%,rgba(255,120,60,.02));box-shadow:0 0 12px rgba(255,225,109,.86),0 0 24px rgba(255,143,65,.34)}
.blaster-beam.weapon-scatter{width:3px;background:linear-gradient(180deg,rgba(255,127,222,.02),#fff 14%,#ff86df 58%,rgba(255,91,209,.02));box-shadow:0 0 8px rgba(255,127,222,.68)}
.storm-weapon-impact{position:absolute;z-index:29;width:34px;height:34px;transform:translate(-50%,-50%);pointer-events:none;contain:paint;animation:v9759Impact .24s ease-out forwards}
.storm-weapon-impact i,.storm-weapon-impact b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;pointer-events:none}
.storm-weapon-impact i:first-child{width:24px;height:24px;border:2px solid currentColor;border-radius:50%}
.storm-weapon-impact i:nth-child(2){width:30px;height:2px;background:currentColor;box-shadow:0 0 8px currentColor}
.storm-weapon-impact b{width:5px;height:30px;background:linear-gradient(180deg,transparent,currentColor,transparent)}
.storm-weapon-impact.weapon-pulse{color:#7feeff}.storm-weapon-impact.weapon-pulse i:nth-child(2){transform:translate(-50%,-50%) rotate(90deg)}
.storm-weapon-impact.weapon-twin{color:#77ffe2}.storm-weapon-impact.weapon-twin i:first-child{width:28px;height:18px;border-radius:45%}.storm-weapon-impact.weapon-twin i:nth-child(2){transform:translate(-50%,-50%) rotate(-24deg);box-shadow:0 0 8px currentColor,0 7px 0 -1px currentColor}
.storm-weapon-impact.weapon-lance{color:#ffe16d;height:52px}.storm-weapon-impact.weapon-lance i:first-child{width:16px;height:38px;border-radius:45%}.storm-weapon-impact.weapon-lance b{height:50px;width:8px;background:linear-gradient(180deg,transparent,#fff,#ffe16d,transparent)}
.storm-weapon-impact.weapon-scatter{color:#ff7fde}.storm-weapon-impact.weapon-scatter i:first-child{width:34px;height:16px;border-radius:50%}.storm-weapon-impact.weapon-scatter i:nth-child(2){width:34px;transform:translate(-50%,-50%) rotate(18deg);box-shadow:0 0 8px currentColor,0 -8px 0 -1px currentColor,0 8px 0 -1px currentColor}
.storm-weapon-impact.heavy{transform:translate(-50%,-50%) scale(1.22)}
@keyframes v9759Impact{0%{opacity:0;transform:translate(-50%,-50%) scale(.45)}25%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.28)}}
.blaster-autofire-bolt.weapon-pulse{width:4px;height:34px}
.blaster-autofire-bolt.weapon-twin{width:3px;height:31px;border-radius:60% 60% 30% 30%}
.blaster-autofire-bolt.weapon-lance{width:9px;height:62px;border-radius:999px;animation-duration:.44s}
.blaster-autofire-bolt.weapon-scatter{width:3px;height:28px;transform-origin:50% 100%}
#timesGameView[data-weapon="pulse"] .times-defender{--weapon-glow:rgba(127,238,255,.54)}
#timesGameView[data-weapon="twin"] .times-defender{--weapon-glow:rgba(119,255,226,.54)}
#timesGameView[data-weapon="lance"] .times-defender{--weapon-glow:rgba(255,225,109,.60)}
#timesGameView[data-weapon="scatter"] .times-defender{--weapon-glow:rgba(255,127,222,.56)}
@media (prefers-reduced-motion:reduce){.storm-weapon-impact{animation-duration:.001ms!important}}
#timesGameView.storm-perf-reduced .storm-weapon-impact{display:none!important}


/* ============================================================
   V97.61 • Storm Stage 7 — premium arcade presentation
   Sector-specific layered environments, presentation choreography,
   combat score/combo feedback and weapon-reactive ship lighting.
   Transform/opacity/gradient only: no new blur/backdrop filters.
   ============================================================ */
#timesGameView.blaster-active .storm-stage7-presentation{background:linear-gradient(180deg,rgba(2,8,19,.02),rgba(1,8,20,.16));}
.storm-environment{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:paint;--env-a:#49d9ff;--env-b:#6a5cff;--env-c:#102a48;--env-hot:#d8f9ff;}
.storm-environment[data-environment="orbit"]{--env-a:#a176ff;--env-b:#ff62d2;--env-c:#21113f;--env-hot:#eadbff;}
.storm-environment[data-environment="reactor"]{--env-a:#ffbf52;--env-b:#ff614f;--env-c:#45200f;--env-hot:#fff0b2;}
.storm-environment[data-environment="quantum"]{--env-a:#5cffbb;--env-b:#58a8ff;--env-c:#0c382f;--env-hot:#d5fff0;}
.storm-environment[data-environment="core"]{--env-a:#ff67c8;--env-b:#60e9ff;--env-c:#31183d;--env-hot:#fff4c8;}
.storm-env-stars,.storm-env-nebula,.storm-env-horizon,.storm-env-debris,.storm-env-speed,.storm-env-edge{position:absolute;pointer-events:none;will-change:transform,opacity}
.storm-env-stars{inset:-40% -15%;background-repeat:repeat;opacity:.55}
.storm-env-stars.stars-a{background-image:radial-gradient(circle,var(--env-hot) 0 1px,transparent 1.6px),radial-gradient(circle,var(--env-a) 0 1px,transparent 1.8px);background-size:83px 91px,137px 149px;animation:stormStage7StarsA 18s linear infinite}
.storm-env-stars.stars-b{background-image:radial-gradient(circle,var(--env-b) 0 1.4px,transparent 2px),radial-gradient(circle,rgba(255,255,255,.78) 0 .8px,transparent 1.4px);background-size:173px 189px,61px 77px;opacity:.34;animation:stormStage7StarsB 10s linear infinite}
.storm-env-nebula{inset:-10% -10% 0;background:radial-gradient(ellipse at 18% 24%,color-mix(in srgb,var(--env-a) 22%,transparent),transparent 42%),radial-gradient(ellipse at 78% 44%,color-mix(in srgb,var(--env-b) 18%,transparent),transparent 46%),linear-gradient(180deg,transparent 0 54%,color-mix(in srgb,var(--env-c) 62%,transparent) 100%);opacity:.78;animation:stormStage7Nebula 8s ease-in-out infinite alternate}
.storm-env-horizon{left:-12%;right:-12%;bottom:8%;height:27%;border-top:1px solid color-mix(in srgb,var(--env-a) 60%,transparent);background:repeating-linear-gradient(90deg,transparent 0 8%,color-mix(in srgb,var(--env-a) 12%,transparent) 8.2% 8.5%,transparent 8.7% 16%),linear-gradient(180deg,color-mix(in srgb,var(--env-a) 7%,transparent),transparent 72%);transform:perspective(260px) rotateX(58deg);transform-origin:50% 100%;opacity:.46;animation:stormStage7Grid 5s linear infinite}
.storm-env-debris{width:8px;height:8px;border:1px solid color-mix(in srgb,var(--env-hot) 72%,transparent);background:color-mix(in srgb,var(--env-a) 28%,transparent);opacity:.45;clip-path:polygon(50% 0,100% 36%,78% 100%,13% 83%,0 24%)}
.storm-env-debris.debris-a{left:14%;top:-7%;box-shadow:160px 82px 0 -2px color-mix(in srgb,var(--env-b) 30%,transparent),390px 190px 0 1px color-mix(in srgb,var(--env-a) 22%,transparent),670px 44px 0 -1px color-mix(in srgb,var(--env-hot) 20%,transparent);animation:stormStage7DebrisA 8.4s linear infinite}
.storm-env-debris.debris-b{right:19%;top:-10%;width:5px;height:12px;box-shadow:-210px 130px 0 -1px color-mix(in srgb,var(--env-hot) 28%,transparent),-520px 260px 0 0 color-mix(in srgb,var(--env-b) 30%,transparent);animation:stormStage7DebrisB 6.8s linear infinite}
.storm-env-speed{inset:0;background:repeating-linear-gradient(90deg,transparent 0 10%,color-mix(in srgb,var(--env-hot) 12%,transparent) 10.2% 10.35%,transparent 10.5% 20%);opacity:.16;transform:translateY(-35%);animation:stormStage7Speed 2.7s linear infinite}
.storm-env-edge{top:0;bottom:0;width:18%;opacity:.16}.storm-env-edge.edge-left{left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--env-a) 28%,transparent),transparent)}.storm-env-edge.edge-right{right:0;background:linear-gradient(270deg,color-mix(in srgb,var(--env-b) 26%,transparent),transparent)}
@keyframes stormStage7StarsA{to{transform:translate3d(0,28%,0)}}
@keyframes stormStage7StarsB{to{transform:translate3d(0,42%,0)}}
@keyframes stormStage7Nebula{from{transform:scale(1) translate3d(-1%,0,0);opacity:.60}to{transform:scale(1.06) translate3d(1.5%,1%,0);opacity:.82}}
@keyframes stormStage7Grid{to{background-position:120px 0,0 0}}
@keyframes stormStage7DebrisA{0%{transform:translate3d(0,-15vh,0) rotate(0deg)}100%{transform:translate3d(10vw,125vh,0) rotate(330deg)}}
@keyframes stormStage7DebrisB{0%{transform:translate3d(0,-20vh,0) rotate(0deg)}100%{transform:translate3d(-8vw,125vh,0) rotate(-290deg)}}
@keyframes stormStage7Speed{to{transform:translateY(35%)}}

/* Presentation cards: still readable over combat, but no longer generic modal slabs. */
.storm-stage7-title{overflow:hidden;min-width:min(520px,82%);padding:20px 30px 18px;border-radius:14px;clip-path:polygon(3% 0,97% 0,100% 18%,100% 82%,97% 100%,3% 100%,0 82%,0 18%);background:linear-gradient(90deg,rgba(3,13,27,.88),rgba(9,31,52,.95),rgba(3,13,27,.88));}
.storm-stage7-title::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,#56e8ff 9%,transparent),transparent);transform:translateX(-100%);animation:stormStage7TitleSweep .72s ease-out forwards;pointer-events:none}
.storm-stage7-title .storm-title-line{position:absolute;top:50%;width:110px;height:1px;background:linear-gradient(90deg,transparent,currentColor);color:#67eaff;opacity:.68}.storm-stage7-title .line-a{right:calc(100% - 118px)}.storm-stage7-title .line-b{left:calc(100% - 118px);transform:scaleX(-1)}
.storm-stage7-title .storm-title-pulse{position:absolute;left:50%;bottom:6px;width:36%;height:2px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#6cecff,transparent);animation:stormStage7TitlePulse .7s ease-in-out infinite alternate}
.storm-stage7-title.boss .storm-title-line{color:#ff72cc}.storm-stage7-title.boss .storm-title-pulse{background:linear-gradient(90deg,transparent,#ff6fc7,#ffd75a,transparent)}
@keyframes stormStage7TitleSweep{to{transform:translateX(100%)}}
@keyframes stormStage7TitlePulse{from{opacity:.35;transform:translateX(-50%) scaleX(.76)}to{opacity:1;transform:translateX(-50%) scaleX(1)}}

/* Boss entrance: always shown once per boss wave, not random. */
.storm-boss-cinematic{inset:8% 7% auto;z-index:35;grid-template-columns:112px 1fr;column-gap:18px;align-items:center;min-height:146px;padding:20px 22px 18px;border-radius:12px;clip-path:polygon(2% 0,98% 0,100% 14%,100% 86%,98% 100%,2% 100%,0 86%,0 14%);background:linear-gradient(115deg,rgba(18,5,36,.98),rgba(52,8,58,.95) 58%,rgba(8,22,42,.96));border:1px solid rgba(255,101,202,.62);box-shadow:0 18px 50px rgba(0,0,0,.42),0 0 34px rgba(255,82,191,.20)}
.storm-boss-cinematic .storm-boss-sigil{grid-row:1/6;position:relative;width:104px;height:104px;display:grid;place-items:center;border:1px solid rgba(255,213,90,.56);border-radius:50%;background:radial-gradient(circle,rgba(255,91,195,.25),rgba(31,8,49,.92) 64%,transparent 66%)}
.storm-boss-cinematic .storm-boss-sigil b{font:1000 2.25rem/1 ui-monospace;color:#fff;text-shadow:0 0 14px #ff5bc3}.storm-boss-cinematic .storm-boss-sigil i{position:absolute;inset:8px;border:1px dashed rgba(255,217,106,.42);border-radius:50%;animation:stormStage7BossSpin 5s linear infinite}.storm-boss-cinematic .storm-boss-sigil i:last-child{inset:20px;border-style:solid;border-color:rgba(102,229,255,.34);animation-direction:reverse;animation-duration:3.2s}
.storm-boss-cinematic small,.storm-boss-cinematic strong,.storm-boss-cinematic span,.storm-boss-cinematic em,.storm-boss-cinematic .storm-boss-threat{grid-column:2}.storm-boss-cinematic strong{font-size:1.45rem}.storm-boss-cinematic .storm-boss-threat{display:flex;gap:8px;align-items:center;margin-top:5px}.storm-boss-cinematic .storm-boss-threat b,.storm-boss-cinematic .storm-boss-threat span{padding:4px 7px;border-radius:5px;border:1px solid rgba(255,116,199,.34);font:950 .52rem/1 ui-monospace;letter-spacing:.1em;color:#ffd9f1}.storm-boss-cinematic .storm-boss-threat span{border-color:rgba(255,215,90,.36);color:#ffe98c}
@keyframes stormStage7BossSpin{to{transform:rotate(360deg)}}

/* Score and combo feedback: informational, short-lived, never blocks controls. */
.storm-score-presentation{position:absolute;z-index:34;transform:translate(-50%,-50%);pointer-events:none;text-align:center;animation:stormStage7Score .68s cubic-bezier(.2,.8,.2,1) forwards}.storm-score-presentation strong{display:block;font:1000 .88rem/1 ui-monospace;color:#fff5a8;text-shadow:0 0 9px rgba(255,213,78,.70)}.storm-score-presentation span{display:block;margin-top:3px;font:950 .43rem/1 ui-monospace;letter-spacing:.12em;color:#a9efff}.storm-score-presentation.heavy strong{font-size:1.08rem;color:#ffd26f}.storm-score-presentation.heavy span{color:#ffb7e7}
@keyframes stormStage7Score{0%{opacity:0;transform:translate(-50%,-30%) scale(.74)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}100%{opacity:0;transform:translate(-50%,-130%) scale(.96)}}
.storm-combo-presentation{position:absolute;z-index:33;left:50%;top:28%;min-width:210px;transform:translate(-50%,-50%) scale(.72);opacity:0;text-align:center;pointer-events:none;transition:opacity .16s ease,transform .18s cubic-bezier(.2,.9,.2,1);color:#72eeff}.storm-combo-presentation.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.storm-combo-presentation small{display:block;font:950 .5rem/1 ui-monospace;letter-spacing:.2em;color:#a7edff}.storm-combo-presentation strong{display:block;margin:3px 0;font:1000 2.2rem/.95 ui-monospace;color:#fff;text-shadow:0 0 16px currentColor}.storm-combo-presentation span{display:block;font:900 .55rem/1.2 ui-monospace;letter-spacing:.08em;color:#ccecff}.storm-combo-presentation i,.storm-combo-presentation b{position:absolute;left:50%;top:50%;width:170px;height:1px;background:linear-gradient(90deg,transparent,currentColor,transparent);transform:translate(-50%,-50%) rotate(12deg)}.storm-combo-presentation b{transform:translate(-50%,-50%) rotate(-12deg)}.storm-combo-presentation.overdrive{color:#ff71d2}.storm-combo-presentation.overdrive strong{color:#fff1c1}

/* Weapon-reactive ship lighting with box-shadow only. */
#timesGameView.blaster-active .times-defender.shooter-live .sigma-ship-frame{border-radius:46%;box-shadow:0 0 22px rgba(var(--storm-weapon-rgb,127,238,255),.16),inset 0 0 18px rgba(var(--storm-weapon-rgb,127,238,255),.08)}
#timesGameView.blaster-active .times-defender.shooter-live .sigma-ship-cannon{box-shadow:0 0 14px rgba(var(--storm-weapon-rgb,127,238,255),.34)}
#timesGameView.direct-flight-held .times-defender.shooter-live .sigma-ship-frame{box-shadow:0 0 30px rgba(var(--storm-weapon-rgb,127,238,255),.28),inset 0 0 20px rgba(var(--storm-weapon-rgb,127,238,255),.12)}

@media (pointer:coarse),(max-width:900px){
  .storm-env-stars.stars-b,.storm-env-debris.debris-b{display:none}
  .storm-env-nebula{opacity:.58}.storm-env-horizon{opacity:.32}.storm-env-speed{opacity:.10}
  .storm-boss-cinematic{inset:6% 5% auto;grid-template-columns:76px 1fr;column-gap:12px;padding:14px;min-height:112px}.storm-boss-cinematic .storm-boss-sigil{width:72px;height:72px}.storm-boss-cinematic .storm-boss-sigil b{font-size:1.5rem}.storm-boss-cinematic strong{font-size:1.06rem}.storm-boss-cinematic em{font-size:.66rem}
  .storm-stage7-title{min-width:86%;padding:16px 18px}.storm-stage7-title strong{font-size:1.18rem}
  .storm-combo-presentation{top:24%}.storm-combo-presentation strong{font-size:1.8rem}
}
#timesGameView.storm-perf-reduced .storm-env-stars.stars-b,#timesGameView.storm-perf-reduced .storm-env-debris,#timesGameView.storm-perf-reduced .storm-env-speed,#timesGameView.storm-perf-reduced .storm-score-presentation,#timesGameView.storm-perf-reduced .storm-combo-presentation{display:none!important}
#timesGameView.storm-perf-reduced .storm-env-nebula,#timesGameView.storm-perf-reduced .storm-env-horizon{animation:none!important;opacity:.34}
@media(prefers-reduced-motion:reduce){.storm-env-stars,.storm-env-nebula,.storm-env-horizon,.storm-env-debris,.storm-env-speed,.storm-stage7-title::before,.storm-stage7-title .storm-title-pulse,.storm-boss-cinematic .storm-boss-sigil i,.storm-score-presentation{animation:none!important}.storm-combo-presentation{transition:none!important}}


/* V97.62 • Storm Stage 8 • Maths ↔ Combat Link + pacing director */
.storm-math-link{margin:8px 0 12px;padding:10px 14px;border:1px solid rgba(65,235,214,.24);border-radius:14px;background:linear-gradient(135deg,rgba(6,24,42,.94),rgba(9,42,58,.90));box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);position:relative;overflow:hidden;contain:paint}
.storm-math-link-copy{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:baseline}.storm-math-link-copy>span{font-size:10px;letter-spacing:.16em;font-weight:900;color:#55e7d4}.storm-math-link-copy>strong{font-size:12px;color:#fff}.storm-math-link-copy>small{font-size:10px;color:rgba(229,246,255,.72);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.storm-math-link-track{height:7px;margin-top:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;position:relative}.storm-math-link-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#21c9b3,#64f0c2,#ffd65a);transition:width .22s ease;box-shadow:0 0 12px rgba(72,236,196,.3)}
.storm-math-link-marks{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3px;padding-left:20%}.storm-math-link-marks b{font-size:8px;color:rgba(202,230,239,.42);font-weight:800;text-align:right}.storm-math-link[data-tier="2"]{border-color:rgba(80,180,255,.38)}.storm-math-link[data-tier="3"]{border-color:rgba(255,202,82,.42)}.storm-math-link[data-tier="4"]{border-color:rgba(255,215,87,.72);background:linear-gradient(135deg,rgba(19,31,54,.96),rgba(37,52,34,.94))}.storm-math-link[data-tier="4"] .storm-math-link-track i{background:linear-gradient(90deg,#55e7d4,#ffd85d,#fff0a0)}
.storm-math-link.is-locked .storm-math-link-copy>span::after{content:" • LOCKED";color:#ffd85d}.storm-combat-link{position:absolute;left:50%;top:72px;z-index:16;transform:translateX(-50%);min-width:min(72%,520px);padding:8px 14px;border:1px solid rgba(84,235,214,.34);border-radius:12px;background:rgba(5,19,34,.88);text-align:center;pointer-events:none;contain:paint;animation:stormCombatLinkIn .48s ease both}.storm-combat-link span{display:block;font-size:9px;letter-spacing:.18em;font-weight:900;color:#55e7d4}.storm-combat-link strong{display:block;font-size:12px;color:#fff;margin-top:2px}.storm-combat-link small{display:block;font-size:9px;color:rgba(225,244,255,.7);margin-top:2px}.storm-combat-link.max-link{border-color:rgba(255,217,92,.72);background:rgba(31,29,16,.90)}
@keyframes stormCombatLinkIn{from{opacity:0;transform:translate(-50%,-8px) scale(.97)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
#timesGameView.blaster-active[data-combat-band] .storm-math-link{opacity:.85}
@media(max-width:700px){.storm-math-link{margin:6px 8px 10px;padding:8px 10px}.storm-math-link-copy{grid-template-columns:auto auto;gap:5px 8px}.storm-math-link-copy>small{grid-column:1/-1}.storm-combat-link{top:62px;min-width:86%;padding:7px 10px}.storm-combat-link small{display:none}}
@media(prefers-reduced-motion:reduce){.storm-math-link-track i,.storm-combat-link{transition:none;animation:none}}

/* ============================================================
   V97.64 • Storm Stage 6 completion — multi-phase combat bosses
   Maths breaks the shield; combat finishes the rival core.
   Transform/opacity/gradient only: no blur/backdrop-filter effects.
   ============================================================ */
#timesGameView[data-combat-boss] .times-arena{--boss-accent:#ff72c7}
.storm-stage6-boss-arena{contain:paint}
.storm-combat-boss-hud{position:absolute;z-index:24;left:50%;top:72px;width:min(72%,620px);transform:translateX(-50%);padding:9px 13px 10px;border:1px solid rgba(255,118,202,.42);border-radius:12px;background:linear-gradient(180deg,rgba(19,7,31,.94),rgba(6,19,35,.90));box-shadow:0 9px 28px rgba(0,0,0,.28);pointer-events:none;contain:paint}
.storm-combat-boss-hud>small{display:block;font:900 .48rem/1 ui-monospace;letter-spacing:.16em;color:#ff96d5}.storm-combat-boss-hud>strong{display:block;margin:3px 0 7px;font:1000 1rem/1 ui-monospace;letter-spacing:.06em;color:#fff}.storm-combat-boss-hud>div:last-child{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:5px}.storm-combat-boss-hud b,.storm-combat-boss-hud span,.storm-combat-boss-hud em{font:900 .46rem/1 ui-monospace;letter-spacing:.08em}.storm-combat-boss-hud b{color:#ffd967}.storm-combat-boss-hud span{color:#b7edff;text-align:center}.storm-combat-boss-hud em{color:#fff;font-style:normal}
.boss-combat-meter{height:8px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}.boss-combat-meter i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff4fa8,#ff7fca,#ffd75a);transition:width .16s linear;box-shadow:0 0 12px rgba(255,98,190,.28)}
.blaster-target.storm-combat-boss{--boss-accent:#ff72c7;position:absolute;z-index:22;left:50%;top:185px;width:196px;height:116px;margin:-58px 0 0 -98px;border:0;background:transparent;box-shadow:none;pointer-events:none;animation:stormCombatBossPatrol var(--boss-move,4.4s) ease-in-out infinite;will-change:transform;contain:paint}
.storm-combat-boss .storm-combat-boss-shell{position:absolute;inset:6px 10px 24px;border:2px solid color-mix(in srgb,var(--boss-accent) 70%,#fff 30%);clip-path:polygon(18% 0,82% 0,100% 32%,88% 82%,62% 100%,38% 100%,12% 82%,0 32%);background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(11,20,42,.96) 28%,rgba(31,9,48,.98) 70%,rgba(255,255,255,.07));box-shadow:0 0 0 2px rgba(255,255,255,.035),0 0 24px color-mix(in srgb,var(--boss-accent) 34%,transparent)}
.storm-combat-boss .storm-combat-boss-shell::before,.storm-combat-boss .storm-combat-boss-shell::after{content:"";position:absolute;top:47%;width:34%;height:16%;background:linear-gradient(90deg,transparent,var(--boss-accent));opacity:.8}.storm-combat-boss .storm-combat-boss-shell::before{right:100%;transform:skewY(-16deg)}.storm-combat-boss .storm-combat-boss-shell::after{left:100%;transform:scaleX(-1) skewY(-16deg)}
.storm-combat-boss .boss-wing{position:absolute;top:22%;width:35%;height:42%;border:1px solid color-mix(in srgb,var(--boss-accent) 60%,#fff 20%);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(2,12,28,.92));clip-path:polygon(0 22%,100% 0,82% 100%,18% 78%)}.storm-combat-boss .wing-a{left:4%}.storm-combat-boss .wing-b{right:4%;transform:scaleX(-1)}
.storm-combat-boss .boss-reactor{position:absolute;left:50%;top:47%;width:34px;height:34px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid #fff;background:radial-gradient(circle,#fff 0 14%,var(--boss-accent) 16% 36%,rgba(8,14,32,.96) 40% 100%);box-shadow:0 0 18px var(--boss-accent);animation:stormBossCorePulse .72s ease-in-out infinite alternate}.storm-combat-boss .boss-armour{position:absolute;top:12%;width:21%;height:16%;background:linear-gradient(90deg,var(--boss-accent),rgba(255,255,255,.58));opacity:.72}.storm-combat-boss .armour-a{left:27%;transform:skewX(-18deg)}.storm-combat-boss .armour-b{right:27%;transform:scaleX(-1) skewX(-18deg)}.storm-combat-boss .storm-combat-boss-shell>b{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);font:1000 1.05rem/1 ui-monospace;color:#071321;z-index:2}.storm-combat-boss>strong,.storm-combat-boss>small{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap;pointer-events:none}.storm-combat-boss>strong{bottom:8px;font:1000 .58rem/1 ui-monospace;color:#fff;letter-spacing:.09em}.storm-combat-boss>small{bottom:-5px;font:850 .39rem/1 ui-monospace;color:#b8eaff;letter-spacing:.08em}
.storm-combat-boss[data-phase="1"]{--boss-accent:#ffb45d}.storm-combat-boss[data-phase="2"]{--boss-accent:#ff5578;animation-duration:calc(var(--boss-move,4.4s) * .74)}.storm-combat-boss.phase-transition{animation-play-state:paused;opacity:.72}.storm-combat-boss.phase-transition .storm-combat-boss-shell{animation:stormBossPhasePulse .24s steps(2,end) infinite}.storm-combat-boss.defeated{animation:none!important;transform:scale(.88);opacity:.22;transition:opacity .7s ease,transform .7s ease}
@keyframes stormCombatBossPatrol{0%,100%{transform:translate3d(-24vw,0,0)}25%{transform:translate3d(-8vw,13px,0)}50%{transform:translate3d(24vw,0,0)}75%{transform:translate3d(7vw,18px,0)}}
@keyframes stormBossCorePulse{from{opacity:.72;transform:translate(-50%,-50%) scale(.88)}to{opacity:1;transform:translate(-50%,-50%) scale(1.10)}}
@keyframes stormBossPhasePulse{50%{opacity:.42}}
.storm-boss-signature-warning{position:absolute;z-index:36;left:50%;top:39%;transform:translate(-50%,-50%);min-width:220px;text-align:center;padding:9px 14px;border:1px solid rgba(255,99,137,.66);border-radius:9px;background:rgba(31,5,19,.94);pointer-events:none;animation:stormBossWarning .32s steps(2,end) infinite}.storm-boss-signature-warning span{display:block;font:1000 .68rem/1 ui-monospace;letter-spacing:.12em;color:#fff}.storm-boss-signature-warning b{display:block;margin-top:5px;font:900 .45rem/1 ui-monospace;letter-spacing:.16em;color:#ffd76d}.storm-boss-signature-warning.warning-phase{border-color:rgba(174,132,255,.72)}.storm-boss-signature-warning.warning-sniper{border-color:rgba(255,230,94,.72)}.storm-boss-signature-warning.warning-shield{border-color:rgba(95,231,255,.72)}
@keyframes stormBossWarning{50%{opacity:.56}}
.storm-enemy-shot.storm-boss-shot{box-shadow:0 0 12px currentColor;z-index:31}.storm-enemy-shot.storm-boss-shot::before{content:"";position:absolute;inset:-5px;border:1px solid currentColor;border-radius:50%;opacity:.42}
.storm-boss-phase-flash{position:absolute;z-index:37;left:50%;top:38%;transform:translate(-50%,-50%);width:min(72%,560px);padding:18px 22px;text-align:center;border:1px solid rgba(255,184,82,.62);background:linear-gradient(120deg,rgba(23,8,37,.96),rgba(55,19,17,.95));clip-path:polygon(3% 0,97% 0,100% 20%,97% 100%,3% 100%,0 80%,0 20%);pointer-events:none;animation:stormBossPhaseCard .96s ease both}.storm-boss-phase-flash small,.storm-boss-phase-flash strong,.storm-boss-phase-flash span{display:block}.storm-boss-phase-flash small{font:900 .48rem/1 ui-monospace;letter-spacing:.18em;color:#ffacd8}.storm-boss-phase-flash strong{margin:5px 0;font:1000 1.55rem/1 ui-monospace;color:#fff}.storm-boss-phase-flash span{font:950 .58rem/1 ui-monospace;letter-spacing:.10em;color:#ffe07d}.storm-boss-phase-flash.phase-2{border-color:rgba(255,84,117,.76);background:linear-gradient(120deg,rgba(37,5,23,.97),rgba(63,16,12,.95))}
@keyframes stormBossPhaseCard{0%{opacity:0;transform:translate(-50%,-50%) scale(.82)}18%,74%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.04)}}
.storm-boss-destruction{position:absolute;z-index:38;width:210px;height:150px;transform:translate(-50%,-50%);pointer-events:none;contain:paint}.storm-boss-destruction i,.storm-boss-destruction b,.storm-boss-destruction em{position:absolute;left:50%;top:50%;display:block;border-radius:50%;transform:translate(-50%,-50%)}.storm-boss-destruction i{width:38px;height:38px;background:radial-gradient(circle,#fff,#ffd55c 34%,#ff596f 58%,transparent 70%);animation:stormBossBoom .7s ease-out forwards}.storm-boss-destruction i:nth-child(2){left:30%;top:40%;animation-delay:.12s}.storm-boss-destruction i:nth-child(3){left:69%;top:34%;animation-delay:.22s}.storm-boss-destruction i:nth-child(4){left:58%;top:68%;animation-delay:.34s}.storm-boss-destruction b{width:120px;height:120px;border:3px solid #ffd75a;animation:stormBossRing .9s ease-out forwards}.storm-boss-destruction em{width:5px;height:145px;background:linear-gradient(180deg,transparent,#fff,#ff7ccf,transparent);animation:stormBossSlash .8s ease-out forwards}
@keyframes stormBossBoom{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}24%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(3.2)}}@keyframes stormBossRing{from{opacity:1;transform:translate(-50%,-50%) scale(.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.9)}}@keyframes stormBossSlash{from{opacity:1;transform:translate(-50%,-50%) rotate(35deg) scaleY(.4)}to{opacity:0;transform:translate(-50%,-50%) rotate(35deg) scaleY(1.6)}}
@media(pointer:coarse),(max-width:900px){.storm-combat-boss-hud{top:64px;width:88%;padding:7px 10px}.storm-combat-boss-hud>strong{font-size:.82rem}.storm-combat-boss-hud>div:last-child{gap:5px}.storm-combat-boss-hud span{font-size:.40rem}.blaster-target.storm-combat-boss{top:168px;width:154px;height:94px;margin:-47px 0 0 -77px}.storm-combat-boss .boss-reactor{width:28px;height:28px}.storm-boss-signature-warning{top:36%;min-width:188px}.storm-boss-phase-flash{top:34%;width:86%;padding:15px 16px}.storm-boss-phase-flash strong{font-size:1.22rem}}
#timesGameView.storm-perf-reduced .storm-combat-boss .boss-reactor,#timesGameView.storm-perf-reduced .storm-boss-signature-warning{animation:none!important}#timesGameView.storm-perf-reduced .storm-boss-destruction i:nth-child(n+4){display:none}
@media(prefers-reduced-motion:reduce){.blaster-target.storm-combat-boss,.storm-combat-boss .boss-reactor,.storm-combat-boss.phase-transition .storm-combat-boss-shell,.storm-boss-signature-warning,.storm-boss-phase-flash,.storm-boss-destruction i,.storm-boss-destruction b,.storm-boss-destruction em{animation:none!important}.boss-combat-meter i{transition:none!important}}

/* ============================================================
   V97.65 • Storm Stage 10 • Math Power 2.0
   Maths performance becomes visible combat power.
   Lightweight transform/opacity effects only for Android safety.
   ============================================================ */
.storm-math-power-entry{position:absolute;z-index:31;left:50%;top:21%;transform:translateX(-50%);min-width:min(82%,560px);padding:13px 18px 12px;border:1px solid rgba(93,237,216,.5);border-radius:14px;background:linear-gradient(135deg,rgba(5,21,38,.96),rgba(9,43,58,.95));box-shadow:0 12px 28px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.04);text-align:center;pointer-events:none;animation:stormMathPowerEntry 2.4s ease both;contain:paint}
.storm-math-power-entry span{display:block;font-size:10px;letter-spacing:.19em;font-weight:950;color:#60ead7}.storm-math-power-entry strong{display:block;margin-top:3px;font-size:1.22rem;letter-spacing:.04em;color:#fff}.storm-math-power-entry small{display:block;margin-top:4px;font-size:10px;color:rgba(231,248,255,.78)}.storm-math-power-entry em{display:block;margin-top:7px;font-size:10px;font-style:normal;font-weight:950;letter-spacing:.09em;color:#ffe071}
.storm-math-power-entry.tier-3{border-color:rgba(255,194,71,.68);background:linear-gradient(135deg,rgba(34,24,13,.96),rgba(51,39,13,.94))}.storm-math-power-entry.tier-4{border-color:rgba(255,222,86,.9);background:linear-gradient(135deg,rgba(35,27,9,.98),rgba(17,45,39,.96));box-shadow:0 12px 30px rgba(0,0,0,.38),0 0 24px rgba(255,210,76,.18),inset 0 0 0 1px rgba(255,255,255,.08)}
#timesGameView.math-special-ready #timesBlastBtn,#timesGameView.math-special-ready .times-bonus-weapon{border-color:rgba(255,220,89,.88);box-shadow:0 0 28px rgba(255,206,60,.24),0 8px 22px rgba(0,0,0,.28)}
#timesGameView.math-special-ready #timesBlastBtn .times-power-count{font-weight:950}
@keyframes stormMathPowerEntry{0%{opacity:0;transform:translate(-50%,-12px) scale(.95)}12%{opacity:1;transform:translate(-50%,0) scale(1.02)}22%,76%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-5px) scale(.985)}}
@media(max-width:700px){.storm-math-power-entry{top:18%;min-width:90%;padding:11px 12px}.storm-math-power-entry strong{font-size:1.05rem}.storm-math-power-entry small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.storm-math-power-entry{animation:none;opacity:1}}


/* V97.66 • Storm Stage 11 • Combat Feel
   Short transform/opacity/box-shadow effects only: no blur/backdrop-filter. */
#timesGameView.blaster-active .times-defender.stage11-recoil-pulse .sigma-flagship-svg{animation:storm11RecoilPulse .082s cubic-bezier(.18,.78,.28,1)}
#timesGameView.blaster-active .times-defender.stage11-recoil-twin .sigma-flagship-svg{animation:storm11RecoilTwin .105s cubic-bezier(.18,.78,.28,1)}
#timesGameView.blaster-active .times-defender.stage11-recoil-lance .sigma-flagship-svg{animation:storm11RecoilLance .17s cubic-bezier(.12,.72,.22,1)}
#timesGameView.blaster-active .times-defender.stage11-recoil-scatter .sigma-flagship-svg{animation:storm11RecoilScatter .125s cubic-bezier(.14,.74,.24,1)}
@keyframes storm11RecoilPulse{0%{transform:translate3d(0,0,0)}35%{transform:translate3d(0,2px,0) scale(.995)}100%{transform:translate3d(0,0,0)}}
@keyframes storm11RecoilTwin{0%{transform:translate3d(0,0,0)}30%{transform:translate3d(-1px,2.5px,0) rotate(-.45deg)}60%{transform:translate3d(1px,1px,0) rotate(.35deg)}100%{transform:translate3d(0,0,0)}}
@keyframes storm11RecoilLance{0%{transform:translate3d(0,0,0)}24%{transform:translate3d(0,5px,0) scale(.985)}55%{transform:translate3d(0,1.5px,0) scale(1.006)}100%{transform:translate3d(0,0,0)}}
@keyframes storm11RecoilScatter{0%{transform:translate3d(0,0,0)}30%{transform:translate3d(0,3px,0) rotate(-.8deg)}55%{transform:translate3d(0,1px,0) rotate(.65deg)}100%{transform:translate3d(0,0,0)}}

#timesGameView .blaster-target.stage11-impact-pulse{box-shadow:0 0 0 2px rgba(127,238,255,.72),0 0 20px rgba(83,218,255,.46)!important}
#timesGameView .blaster-target.stage11-impact-twin{box-shadow:0 0 0 2px rgba(119,255,226,.7),-8px 0 16px rgba(82,255,222,.24),8px 0 16px rgba(82,255,222,.24)!important}
#timesGameView .blaster-target.stage11-impact-lance{box-shadow:0 0 0 3px rgba(255,225,109,.78),0 0 28px rgba(255,185,67,.52)!important}
#timesGameView .blaster-target.stage11-impact-scatter{box-shadow:0 0 0 2px rgba(255,127,222,.72),0 0 24px rgba(255,91,211,.38)!important}
#timesGameView .blaster-target.stage11-impact-heavy{outline:1px solid rgba(255,255,255,.58);outline-offset:3px}

.storm-kill-shockwave{position:absolute;z-index:28;width:14px;height:14px;transform:translate(-50%,-50%);pointer-events:none;contain:paint;color:#7feeff}
.storm-kill-shockwave.weapon-twin{color:#77ffe2}.storm-kill-shockwave.weapon-lance{color:#ffe16d}.storm-kill-shockwave.weapon-scatter{color:#ff7fde}
.storm-kill-shockwave>span,.storm-kill-shockwave>b{position:absolute;left:50%;top:50%;border:2px solid currentColor;border-radius:50%;transform:translate(-50%,-50%);animation:storm11KillRing .46s ease-out forwards}
.storm-kill-shockwave>b{animation-delay:.045s;opacity:.7}
.storm-kill-shockwave>i{position:absolute;left:50%;top:50%;width:3px;height:18px;border-radius:999px;background:linear-gradient(180deg,#fff,currentColor,transparent);transform-origin:50% 0;animation:storm11KillShard .48s ease-out forwards}
.storm-kill-shockwave>i:nth-of-type(1){--storm11-a:35deg}.storm-kill-shockwave>i:nth-of-type(2){--storm11-a:125deg}.storm-kill-shockwave>i:nth-of-type(3){--storm11-a:215deg}.storm-kill-shockwave>i:nth-of-type(4){--storm11-a:305deg}
.storm-kill-shockwave.heavy{transform:translate(-50%,-50%) scale(1.34)}.storm-kill-shockwave.elite{transform:translate(-50%,-50%) scale(1.62)}
@keyframes storm11KillRing{0%{width:8px;height:8px;opacity:1}100%{width:82px;height:82px;opacity:0}}
@keyframes storm11KillShard{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--storm11-a)) translateY(0) scaleY(.8)}100%{opacity:0;transform:translate(-50%,-50%) rotate(var(--storm11-a)) translateY(-48px) scaleY(.18)}}

@media(prefers-reduced-motion:reduce){
  #timesGameView.blaster-active .times-defender.stage11-recoil-pulse .sigma-flagship-svg,
  #timesGameView.blaster-active .times-defender.stage11-recoil-twin .sigma-flagship-svg,
  #timesGameView.blaster-active .times-defender.stage11-recoil-lance .sigma-flagship-svg,
  #timesGameView.blaster-active .times-defender.stage11-recoil-scatter .sigma-flagship-svg,
  .storm-kill-shockwave>span,.storm-kill-shockwave>b,.storm-kill-shockwave>i{animation:none!important}
}
#timesGameView.storm-perf-reduced .storm-kill-shockwave{display:none!important}


/* ============================================================
   V97.67 • Storm Stage 11 Combat Visibility Hotfix
   Keep live enemies on the combat plane and make every autofire
   cycle visibly cross the battlefield. Essential projectile cues
   remain visible under reduced-motion settings.
   ============================================================ */
#timesGameView.storm-running.blaster-active .storm-worldscape{z-index:0!important}
#timesGameView.storm-running.blaster-active .sigma-blaster-phase{z-index:5!important}
#timesGameView.storm-running.blaster-active .blaster-target{z-index:24!important;opacity:1;isolation:isolate}
#timesGameView.storm-running.blaster-active .times-defender.shooter-live{z-index:28!important}
#timesGameView.storm-running.blaster-active .blaster-autofire-bolt{z-index:34!important;opacity:1;animation-name:v9767AutofireBolt!important;animation-timing-function:linear!important;animation-fill-mode:forwards!important}
#timesGameView.storm-running.blaster-active .blaster-beam{z-index:35!important}
#timesGameView.storm-running.blaster-active .storm-muzzle-flash,
#timesGameView.storm-running.blaster-active .storm-hit-sparks,
#timesGameView.storm-running.blaster-active .storm-weapon-impact{z-index:36!important}

@keyframes v9767AutofireBolt{
  0%{opacity:0;transform:translate(-50%,-100%) translateX(0) scaleY(.72)}
  8%{opacity:1}
  72%{opacity:.96}
  100%{opacity:.12;transform:translate(-50%,var(--bolt-travel,-620px)) translateX(var(--bolt-drift,0px)) scaleY(1.12)}
}

@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .blaster-autofire-bolt{
    animation:v9767AutofireBoltReduced .26s linear forwards!important
  }
}
@keyframes v9767AutofireBoltReduced{
  0%{opacity:1;transform:translate(-50%,-100%) scaleY(.85)}
  100%{opacity:0;transform:translate(-50%,-150px) scaleY(1)}
}

/* ============================================================
   V97.68 • Storm Stage 12 • Enemy Intelligence 2.0
   Reactive tactical director + fair predictive hunter telegraphs.
   Lightweight transform/opacity/border effects only.
   ============================================================ */
.storm-tactical-callout{position:absolute;z-index:39;left:50%;top:29%;width:min(78%,520px);transform:translate(-50%,-10px) scale(.97);opacity:0;padding:9px 13px 10px;border:1px solid rgba(255,110,132,.62);border-radius:10px;background:linear-gradient(120deg,rgba(31,6,18,.95),rgba(7,23,38,.94));box-shadow:0 10px 24px rgba(0,0,0,.30);text-align:center;pointer-events:none;contain:paint;transition:opacity .18s ease,transform .18s ease}
.storm-tactical-callout.show{opacity:1;transform:translate(-50%,0) scale(1)}
.storm-tactical-callout small,.storm-tactical-callout strong,.storm-tactical-callout span{display:block}.storm-tactical-callout small{font:950 .43rem/1 ui-monospace;letter-spacing:.16em;color:#ff91a6}.storm-tactical-callout strong{margin:4px 0;font:1000 .82rem/1 ui-monospace;letter-spacing:.08em;color:#fff}.storm-tactical-callout span{font:850 .46rem/1.2 ui-monospace;letter-spacing:.05em;color:#c7ebff}
.storm-tactical-callout.doctrine-recovery{border-color:rgba(95,232,210,.62);background:linear-gradient(120deg,rgba(5,34,37,.96),rgba(6,24,39,.94))}.storm-tactical-callout.doctrine-recovery small{color:#63ead7}.storm-tactical-callout.doctrine-overdrive{border-color:rgba(255,218,84,.78);background:linear-gradient(120deg,rgba(39,27,5,.97),rgba(37,11,24,.95))}.storm-tactical-callout.doctrine-overdrive small{color:#ffe26d}
.storm-enemy-reticle.shot-hunter{border-color:#ffad5f}.storm-enemy-reticle.shot-hunter::before,.storm-enemy-reticle.shot-hunter::after{background:#ffad5f}.storm-enemy-warning.warning-hunter{color:#ffd3a6;border-color:rgba(255,165,87,.72);background:rgba(43,21,4,.94)}
.blaster-target.enemy-dodger.attack-primed,.blaster-target.enemy-charger.attack-primed{outline:2px solid rgba(255,174,88,.72);outline-offset:4px}
@media(max-width:700px){.storm-tactical-callout{top:26%;width:88%;padding:8px 10px}.storm-tactical-callout strong{font-size:.70rem}.storm-tactical-callout span{font-size:.42rem}}
@media(prefers-reduced-motion:reduce){.storm-tactical-callout{transition:none!important}.storm-enemy-reticle.shot-hunter{animation-duration:.001ms!important}}
#timesGameView.storm-perf-reduced .storm-tactical-callout{box-shadow:none}

/* ============================================================
   V97.69 • Storm control/combat hotfix
   Standard weapons are fixed to the ship. A persistent forward
   stream makes the firing lane readable; learners move to aim.
   ============================================================ */
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer{
  position:absolute;inset:0;z-index:33!important;pointer-events:none;overflow:hidden;
}
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer>i{
  --forward-angle:0deg;
  position:absolute;width:3px;transform-origin:50% 100%;transform:translateX(-50%) rotate(var(--forward-angle));
  opacity:.40;border-radius:999px;
  background:repeating-linear-gradient(180deg,rgba(255,255,255,.96) 0 7px,rgba(var(--storm-weapon-rgb,127,238,255),.92) 8px 18px,rgba(var(--storm-weapon-rgb,127,238,255),.08) 19px 31px,transparent 32px 43px);
  box-shadow:0 0 5px rgba(var(--storm-weapon-rgb,127,238,255),.72),0 0 14px rgba(var(--storm-weapon-rgb,127,238,255),.28);
  animation:v9769ForwardFire .24s linear infinite;will-change:background-position,opacity;
}
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer.weapon-lance>i{width:6px;opacity:.48;box-shadow:0 0 8px rgba(255,225,109,.82),0 0 19px rgba(255,150,70,.30)}
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer.weapon-twin>i{width:3px;opacity:.42}
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer.weapon-scatter>i{width:2px;opacity:.32}
@keyframes v9769ForwardFire{from{background-position:0 0}to{background-position:0 -43px}}

/* Enemies now enter from beyond the top of the visible combat frame. */
#timesGameView.storm-running.blaster-active .blaster-target{visibility:visible}

/* The missile rack is alignment-gated in V97.69; its visible trajectory is straight. */
#timesGameView.storm-running.blaster-active .storm-straight-missile{animation:stormMissileLaunch .52s linear forwards!important}

@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .storm-forward-fire-layer>i{
    animation:none!important;opacity:.34;background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(var(--storm-weapon-rgb,127,238,255),.64) 55%,rgba(var(--storm-weapon-rgb,127,238,255),.18));
  }
}


/* ============================================================
   V97.70 • Storm Stage 12.5 • Premium Shooter Foundation
   One Canvas 2D combat presentation layer + reactive hero craft.
   Collision/gameplay remains deterministic in the proven DOM path.
   ============================================================ */
#timesGameView.storm-running.blaster-active .storm-combat-canvas{
  position:absolute;inset:0;z-index:31;width:100%;height:100%;pointer-events:none;opacity:0;
  contain:strict;will-change:contents;transition:opacity .12s linear;
}
#timesGameView.storm-running.blaster-active .storm-combat-canvas.live{opacity:1}
#timesGameView.storm-running.blaster-active .blaster-target{z-index:26!important}
#timesGameView.storm-running.blaster-active .times-defender.shooter-live{
  z-index:34!important;width:138px;height:156px;transform-style:preserve-3d;will-change:transform;
  filter:drop-shadow(0 16px 22px rgba(0,0,0,.42)) drop-shadow(0 0 13px rgba(84,224,255,.28));
}
#timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{
  width:116px;height:136px;filter:drop-shadow(0 8px 7px rgba(0,0,0,.36)) drop-shadow(0 0 9px rgba(113,239,255,.20));
  transform-style:preserve-3d;
}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-svg{overflow:visible;shape-rendering:geometricPrecision}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-hull{
  stroke-width:3.5;stroke:rgba(181,249,255,.98);filter:drop-shadow(0 0 6px rgba(114,237,255,.24));
}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-keel{fill:rgba(5,14,27,.68);stroke:rgba(211,252,255,.30);stroke-width:2}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-wing{stroke-width:3.4;stroke:rgba(147,238,255,.88)}
#timesGameView.storm-running.blaster-active .times-defender .sigma-wing-inset{fill:rgba(217,252,255,.18);stroke:rgba(109,227,255,.22);stroke-width:1.4}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-cannon{stroke-width:3;filter:drop-shadow(0 0 7px rgba(115,241,255,.34))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-cannon-core{fill:#f5ffff;filter:drop-shadow(0 0 4px rgba(122,242,255,.62))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-canopy{
  stroke-width:2.9;stroke:#f7ffff;filter:drop-shadow(0 0 8px rgba(125,234,255,.36));
}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-core-band{stroke-width:8;filter:drop-shadow(0 0 7px rgba(103,240,255,.56))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-core{filter:drop-shadow(0 0 8px rgba(152,248,255,.90)) drop-shadow(0 0 18px rgba(86,205,255,.36))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster{height:var(--stage125-thrust,58px);opacity:var(--stage125-glow,.82);transition:height .06s linear,opacity .06s linear}
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster-main{height:calc(var(--stage125-thrust,58px) + 10px);width:19px}
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster-port,
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster-starboard{height:calc(var(--stage125-thrust,58px) - 8px)}
#timesGameView.storm-running.blaster-active .storm-forward-fire-layer{opacity:.10!important}
#timesGameView.storm-running.blaster-active .blaster-autofire-bolt{opacity:.18!important}
#timesGameView.storm-running.blaster-active.direct-flight-held .times-defender .sigma-flagship-core{filter:drop-shadow(0 0 10px rgba(179,252,255,1)) drop-shadow(0 0 22px rgba(83,215,255,.42))}

@media(max-width:700px){
  #timesGameView.storm-running.blaster-active .times-defender.shooter-live{width:126px;height:144px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{width:108px;height:126px}
}
@media(max-width:430px){
  #timesGameView.storm-running.blaster-active .times-defender.shooter-live{width:116px;height:132px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{width:100px;height:116px}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .storm-combat-canvas{transition:none!important}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-thruster{transition:none!important}
}


/* ============================================================
   V97.71 • Storm Stage 13 • Boss Evolution
   Distinct silhouettes, breakable side modules, maths weakpoint scan,
   phase shedding and stronger set-piece readability.
   ============================================================ */
.storm-combat-boss{--boss-shell-clip:polygon(18% 0,82% 0,100% 32%,88% 82%,62% 100%,38% 100%,12% 82%,0 32%)}
.storm-combat-boss .storm-combat-boss-shell{clip-path:var(--boss-shell-clip)}
.storm-combat-boss.frame-dart{--boss-shell-clip:polygon(50% 0,78% 20%,100% 64%,67% 55%,58% 100%,42% 100%,33% 55%,0 64%,22% 20%)}
.storm-combat-boss.frame-wraith{--boss-shell-clip:polygon(12% 8%,44% 20%,50% 0,56% 20%,88% 8%,100% 52%,72% 45%,62% 100%,38% 100%,28% 45%,0 52%)}
.storm-combat-boss.frame-fortress{--boss-shell-clip:polygon(12% 0,88% 0,100% 18%,100% 78%,78% 100%,22% 100%,0 78%,0 18%);width:214px;margin-left:-107px}
.storm-combat-boss.frame-ring{--boss-shell-clip:polygon(20% 0,80% 0,100% 28%,90% 74%,64% 100%,36% 100%,10% 74%,0 28%)}
.storm-combat-boss.frame-grid{--boss-shell-clip:polygon(8% 8%,92% 8%,100% 50%,88% 92%,12% 92%,0 50%)}
.storm-combat-boss.frame-spear{--boss-shell-clip:polygon(50% 0,66% 34%,100% 52%,65% 66%,56% 100%,44% 100%,35% 66%,0 52%,34% 34%)}
.storm-combat-boss.frame-mine{--boss-shell-clip:polygon(26% 0,74% 0,100% 26%,92% 74%,70% 100%,30% 100%,8% 74%,0 26%)}
.storm-combat-boss.frame-furnace{--boss-shell-clip:polygon(16% 0,84% 0,100% 38%,86% 100%,14% 100%,0 38%)}
.storm-combat-boss.frame-crown{--boss-shell-clip:polygon(6% 16%,28% 28%,38% 0,50% 30%,62% 0,72% 28%,94% 16%,100% 72%,72% 100%,28% 100%,0 72%);width:218px;margin-left:-109px}
.storm-combat-boss .boss-hardpoint{position:absolute;z-index:4;top:39%;width:25px;height:25px;border:2px solid color-mix(in srgb,var(--boss-accent) 72%,white 28%);border-radius:7px;background:linear-gradient(145deg,rgba(255,255,255,.30),rgba(6,15,34,.98));box-shadow:0 0 10px color-mix(in srgb,var(--boss-accent) 44%,transparent);transition:opacity .22s ease,transform .22s ease}
.storm-combat-boss .boss-hardpoint.left{left:17%}.storm-combat-boss .boss-hardpoint.right{right:17%}
.storm-combat-boss .boss-hardpoint span{position:absolute;inset:5px;border-radius:4px;background:var(--boss-accent);box-shadow:0 0 8px var(--boss-accent)}
.storm-combat-boss .boss-hardpoint.broken{opacity:.18;transform:scale(.62) rotate(18deg);box-shadow:none}
.storm-combat-boss .boss-hardpoint.broken span{opacity:0}
.storm-combat-boss .boss-core-shutter{position:absolute;z-index:3;left:50%;top:47%;width:48px;height:12px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.62);background:linear-gradient(90deg,rgba(3,14,31,.96),var(--boss-accent),rgba(3,14,31,.96));opacity:.88;transition:opacity .24s ease,transform .24s ease}
.storm-combat-boss.core-exposed .boss-core-shutter{opacity:0;transform:translate(-50%,-50%) scaleX(.2)}
.storm-combat-boss.math-scan .boss-hardpoint:not(.broken)::after{content:"WEAK";position:absolute;left:50%;top:-15px;transform:translateX(-50%);font:900 .26rem/1 ui-monospace;letter-spacing:.08em;color:#fff6a8;text-shadow:0 0 8px #ffd54f}
.storm-combat-boss .boss-phase-crown{position:absolute;z-index:1;left:50%;top:8%;width:62%;height:18%;transform:translateX(-50%) scaleX(.6);opacity:0;border-top:2px solid var(--boss-accent);border-radius:50%;transition:opacity .24s ease,transform .24s ease}
.storm-combat-boss.boss-phase-two .boss-phase-crown{opacity:.72;transform:translateX(-50%) scaleX(1)}
.storm-combat-boss.boss-final .boss-phase-crown{opacity:1;height:26%;box-shadow:0 -8px 16px color-mix(in srgb,var(--boss-accent) 30%,transparent)}
.storm-combat-boss.shed-outer-armour .boss-armour{opacity:.18;transform:translateY(-7px) scale(.82)}
.storm-combat-boss.core-critical .boss-reactor{animation-duration:.28s!important}
.storm-combat-boss.frame-ring .boss-wing{border-radius:50%;height:54%;top:16%}.storm-combat-boss.frame-grid .boss-wing{clip-path:polygon(0 0,100% 14%,100% 86%,0 100%)}
.storm-combat-boss.frame-fortress .boss-wing,.storm-combat-boss.frame-furnace .boss-wing{height:55%;top:15%;width:38%}.storm-combat-boss.frame-spear .boss-wing{height:34%;top:36%}
.storm-combat-boss.frame-mine .boss-hardpoint{border-radius:50%;width:29px;height:29px}.storm-combat-boss.frame-crown .boss-hardpoint{top:44%}
.storm-combat-boss-hud .boss-module-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-top:6px}
.storm-combat-boss-hud .boss-module-row>span{display:grid;grid-template-columns:1fr;gap:3px}.storm-combat-boss-hud .boss-module-row>span>b{font:900 .36rem/1 ui-monospace;color:#bceeff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.storm-combat-boss-hud .boss-module-row>span>i{display:block;height:4px;border-radius:99px;background:linear-gradient(90deg,var(--boss-accent,#72efff),#fff);transition:width .12s linear}
.storm-combat-boss-hud .boss-module-row>em{font:900 .34rem/1 ui-monospace;color:#fff6a6;font-style:normal;text-align:center;letter-spacing:.06em}
.storm-combat-boss-hud .boss-phase-row{display:grid!important;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:6px}.storm-combat-boss-hud .boss-phase-row b,.storm-combat-boss-hud .boss-phase-row span,.storm-combat-boss-hud .boss-phase-row em{font:900 .46rem/1 ui-monospace;letter-spacing:.08em}.storm-combat-boss-hud .boss-phase-row b{color:#ffd967}.storm-combat-boss-hud .boss-phase-row span{color:#b7edff;text-align:center}.storm-combat-boss-hud .boss-phase-row em{color:#fff;font-style:normal}
.storm-combat-boss-hud .boss-math-scan{display:block!important;margin-top:6px!important;color:#87f4ff!important;letter-spacing:.08em!important}.storm-combat-boss-hud .boss-math-scan[data-grade="S"]{color:#fff199!important;text-shadow:0 0 8px rgba(255,218,86,.5)}
.storm-boss-destruction .module-pop{width:44px!important;height:44px!important;animation-delay:.10s!important}.storm-boss-destruction .pop-left{transform:translate(-62px,-10px)}.storm-boss-destruction .pop-right{transform:translate(62px,-10px)}
@media(pointer:coarse),(max-width:900px){.storm-combat-boss.frame-fortress,.storm-combat-boss.frame-crown{width:174px;margin-left:-87px}.storm-combat-boss .boss-hardpoint{width:21px;height:21px}.storm-combat-boss-hud .boss-module-row{gap:5px}.storm-combat-boss-hud .boss-module-row>span>b{font-size:.30rem}.storm-combat-boss-hud .boss-module-row>em{font-size:.28rem}.storm-combat-boss-hud .boss-math-scan{font-size:.34rem!important}}
#timesGameView.storm-perf-reduced .storm-combat-boss .boss-phase-crown{box-shadow:none!important}#timesGameView.storm-perf-reduced .storm-combat-boss.math-scan .boss-hardpoint::after{display:none}


/* ============================================================
   V97.72 • Storm Stage 13.1 • Attack Run / Collision Hotfix
   Premium vertical-shooter flow: lines and columns enter from the
   top, cross the player lane, hurt on contact and explode clearly.
   ============================================================ */
#timesGameView.storm-running.blaster-active .blaster-target.storm-behavior-assault-run{
  animation-name:stormV9772AssaultRun!important;
  animation-timing-function:linear!important;
  animation-fill-mode:both!important;
  opacity:0;
}
@keyframes stormV9772AssaultRun{
  0%{transform:translate3d(0,-18px,0) scale(.74);opacity:0}
  7%{opacity:1}
  24%{transform:translate3d(calc(var(--drift) * .12),var(--travel-20),0) scale(.84);opacity:1}
  52%{transform:translate3d(calc(var(--drift) * .35),var(--travel-48),0) scale(.96);opacity:1}
  76%{transform:translate3d(calc(var(--drift) * .68),var(--travel-70),0) scale(1.04);opacity:1}
  100%{transform:translate3d(var(--drift),var(--travel-y),0) scale(1.10);opacity:1}
}
#timesGameView.storm-running.blaster-active .blaster-target.storm-assault-run .enemy-label{
  opacity:.18;transform:translateX(-50%) translateY(2px) scale(.86);
}
#timesGameView.storm-running.blaster-active .blaster-target.storm-assault-run .enemy-mark{opacity:.38}
#timesGameView.storm-running.blaster-active .formation-assault-run{
  border-color:rgba(103,239,255,.58)!important;color:#c9fbff!important;background:rgba(3,18,31,.88)!important;
}

/* Contact now reads as a crash rather than two sprites passing through. */
#timesGameView.storm-running.blaster-active .blaster-target.rammed{
  animation:none!important;opacity:0!important;transform:scale(.48)!important;transition:opacity .10s linear,transform .10s ease-out!important;
}
.storm-enemy-explosion{
  position:absolute;z-index:43;width:18px;height:18px;transform:translate(-50%,-50%);
  pointer-events:none;contain:paint;isolation:isolate;
}
.storm-enemy-explosion>b,.storm-enemy-explosion>em,.storm-enemy-explosion>span,.storm-enemy-explosion>i{
  position:absolute;left:50%;top:50%;pointer-events:none;
}
.storm-enemy-explosion>b{
  width:22px;height:22px;border-radius:50%;transform:translate(-50%,-50%);
  background:radial-gradient(circle,#fff 0 18%,#fff4a6 19% 34%,#ff8d34 35% 58%,rgba(255,55,62,.35) 59% 72%,transparent 73%);
  box-shadow:0 0 14px #fff,0 0 28px rgba(255,151,50,.88),0 0 48px rgba(255,62,70,.48);
  animation:stormV9772ExplosionCore .46s ease-out forwards;
}
.storm-enemy-explosion>em{
  width:26px;height:26px;border:2px solid rgba(255,220,118,.92);border-radius:50%;
  transform:translate(-50%,-50%);box-shadow:0 0 10px rgba(255,111,56,.72);
  animation:stormV9772ExplosionRing .52s ease-out forwards;
}
.storm-enemy-explosion>span{
  width:7px;height:7px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);
  box-shadow:0 0 10px #fff;animation:stormV9772ExplosionFlash .32s ease-out forwards;
}
.storm-enemy-explosion>i{
  --blast-a:0deg;width:3px;height:18px;border-radius:99px;transform-origin:50% 100%;
  background:linear-gradient(180deg,#fff8c4,#ff9d39 60%,rgba(255,66,62,0));
  transform:translate(-50%,-100%) rotate(var(--blast-a));animation:stormV9772ExplosionShard .50s ease-out forwards;
}
.storm-enemy-explosion>i:nth-of-type(1){--blast-a:0deg}.storm-enemy-explosion>i:nth-of-type(2){--blast-a:60deg}
.storm-enemy-explosion>i:nth-of-type(3){--blast-a:120deg}.storm-enemy-explosion>i:nth-of-type(4){--blast-a:180deg}
.storm-enemy-explosion>i:nth-of-type(5){--blast-a:240deg}.storm-enemy-explosion>i:nth-of-type(6){--blast-a:300deg}
.storm-enemy-explosion.heavy>b{width:34px;height:34px}.storm-enemy-explosion.heavy>em{width:38px;height:38px;border-width:3px}
.storm-enemy-explosion.collision>b{background:radial-gradient(circle,#fff 0 14%,#ffcad1 15% 28%,#ff516b 29% 55%,rgba(255,33,73,.35) 56% 72%,transparent 73%)}
@keyframes stormV9772ExplosionCore{0%{opacity:1;transform:translate(-50%,-50%) scale(.25)}45%{opacity:1;transform:translate(-50%,-50%) scale(1.35)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.1)}}
@keyframes stormV9772ExplosionRing{0%{opacity:1;transform:translate(-50%,-50%) scale(.25)}100%{opacity:0;transform:translate(-50%,-50%) scale(3.1)}}
@keyframes stormV9772ExplosionFlash{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}100%{opacity:0;transform:translate(-50%,-50%) scale(5.8)}}
@keyframes stormV9772ExplosionShard{0%{opacity:1;transform:translate(-50%,-100%) rotate(var(--blast-a)) translateY(0) scaleY(1)}100%{opacity:0;transform:translate(-50%,-100%) rotate(var(--blast-a)) translateY(-48px) scaleY(.2)}}

@media(pointer:coarse),(max-width:700px){
  #timesGameView.storm-running.blaster-active .blaster-target.storm-assault-run .enemy-label{display:none}
  #timesGameView.storm-running.blaster-active .blaster-target.storm-assault-run .enemy-mark{opacity:.22}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .blaster-target.storm-behavior-assault-run{animation-timing-function:linear!important}
  .storm-enemy-explosion>i{display:none}
}
#timesGameView.storm-perf-reduced .storm-enemy-explosion>i{display:none}

/* V97.73 • Storm Stage 14 — Roguelite Runs */
.storm-run-build-summary{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(117,220,255,.26);border-radius:14px;background:linear-gradient(90deg,rgba(17,57,87,.88),rgba(22,35,70,.88));box-shadow:inset 0 1px rgba(255,255,255,.05)}
.storm-run-build-summary span{font-size:.62rem;letter-spacing:.16em;color:#77e9ff;font-weight:900}.storm-run-build-summary strong{font-size:.78rem;letter-spacing:.09em}.storm-run-build-summary small{font-size:.62rem;color:#9fc3d8;text-align:right}
.times-upgrade-option{position:relative;overflow:hidden}.times-upgrade-option>em{font-style:normal;font-size:.56rem;letter-spacing:.12em;font-weight:900;color:#88b7d2}.times-upgrade-option>b{margin-top:auto;font-size:.58rem;letter-spacing:.1em;color:#76eaff}.times-upgrade-option.rarity-rare{border-color:rgba(153,119,255,.72)!important;box-shadow:0 0 24px rgba(131,92,255,.13),0 5px 0 #04111e!important}.times-upgrade-option.rarity-rare>em{color:#c3a7ff}.times-upgrade-option.rarity-epic{border-color:rgba(255,196,92,.82)!important;box-shadow:0 0 30px rgba(255,184,64,.16),0 5px 0 #04111e!important}.times-upgrade-option.rarity-epic>em,.times-upgrade-option.rarity-epic>b{color:#ffd47c}.times-upgrade-option.rarity-epic:after{content:"";position:absolute;inset:-45% -20%;background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.12) 49%,transparent 62%);transform:translateX(-60%);animation:stormRogueEpicSweep 3.4s linear infinite;pointer-events:none}
@keyframes stormRogueEpicSweep{to{transform:translateX(70%)}}
@media(max-width:900px){.storm-run-build-summary{grid-template-columns:1fr}.storm-run-build-summary small{text-align:left}.times-upgrade-option>em{order:-1}}
.storm-perf-reduced .times-upgrade-option.rarity-epic:after{display:none}

/* ============================================================
   V97.74 • Storm Stage 15 • Commercial Polish
   Frame-budget-aware presentation, clearer combat result feedback
   and Android-first reduction rules. No aiming logic lives here.
   ============================================================ */
#timesGameView.storm-running.blaster-active .blaster-hud{
  letter-spacing:.02em;
  text-rendering:geometricPrecision;
}
#timesGameView.storm-running.blaster-active .blaster-hud strong{letter-spacing:.08em}
#timesGameView.storm-running.blaster-active .blaster-tip{
  max-width:min(760px,88%);
  text-align:center;
  line-height:1.18;
}
#timesGameView.storm-perf-reduced .storm-forward-fire-layer,
#timesGameView.storm-perf-reduced .blaster-autofire-bolt{display:none!important}
#timesGameView.storm-perf-reduced .times-defender.shooter-live,
#timesGameView.storm-perf-reduced .times-defender .sigma-ship-frame,
#timesGameView.storm-perf-reduced .times-defender .sigma-flagship-hull,
#timesGameView.storm-perf-reduced .times-defender .sigma-flagship-cannon,
#timesGameView.storm-perf-reduced .times-defender .sigma-flagship-canopy,
#timesGameView.storm-perf-reduced .times-defender .sigma-flagship-core,
#timesGameView.storm-perf-reduced .times-defender .sigma-flagship-core-band{filter:none!important}
#timesGameView.storm-perf-reduced .storm-enemy-explosion.heavy>i:nth-of-type(n+3){display:none}
#timesGameView.storm-perf-reduced .storm-combat-canvas{transition:none!important}
@media(pointer:coarse),(max-width:900px){
  #timesGameView.storm-running.blaster-active .blaster-tip{font-size:.52rem;letter-spacing:.055em}
  #timesGameView.storm-running.blaster-active .blaster-hud small{line-height:1.18}
  #timesGameView.storm-running .storm-run-build-summary{gap:6px;padding:9px 10px}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .storm-enemy-explosion>i:nth-of-type(n+3){display:none}
}


/* ============================================================
   V97.75 • Storm Stage 15.5 • Hero Ship Evolution
   Premium flagship silhouette, MK1–MK5 hardware evolution,
   finger-reactive banking/pitch, physical muzzle ports and
   shield/damage/Overdrive state readability. Fixed-lane aiming stays authoritative.
   ============================================================ */
#timesGameView.storm-running.blaster-active .times-defender.shooter-live{
  --hero-metal:#b9f6ff;--hero-edge:#7beeff;--hero-hot:#fff2a5;
  width:144px;height:162px;perspective:560px;
}
#timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{width:122px;height:143px;transition:filter .10s linear}
#timesGameView.storm-running.blaster-active .times-defender .sigma-flagship-hull{stroke-width:4;stroke:rgba(194,252,255,.98)}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-leading-edge{fill:none;stroke:rgba(215,253,255,.78);stroke-width:3.2;stroke-linecap:round}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-nose-ridge{fill:rgba(236,254,255,.20);stroke:rgba(240,255,255,.66);stroke-width:1.8}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-intake{fill:rgba(2,12,25,.80);stroke:rgba(112,232,255,.72);stroke-width:1.8}
#timesGameView.storm-running.blaster-active .times-defender .sigma-muzzle-port{fill:#efffff;stroke:#6feaff;stroke-width:3;opacity:.96}
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-wing-armor,
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-reactor-fin,
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-weapon-rail,
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-apex-crown{opacity:0;transition:opacity .18s linear}
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-wing-armor{fill:rgba(110,226,255,.18);stroke:rgba(164,245,255,.72);stroke-width:2}
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-reactor-fin{fill:rgba(34,84,126,.76);stroke:rgba(137,240,255,.68);stroke-width:2}
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-weapon-rail{fill:rgba(227,253,255,.25);stroke:rgba(146,241,255,.70);stroke-width:2}
#timesGameView.storm-running.blaster-active .times-defender .sigma-mk-apex-crown{fill:#fff0a2;stroke:#fff8d3;stroke-width:2}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="2"] .sigma-mk-weapon-rail,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="3"] .sigma-mk-weapon-rail,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="4"] .sigma-mk-weapon-rail,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-mk-weapon-rail{opacity:.82}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="3"] .sigma-mk-reactor-fin,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="4"] .sigma-mk-reactor-fin,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-mk-reactor-fin{opacity:.88}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="4"] .sigma-mk-wing-armor,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-mk-wing-armor{opacity:.94}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-mk-apex-crown{opacity:1}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-flagship-wing{stroke:#d9fbff;stroke-width:4}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-flagship-core-band{stroke:#fff0a5}

/* Reactive engines: the outside engine visibly works harder through a bank. */
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster-port{height:var(--hero-port-thrust,var(--stage125-thrust,58px))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster-starboard{height:var(--hero-starboard-thrust,var(--stage125-thrust,58px))}
#timesGameView.storm-running.blaster-active .times-defender .sigma-thruster{box-shadow:0 0 calc(9px * var(--hero-speed,.5)) rgba(103,237,255,.68)}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="3"] .sigma-thruster-main,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="4"] .sigma-thruster-main,
#timesGameView.storm-running.blaster-active .times-defender[data-hero-mk="5"] .sigma-thruster-main{width:21px}

/* Physical muzzle response: flashes live exactly on the drawn gun ports. */
#timesGameView.storm-running.blaster-active .times-defender.stage11-recoil-pulse .sigma-muzzle-port,
#timesGameView.storm-running.blaster-active .times-defender.stage11-recoil-twin .sigma-muzzle-port,
#timesGameView.storm-running.blaster-active .times-defender.stage11-recoil-scatter .sigma-muzzle-port{fill:#fff8c9;stroke:#fff;stroke-width:5}
#timesGameView.storm-running.blaster-active[data-weapon="lance"] .times-defender.stage11-recoil-lance .sigma-flagship-core{fill:#fff8c9}
#timesGameView.storm-running.blaster-active[data-weapon="lance"] .times-defender.stage11-recoil-lance .sigma-flagship-core-band{stroke:#ffd35f;stroke-width:11}

/* Shield envelope is independent of ship transform, so it never adds steering lag. */
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-shield{position:absolute;left:50%;top:50%;width:118px;height:132px;transform:translate(-50%,-50%);border:2px solid rgba(105,205,255,.15);border-radius:48% 48% 45% 45%;opacity:0;pointer-events:none;transition:opacity .12s linear,border-color .12s linear,box-shadow .12s linear}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-shield i{position:absolute;inset:7px;border:1px solid rgba(194,243,255,.30);border-radius:inherit}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-shield b{position:absolute;left:15%;right:15%;top:8px;height:2px;background:linear-gradient(90deg,transparent,#d9fbff,transparent)}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-shield="1"] .sigma-hero-shield{opacity:.90;border-color:rgba(104,196,255,.78);box-shadow:0 0 0 3px rgba(91,176,255,.10),0 0 24px rgba(77,158,255,.38)}

/* Damage state is readable on the craft, not just in the HUD. */
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-damage{position:absolute;inset:0;pointer-events:none;opacity:0}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-damage i{position:absolute;width:3px;height:12px;border-radius:99px;background:linear-gradient(#fff,#ffb43d,transparent)}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-damage i:nth-child(1){left:38%;top:45%;transform:rotate(24deg)}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-damage i:nth-child(2){right:31%;top:59%;transform:rotate(-32deg)}
#timesGameView.storm-running.blaster-active .times-defender .sigma-hero-damage i:nth-child(3){left:48%;top:67%;transform:rotate(8deg)}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-health="damaged"] .sigma-hero-damage{opacity:.58}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-health="critical"] .sigma-hero-damage{opacity:1}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-health="critical"] .sigma-flagship-hull{stroke:#ff8a9b}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-health="critical"] .sigma-thruster-starboard{opacity:.54!important}

/* Realm Overdrive changes the whole ship silhouette rather than only a HUD label. */
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-flagship-core-band{stroke:#ffe88b;stroke-width:11}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-flagship-core{fill:#fff6c4}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-flagship-cannon{stroke:#fff3a8;stroke-width:4}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-hero-leading-edge{stroke:#ffe88b;stroke-width:4}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-thruster{background:linear-gradient(180deg,#fffbd0 0,#fff19a 15%,#75f0ff 42%,rgba(84,174,255,.24) 74%,transparent 100%)}
#timesGameView.storm-running.blaster-active .times-defender[data-hero-overdrive="1"] .sigma-ship-halo{background:radial-gradient(circle,rgba(255,235,130,.36),rgba(100,235,255,.18) 38%,transparent 72%)}

/* Never let legacy reaction animations replace the compositor flight transform. */
#timesGameView.storm-running.blaster-active .times-defender.sigma-hit,
#timesGameView.storm-running.blaster-active .times-defender.sigma-fire,
#timesGameView.storm-running.blaster-active .times-defender.sigma-win{animation:none!important}
#timesGameView.storm-running.blaster-active .times-defender.sigma-hit .sigma-ship-frame{animation:storm155HeroHit .30s ease-out}
#timesGameView.storm-running.blaster-active .times-defender.sigma-win .sigma-ship-frame{animation:storm155HeroWin .48s ease-out}
@keyframes storm155HeroHit{0%,100%{margin-left:0}28%{margin-left:-5px}56%{margin-left:4px}78%{margin-left:-2px}}
@keyframes storm155HeroWin{0%,100%{margin-top:0}48%{margin-top:-9px}}

@media(max-width:700px){
  #timesGameView.storm-running.blaster-active .times-defender.shooter-live{width:132px;height:150px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{width:112px;height:132px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-hero-shield{width:108px;height:122px}
}
@media(max-width:430px){
  #timesGameView.storm-running.blaster-active .times-defender.shooter-live{width:122px;height:140px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-ship-frame{width:104px;height:122px}
  #timesGameView.storm-running.blaster-active .times-defender .sigma-hero-shield{width:100px;height:114px}
}
@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .times-defender.sigma-hit .sigma-ship-frame,
  #timesGameView.storm-running.blaster-active .times-defender.sigma-win .sigma-ship-frame{animation:none!important}
}
#timesGameView.storm-perf-reduced .times-defender .sigma-hero-damage i:nth-child(n+2){display:none}
#timesGameView.storm-perf-reduced .times-defender .sigma-hero-shield{box-shadow:none!important}

/* V97.76 • Graph inequality multi-boundary progression hotfix */
.gr43-boundary.gr43-user-boundary.pending{stroke:#6f8796;stroke-width:2.4;stroke-dasharray:3 7;opacity:.72}
.gr43-controls button.selected{border-color:#67e5ff;background:#0c6174;box-shadow:0 0 0 3px rgba(103,229,255,.22),0 5px 16px rgba(0,28,45,.22)}
.gr43-target>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gr43-stepper{display:flex;align-items:center;gap:5px}
.gr43-stepper span{display:grid;place-items:center;width:24px;height:24px;border-radius:999px;background:rgba(7,27,42,.10);border:1px solid rgba(24,51,69,.18);font-size:.72rem;font-weight:950;color:#5a7283}
.gr43-stepper span.active{background:#0c6174;border-color:#0c6174;color:#fff;box-shadow:0 0 0 3px rgba(12,97,116,.12)}
.gr43-stepper span.done{background:#167b55;border-color:#167b55;color:#fff}
@media(max-width:650px){.gr43-target>div{width:100%;justify-content:space-between}.gr43-stepper span{width:22px;height:22px}.gr43-controls .gr43-check{flex:1 1 180px}}

/* ============================================================
   V97.79 • STORM DIRECT-CONTROL CONTRACT
   Legacy "autofire" class names above are retained for save/render compatibility.
   Runtime firing is now gated by shipFireHeld; touch flight itself is relative
   1:1 drag with no pointer-down teleport and no touch-release coast.
   ============================================================ */

/* ============================================================
   V97.80 • STORM COMBAT CORE 2.0
   One authoritative combat world: visible craft/projectiles and their
   colliders share coordinates. Legacy CSS flight animations are disabled
   for world entities so nothing can visually drift away from its hitbox.
   ============================================================ */
#timesGameView.storm-running.blaster-active .blaster-target.storm-world-entity{
  left:0!important;
  top:0!important;
  margin:0!important;
  animation:none!important;
  transition:none!important;
  will-change:transform,opacity;
  pointer-events:none!important;
}
#timesGameView.storm-running.blaster-active .blaster-target.storm-world-entity.shot,
#timesGameView.storm-running.blaster-active .blaster-target.storm-world-entity.rammed{
  animation:none!important;
  opacity:0!important;
  pointer-events:none!important;
}

#timesGameView.storm-running.blaster-active .storm-player-projectile{
  position:absolute;
  left:0;
  top:0;
  z-index:35;
  display:block;
  margin:0;
  border-radius:999px;
  pointer-events:none;
  will-change:transform;
  background:linear-gradient(180deg,rgba(255,255,255,.98),#72efff 35%,#1689e8 72%,rgba(22,137,232,0));
  box-shadow:0 0 5px rgba(117,239,255,.95),0 0 12px rgba(44,176,255,.72);
}
#timesGameView.storm-running.blaster-active .storm-player-projectile.weapon-twin{
  background:linear-gradient(180deg,#fff,#72ffe9 36%,#21bfa4 72%,rgba(33,191,164,0));
  box-shadow:0 0 5px rgba(114,255,233,.95),0 0 12px rgba(51,224,193,.72);
}
#timesGameView.storm-running.blaster-active .storm-player-projectile.weapon-lance{
  border-radius:60% 60% 36% 36%;
  background:linear-gradient(180deg,#fff,#fff1a0 26%,#ffc33d 67%,rgba(255,176,36,0));
  box-shadow:0 0 7px rgba(255,246,177,.98),0 0 17px rgba(255,195,61,.86);
}
#timesGameView.storm-running.blaster-active .storm-player-projectile.weapon-scatter{
  background:linear-gradient(180deg,#fff,#ff8ad9 38%,#ce3da2 72%,rgba(206,61,162,0));
  box-shadow:0 0 4px rgba(255,149,221,.95),0 0 10px rgba(255,83,190,.72);
}

#timesGameView.storm-running.blaster-active .storm-enemy-shot.storm-world-projectile,
#timesGameView.storm-running.blaster-active .storm-enemy-shot.storm-boss-shot.storm-world-projectile{
  left:0!important;
  top:0!important;
  margin:0!important;
  animation:none!important;
  transition:none!important;
  opacity:1;
  will-change:transform;
  pointer-events:none!important;
}
#timesGameView.storm-running.blaster-active .storm-enemy-shot.storm-world-projectile.hit{
  animation:none!important;
  opacity:0!important;
}

/* Direct touch means the rendered hull stays flat and centred under the
   learner's drag point. Banking may exist for keyboard input only. */
#timesGameView.storm-running.blaster-active .times-defender[data-touch-flight="1"] .sigma-ship-frame{
  transform:none!important;
}

@media(prefers-reduced-motion:reduce){
  #timesGameView.storm-running.blaster-active .blaster-target.storm-world-entity,
  #timesGameView.storm-running.blaster-active .storm-player-projectile,
  #timesGameView.storm-running.blaster-active .storm-enemy-shot.storm-world-projectile{animation:none!important;transition:none!important}
}
