@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{color-scheme:dark;--bg:#101d28;--panel:#182934;--line:#31434c;--text:#edf0e6;--muted:#b6c5c6;--gold:#e8ce87;--mint:#90d5c6}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 'DM Sans',system-ui,sans-serif}a{color:var(--gold);text-underline-offset:4px}button,input{font:inherit}button,.button{cursor:pointer;border:1px solid #657775;background:#243943;color:var(--text);border-radius:5px;padding:9px 14px;text-decoration:none;display:inline-block;line-height:1.35}button:hover,.button:hover{background:#35505a}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}input[type=checkbox]{accent-color:var(--mint);width:22px;height:22px;flex-shrink:0}input[type=range]{width:90px;accent-color:var(--gold)}.skip{position:absolute;top:-70px;padding:12px;background:#000;z-index:20}.skip:focus{top:0}header{max-width:1560px;margin:auto;padding:25px 38px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-size:25px;letter-spacing:3px;text-decoration:none;font-weight:700;color:var(--text)}.brand span{display:block;font-size:9px;letter-spacing:2px;color:var(--gold)}nav{display:flex;gap:25px;flex-wrap:wrap;font-size:14px}nav a{text-decoration:none;color:var(--muted)}main{max-width:1510px;margin:auto;padding:35px 38px 65px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400}h1{font-size:64px;line-height:1;margin-bottom:12px;letter-spacing:-1.5px}h2{font-size:31px;line-height:1.15;margin-bottom:14px}h3{font-size:17px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--gold);margin-bottom:12px}.muted,small{color:var(--muted);font-size:13px}small{display:block}.page-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.page-title p:last-child{color:var(--muted);margin:0}.page-title>a{font-size:13px}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 366px;gap:25px;align-items:start}.player-column{min-width:0}.game-stage{width:100%;aspect-ratio:8/7;max-height:660px;min-height:280px;background:#070e14;position:relative;border:1px solid #526568;border-radius:7px;overflow:hidden;display:grid;place-items:center}#game{position:absolute;inset:0}#game canvas{image-rendering:pixelated}#boot{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px;background:radial-gradient(ellipse at 50% 32%,#305159 0,#142935 52%,#0c1722 100%)}#boot[hidden]{display:none}#boot h2{font-size:58px;margin:10px 0 20px}#boot p:not(.eyebrow){max-width:320px;color:#c9d7d4}.primary{background:var(--gold);border-color:var(--gold);color:#14232a;font-weight:700;padding:14px 25px}.primary:hover{background:#f5dfab;color:#14232a}.primary span{margin-left:18px}#boot small{margin-top:18px}.status{padding:9px 0;margin:0;color:var(--mint);font-size:13px;min-height:39px}.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;align-items:center}.toolbar button{font-size:13px}.toolbar label{display:flex;gap:8px;align-items:center;font-size:13px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:23px;margin-bottom:19px}.panel p{font-size:14px}.panel p:last-child{margin-bottom:0}summary{cursor:pointer;font-weight:600}.touch-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:18px 0}.touch-controls button{touch-action:none;user-select:none}.touch-controls button[aria-pressed=true]{background:var(--gold);color:#14232a}.assists{display:grid;grid-template-columns:1fr 1fr;gap:16px}.assists>div,.assists>p{grid-column:1/-1}.assists h2{margin:0}.toggle{display:flex;gap:11px;cursor:pointer;align-items:flex-start}.toggle strong{font-size:14px}.toggle small{font-size:12px}.journey{position:sticky;top:14px;padding:22px;max-height:calc(100vh - 28px);overflow:auto;scrollbar-color:#5c7478 #182934}.journey h2{font-size:35px}.journey-top p:not(.eyebrow){color:var(--muted);font-size:13px}.journey progress{width:100%;height:6px;accent-color:var(--mint)}.progress-line{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:7px 0 14px}.progress-line strong{font-size:12px}.progress-line button{font-size:11px;padding:6px 8px}.journey #route-status{font-size:11px;line-height:1.45;border-bottom:1px solid var(--line);padding-bottom:13px}.route-chapter{margin-bottom:21px}.route-chapter h3{color:var(--gold);font-size:11px;letter-spacing:1.2px;text-transform:uppercase;border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:0}.task{display:flex;gap:10px;padding:13px 0;border-bottom:1px solid #ffffff0c;align-items:flex-start;cursor:pointer}.task input{width:19px;height:19px;margin:3px 0 0}.task strong{display:block;font-size:13px;line-height:1.5;font-weight:500}.task small{font-size:11px;margin-top:4px;line-height:1.5}.task-next{border-left:2px solid var(--mint);padding-left:10px;background:#90d5c608}.task-next strong{color:#d2f3e8}#completed{border-top:1px solid var(--line);padding-top:17px;margin-top:10px}#completed summary{font-size:13px}#completed-count{color:var(--mint);margin-left:10px}#completed .task strong{color:var(--muted)}.route-actions{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.route-actions button{font-size:11px;padding:7px 9px}.route-sources{font-size:12px;color:var(--muted)}.route-sources p{font-size:12px}.complete-message{padding:25px 0;color:var(--mint)}footer{max-width:1434px;margin:auto;padding:25px 0 35px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;padding:45px 0 65px;align-items:center}.hero h1{font-size:110px}.lead{font-family:'Libre Caslon Display',Georgia,serif;font-size:35px;line-height:1.25}.hero p:not(.eyebrow){max-width:520px}.hero .button{margin:12px 0}.hero-art{background:#0a131d;padding:24px;transform:rotate(2deg);border:1px solid #516267;box-shadow:18px 22px 0 #1e3540}.hero-art img{width:100%;height:auto;image-rendering:pixelated;display:block}.hero-art span{display:block;letter-spacing:2px;font-size:10px;text-align:center;padding-top:18px;color:var(--gold)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid h2{font-size:29px}.number{color:var(--mint);font-size:12px;display:block;margin-bottom:20px}.reading{max-width:900px;line-height:1.85}.reading h1{font-size:56px;margin:20px 0 30px}.reading h2{margin-top:36px}.reading code{word-break:break-all;font-size:12px}.reading ul{padding-left:20px}#play-area:fullscreen{background:var(--bg);padding:20px;overflow:auto;grid-template-columns:minmax(0,1fr) 366px}#play-area:fullscreen .game-stage{max-height:calc(100vh - 180px)}[hidden]{display:none!important}@media(max-width:1100px){.play-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px}.journey{padding:18px}main{padding:30px 24px}header{padding:20px 24px}.hero{gap:35px}}@media(max-width:800px){header{align-items:flex-start;flex-direction:column;gap:15px}nav{gap:18px}.play-layout,#play-area:fullscreen{grid-template-columns:1fr}.journey{position:static;max-height:650px}.page-title>a{display:none}.game-stage{max-height:none}.hero{grid-template-columns:1fr;padding:25px 0 45px}.hero h1{font-size:86px}.hero-art{max-width:500px;transform:none;box-shadow:none}.feature-grid{grid-template-columns:1fr}.assists{grid-template-columns:1fr}.assists>div,.assists>p{grid-column:auto}footer{padding:25px 24px}#boot h2{font-size:42px}}@media(prefers-reduced-motion:no-preference){.task{animation:arrive .18s ease-out}@keyframes arrive{from{opacity:.3;transform:translateY(4px)}to{opacity:1;transform:none}}}

#screen{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;outline:none}.x68-stage{aspect-ratio:4/3}.disk-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px}.disk-tools label{display:grid;gap:7px;font-size:13px}select{font:inherit;padding:7px;background:#101d28;color:#edf0e6;border:1px solid #657775;border-radius:4px;max-width:100%}.controller-live{display:flex;gap:6px;flex-wrap:wrap;font-size:11px}.controller-live span{padding:3px 6px;border:1px solid #657775}.controller-live [data-down=true]{background:#e8ce87;color:#101d28}#qa-state{font:12px monospace;white-space:pre-wrap;word-break:break-all}.edition-links{display:flex;gap:15px;flex-wrap:wrap;margin:25px 0}.boot-help{font-size:13px;color:#b6c5c6}