:root{--bg:#080c17;--panel:#111827;--line:#293247;--text:#eff4fc;--muted:#9eaac0;--lime:#c3f872;--cyan:#8cd7ef;--red:#ff929e;--gold:#f5ce87;color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}button,input,textarea{font:inherit}button{cursor:pointer;min-height:46px;border:1px solid var(--line);background:#141d2d;border-radius:8px;color:var(--text);font-size:12px;font-weight:750;letter-spacing:.03em;padding:12px 18px;transition:background .18s,border-color .18s,transform .18s}button:hover:not(:disabled){border-color:var(--lime);background:#1e2a38;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.primary{background:var(--lime);border-color:var(--lime);color:#162109;font-weight:850;display:inline-flex;justify-content:space-between;align-items:center;gap:28px}.primary:hover:not(:disabled){background:#d8ffa4;color:#0c1600}.quiet{border-color:transparent;background:transparent;color:var(--muted)}.danger,.error,#deviceError{color:var(--red)}[hidden]{display:none!important}a{color:inherit;text-decoration:none}.stars{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 80% 10%,#202a504a,transparent 50%),radial-gradient(ellipse at 0 90%,#13293850,transparent 60%)}.stars:after{content:"";position:absolute;inset:0;background-image:radial-gradient(#d0d8ff44 .6px,transparent .6px);background-size:73px 73px;opacity:.4}#app{max-width:1320px;margin:auto;padding:0 44px}header{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.brand{display:flex;align-items:center;font-size:23px;letter-spacing:-1px;font-weight:850;white-space:nowrap}.brand>span:not(.sigil){color:var(--muted);font-weight:400}.brand small{font-size:9px;letter-spacing:.14em;color:var(--muted);border-left:1px solid var(--line);padding-left:16px;margin-left:16px}.sigil{color:var(--lime);font-size:38px;line-height:1;margin-right:12px}.head-right{display:flex;align-items:center;gap:16px}.xp{font:11px ui-monospace,monospace;white-space:nowrap;color:var(--muted)}.xp b{color:var(--lime);font-size:18px}nav{display:flex;gap:32px;min-height:72px;align-items:stretch;border-bottom:1px solid var(--line)}nav button{border:0;border-radius:0;background:none;padding:14px 0;color:#8190aa;font-size:10px;position:relative}nav button span{margin-left:8px;letter-spacing:.1em;font-size:11px}nav button[aria-current=page]{color:var(--lime)}nav button[aria-current=page]:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--lime)}main{min-height:65vh}.panel{animation:enter .35s ease-out}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:470px;align-items:center;gap:10px;padding:48px 0 36px}.eyebrow{font:10px ui-monospace,monospace;letter-spacing:.2em;color:var(--lime);font-weight:700}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lime);margin-right:8px;box-shadow:0 0 16px #c3f888}.chapter{font:10px ui-monospace,monospace;color:var(--muted);letter-spacing:.12em;margin:26px 0 12px}.hero h1,.page-title{font-size:clamp(38px,4.7vw,62px);font-weight:750;letter-spacing:-.05em;line-height:1.05;margin:8px 0 20px;max-width:610px}.hero-copy>p:not(.chapter){max-width:400px;color:var(--muted);font-size:14px;line-height:1.8;margin-bottom:25px}.hero-meta{display:flex;gap:22px;font:9px ui-monospace,monospace;color:#92a0b8;letter-spacing:.08em;margin-top:26px}.cosmos{height:360px;position:relative;display:grid;place-items:center;isolation:isolate}.planet{width:235px;height:235px;border-radius:50%;background:radial-gradient(circle at 32% 27%,#659cbc 0,#294b73 25%,#152a53 46%,#080d1d 73%);box-shadow:inset -14px -9px 34px #040913,inset 3px 3px 14px #a9dbff44,0 0 90px #467caf1f;position:relative;overflow:hidden;border:1px solid #8398c237;transform:rotate(-20deg);animation:float 7s ease-in-out infinite}.planet:before{content:"";position:absolute;inset:-20%;background:repeating-linear-gradient(0deg,transparent 0 20px,#9bc8fe22 21px,transparent 22px),repeating-linear-gradient(90deg,transparent 0 28px,#9bc8fe11 29px,transparent 30px);border-radius:50%;transform:perspective(200px) rotateY(20deg)}.planet>div{position:absolute;inset:0;display:grid;place-items:center;color:#b6e6ff88;font-size:90px;transform:rotate(20deg);text-shadow:0 0 24px #a0d8ff55}.orbit{position:absolute;width:365px;height:160px;border:1px solid #7a91b055;border-radius:50%;transform:rotate(-28deg);z-index:2;animation:orbit 35s linear infinite}.orbit:after{content:"";position:absolute;width:7px;height:7px;background:var(--lime);box-shadow:0 0 16px #c3f87299;border-radius:50%;left:42px;top:16px}.orbit-two{width:400px;height:310px;transform:rotate(55deg);border-style:dashed;opacity:.35;z-index:-1;animation-direction:reverse;animation-duration:55s}.coord,.orbit-label{position:absolute;font:9px ui-monospace,monospace;letter-spacing:.12em;color:#8b9cb6}.coord{top:4px;right:14px}.orbit-label{bottom:4px;left:10px}.section-label{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:24px 0 18px}.section-label h2{font-size:17px;margin:0;font-weight:600;letter-spacing:-.02em}.section-label>span{font:10px ui-monospace,monospace;color:var(--muted)}.worlds{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.world{text-align:left;min-height:178px;position:relative;border-radius:9px;background:linear-gradient(120deg,#152032c9,#0d1321);padding:21px 18px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;overflow:hidden}.world:hover:not(:disabled){transform:translateY(-3px)}.world.current{border-color:#94c956aa;box-shadow:inset 0 0 40px #c3f87207}.world.current:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--lime)}.world:disabled{opacity:1;color:#a1adc0;background:#0c1220;border-color:#222b3d}.world:disabled .world-icon{opacity:.35}.world-top{display:flex;align-items:center;justify-content:space-between;font:10px ui-monospace,monospace;color:#96a5be}.world-icon{color:var(--cyan);font-size:23px}.world h3{font-size:15px;line-height:1.3;margin:0;letter-spacing:-.02em;font-weight:600}.world-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.world-state{font:8px ui-monospace,monospace;letter-spacing:.08em;color:#8d9bb3}.world.current .world-state{color:var(--lime)}.nodes{display:flex;gap:3px}.node{width:9px;height:3px;background:#334159;display:block}.node.done{background:var(--lime)}.node.current{background:var(--gold)}.world.reward{border-color:#665a43;background:linear-gradient(120deg,#2c231a88,#141522)}.rules-strip{border-top:1px solid var(--line);margin-top:26px;padding:24px 0;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted)}.rules-strip b{color:var(--lime);font-family:monospace;margin-right:8px}.card{background:#101725;border:1px solid var(--line);border-radius:12px;padding:28px}.two-col,.mission-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;margin:28px 0}.muted{color:var(--muted)}.accent{color:var(--lime)}.mission-head{display:flex;justify-content:space-between;gap:20px;margin:36px 0 22px}.mission-head .page-title{font-size:clamp(28px,4vw,46px);margin-top:14px}.mission-reward{font:11px ui-monospace,monospace;color:var(--lime);white-space:nowrap}.prompt{font-size:19px;line-height:1.7;margin:22px 0}.mission-story{font-size:13px;color:var(--cyan);padding:14px 18px;border-left:2px solid var(--cyan);background:#8cd7ef08}.objectives{list-style:none;padding:0;color:var(--muted);font-size:13px}.objectives li{margin:10px 0}.objectives li:before{content:"◇";color:var(--lime);margin-right:12px}.practice-note{border:1px dashed #3d465b;border-radius:8px;padding:15px;color:var(--muted);font-size:12px;margin-top:24px}.boss-banner{color:var(--gold);background:linear-gradient(90deg,#f5ce8718,transparent);border-left:3px solid var(--gold);padding:12px 16px;font:11px ui-monospace,monospace;letter-spacing:.12em;margin-top:20px}.boss .card{border-color:#5e513c}.boss .mission-reward{color:var(--gold)}label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}input,textarea{display:block;width:100%;background:#080e1b;color:var(--text);border:1px solid #344059;border-radius:8px;padding:14px;resize:vertical;margin:0 0 16px;min-height:48px}textarea{min-height:250px;line-height:1.7}textarea#dadNote{min-height:110px}input::placeholder,textarea::placeholder{color:#7e8da5}.answer-meta{display:flex;justify-content:space-between;gap:12px;color:#8e9db5;font:10px ui-monospace,monospace;margin:-5px 0 20px}.result,.notice{padding:18px;border:1px solid #596945;border-radius:9px;background:#c3f87208;margin:18px 0;overflow-wrap:anywhere}.result.fail{border-color:#854c5e;background:#ff929e06}.notice{border-color:#927854;color:var(--gold)}.waiting-symbol{font-size:50px;color:var(--lime)}.key-track{display:flex;gap:12px;margin:18px 0}.key-track>div{flex:1;border:1px solid var(--line);padding:16px;border-radius:8px;font-size:12px}.key-track>div:first-child{border-color:#8fb652;color:var(--lime)}.review-answer{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;max-height:380px;overflow:auto;background:#070c17;padding:18px;border-radius:8px}.checks{display:flex;flex-wrap:wrap;gap:6px}.checks span{padding:4px 8px;background:#203028;color:#c3f872;border-radius:5px;font:10px monospace}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.actions>.primary{flex-basis:100%;justify-content:center}hr{border:0;border-top:1px solid var(--line);margin:24px 0}#messages{height:330px;overflow:auto;overflow-wrap:anywhere}#messages p{padding:14px 18px;border-radius:9px;font-size:14px}#messages b{display:block;font:9px ui-monospace,monospace;letter-spacing:.14em;margin-bottom:8px;color:var(--cyan)}.bot{background:#1b293e}.user{background:#152619;border:1px solid #3b5834}#chatForm{display:flex;gap:10px;align-items:flex-start}#chatForm input{margin:0;min-width:0}.vault-hero{text-align:center;max-width:790px;margin:50px auto 30px}.vault-symbol{display:block;font-size:84px;color:var(--gold);line-height:1.4}.vault-hero .page-title{margin:10px auto 20px}.vault-hero p{color:var(--muted)}.vault-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.vault-step{padding:22px 12px;border:1px solid var(--line);border-radius:9px;font-size:12px}.vault-step b{display:block;color:var(--muted);font:10px monospace;margin-bottom:10px}.vault-step.done{border-color:#748d4d;color:var(--lime)}.gift-code{font:24px ui-monospace,monospace;letter-spacing:.1em;overflow-wrap:anywhere;background:#080c17;border:1px solid var(--gold);padding:22px;border-radius:9px;margin-top:20px}footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:36px;padding:16px 0;font:9px ui-monospace,monospace;color:#8c9ab2}footer .quiet{font-size:10px;padding:8px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#d6f6aa;color:#18210d;padding:14px 22px;border-radius:8px;box-shadow:0 8px 60px #0009;z-index:20;max-width:90%;font-size:13px}.gate{max-width:470px;margin:8vh auto;padding:28px;text-align:center}.gate h1{font-size:47px;letter-spacing:-.06em;margin:15px}.gate h1 span{font-weight:350;color:var(--muted)}.gate-orb{font-size:75px;color:var(--lime);text-shadow:0 0 70px #c3f85599;animation:float 6s ease-in-out infinite}.gate p{color:var(--muted);font-size:14px}.gate form{text-align:left;margin:25px 0}.gate .primary{width:100%}.micro{font:10px monospace!important}dialog{max-width:580px;width:90%;background:#111c2e;border:1px solid var(--line);border-radius:12px;padding:32px;color:var(--text)}dialog::backdrop{background:#030714ed;backdrop-filter:blur(8px)}dialog p{color:var(--muted);font-size:14px}.intro{text-align:center;overflow:hidden;padding:45px 32px;background:radial-gradient(ellipse at 50% 25%,#1b3853,#090f1c 70%)}.intro h1{font-size:46px;line-height:1.08;letter-spacing:-.05em;margin:8px 0 22px}.intro-emblem{font-size:100px;color:var(--lime);line-height:1.7;text-shadow:0 0 60px #c3f85588;animation:arrival 1.4s ease-out}.intro .quiet{display:block;margin:10px auto 0}.scanline{pointer-events:none;position:absolute;left:0;right:0;height:1px;background:var(--lime);opacity:.3;animation:scan 3s ease-in-out 2}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#transition{position:fixed;inset:0;z-index:15;display:grid;place-content:center;text-align:center;pointer-events:none;background:linear-gradient(115deg,#080c17f5,#13283aee);animation:sectorTransition 1.25s both}#transition h2{font-size:clamp(28px,5vw,62px);letter-spacing:-.05em;margin:15px 24px}#transition:before{content:"";height:1px;background:var(--lime);box-shadow:0 0 25px var(--lime);animation:sweep 1s ease both}.timer-panel{border-color:#6c8860}.timer-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.countdown{font:34px ui-monospace,monospace;color:var(--lime);font-weight:700;font-variant-numeric:tabular-nums}.timer-track{height:5px;background:#27364e;margin:18px 0 24px;border-radius:8px;overflow:hidden}.timer-track i{height:100%;display:block;background:var(--lime);width:100%;transition:width .3s linear}.timer-panel.warning{border-color:var(--gold)}.warning .countdown{color:var(--gold)}.warning .timer-track i{background:var(--gold)}.timer-panel.urgent{border-color:var(--red);box-shadow:inset 0 0 45px #ff929e0a}.urgent .countdown{color:var(--red);animation:dangerPulse 1.2s ease-in-out infinite}.urgent .timer-track i{background:var(--red)}.choices{display:grid;gap:10px;margin:24px 0}.choices button{text-align:left;min-height:60px;padding:16px 18px;font-size:14px}.choices button b{font-family:monospace;color:var(--cyan);margin-right:12px}.sprint-result{font-size:35px;letter-spacing:-.04em;line-height:1.1}.timer-note{font:10px monospace;color:var(--muted)}
@keyframes enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes float{50%{translate:0 -9px}}@keyframes orbit{to{rotate:360deg}}@keyframes arrival{from{opacity:0;transform:scale(.25) rotate(-100deg);filter:blur(20px)}to{opacity:1;transform:none;filter:none}}@keyframes scan{from{top:0}to{top:100%}}@keyframes sweep{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes sectorTransition{0%{opacity:0;transform:translateX(-4%)}20%,70%{opacity:1;transform:none}100%{opacity:0;transform:translateX(4%)}}@keyframes dangerPulse{50%{opacity:.65}}
@media(max-width:1000px){#app{padding:0 25px}.worlds{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{grid-template-columns:1.2fr 1fr}.planet{width:190px;height:190px}.orbit{width:280px;height:120px}.orbit-two{width:310px;height:240px}.brand small{display:none}.hero h1{font-size:48px}.card{padding:22px}.head-right{gap:8px}.head-right .quiet span{display:none}}
@media(max-width:700px){#app{padding:0 18px}header{height:76px}.brand{font-size:20px}.sigil{font-size:29px;margin-right:8px}.head-right{gap:0}.xp{font-size:9px}.xp b{font-size:15px}.head-right .quiet{font-size:21px;padding:8px 9px;min-width:44px}nav{gap:0;justify-content:space-between;min-height:62px}nav button{font-size:8px}nav button span{font-size:9px;margin-left:4px}.hero{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0;padding:20px 0 26px;gap:0}.cosmos{height:240px;margin:0 10px 24px}.planet{width:158px;height:158px}.planet>div{font-size:68px}.orbit{width:259px;height:111px}.orbit-two{width:270px;height:210px}.coord{right:0;top:5px;font-size:8px}.orbit-label{bottom:0;font-size:8px}.hero h1{font-size:43px;max-width:340px}.chapter{margin-top:20px}.hero-copy>p:not(.chapter){font-size:13px;max-width:330px}.hero-meta{font-size:8px;gap:18px}.hero .primary{width:100%}.section-label{align-items:flex-start}.section-label>span{font-size:8px;max-width:105px;text-align:right}.worlds{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.world{padding:17px 13px;min-height:165px;gap:15px}.world h3{font-size:13px}.world-top{font-size:8px}.world-state{font-size:7px}.nodes{gap:2px}.node{width:6px}.world-icon{font-size:19px}.rules-strip{display:grid;grid-template-columns:1fr 1fr;font-size:9px;row-gap:18px}.two-col,.mission-grid{grid-template-columns:1fr;gap:16px;margin:26px 0}.mission-head{margin-top:28px;gap:10px}.mission-head .page-title{font-size:31px}.mission-reward{font-size:10px}.card{padding:20px}.prompt{font-size:17px}.page-title{font-size:40px}.practice-note{margin-top:18px}.vault-steps{gap:7px}.vault-step{font-size:10px;padding:15px 8px}.vault-step b{font-size:9px}.vault-hero{margin-top:30px}.vault-symbol{font-size:64px}.key-track{gap:8px}.key-track>div{padding:13px 10px;font-size:11px}.answer-meta{font-size:9px}footer{flex-wrap:wrap;font-size:8px}footer>span:nth-child(2){order:3;flex-basis:100%;margin-top:-10px}textarea,input{font-size:16px}.gate{margin:3vh auto}.intro h1{font-size:37px}.intro{padding:28px 20px}.intro-emblem{font-size:80px}.hero-copy .eyebrow{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* iPad portrait, landscape, Split View, touch and the on-screen keyboard. */
html{-webkit-text-size-adjust:100%;scroll-padding-top:20px}body{overflow-wrap:break-word}button,a,input,textarea{touch-action:manipulation}input,textarea{font-size:16px}input,textarea,button{max-width:100%}main,.hero-copy,.card,.mission-grid>*,.two-col>*{min-width:0}#app{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));padding-bottom:env(safe-area-inset-bottom)}dialog{max-height:calc(var(--visible-height,100dvh) - 32px);overflow-y:auto;overscroll-behavior:contain}textarea,input{scroll-margin-top:24px;scroll-margin-bottom:90px}#toast{bottom:max(20px,env(safe-area-inset-bottom));max-height:30dvh;overflow:auto}#messages{height:clamp(160px,38dvh,360px)}.review-answer{max-height:45dvh}#volume{min-height:48px;padding:8px 0;accent-color:var(--lime)}
@media(min-width:701px) and (max-width:1024px){.mission-grid,.two-col{grid-template-columns:1fr}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(38px,5.6vw,54px)}.worlds{grid-template-columns:repeat(3,minmax(0,1fr))}.card textarea{min-height:220px}.orbit-two{width:270px;height:225px}.cosmos{overflow:hidden}.intro{max-width:560px}.actions button{min-height:48px}.rules-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px}}
@media(pointer:coarse){button{min-height:48px}nav button{padding:16px 6px}button:hover:not(:disabled){transform:none}.world:hover:not(:disabled){transform:none}.choices{gap:12px}.choices button{min-height:64px}.quiet{min-width:48px}.card{scroll-margin-top:16px}}
@media(max-height:550px){.intro{padding:20px}.intro-emblem{font-size:48px;line-height:1.1}.intro h1{font-size:30px}.intro p{margin:10px 0}.gate{margin:12px auto}.gate-orb{font-size:42px}dialog{padding:20px}}

/* Launch sequence and field guide remain usable without motion, sound or hover. */
.launch-core{height:180px;position:relative;display:grid;place-items:center;margin:12px auto;width:min(100%,240px)}.launch-core .gate-orb{font-size:92px;animation:coreFloat 5s ease-in-out infinite}.launch-core>i{position:absolute;width:160px;height:160px;border:1px solid #8cd7ef88;border-radius:50%;border-top:3px solid var(--cyan);animation:coreSpin 14s linear infinite}.launch-core>i:nth-child(2){width:200px;height:115px;border-color:#c3f87266;border-bottom:3px solid var(--lime);animation:coreSpin 22s linear infinite reverse}.launch-status{font:10px ui-monospace,monospace;letter-spacing:.1em;color:var(--cyan)}.field-guide{margin:24px 0;padding:20px;background:#132436;border-radius:9px;border:1px solid #31546b}.field-guide p{font-size:15px;line-height:1.75}.field-guide details{border-top:1px solid #31546b;padding-top:12px}.field-guide summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:var(--cyan);font-size:14px}.concept-cleared{padding:15px;border:1px solid #617f42;border-radius:9px;background:#c3f87208;margin-bottom:22px}.concept-cleared b{font:11px ui-monospace,monospace;color:var(--lime)}.concept-cleared p{font-size:13px;color:var(--muted);line-height:1.6}.choices button{display:flex;align-items:center;overflow-wrap:anywhere;line-height:1.5}.choices button b{flex:none}#answerCard{scroll-margin-top:18px}.card .micro{line-height:1.7}.field-guide summary:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
@keyframes coreSpin{to{transform:rotate(360deg)}}@keyframes coreFloat{50%{transform:translateY(-8px) scale(1.06)}}
@media(max-width:700px){.field-guide{padding:16px}.field-guide p{font-size:14px}.launch-core{height:150px}.launch-core>i{width:130px;height:130px}.launch-core>i:nth-child(2){width:180px;height:95px}.mission-head{flex-wrap:wrap}.mission-reward{white-space:normal}}
@media(prefers-reduced-motion:reduce){.launch-core .gate-orb,.launch-core>i{animation:none!important}}

/* Guided mission: one task at a time with explicit read/tap/type instructions. */
.mission-steps{display:flex;flex-wrap:wrap;gap:10px 18px;list-style:none;padding:0;margin:0 0 24px;color:var(--muted);font-size:12px}.mission-steps li{display:flex;align-items:center;gap:7px}.mission-steps li>span{display:grid;place-items:center;border:1px solid #485770;border-radius:50%;width:25px;height:25px;font:11px monospace}.mission-steps [aria-current="step"]{color:var(--lime);font-weight:700}.mission-steps [aria-current="step"]>span{background:var(--lime);color:#111c0c;border-color:var(--lime)}.mission-steps .done>span{color:var(--lime);border-color:#72974f}.guided-mission{max-width:850px;margin:0 auto}.guided-mission h2{margin:12px 0;font-size:clamp(24px,4vw,34px);line-height:1.2}.step-help{color:var(--cyan);font-size:15px;line-height:1.6}.guided-mission .field-guide{margin:18px 0}.guided-mission .field-guide>p:first-child{margin-top:0}.guided-mission .primary{width:100%;justify-content:center;min-height:52px}.lesson-reference{margin:18px 0 26px}.lesson-reference summary,.field-guide summary{padding:12px 14px;border:1px solid #405775;border-radius:8px;display:flex;justify-content:space-between;gap:14px;cursor:pointer;color:var(--cyan);min-height:48px;background:#152236}.lesson-reference summary:focus-visible{outline:2px solid var(--lime);outline-offset:3px}.guided-mission .prompt{font-size:17px;line-height:1.6}.guided-mission .concept-cleared{margin:0 0 18px;padding:12px}.guided-mission .choices button{border-color:#60738e;background:#1b2c43;font-weight:600}.guided-mission .choices button:active{background:#304363}.guided-mission .choices button b{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:#8cd7ef18}.guided-mission #answer{min-height:210px}#toast{pointer-events:none;top:max(12px,env(safe-area-inset-top));bottom:auto;max-width:calc(100% - 32px);width:max-content;max-height:90px;padding:12px 16px;font-size:12px;line-height:1.4}
@media(max-width:700px){.mission-steps{gap:9px 13px;font-size:11px}.guided-mission .card{padding:20px}.guided-mission .field-guide{padding:16px}.guided-mission .choices{margin:18px 0}.guided-mission .choices button{padding:14px;min-height:60px}.guided-mission .step-help{font-size:14px}.guided-mission .objectives{font-size:14px}.guided-mission .prompt{font-size:16px}}

/* Save and notebook controls remain touch-sized and fit narrow screens. */
nav{flex-wrap:wrap}select{max-width:100%;min-height:48px;padding:12px;background:#152236;color:#edf4ff;border:1px solid #60738e;border-radius:8px;font-size:16px}#notebookContent details{border-bottom:1px solid #405775;padding:16px 0}#notebook summary,.restart-controls summary{cursor:pointer;min-height:48px;padding:12px 0;color:var(--cyan)}.draft-controls{margin:10px 0 18px}.draft-controls button{min-height:48px;margin:5px}#notebookContent .review-answer{white-space:pre-wrap}.restart-controls{margin:24px 0}.restart-controls input{width:100%}#practiceBox .choices{display:grid;gap:10px}
/* Optional hands-on experiment; one-column touch layout on small screens. */
.robot-lab{margin:16px 0}.robot-lab summary{cursor:pointer;min-height:48px;color:var(--cyan);padding:10px 0}.robot-lab summary:focus-visible{outline:2px solid var(--lime);outline-offset:4px}.lab-tests{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.lab-tests button{display:flex;flex-direction:column;align-items:center;gap:8px;white-space:normal;line-height:1.5}.lab-tests button[aria-pressed="true"]{border-color:var(--lime);background:#263829}.lab-shape{font-size:32px;line-height:1.2}.lab-shape.blue{color:var(--cyan)}.lab-shape.yellow{color:var(--gold)}.lab-result{margin-top:14px}.robot-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.robot-results>div{display:grid;gap:6px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);min-width:0}.robot-results span{overflow-wrap:anywhere}.lab-discovery{border-left:3px solid var(--lime);padding-left:12px}.robot-lab .micro{color:var(--muted)}#nextUnlock{overflow-wrap:anywhere}@media(max-width:480px){.lab-tests{grid-template-columns:1fr}.lab-tests button{flex-direction:row;text-align:left}.robot-results{font-size:13px}.hero-meta{flex-wrap:wrap}}
/* Builds share the mission card and use touch-friendly controls without drag-only actions. */
.activity-editor{min-width:0}.activity-editor select{display:block;width:100%;margin:8px 0 18px;white-space:normal}.activity-editor [data-build-controls]{margin:20px 0}.activity-editor [data-build-test]{margin:12px 0}.activity-editor label{display:block}.build-result{background:#0b1523;border:1px solid var(--line);border-radius:8px;padding:16px;margin:12px 0 24px;overflow-wrap:anywhere}.build-result p{font-size:14px;margin:8px 0}.build-result b{color:var(--lime)}.build-maze{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:350px;gap:4px;margin:0 auto 12px}.maze-cell{aspect-ratio:1;display:grid;place-items:center;background:#17283a;border:1px solid #39566b;border-radius:6px;font:24px monospace;color:var(--cyan)}.maze-cell.wall{background:#020810;color:#587088}.maze-cell.visited{border-color:var(--lime);color:var(--lime)}.maze-arrows,.probe-buttons{display:flex;gap:8px;flex-wrap:wrap}.maze-arrows button{flex:1;min-width:68px;padding:12px 8px}.build-program{white-space:normal;overflow-wrap:anywhere;line-height:1.8;font-family:monospace}.build-cards{display:grid;gap:10px}.build-cards button{text-align:left;font-size:14px;line-height:1.6;white-space:normal;min-height:60px}.build-cards button[aria-pressed="true"],.probe-buttons button[aria-pressed="true"]{border-color:var(--lime);background:#243824}.evidence-order{padding:0;list-style-position:inside;display:grid;gap:10px}.evidence-order li{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--line);border-radius:8px}.evidence-order li>span{flex:1;min-width:0;font-size:14px}.evidence-order li>div{display:flex;gap:4px}.evidence-order button{min-width:44px;min-height:48px;padding:8px}.build-targets,.guess-play{border:1px solid var(--line);border-radius:8px;padding:14px;margin:16px 0}.build-targets p{font:13px monospace}.activity-editor input[type="range"]{width:100%;min-height:48px}.activity-editor [data-guess]{max-width:140px}.activity-editor output{color:var(--lime)}.activity-editor textarea{min-height:140px}@media(max-width:480px){.evidence-order li{align-items:flex-start;gap:8px}.evidence-order li>div{flex-direction:column}.build-targets p{font-size:12px}.activity-editor .step-help{font-size:14px}}


/* Adventure: large touch controls, restrained text, visible experiments. */
.current-task{max-width:850px;margin:0 auto 14px;color:var(--cyan);font:700 13px monospace;text-transform:uppercase;letter-spacing:.12em}.pip-bot{display:inline-flex;width:36px;height:30px;border-radius:11px 11px 7px 7px;background:linear-gradient(135deg,#b8f8ff,#56bccb);align-items:center;justify-content:center;gap:7px;border:2px solid #d6feff;box-shadow:0 0 18px #73dae52b;vertical-align:middle}.pip-bot i{height:8px;width:5px;background:#142f42;border-radius:2px;animation:pipBlink 6s infinite}.adventure-status{display:flex;align-items:center;gap:14px;color:var(--cyan);font:12px monospace;letter-spacing:.07em}.boss-shields{display:flex;gap:8px;margin:18px 0}.boss-shields i{height:8px;border-radius:8px;flex:1;background:#3c294d;box-shadow:inset 0 0 0 1px #875aab}.boss-shields i.broken{background:var(--lime);box-shadow:0 0 14px #b8fa6840}.field-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.field-buttons button,.field-cards button{min-height:52px;border-color:#55718c;background:#142539;font-size:15px;text-align:left;flex:1 1 140px}.field-buttons button[aria-pressed=true],.field-cards button[aria-pressed=true],.studio-tabs button[aria-pressed=true]{border-color:var(--lime);background:#263928;box-shadow:inset 0 0 0 1px var(--lime)}.field-buttons small,.field-cards small{display:block;font:11px monospace;margin-top:6px;color:var(--cyan)}.field-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.field-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;width:min(100%,360px);margin:18px auto;padding:8px;border:1px solid #35516a;border-radius:14px;background:radial-gradient(ellipse at top,#142d43,#080f1d)}.field-cell{aspect-ratio:1;display:grid;place-items:center;min-width:0;color:#84b8c9;background:#102031;border-radius:5px;font-size:24px}.field-cell.wall{background:repeating-linear-gradient(135deg,#304255,#304255 5px,#243447 5px,#243447 10px);color:#5b7891}.field-cell.trail{background:#34583c;color:var(--lime)}.field-cell.hazard{background:#512531;color:#ff9da3}.field-cell .pip-bot{width:65%;height:55%;max-width:36px;animation:pipArrive .15s ease-out}.arrows{justify-content:center}.arrows button{flex:0 1 64px;text-align:center;font-size:25px;padding:8px}.command-tape{min-height:54px;padding:14px;border:1px dashed #37536c;letter-spacing:.15em;line-height:1.7}.command-tape small{letter-spacing:0;color:var(--muted);white-space:nowrap}.robot-duo{display:flex;justify-content:space-evenly;padding:24px 0}.robot-duo>div{display:flex;flex-direction:column;align-items:center;gap:16px;font:11px monospace}.robot-duo .pip-bot{transform:scale(1.6);margin:14px}.robot-duo>div:last-child .pip-bot{background:linear-gradient(135deg,#e2b6ff,#a583ec)}.probe-log p{display:flex;gap:16px;padding:8px 12px;background:#142132;border-radius:6px}.field-win{padding:12px 16px;border-left:3px solid var(--lime);background:#203321;color:#d0f6ae}.field-hint{margin-top:20px}.field-hint summary{cursor:pointer;min-height:48px;color:var(--cyan)}.engine-results{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.engine-results>div{border:1px solid #435c78;padding:12px 4px;border-radius:10px;text-align:center;font-size:12px}.engine-results strong{display:block;font:700 28px monospace;padding:8px}.engine-results small{display:block;color:var(--muted)}.engine-results .match{border-color:var(--lime)}.engine-results .miss{border-color:#f3919e}.reactor-meter,.score-machine{padding:14px;text-align:center;font:700 35px monospace;color:var(--lime);text-shadow:0 0 24px #b8fa6850}.event-log{list-style:none;padding:0}.event-log li{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid #293c51}.agent-plan{list-style:none;counter-reset:plan;padding:0}.agent-plan li{counter-increment:plan;display:flex;gap:8px;align-items:center;margin:8px 0;padding:10px;background:#142539;border-radius:8px}.agent-plan li:before{content:counter(plan);color:var(--cyan);font:16px monospace}.agent-plan span{flex:1}.agent-plan button{padding:10px;min-width:46px;min-height:46px}.token-count{font:700 22px monospace;color:var(--lime)}.adventure-stage fieldset,.sound-pair fieldset{border:1px solid #334c65;border-radius:12px;margin:16px 0;padding:16px}.adventure-stage legend,.sound-pair legend{padding:0 8px;color:var(--cyan)}.adventure-stage input[type=range],#creator input[type=range]{width:100%;min-height:48px;accent-color:var(--lime)}.review-question{font-size:22px;line-height:1.5;color:#eff8fd}.review-proof{background:#132638;padding:16px;border-radius:12px;margin:20px 0}.review-proof p{font-size:14px}.review-fast details summary{padding:12px 0;cursor:pointer;color:var(--cyan)}.quick-notes{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.quick-notes button{font-size:12px;min-height:44px}.creator-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.studio-tabs{display:flex;gap:12px;margin:24px 0}.studio-tabs button{flex:1;min-height:52px}.sound-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.sound-pair select{width:100%;margin:12px 0}.sequencer{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin:20px 0}.sequencer button{padding:14px 3px;background:#172b43;min-height:68px;color:var(--lime);font:700 21px monospace}.sequencer small{display:block;color:var(--muted);font-size:10px;margin-bottom:8px}.game-settings{display:flex;flex-wrap:wrap;gap:24px}.game-settings label{flex:1}.game-settings select{display:block;width:100%;margin-top:8px}.studio-game:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}.ai-brief{margin-top:28px}.ai-brief summary{padding:10px 0;cursor:pointer;color:var(--cyan)}.ai-brief textarea{min-height:170px;font-size:14px;line-height:1.6}#creatorBox{max-width:900px;margin:auto}#openCreator{display:block;margin-top:18px;color:var(--cyan)}
@keyframes pipBlink{0%,94%,100%{transform:scaleY(1)}96%{transform:scaleY(.1)}}@keyframes pipArrive{from{transform:scale(.8)}to{transform:scale(1)}}
@media(max-width:700px){.field-cards,.sound-pair{grid-template-columns:1fr}.sound-pair{gap:0}.field-buttons button{font-size:14px}.field-buttons.arrows button{flex-basis:54px}.sequencer{grid-template-columns:repeat(4,1fr)}.engine-results{grid-template-columns:repeat(2,1fr)}.review-question{font-size:19px}.adventure-status{font-size:11px}.field-grid{max-width:310px}.creator-head .page-title{font-size:40px}}
@media(prefers-reduced-motion:reduce){.pip-bot i,.field-cell .pip-bot{animation:none!important}}

.ship-dock{display:flex;align-items:center;gap:24px;border:1px solid #30475f;border-radius:16px;padding:24px;margin:20px 0 36px;background:linear-gradient(115deg,#112133,#0b1221)}.ship-dock h2{font-size:20px;margin:0 0 8px}.ship-art{width:190px;flex-shrink:0;filter:drop-shadow(0 0 16px #64bcdb30)}.ship-art svg{width:100%;height:auto}.ship-parts{display:flex;flex-wrap:wrap;gap:8px}.ship-parts span{border:1px solid #314256;border-radius:6px;padding:7px;font:11px monospace;color:#8092aa}.ship-parts .restored{border-color:#8caf5c;color:var(--lime);background:#283b28}body[data-world="2"] .planet{filter:hue-rotate(30deg)}body[data-world="3"] .planet{filter:hue-rotate(80deg)}body[data-world="4"] .planet{filter:hue-rotate(130deg)}body[data-world="5"] .planet{filter:hue-rotate(190deg)}body[data-world="6"] .planet{filter:hue-rotate(250deg)}body[data-world="7"] .planet{filter:hue-rotate(310deg)}@media(max-width:700px){.ship-dock{display:block;padding:20px}.ship-art{width:160px;margin:0 auto 15px}.ship-dock h2{font-size:18px}}
