:root{color-scheme:dark;--bg:#080d14;--text:#f2f4ed;--muted:#a5b5bd;--green:#c7f975;--line:#ffffff26;--heading-leading:1.4;font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--text)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--green);outline-offset:5px}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}h1,h2,p{margin:0}h2{line-height:var(--heading-leading);font-size:clamp(26px,4vw,40px);letter-spacing:-.05em}#arena{position:fixed;inset:0;height:100dvh;overflow:hidden}canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.topbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:24px 36px;z-index:12;pointer-events:none}.brand,.toolbar{pointer-events:auto}.brand{display:flex;align-items:center;gap:8px;color:var(--text);text-decoration:none;font-size:12px;font-weight:800;letter-spacing:.1em}.brand-mark{font-size:25px;color:var(--green)}.brand-number{font-weight:400;color:var(--muted);margin-left:-5px}.toolbar{display:flex;gap:8px}.toolbar button{background:#101b23dd;border:1px solid var(--line);color:var(--text);padding:10px 14px;font-size:11px;border-radius:5px;min-height:38px}.toolbar button:hover{border-color:var(--green)}.overlay{position:absolute;inset:0;z-index:8;overflow:auto}.menu{display:flex;align-items:center;padding:88px 7.5% 78px;background:linear-gradient(90deg,#080d14fa 0%,#080d14ed 31%,#080d1470 57%,#080d1400 100%)}.intro{width:510px;position:relative}.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--green);display:flex;align-items:center;gap:9px;font-weight:600}.eyebrow>span{width:7px;height:7px;background:var(--green);border-radius:50%}h1{font-size:clamp(64px,8.5vw,122px);line-height:.84;letter-spacing:-.085em;font-weight:950;margin:28px 0 24px;font-style:italic}h1 em{font-style:inherit;color:var(--green)}.title-dot{color:var(--green)}.lead{font-size:clamp(23px,2.5vw,33px);font-weight:700;letter-spacing:.02em;margin-bottom:16px}.description{font-size:13px;line-height:1.9;color:#b6c7ce}.primary{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--green);border:0;color:#14200e;font-weight:800;padding:20px 24px;border-radius:6px;min-height:62px;font-size:16px;width:100%;transition:background .15s,transform .15s}.primary:hover{background:#d8ff98;transform:translateY(-2px)}.primary span{font-size:24px;font-weight:400}.intro .primary{width:300px;margin-top:28px}.intro-bottom{width:300px;display:flex;justify-content:space-between;font:10px monospace;color:var(--muted);margin-top:15px}.instructions{position:absolute;right:36px;bottom:32px;width:330px;background:#0a121cdd;border:1px solid var(--line);border-radius:8px;padding:22px 24px;backdrop-filter:blur(14px)}.instructions-title{font-size:10px;color:var(--green);letter-spacing:.12em}.instructions p{display:flex;gap:24px;align-items:center;margin-top:15px;font-size:11px;color:#c1ccd2}.instructions b{color:#f1f4ed;font-size:12px;min-width:24px}.instructions small{display:block;line-height:1.7;margin-top:18px;padding-top:15px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}kbd{font:10px monospace;border:1px solid #ffffff32;border-radius:3px;padding:3px 5px;background:#ffffff06}.small-only,.touch-help{display:none}.centered{display:flex;align-items:center;justify-content:center;padding:84px 22px 30px;background:#050c14c9;backdrop-filter:blur(12px)}.dialog{width:min(850px,100%);text-align:center}.dialog>.eyebrow{justify-content:center;margin-bottom:18px}.dialog-copy{margin:14px 0 28px;color:var(--muted);font-size:14px;line-height:1.8}.compact{max-width:380px;background:#101923;border:1px solid var(--line);border-radius:14px;padding:32px}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:left}.choice{background:#13222b;border:1px solid #c7f97555;border-radius:8px;padding:28px 24px;text-align:left;color:var(--text);display:flex;flex-direction:column;min-height:238px}.choice:hover,.choice:focus-visible{background:#23382b;border-color:var(--green)}.choice-icon{font-size:42px;line-height:1;color:var(--green);margin-bottom:26px}.choice strong{font-size:18px;margin-bottom:14px}.choice small{font-size:12px;line-height:1.8;color:#b8c7cc}.choice-key{margin-top:auto;padding-top:20px;color:var(--green);font:10px monospace}.text-button{margin-top:22px;border:0;background:transparent;color:var(--muted);font-size:12px;min-height:36px;text-decoration:underline;text-underline-offset:5px}.result-score{padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.result-score span{font-size:11px;color:var(--muted)}.result-score strong{font:700 36px monospace;color:var(--green)}.result-stats{font-size:12px;line-height:1.9;color:var(--muted);margin:20px 0}.hud{position:absolute;top:90px;left:36px;right:36px;display:grid;grid-template-columns:1fr auto 1fr;pointer-events:none;z-index:3}.hud-label{display:block;font-size:10px;color:#b0bfc7;letter-spacing:.08em;margin-bottom:8px}.shields{display:flex;gap:5px;flex-wrap:wrap;max-width:180px}.shields i{width:17px;height:7px;background:var(--green);transform:skew(-16deg)}.shields i.empty{background:#ffffff1c}.time-block{text-align:center}.time-block strong{font:700 38px monospace;letter-spacing:-.04em}.time-block strong span{font:11px sans-serif;margin-left:4px}.score-block{text-align:right}.score-block strong{font:600 23px monospace}.xp-block{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin-top:20px;font:10px monospace;color:var(--green)}.xp-track{flex:1;max-width:220px;height:3px;background:#ffffff1a;overflow:hidden}.xp-track i,#dash-fill,#boss-hp{display:block;height:100%;background:var(--green);width:0}.xp-block>span:last-child{color:var(--muted);font-size:9px}.play-footer{position:absolute;left:36px;right:36px;bottom:max(28px,env(safe-area-inset-bottom));z-index:4;display:flex;justify-content:space-between;align-items:center;pointer-events:none;font:10px monospace;color:#a3b7c0}.dash-meter{display:flex;align-items:center;gap:14px;color:var(--green)}.dash-meter>div{width:96px;height:4px;background:#ffffff1c}.toast{position:absolute;top:28%;left:0;right:0;z-index:5;text-align:center;pointer-events:none;color:var(--green);font-size:15px;letter-spacing:.08em;opacity:0;transition:opacity .2s}.toast.show{opacity:1}.boss-bar{position:absolute;z-index:3;top:215px;left:50%;transform:translateX(-50%);width:min(360px,65%);text-align:center;color:#ff9377;font-size:10px}.boss-bar>div{height:4px;background:#ffffff14;margin-top:8px}#boss-hp{background:#ff9377}.dash-touch{position:absolute;z-index:5;bottom:max(38px,env(safe-area-inset-bottom));right:24px;background:#c7f97520;color:var(--green);border:1px solid #c7f97599;border-radius:50%;width:84px;height:84px;font-size:10px;touch-action:none}.dash-touch>span{display:block;font-size:29px;margin-bottom:3px}.joystick{position:absolute;border:1px solid #c7f97566;border-radius:50%;width:100px;height:100px;background:#c7f9750c;pointer-events:none;z-index:5}.joystick i{position:absolute;left:32px;top:32px;width:34px;height:34px;background:#c7f97566;border-radius:50%}.no-script{position:absolute;inset:0;z-index:30;background:#080d14;display:grid;place-items:center;padding:40px}
@media(pointer:fine){.dash-touch{display:none!important}}
@media(pointer:coarse){.touch-help{display:inline}.desktop-help{display:none}.play-footer{right:130px}.dash-meter{display:none}}
@media(max-width:700px){.topbar{padding:15px 18px}.brand{font-size:10px;gap:5px}.brand-mark{font-size:22px}.toolbar button{padding:8px 10px;font-size:10px}.menu{padding:84px 25px 25px;display:block;background:linear-gradient(90deg,#080d14ec,#080d14a8 65%,#080d1460)}.intro{width:100%;max-width:420px}h1{font-size:clamp(66px,18vw,100px);margin:28px 0 24px}.lead{font-size:25px}.description{font-size:12px}.intro .primary,.intro-bottom{width:100%;max-width:330px}.intro .primary{margin-top:24px}.instructions{position:static;width:100%;max-width:420px;margin-top:26px;padding:18px 20px}.instructions p{margin-top:12px}.instructions small{margin-top:12px;padding-top:12px}.hud{top:78px;left:20px;right:20px}.hud-label{font-size:9px}.shields{max-width:105px;gap:4px}.shields i{width:13px;height:6px}.time-block strong{font-size:31px}.score-block strong{font-size:18px}.xp-block{margin-top:15px;gap:8px}.xp-track{max-width:140px}.xp-block>span:last-child{display:none}.boss-bar{top:185px}.play-footer{left:20px;right:20px;font-size:9px;bottom:22px}.choices{grid-template-columns:1fr;gap:10px;max-width:440px;margin:auto}.choice{min-height:0;padding:19px 20px;display:grid;grid-template-columns:35px 1fr;column-gap:17px}.choice-icon{grid-row:1/3;font-size:31px;margin:0;align-self:center}.choice strong{font-size:15px;margin:0 0 5px}.choice small{font-size:11px}.choice-key{display:none}.dialog-copy{font-size:12px;margin-bottom:22px}.dialog>.eyebrow{font-size:9px}.compact{padding:28px 24px}.centered{padding-top:78px}.toast{font-size:12px}}
@media(max-height:730px) and (min-width:701px){h1{font-size:86px;margin:22px 0}.lead{font-size:27px}.menu{padding-top:86px;padding-bottom:28px}.instructions{bottom:25px}.intro .primary{margin-top:20px}}
@media(max-height:750px) and (max-width:700px){.menu{padding-top:74px}h1{font-size:68px;margin:20px 0}.lead{font-size:22px;margin-bottom:10px}.intro .primary{margin-top:18px;padding:16px 20px;min-height:54px}.instructions{margin-top:20px}.instructions small{display:none}.description{line-height:1.7}}
@media(max-height:500px) and (orientation:landscape){.menu{display:flex;align-items:center;padding:75px 6% 25px;gap:8%}.intro{max-width:50%;width:360px}h1{font-size:54px;margin:8px 0}.eyebrow{font-size:9px}.lead{font-size:20px;margin-bottom:6px}.description{font-size:10px}.intro .primary{padding:11px 18px;min-height:42px;margin-top:14px;font-size:13px}.intro-bottom{font-size:9px}.instructions{position:static;max-width:290px;width:42%;margin-top:0;padding:18px}.instructions small{display:none}.topbar{padding:12px 24px}.hud{top:62px}.hud-label{margin-bottom:4px}.time-block strong{font-size:26px}.xp-block{margin-top:8px}.boss-bar{top:150px}.dialog{max-width:750px}.choices{grid-template-columns:repeat(3,1fr);max-width:none}.choice{display:flex;padding:15px;min-height:160px}.choice-icon{font-size:27px;margin-bottom:12px;align-self:flex-start}.choice strong{font-size:13px}.choice small{font-size:10px}.dialog h2{font-size:23px}.dialog-copy{margin:8px 0 16px}.compact{max-width:410px;padding:16px 25px}.compact .dialog-copy{margin:6px 0}.result-score{padding:8px 0}.result-score strong{font-size:26px}.result-stats{margin:8px 0}.compact .primary{padding:12px 20px;min-height:42px}.text-button{margin-top:6px}.dialog>.eyebrow{margin-bottom:6px}.centered{padding-top:60px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
