/* Test review pages (elementary, middle school, high school). Lab skin: deep ink, glass cards, gold buttons, Lora and Poppins. */
body{margin:0;background:#07101f}
.st-page{--ink:#07101f;--gold:#eab954;--gold2:#f6d58a;--glass:rgba(255,255,255,.05);--line:rgba(255,255,255,.14);--mute:#9db4c4;
  background:var(--ink);color:#e9f2f6;font-family:Poppins,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:clip}
.st-page h1,.st-page h2,.st-page h3,.st-page strong{font-family:Lora,Georgia,serif}
.st-page button{font-family:inherit}
.st-page em{color:var(--gold);font-style:italic}
.st-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:560px;padding:90px max(24px,50vw - 590px);
  background:radial-gradient(circle at 78% 40%,#1c65a4 0 2%,transparent 22%),radial-gradient(circle at 80% 45%,#0a315b,transparent 40%),linear-gradient(125deg,#050d19,#0b2440 62%,#120d27)}
.st-stars,.st-stars:before,.st-stars:after{position:absolute;inset:0;opacity:.45;background-image:radial-gradient(#fff 1px,transparent 1.5px);background-size:77px 77px;z-index:-1}
.st-stars:before,.st-stars:after{content:"";background-size:113px 113px;transform:rotate(23deg)}
.st-stars:after{background-size:151px 151px;transform:rotate(-17deg)}
.st-heroCopy{position:relative;z-index:2;max-width:720px}
.st-heroCopy>p,.st-heading>div>p,.st-missionHead p,.st-promise p:first-child{margin:0 0 16px;color:var(--gold);font:700 .72rem Poppins,sans-serif;letter-spacing:.2em}
.st-heroCopy h1{margin:0;font:600 clamp(2.8rem,6.6vw,5.8rem)/1.02 Lora,Georgia,serif;letter-spacing:-.025em;color:#fff}
.st-heroCopy>span{display:block;max-width:600px;margin:26px 0 30px;color:#cfdce6;font:400 1.15rem/1.65 Lora,Georgia,serif}
.st-heroCopy>a{display:inline-block;border-radius:999px;background:var(--gold);color:#06121f;text-decoration:none;font:700 .78rem Poppins,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:15px 24px;transition:transform .15s,background .15s}
.st-heroCopy>a:hover{background:var(--gold2);transform:translateY(-2px)}
.st-heroCopy>a b{margin-left:12px}
.st-orbit{position:absolute;top:50%;right:max(40px,50vw - 590px);transform:translateY(-50%);width:250px;height:250px;display:grid;place-content:center;text-align:center;border:1px solid rgba(246,213,138,.4);border-radius:50%;box-shadow:0 0 0 30px rgba(246,213,138,.03),0 0 0 31px rgba(246,213,138,.12)}
.st-orbit:before{content:"";position:absolute;inset:34px;border:1px dashed rgba(234,185,84,.45);border-radius:50%}
.st-orbit span,.st-orbit i{position:relative;color:var(--gold);font:600 3.4rem/.9 Lora,Georgia,serif;font-style:normal}
.st-orbit i{margin-top:14px}
.st-orbit b{position:relative;margin-top:6px;color:var(--mute);font:700 .62rem Poppins,sans-serif;letter-spacing:.18em}
.st-worlds{padding:90px max(24px,50vw - 600px);background:#0a1628;border-top:1px solid var(--line)}
.st-heading{display:grid;grid-template-columns:1.1fr .8fr;align-items:end;gap:70px;margin-bottom:40px}
.st-heading h2,.st-missionHead h2,.st-promise h2{margin:0;font:600 clamp(2.2rem,4.6vw,4rem)/1.06 Lora,Georgia,serif;letter-spacing:-.02em;color:#fff}
.st-heading>p{margin:0;color:#cfdce6;font:400 .98rem/1.75 Poppins,sans-serif}
.st-worldGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.st-worldGrid>button{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;height:460px;padding:0 24px 24px;text-align:left;color:#fff;cursor:pointer;overflow:hidden;background:#061827;border:1px solid var(--line);border-radius:20px;transition:transform .2s,border-color .2s,box-shadow .2s}
.st-worldGrid>button:hover,.st-worldGrid>button:focus-visible,.st-worldGrid>button.st-worldActive{transform:translateY(-6px);box-shadow:0 22px 44px rgba(0,0,0,.45)}
.st-worldGrid>button.st-worldActive{border-color:var(--gold)}
.st-worldGrid img,.st-worldGrid>button>i{position:absolute;inset:0;width:100%;height:100%;z-index:-3}
.st-worldGrid img{object-fit:cover}
.st-worldGrid>button>i{z-index:-2;background:linear-gradient(transparent,rgba(3,17,31,.12) 22%,rgba(3,17,31,.92) 66%,#03111f)}
.st-worldGrid small{color:var(--gold2);font:700 .68rem Poppins,sans-serif;letter-spacing:.14em}
.st-worldGrid strong{margin:8px 0 10px;color:#fff;font:600 clamp(1.7rem,2.4vw,2.4rem)/1.05 Lora,Georgia,serif}
.st-worldGrid span{min-height:56px;color:#dbe7ee;font:400 .88rem/1.6 Poppins,sans-serif}
.st-worldGrid b{margin-top:16px;padding-top:14px;border-top:1px solid rgba(234,185,84,.4);color:var(--gold);font:700 .7rem Poppins,sans-serif;letter-spacing:.12em}
.st-middleWorldGrid{grid-template-columns:repeat(2,1fr)}
.st-console{scroll-margin-top:20px;padding:80px max(24px,50vw - 590px);background:#07101f;border-top:1px solid var(--line)}
.st-missionHead{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px}
.st-missionHead>div:last-child{display:flex;border:1px solid var(--line);border-radius:14px;background:var(--glass);overflow:hidden}
.st-missionHead>div:last-child span{min-width:104px;padding:14px;text-align:center}
.st-missionHead>div:last-child span+span{border-left:1px solid var(--line)}
.st-missionHead small,.st-missionHead b{display:block}
.st-missionHead small{color:var(--mute);font:700 .62rem Poppins,sans-serif;letter-spacing:.14em}
.st-missionHead b{margin-top:6px;color:var(--gold);font:600 1.6rem Lora,Georgia,serif}
.st-settings{display:flex;flex-wrap:wrap;gap:18px;margin:32px 0}
.st-settings fieldset{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--glass)}
.st-settings legend{padding-inline:8px;color:var(--mute);font:700 .66rem Poppins,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.st-settings button{padding:11px 16px;color:#e9f2f6;cursor:pointer;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.22);border-radius:999px;font:700 .74rem Poppins,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.st-settings button:hover{border-color:var(--gold)}
.st-settings button.st-selected{border-color:var(--gold);background:var(--gold);color:#06121f}
.st-progress{position:relative;height:48px;margin-bottom:24px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#030a14}
.st-progress i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#b66d1d,var(--gold));transition:width .3s}
.st-progress span{position:absolute;inset:0;display:grid;place-items:center;padding:0 12px;text-align:center;color:#fff;text-shadow:0 1px 4px #000;font:700 .7rem Poppins,sans-serif;letter-spacing:.1em}
.st-playfield{display:grid;grid-template-columns:1fr 1fr;min-height:560px;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--glass);box-shadow:0 28px 70px rgba(0,0,0,.45)}
.st-playfield figure{position:relative;min-height:460px;margin:0;overflow:hidden;background:#031225}
.st-playfield figure img{width:100%;height:100%;object-fit:cover}
.st-playfield figcaption{position:absolute;inset:auto 20px 20px;padding:16px 18px;border-left:4px solid var(--gold);border-radius:0 10px 10px 0;background:rgba(3,18,37,.9);color:#fff;font:italic 400 1rem/1.6 Lora,Georgia,serif}
.st-question{display:flex;flex-direction:column;padding:40px}
.st-question>small{color:var(--gold);font:700 .68rem Poppins,sans-serif;letter-spacing:.16em}
.st-question h3{margin:16px 0 26px;font:600 clamp(1.6rem,2.6vw,2.4rem)/1.18 Lora,Georgia,serif;color:#fff}
.st-question>div{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.st-question>div button{min-height:84px;padding:16px;color:#e9f2f6;cursor:pointer;text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.2);border-radius:14px;font:500 .95rem/1.4 Poppins,sans-serif}
.st-question>div button:hover:not(:disabled),.st-question>div button:focus-visible{border-color:var(--gold);background:rgba(234,185,84,.1)}
.st-question>div button:disabled{cursor:default}
.st-question>div button.st-correct{background:rgba(70,180,120,.22);border-color:#5fd095}
.st-question>div button.st-incorrect{background:rgba(230,100,85,.2);border-color:#ef8274}
.st-question aside{margin-top:22px;padding:18px 20px;border-left:4px solid;border-radius:0 12px 12px 0}
.st-question aside strong{display:block;font:600 1.25rem Lora,Georgia,serif}
.st-question aside p{margin:8px 0 14px;font:400 .92rem/1.65 Poppins,sans-serif}
.st-question aside small{color:#cfdce6}
.st-question aside button{padding:13px 20px;color:#06121f;cursor:pointer;background:var(--gold);border:0;border-radius:999px;font:700 .74rem Poppins,sans-serif;letter-spacing:.06em;text-transform:uppercase}
.st-question aside button:hover{background:var(--gold2)}
.st-good{background:rgba(70,180,120,.14);border-color:#5fd095}
.st-try{background:rgba(230,130,100,.14);border-color:#ef9a7a}
.st-promise{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:70px;padding:90px max(24px,50vw - 540px);background:#0a1628;border-top:1px solid var(--line)}
.st-promise>p{margin:0;padding:24px;border-left:4px solid var(--gold);border-radius:0 14px 14px 0;background:var(--glass);color:#cfdce6;font:400 .95rem/1.8 Poppins,sans-serif}
@media (max-width:950px){
  .st-orbit{display:none}
  .st-hero{min-height:0;padding:64px 22px 70px}
  .st-heading,.st-missionHead,.st-playfield,.st-promise,.st-worldGrid,.st-middleWorldGrid{grid-template-columns:1fr}
  .st-heading,.st-promise{gap:26px}
  .st-worlds,.st-console,.st-promise{padding-left:22px;padding-right:22px}
  .st-worldGrid>button{height:400px}
  .st-playfield figure{min-height:340px}
}
@media (max-width:620px){
  .st-worlds,.st-console,.st-promise{padding-top:56px;padding-bottom:56px}
  .st-worldGrid>button{height:380px}
  .st-missionHead>div:last-child{width:100%}
  .st-missionHead>div:last-child span{flex:1;min-width:0}
  .st-settings fieldset{width:100%}
  .st-settings button{flex:1}
  .st-question{padding:26px 18px}
  .st-question>div{grid-template-columns:1fr}
  .st-question>div button{min-height:60px}
}
@media (prefers-reduced-motion:reduce){.st-worldGrid>button,.st-progress i{transition:none}}
