@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Barlow:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#eafff7;--mint:#c6ff4a;--muted:#acc5c6;--panel:#082532}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#071d2c;color:var(--ink);font-family:Barlow,Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--mint);outline-offset:5px}#game-shell{position:relative;width:100%;height:100%;min-height:360px;overflow:hidden}#game{display:block;width:100%;height:100%;position:absolute;inset:0}.grain{pointer-events:none;position:absolute;inset:0;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.topbar{position:absolute;left:4%;right:4%;top:30px;display:flex;align-items:center;justify-content:space-between;z-index:5}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--ink);font-style:italic;font-weight:900;font-size:26px;line-height:.87;letter-spacing:-1.5px}.brand-mark{display:grid;place-items:center;background:var(--mint);color:#082532;width:39px;height:42px;clip-path:polygon(25% 0,100% 0,80% 100%,0 100%);font-size:33px;padding-right:4px}.brand-sub{display:block;font-size:10px;letter-spacing:3.7px;margin-top:7px;font-style:normal}.zone{font-size:10px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:10px}.zone i,.intro-meta i{background:var(--mint);width:5px;height:5px;border-radius:50%;display:inline-block}.zone b{font-weight:500;opacity:.5;margin-left:10px}.top-actions{display:flex;gap:12px}.top-actions button{color:var(--ink);border:1px solid #ffffff24;background:#08253260;border-radius:4px;padding:10px 13px;font-size:14px}.top-actions button span{font-size:9px;letter-spacing:1.4px;margin-left:5px}.screen{position:absolute;inset:0;z-index:3}.welcome{background:linear-gradient(90deg,rgba(5,26,38,.94),rgba(5,26,38,.67) 32%,transparent 68%)}.intro-copy{position:absolute;left:8%;top:22%;}.eyebrow{font-size:10px;letter-spacing:3px;font-weight:700;color:var(--mint);display:flex;align-items:center;gap:12px}.eyebrow>span{width:24px;height:2px;background:var(--mint)}h1{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:800;font-size:clamp(64px,7.6vw,118px);line-height:.87;letter-spacing:-2px;margin:26px 0 23px}h1 em,h2 em{font-style:italic;color:var(--mint)}.period{color:var(--mint)}.intro-copy p,.modal-card p{font-size:13px;line-height:1.8;color:#bfd1cf;margin:0 0 26px}.primary{background:var(--mint);color:#102b2b;padding:18px 23px;border:0;border-radius:3px;display:flex;align-items:center;justify-content:space-between;min-width:206px;font-weight:800;font-size:12px;letter-spacing:1.4px;box-shadow:0 4px 30px #b4ff3715;transition:transform .2s,background .2s}.primary:hover{background:#ddff9b;transform:translateY(-2px)}.primary span{font-size:22px;margin-left:50px;line-height:16px}.intro-meta{display:flex;gap:24px;margin-top:21px;font-size:8px;letter-spacing:1.3px;color:#9aafb0}.intro-meta span:first-child{display:flex;gap:6px;align-items:center}.scene-label{position:absolute;right:6%;bottom:20%;text-align:right;transform:rotate(-3deg)}.scene-label>span{font-size:8px;letter-spacing:3px;display:block}.scene-label b{font-family:'Barlow Condensed',Impact,sans-serif;font-size:30px;font-style:italic;display:block;margin-top:6px;letter-spacing:1px}.scene-label b span{color:var(--mint);font-style:normal}.controls{position:absolute;bottom:53px;left:4%;right:4%;display:flex;align-items:center;gap:27px;z-index:4;border-top:1px solid #eafff71c;padding-top:20px;pointer-events:none}.controls>div{display:flex;gap:5px;align-items:center}.controls span{font-size:9px;letter-spacing:1.2px;margin-left:5px;color:#b2c9c8;font-weight:600}kbd{font-family:inherit;border:1px solid #c5efdd45;border-radius:3px;padding:5px 6px;color:#def6e8;font-size:9px;min-width:23px;text-align:center;background:#08253260}.controls .footer-note{margin-left:auto;font-size:8px;letter-spacing:2px;opacity:.55}.fan-note{position:absolute;bottom:17px;left:4%;font-size:7px;letter-spacing:1.6px;color:#d9ead75c;pointer-events:none}.hidden{display:none!important}#hud{position:absolute;inset:0;pointer-events:none;z-index:2}.stat-stack{position:absolute;top:120px;left:4%;text-shadow:0 2px 15px #072636}.rings{display:flex;align-items:center;gap:16px}.ring-icon{width:34px;height:43px;display:inline-block;border:7px solid #ffd96a;border-radius:50%;box-shadow:0 0 18px #ffd64245,inset 0 0 0 2px #fff4ba;transform:rotate(15deg)}.rings label{font-size:9px;font-weight:800;letter-spacing:3px;display:block;color:#ffe7a0}.rings strong{font-size:48px;line-height:1.1;letter-spacing:1px;font-variant-numeric:tabular-nums}.minor-stats{display:flex;flex-direction:column;gap:8px;margin-top:19px;font-size:9px;letter-spacing:2px;color:#c3d6d5}.minor-stats b{margin-left:12px;color:white;font-size:12px;font-variant-numeric:tabular-nums}.speedometer{position:absolute;bottom:140px;right:4%;width:155px;text-align:right}.speedometer strong{font-size:57px;font-style:italic;font-weight:900;line-height:1}.speedometer span{font-size:9px;margin-left:6px}.speedometer label{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;color:#c0d3d0;margin-top:12px}.speedometer b{color:var(--mint)}.energy-track{height:4px;background:#ffffff24;margin-top:9px;border-radius:8px;overflow:hidden}.energy-track i{display:block;height:100%;background:var(--mint);width:100%}.route{position:absolute;bottom:143px;left:4%;display:flex;align-items:center;gap:12px;font-size:8px;font-weight:700;letter-spacing:2px}.route>div{width:150px;height:2px;background:#ffffff33;position:relative}.route i{height:100%;display:block;background:var(--mint);width:0}.route b{width:6px;height:6px;background:var(--mint);border-radius:50%;position:absolute;top:-2px;left:0}#toast{position:absolute;top:23%;left:50%;transform:translateX(-50%);background:#082532db;color:#eaffe1;border:1px solid #baff6550;border-radius:4px;padding:13px 21px;font-size:11px;letter-spacing:1px;text-align:center;opacity:0;transition:opacity .2s;max-width:70%}#toast.visible{opacity:1}#boss-hud{position:absolute;top:113px;width:min(440px,45%);left:50%;transform:translateX(-50%)}#boss-hud>div:first-child{display:flex;justify-content:space-between;font-size:11px;font-weight:800;letter-spacing:2px}#boss-hud b{font-size:9px;color:#ffb27e}.boss-track{height:8px;padding:1px;background:#0005;margin-top:9px;border:1px solid #ffffff30}.boss-track i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#ff603f,#ffc879);transition:width .15s}#boss-hud p{font-size:10px;text-align:center;color:#d9ece5;letter-spacing:.6px}.modal{display:grid;place-items:center;background:#041c2bd9;backdrop-filter:blur(9px);z-index:6}.modal-card{width:min(460px,85%);text-align:left}.modal-card h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:68px;line-height:.95;margin:20px 0 25px;font-weight:800}.text-button{display:block;margin-top:22px;background:none;border:0;color:#a7c2c0;font-size:10px;letter-spacing:2px}#touch-controls{position:absolute;bottom:35px;left:4%;right:4%;display:none;justify-content:space-between;z-index:4;pointer-events:none}#touch-controls>div{display:flex;gap:12px}#touch-controls button{pointer-events:auto;width:58px;height:58px;border-radius:50%;border:1px solid #ddffe755;background:#0b334db0;color:#eaffef;font-weight:800;touch-action:none;user-select:none}#touch-controls button[data-key=Space]{background:#c6ff4acc;color:#15352d;font-size:25px}body.playing .welcome{display:none}body.playing .fan-note{opacity:.5}
@media(pointer:coarse){body.playing #touch-controls{display:flex}body.playing .controls{display:none}.speedometer{bottom:120px}.route{bottom:121px}.fan-note{bottom:10px}}@media(max-width:700px){.topbar{top:20px}.zone{display:none}.top-actions button span{display:none}.intro-copy{left:7%;top:21%}h1{font-size:76px}.intro-copy p{font-size:11px;max-width:290px}.intro-meta{gap:13px;font-size:6px}.scene-label{display:none}.controls{gap:12px;bottom:40px;flex-wrap:wrap}.controls span{font-size:7px}.controls .footer-note{display:none}.controls kbd{font-size:8px}.welcome{background:linear-gradient(90deg,#051a26ed,#051a2690 65%,#051a2630)}.stat-stack{top:95px}.rings strong{font-size:36px}.ring-icon{width:26px;height:33px;border-width:5px}.minor-stats{font-size:7px}.minor-stats b{font-size:10px}.speedometer{width:115px}.speedometer strong{font-size:40px}#boss-hud{top:100px;left:auto;right:4%;transform:none;width:48%}#boss-hud>div:first-child{font-size:9px;letter-spacing:.6px}#boss-hud b{font-size:7px}#boss-hud p{font-size:8px}.route>div{width:90px}.route{font-size:6px}#toast{top:30%;font-size:10px;width:80%;max-width:80%}.modal-card h2{font-size:56px}}@media(max-height:640px) and (min-width:701px){.intro-copy{top:21%}h1{font-size:70px;margin:15px 0}.intro-copy p{font-size:11px;margin-bottom:16px}.intro-meta{margin-top:12px}.primary{padding:14px 20px}.controls{bottom:30px;padding-top:12px}.scene-label{bottom:23%}.fan-note{bottom:10px}.topbar{top:20px}}
#character-picker{position:absolute;right:4%;top:104px;z-index:5;text-align:right}.character-buttons{display:flex;gap:5px}.character-buttons button{border:1px solid #b8e9df33;border-radius:4px;background:#092330d9;color:#b8cfce;font-size:9px;font-weight:800;letter-spacing:.8px;padding:8px;display:flex;gap:6px;align-items:center}.character-buttons button[aria-pressed=true]{border-color:var(--mint);color:var(--mint);background:#1d3d35}.character-buttons kbd{font-size:9px;padding:3px;min-width:18px}#ability-hint{color:#d5e6dd;font-size:9px;max-width:310px;line-height:1.6;margin:8px 0 0 auto}body.playing #character-picker{top:auto;bottom:212px}#mission{position:absolute;left:4%;top:280px;font-size:9px;letter-spacing:1.5px;color:#a8eaf3}#mission b{color:#fff;margin-left:9px;font-size:13px}#mission span{display:block;font-size:9px;letter-spacing:.3px;margin-top:7px;max-width:220px;color:#c4d6d2}@media(max-width:700px){#character-picker{top:90px;right:4%}.character-buttons button{font-size:8px;padding:6px;letter-spacing:0}.character-buttons kbd{font-size:8px}#ability-hint{font-size:8px;max-width:265px}body.playing #character-picker{bottom:202px}#mission{top:230px;font-size:8px}#mission span{max-width:175px;font-size:8px}.intro-meta{gap:10px}}@media(max-height:550px){body.playing #character-picker{bottom:135px}#mission{top:245px}.stat-stack{top:95px}body.playing #ability-hint{max-width:290px}}
