@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=VT323&display=swap');
:root{--bg:#0c171e;--panel:#152630;--edge:#30434a;--ink:#f1ead6;--muted:#aabbb9;--gold:#eabb64;--teal:#74e6cc;--accent:#74e6cc}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px 'Space Grotesk',system-ui,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button{border:1px solid var(--edge);background:#233841;color:var(--ink);padding:12px 18px;border-radius:5px;font-weight:600}button:hover{border-color:var(--gold);background:#2c434b}button:disabled{cursor:default;opacity:.5}.primary{background:var(--gold);color:#17242b;border-color:var(--gold);box-shadow:0 4px 0 #966d33}.primary:hover{background:#f5cc82}.quiet{background:transparent}.pixel{font-family:'VT323','Courier New',monospace;font-weight:400;letter-spacing:1px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.5px;font-weight:700;color:var(--gold)}h1,h2,h3,p{margin-top:0}p{line-height:1.65}header{height:76px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--edge);gap:12px}.brand{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700}.brand b{color:var(--gold);font-size:30px}.brand small{display:block;color:var(--muted);font-weight:400;font-size:11px;margin-top:4px}.nav{display:flex;gap:10px;align-items:center}.nav button{font-size:12px;padding:8px 12px}.relic-count{color:var(--gold);font-size:13px}.cover{position:relative;max-width:1440px;margin:22px auto}.cover img{display:block;width:100%;image-rendering:pixelated;border:1px solid #4b584d}.cover-action{position:absolute;left:27%;right:27%;bottom:3%;height:17%;font:clamp(18px,3vw,40px) 'VT323',monospace;letter-spacing:2px;background:#392e1f;border:4px solid var(--gold);color:#ffe3a2;box-shadow:inset 0 0 0 3px #6a4828,0 5px 0 #0b1318}.cover-action:hover{background:#5b4225}.intro-footer{max-width:1200px;margin:25px auto;padding:0 25px;display:flex;justify-content:space-between;gap:30px;color:var(--muted);font-size:14px}.intro-footer strong{display:block;color:var(--ink);margin-bottom:6px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;max-width:1440px;margin:auto;min-height:calc(100vh - 76px)}main{padding:28px 32px;border-right:1px solid var(--edge)}aside{padding:28px 22px;background:#101e27}.chapter-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.chapter-head h1{font-size:30px;margin:5px 0 0}.step{color:var(--muted);font-size:12px}.scene{position:relative;overflow:hidden;border:1px solid #52605c;background:#0e202c;box-shadow:0 8px 40px #0003}#world{width:100%;height:auto;display:block;image-rendering:pixelated;aspect-ratio:2.8}.scene-label{position:absolute;top:15px;left:16px;font-size:10px;letter-spacing:2px;background:#0c171ed9;padding:8px 12px;color:#f7d999;border:1px solid #b8914e66}.scene-progress{position:absolute;bottom:12px;right:15px;color:#9fe9d6;font-size:11px;background:#0c171ed9;padding:7px 10px}.quest{margin-top:24px}.quest h2{font-size:25px;margin-bottom:8px}.instruction{color:var(--muted);font-size:14px;margin-bottom:20px}.story{max-width:680px;font-size:18px;line-height:1.8;min-height:110px}.word{color:var(--gold);border:0;border-bottom:1px dashed var(--gold);padding:0 2px;border-radius:0;background:transparent;font-size:inherit}.story-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px}.number{font:44px 'VT323',monospace;color:var(--gold);letter-spacing:4px}.console{display:flex;justify-content:center;align-items:center;gap:10px;background:#0e1b22;border:1px solid #334951;padding:24px 12px;margin:18px 0;border-radius:6px}.slot-wrap{text-align:center;min-width:65px}.slot-wrap label{display:block;font-size:10px;color:var(--muted);margin-bottom:9px}.slot{height:65px;width:65px;border:2px dashed #5d7d7b;background:#192e37;font:36px 'VT323',monospace;color:var(--teal);padding:0}.slot.filled{border-style:solid;box-shadow:inset 0 -4px #071c21}.slot.active{border-color:var(--gold);background:#30443d}.dot{font:40px 'VT323';color:var(--gold);align-self:flex-end;margin-bottom:7px}.tile-bank{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:18px auto}.tile{width:47px;height:48px;padding:0;font:29px 'VT323',monospace;border:1px solid #a2824f;background:#57452c;color:#ffe3a4;box-shadow:0 4px #2b241b}.tile.selected{outline:2px solid var(--teal);transform:translateY(-3px)}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.input-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}input,select{background:#0d1b23;border:1px solid #50666b;color:var(--ink);padding:13px;border-radius:4px;min-width:0}input{width:min(100%,470px)}.choice-grid{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.choice-grid button{min-width:75px;font:30px 'VT323'}.choice-grid button.selected{border-color:var(--teal);background:#1c4b4a}.feedback{margin-top:18px;padding:15px 18px;border-left:3px solid var(--gold);background:#2a2e26;line-height:1.6;font-size:14px}.feedback.success{border-color:var(--teal);background:#133b36}.hint-line{color:var(--muted);font-size:12px;margin-top:13px}.coach-title{display:flex;align-items:center;gap:10px}.robot-icon{width:45px;height:42px;background:#c68f3e;border:4px solid #75552b;box-shadow:0 -5px #dbb35f;position:relative;image-rendering:pixelated}.robot-icon:after{content:'▪ ▪';font-size:31px;color:var(--accent);position:absolute;left:3px;top:-9px}.coach-title h2{font-size:18px;margin:0}.coach-title span{font-size:10px;color:var(--muted)}.coach-bubble{background:#1a3039;border:1px solid #304952;border-radius:4px;padding:16px;margin-top:20px;font-size:14px;line-height:1.7;min-height:125px}.coach-controls{display:grid;gap:9px;margin-top:12px}.coach-controls button{text-align:left;font-size:12px;padding:11px}.sidebar-label{margin:28px 0 15px;color:var(--muted);font-size:10px;letter-spacing:2px;text-transform:uppercase}.trail{display:grid;gap:16px}.trail-item{display:flex;gap:12px;font-size:12px;color:#788e93;align-items:center}.trail-item i{width:24px;height:24px;display:grid;place-items:center;border:1px solid #3f555c;font-style:normal;font-size:11px}.trail-item.current{color:var(--gold)}.trail-item.done{color:var(--teal)}.badge{padding:12px;border:1px solid #665337;background:#302a20;color:var(--gold);font-size:12px;margin:9px 0}.small{font-size:11px;line-height:1.7;color:var(--muted)}.progressbar{height:4px;background:#263c44;margin:20px 0}.progressbar span{display:block;height:100%;background:var(--teal);transition:width .5s}.big-relic{font-size:72px;color:var(--gold);text-align:center;margin:25px}.finish{text-align:center}.finish .rewards{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.reward-card{border:1px solid #665337;background:#29291f;padding:18px;min-width:150px}.reward-card strong{display:block;color:var(--gold);margin-bottom:8px}.finish h2{font-size:36px}.color-options{display:flex;gap:10px;justify-content:center;margin:18px}.color-options button{border:2px solid var(--edge)}.color-options button.active{border-color:var(--gold)}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--gold);max-width:560px;padding:30px;max-height:85vh;overflow:auto}dialog::backdrop{background:#000b}#toast{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);padding:14px 25px;background:#eabb64;color:#14232a;font-weight:600;border:3px solid #fff1bc;opacity:0;pointer-events:none;z-index:20;transition:opacity .2s;max-width:90vw;text-align:center}#toast.show{opacity:1}#confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:30}.scaling-lights{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;max-width:390px;margin:20px auto}.scaling-lights span{width:12px;height:12px;background:var(--teal);box-shadow:0 0 7px #74e6cc88}.comparison{display:flex;gap:30px;justify-content:center;color:var(--teal);font-size:14px}.glossary-list dt{color:var(--gold);margin-top:14px}.glossary-list dd{margin:6px 0;color:var(--muted);line-height:1.6}@media(max-width:1000px){.layout{grid-template-columns:minmax(0,1fr) 250px}main{padding:23px 20px}.console{gap:6px;padding:15px 6px}.slot-wrap{min-width:50px}.slot{width:50px;height:57px}}@media(max-width:760px){header{height:auto;min-height:70px;padding:12px 18px;flex-wrap:wrap}.layout{display:flex;flex-direction:column}main{border:0;padding:20px 16px}aside{border-top:1px solid var(--edge);padding:22px}.chapter-head h1{font-size:26px}.console{overflow-x:auto;justify-content:flex-start}.slot-wrap{flex:1;min-width:43px}.slot{width:43px;height:53px}.slot-wrap label{font-size:9px}.intro-footer{display:block}.intro-footer p{margin-bottom:20px}.cover{margin-top:0}.cover-action{left:20%;right:20%;font-size:20px}.nav{gap:6px}.nav button{padding:7px}.story{font-size:16px}.trail{grid-template-columns:1fr 1fr}.coach-bubble{min-height:0}.finish h2{font-size:28px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.chart-dialog{width:min(1200px,96vw);max-width:1200px;padding:20px}.chart-dialog h2{font:30px 'VT323',monospace;color:var(--gold);margin-bottom:15px}.guide-art{display:block;width:100%;height:auto;image-rendering:pixelated;border:1px solid #a47a3e}.guide-explore{margin-top:22px}.guide-explore h3{font-size:18px;margin-bottom:6px}.guide-digits{display:flex;align-items:stretch;gap:7px;overflow-x:auto;padding:5px 3px 10px}.guide-digits button{flex:1;padding:12px 6px;min-width:95px;background:#223c42;border-color:#8d7448}.guide-digits button small{display:block;font-size:10px;color:var(--muted)}.guide-digits button strong{display:block;font:36px 'VT323',monospace;color:var(--gold)}.guide-digits button.selected{border:2px solid var(--teal);background:#254c48}.guide-decimal{align-self:center;font:50px 'VT323',monospace;color:var(--teal)}@media(max-width:760px){.chart-dialog{padding:12px}.guide-digits button{min-width:85px}.nav{flex-wrap:wrap}}
.ten-portrait{width:48px;flex:0 0 48px;aspect-ratio:192/298;background:url('assets/archive-characters.png') 8.09% 95.93% / 923.96% 297.65% no-repeat}.ten-portrait.pointing{aspect-ratio:56/58;background:url('assets/sprites/ten-pointing_4f_56x58.png') 0 0/400% 100% no-repeat;image-rendering:pixelated;animation:ten-point .8s steps(4, jump-none) 2}@keyframes ten-point{to{background-position:100% 0}}.typed-row{justify-content:center;margin-top:10px}.typed-row input{width:160px;text-align:center;font:24px 'VT323',monospace;color:var(--teal)}.scroll-invite{margin:0 0 14px}.walkthrough-dialog{width:min(1200px,96vw);max-width:1200px;padding:16px}.walkthrough-frame{display:block;width:100%;height:min(68vh,760px);border:1px solid #8b653c;background:#0c171e}
.chapter-link{display:inline-block;color:var(--teal);font-weight:700;margin-top:8px;text-underline-offset:4px}.chapter-link:focus-visible,.chapter-back:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
