:root{color-scheme:dark;--bg:#090d14;--line:#293541;--ink:#eeefe8;--muted:#97a5b4;--orange:#ff7849;--mint:#8ce3d2;--yellow:#f7d58a;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:Arial,Helvetica,sans-serif;--field-width:min(480px,calc(100vw - 40px),calc((100svh - 210px)*.75))}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100svh;color:var(--ink);font-family:var(--sans);background:radial-gradient(ellipse at 50% 40%,#17202c66,transparent 65%),var(--bg)}button,input{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.45}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--mint);outline-offset:4px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.topbar{max-width:1040px;min-height:72px;margin:auto;padding:12px max(24px,env(safe-area-inset-right)) 12px max(24px,env(safe-area-inset-left));border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}.wordmark{display:flex;align-items:center;gap:9px;margin:0;font-size:18px;font-weight:800;letter-spacing:-.7px}.emblem{display:grid;place-items:center;width:27px;height:27px;background:var(--orange);color:var(--bg);font-size:21px;font-style:italic}.top-play-counter{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center;white-space:nowrap;font-family:var(--mono)}.counter-label{color:var(--muted);font-size:9px;letter-spacing:1px}.counter-scope{display:block;font-size:8px;letter-spacing:1px;color:var(--mint);margin-top:4px}.top-play-counter strong{color:var(--ink);font-size:23px;font-variant-numeric:tabular-nums;letter-spacing:-.8px;min-width:2ch;text-align:right}.top-actions{display:flex;gap:4px;justify-content:flex-end}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid transparent;background:0 0;border-radius:4px}.icon-button:hover{border-color:var(--line);background:#17212b}.icon-button[aria-pressed=true]{color:var(--mint)}.icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.pause-top{visibility:hidden}.is-playing .pause-top{visibility:visible}.layout{width:var(--field-width);margin:16px auto 0}.cabinet{width:100%;min-width:0}.game-hud{position:relative;left:50%;transform:translateX(-50%);width:max(100%,220px);max-width:calc(100vw - 32px);height:44px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;visibility:hidden}.is-playing .game-hud{visibility:visible}.score-stat small{display:block;font:9px var(--mono);letter-spacing:1.4px;color:var(--muted);margin-bottom:4px}.score-stat strong{font:700 24px var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-1px}.lives{display:flex;align-items:center;justify-content:center;gap:5px}.life-icon{width:16px;height:18px;image-rendering:pixelated}.life-icon.lost{opacity:.15;filter:grayscale(1)}.pulse-button{justify-self:end;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-width:72px;height:44px;padding:8px 12px;border:1px solid #3f6f66;background:#102622;border-radius:4px;font:700 10px var(--mono);letter-spacing:1px;color:var(--mint);touch-action:manipulation}.pulse-button:disabled{opacity:1;color:#778b88;border-color:#2a403e;background:#101c1d}.pulse-button:not(:disabled):active{background:#28534a}.meter-track{display:block;width:42px;height:3px;overflow:hidden;background:#2a403e}.meter-fill{display:block;height:100%;width:100%;background:var(--mint)}.bonus-indicators{height:24px;display:flex;align-items:center;justify-content:center;gap:15px;font:10px var(--mono);font-variant-numeric:tabular-nums;color:var(--mint);visibility:hidden}.is-playing .bonus-indicators{visibility:visible}.bonus-chip{display:inline-flex;align-items:center;gap:5px}.bonus-icon{display:grid;place-items:center;width:16px;height:16px;border:1px solid currentColor;font-weight:700;font-size:10px}.shield-chip{color:var(--yellow)}.bonus-chip strong{font-weight:400}#fireTimer{min-width:3ch;text-align:right;color:#b0c9c2}.stage{position:relative;width:100%;aspect-ratio:3/4;background:#060c15;border:1px solid #384555;box-shadow:0 0 0 4px #101720,0 20px 60px #0007;border-radius:5px;overflow:hidden;isolation:isolate;touch-action:pan-y;user-select:none;-webkit-user-select:none}.stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0,#0000 2px,#00000018 3px);z-index:3;opacity:.25}#game{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none}.stage-version{position:absolute;right:9px;bottom:7px;z-index:4;color:#8796a7;font:9px var(--mono);opacity:.55;pointer-events:none}.overlay{position:absolute;inset:0;z-index:5;display:flex;padding:28px;background:linear-gradient(180deg,#060c1570,#060c15ec 42%,#060c15ec 75%,#060c1580);overflow:auto;touch-action:pan-y}.overlay-content{width:100%;max-width:326px;text-align:center;margin:auto}.mini-ship{display:block;margin:0 auto 23px;width:66px;height:64px;image-rendering:pixelated}.overlay h2{margin:0 0 14px;font-size:clamp(27px,6vw,43px);line-height:1.05;letter-spacing:-1.7px;font-weight:900}.overlay p.instructions{color:#adbac8;font-size:13px;line-height:1.65;margin:0 0 25px}.mobile-only{display:none}.sector{font:10px var(--mono);letter-spacing:1.2px;color:var(--mint);line-height:1.5;margin:0 0 13px}.launch{display:block;width:100%;min-height:52px;padding:16px;border:1px solid var(--orange);background:var(--orange);color:#101015;border-radius:3px;box-shadow:0 3px 0 #ad4023;font:700 14px var(--mono);letter-spacing:1.5px}.launch:hover{background:#ff936a}.launch:active{transform:translateY(2px);box-shadow:0 1px 0 #ad4023}.secondary{min-height:44px;padding:10px 16px;margin:9px 0 0;border:0;background:0 0;color:var(--muted);font:11px var(--mono);text-decoration:underline;text-underline-offset:4px}.summary-values{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 25px}.summary-values small{display:block;color:var(--muted);font:9px var(--mono);letter-spacing:1px;margin-bottom:7px}.summary-values strong{font:700 24px var(--mono);font-variant-numeric:tabular-nums}.summary-values>div:first-child strong{color:var(--mint)}.result-actions{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:12px}.result-actions button{background:0 0;border:0;padding:12px 6px;min-height:44px;color:#b5c5cb;font:10px var(--mono);letter-spacing:.3px;text-decoration:underline;text-underline-offset:4px}.share-status{font:10px var(--mono);color:var(--muted);line-height:1.5;overflow-wrap:anywhere;margin:5px 0}.share-status:empty{display:none}.donate-offer{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px 10px;width:100%;margin:14px 0 0;padding:12px 10px;min-height:48px;border:1px solid #bd9554;border-radius:3px;background:linear-gradient(180deg,#302617,#221c12);box-shadow:inset 0 1px 0 #fff1cb18;color:#ffe6ab;font:700 12px/1.4 var(--mono);letter-spacing:.3px}.donate-offer:hover{border-color:#ffe6ab;background:#382d1b}.donate-method{padding:3px 5px;border:1px solid #bd955477;border-radius:2px;color:#f7d58a;font-size:9px;letter-spacing:.8px}.overlay.is-results h2{font-size:30px;margin-bottom:22px}.stage.results-visible{min-height:350px}.game-menu{height:50px;display:flex;justify-content:center;align-items:center;visibility:visible}.game-menu button{min-height:44px;padding:12px 16px;background:0 0;border:0;color:var(--muted);font:10px var(--mono);letter-spacing:1px;text-decoration:underline;text-underline-offset:4px}.is-active .game-menu{visibility:hidden}.rank-dialog{width:min(440px,calc(100vw - 28px));max-height:calc(100svh - 28px);padding:24px;overflow:auto;background:#101923;color:var(--ink);border:1px solid #4e6171;border-radius:5px;box-shadow:0 20px 100px #000c}.rank-dialog::backdrop{background:#000c}.leaderboard-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.leaderboard-head h2{font:700 18px var(--mono);letter-spacing:-.3px;margin:0}.leaderboard-head button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:0 0;border:0;color:var(--mint);font:11px/1.2 var(--mono);padding:12px;min-height:44px;text-align:center}.rank-dialog .leaderboard-head button{min-width:64px;border:1px solid #46675f;border-radius:3px;background:#122923;-webkit-appearance:none;appearance:none}.rank-dialog .leaderboard-head h2{min-width:0}.rank-description,.rank-empty,.ranking-scope{color:var(--muted);font:11px var(--mono);line-height:1.7;margin:0 0 18px}.rank-empty{margin:18px 0}.ranking-scope{font-size:10px;margin:14px 0}.rank-list{list-style:none;margin:0;padding:0}.rank-columns,.rank-row{display:grid;grid-template-columns:24px minmax(0,1fr) 34px 72px;align-items:center;gap:9px}.rank-columns{padding:8px 0;color:#8294a5;font:9px var(--mono);letter-spacing:.4px;border-bottom:1px solid #29343f}.rank-columns span:nth-child(3),.rank-level{text-align:center}.rank-columns span:last-child,.rank-score{text-align:right}.rank-level{color:#a3bbc1;font-size:11px;font-variant-numeric:tabular-nums}.rank-row{padding:11px 0;border-bottom:1px solid #29343f;font:12px var(--mono)}.rank-number{color:#8294a5;font-size:10px}.rank-name{overflow:hidden;text-overflow:ellipsis;color:#bdcbd6}.rank-score{font-weight:400;font-variant-numeric:tabular-nums}.rank-row.champion .rank-name,.rank-row.champion .rank-score{color:var(--mint)}.score-entry{margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid var(--line)}.score-entry label{display:block;font:10px var(--mono);letter-spacing:1px;color:var(--mint);margin-bottom:9px}.nickname-row{display:flex;align-items:stretch;gap:8px}.nickname-row input{width:0;min-width:0;flex:1;padding:12px 10px;background:#0a1420;color:var(--ink);border:1px solid #526b77;border-radius:3px;font:16px var(--mono)}.nickname-row button{min-height:44px;padding:9px;border:1px solid #6cbaac;background:#183931;color:#baf2dd;border-radius:3px;font:700 10px var(--mono)}.nickname-hint{font:10px var(--mono);line-height:1.6;color:var(--muted);margin:7px 0 0}.nickname-error{font:11px var(--mono);color:#ffb093;line-height:1.5;margin:7px 0 0}.nickname-error:empty,.score-saved:empty{display:none}.score-saved{font:11px var(--mono);line-height:1.6;color:var(--mint);margin:0 0 14px}.profile-details{border-top:1px solid var(--line);margin-top:20px;padding-top:5px}.profile-details summary{padding:15px 0;cursor:pointer;color:var(--muted);font:11px var(--mono);letter-spacing:.5px}.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}.profile-stats small{display:block;color:var(--muted);font:9px var(--mono);margin-bottom:5px}.profile-stats strong{font:22px var(--mono)}.section-label{font:11px var(--mono);letter-spacing:1px;color:var(--muted)}.profile-medals{list-style:none;padding:0;margin:10px 0}.profile-medals li{font:10px var(--mono);line-height:1.6;color:#80909e;padding:10px 0;border-top:1px solid var(--line)}.profile-medals .earned{color:var(--mint)}.donate-dialog{text-align:center}.donate-dialog .leaderboard-head{text-align:left}.donate-dialog p{color:var(--muted);font-size:13px;line-height:1.6}.donate-qr{display:block;width:200px;max-width:100%;height:auto;margin:18px auto;image-rendering:pixelated;border-radius:3px}.donate-address{display:block;background:#080e16;border:1px solid var(--line);padding:12px;font:12px var(--mono);line-height:1.7;overflow-wrap:anywhere;user-select:all;-webkit-user-select:all}.donate-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.donate-actions a,.donate-actions button{display:grid;place-items:center;min-height:44px;padding:10px;border:1px solid #425561;background:#1b2934;color:var(--ink);border-radius:3px;font:700 11px var(--mono);text-decoration:none}.donate-actions a{background:var(--orange);color:#090d14;border-color:var(--orange)}.donate-dialog .donate-network{font:10px var(--mono);color:var(--yellow);letter-spacing:1px}.donate-dialog .donate-status{min-height:20px;font-size:12px}.donate-back{background:0 0;border:0;min-height:44px;color:var(--muted);font:11px var(--mono);text-decoration:underline;text-underline-offset:4px}.game-guide{max-width:720px;margin:20px auto 0;padding:0 24px;color:var(--muted);font-size:13px;line-height:1.75}.game-guide summary{cursor:pointer;font:10px var(--mono);letter-spacing:.6px;padding:14px 0}.game-guide h2{font-size:20px;color:var(--ink)}.game-guide h3{font-size:14px;color:var(--ink);margin-bottom:4px}.footer{max-width:992px;margin:20px auto 0;padding:18px 24px max(20px,env(safe-area-inset-bottom));border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font:9px var(--mono);letter-spacing:.3px;color:#8393a3}.footer small{font:inherit}.is-active .footer,.is-active .game-guide{display:none}@media(hover:none) and (pointer:coarse){.desktop-hint{display:none}.mobile-only{display:initial}}@media(max-width:600px){:root{--field-width:min(480px,calc(100vw - 32px),calc((100svh - 242px)*.75))}.topbar{min-height:104px;padding:8px max(16px,env(safe-area-inset-right)) 10px max(16px,env(safe-area-inset-left));grid-template-columns:1fr auto;gap:5px 12px}.wordmark{font-size:17px}.top-play-counter{grid-row:2;grid-column:1/-1;justify-content:center;column-gap:12px}.top-actions{grid-row:1;grid-column:2}.counter-label{font-size:9px}.counter-scope{font-size:8px;margin-top:3px}.top-play-counter strong{font-size:24px}.layout{margin-top:10px}.game-hud{gap:8px}.score-stat strong{font-size:21px}.pulse-button{min-width:66px;padding:8px}.lives{gap:4px}.life-icon{width:14px;height:16px}.overlay{padding:22px}.mini-ship{width:55px;height:54px;margin-bottom:19px}.overlay h2{font-size:33px}.overlay p.instructions{font-size:12px;margin-bottom:21px}.launch{font-size:13px;min-height:48px;padding:14px 10px}.summary-values{gap:8px;margin-bottom:21px}.summary-values strong{font-size:21px}.overlay.is-results h2{font-size:27px}.rank-dialog{padding:20px}.footer{justify-content:center;text-align:center}.footer>span{display:none}}@media(max-height:680px) and (orientation:portrait){.overlay{padding:18px}.mini-ship{width:44px;height:43px;margin-bottom:15px}.overlay h2{font-size:28px}.overlay p.instructions{font-size:11px;margin-bottom:17px}.stage.results-visible{min-height:340px}}@media(max-height:610px) and (orientation:landscape){:root{--field-width:min(480px,calc(100vw - 32px),calc((100svh - 126px)*.75))}.topbar{height:52px;min-height:52px;padding:4px max(16px,env(safe-area-inset-right)) 4px max(16px,env(safe-area-inset-left));grid-template-columns:1fr auto 1fr;gap:12px}.wordmark{font-size:16px}.emblem{width:24px;height:24px;font-size:19px}.top-play-counter{grid-row:auto;grid-column:auto}.top-actions{grid-row:auto;grid-column:auto}.counter-label{font-size:8px}.counter-scope{font-size:7px;margin-top:2px}.top-play-counter strong{font-size:20px}.layout{margin-top:4px}.game-hud{gap:5px}.score-stat strong{font-size:18px}.score-stat small{font-size:8px}.lives{gap:3px}.life-icon{width:12px;height:14px}.pulse-button{min-width:54px;font-size:9px;padding:6px}.meter-track{width:34px}.bonus-indicators{height:20px;font-size:9px;gap:10px}.bonus-icon{width:14px;height:14px}.mini-ship{display:none}.overlay{padding:14px}.overlay h2{font-size:25px;margin-bottom:9px}.overlay p.instructions{font-size:11px;line-height:1.5;margin-bottom:14px}.launch{min-height:44px;padding:11px 8px;font-size:12px}.game-menu{height:44px}.is-playing .game-menu{visibility:hidden}.is-active .game-menu{display:none}.overlay.is-results h2{font-size:24px;margin-bottom:16px}.summary-values strong{font-size:19px}.stage.results-visible{min-height:325px}.stage.results-visible .overlay{padding:16px}.footer,.game-guide{margin-top:10px}}@media(max-width:380px) and (orientation:portrait){.topbar{padding-left:12px;padding-right:12px}.wordmark{font-size:15px;gap:7px}.game-hud{gap:6px}.score-stat strong{font-size:19px}.pulse-button{min-width:60px}.summary-values strong{font-size:19px}}@media(prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;scroll-behavior:auto!important}}.rail,.right-rail{display:none;min-width:0;padding-top:68px}.eyebrow{font:10px var(--mono);letter-spacing:1.3px;color:var(--orange);margin:0 0 19px;line-height:1.6}.game-title{font-size:clamp(30px,3.05vw,43px);line-height:1;font-weight:900;letter-spacing:-2.6px;white-space:nowrap;margin:0 0 20px}.game-title span,.overlay h2 span{color:var(--orange)}.lede{font-size:15px;line-height:1.75;color:var(--muted);margin:0;max-width:230px}.rail-rule{height:1px;background:var(--line);margin:25px 0 22px}.rail .section-label,.right-rail .section-label{font-size:10px;letter-spacing:1.5px;margin:0 0 17px}.enemy-row{display:flex;align-items:center;gap:13px;margin:18px 0}.enemy-icon{flex:none;width:42px;height:37px;image-rendering:pixelated}.enemy-row strong{display:block;font:12px var(--mono)}.enemy-row small{display:block;color:var(--muted);font:10px var(--mono);margin-top:6px;line-height:1.5}.micro-note{font:9px var(--mono);line-height:1.9;letter-spacing:.2px;color:#8999a9;margin:23px 0 0}.record-box{border-top:2px solid var(--orange);border-bottom:1px solid var(--line);padding:17px 0 19px;margin-bottom:17px}.record-box strong{display:block;font:29px var(--mono);font-variant-numeric:tabular-nums;letter-spacing:1px}.record-box small{display:block;color:var(--muted);font:10px var(--mono);line-height:1.6;margin-top:10px;overflow-wrap:anywhere}.right-rail .leaderboard-head{margin:0 0 5px;gap:8px}.right-rail .leaderboard-head h2{font-size:11px;letter-spacing:.4px}.right-rail .leaderboard-head button{font-size:9px;white-space:nowrap;padding-left:4px}.right-rail .rank-columns,.right-rail .rank-row{grid-template-columns:18px minmax(0,1fr) 26px 60px;gap:5px}.right-rail .rank-row{padding:6px 0;font-size:10px}.right-rail .rank-columns{font-size:8px;letter-spacing:0}.right-rail .rank-level{font-size:10px}.right-rail .rank-number{font-size:9px}.right-rail .ranking-scope{font-size:8px;line-height:1.6;margin:12px 0}.right-rail .rail-rule{margin:20px 0}.power-note{display:flex;align-items:flex-start;gap:11px;margin:15px 0;color:var(--muted);font-size:11px;line-height:1.75}.power-token{display:grid;place-items:center;flex:none;width:25px;height:25px;font:700 12px var(--mono);color:var(--mint);border:1px solid #47746d;background:#102622}.power-token.shield{color:var(--yellow);border-color:#746c48;background:#292517}.right-rail .micro-note{margin-top:16px;font-size:8px}.footer-left{display:flex;gap:24px}.overlay:not(.is-results) h2{font-size:clamp(27px,3.3vw,43px)}@media(min-width:960px) and (min-height:611px) and (hover:hover) and (pointer:fine){.topbar{max-width:1260px;padding-left:32px;padding-right:32px}.layout{display:grid;width:calc(100% - 64px);max-width:1180px;grid-template-columns:minmax(160px,1fr) var(--field-width) minmax(160px,1fr);gap:36px;align-items:start}.rail,.right-rail{display:block}.footer{max-width:1244px;padding-left:32px;padding-right:32px}.icon-button{border-color:var(--line)}.top-actions{gap:7px}}@media(min-width:960px) and (max-height:800px) and (hover:hover) and (pointer:fine){.record-box{padding-top:13px;padding-bottom:14px;margin-bottom:10px}.right-rail .rank-row{padding:4px 0}.right-rail .section-label{margin-bottom:12px}.right-rail .rail-rule{margin:15px 0}.power-note{margin:12px 0}.right-rail .micro-note{margin-top:12px}}@media(max-width:600px){.footer-left{gap:14px}.overlay:not(.is-results) h2{font-size:33px}}@media(max-height:680px) and (orientation:portrait){.overlay:not(.is-results) h2{font-size:28px}}@media(max-height:610px) and (orientation:landscape){.overlay:not(.is-results) h2{font-size:clamp(17px,5.6svh,25px)}.overlay .sector{font-size:8px;margin-bottom:9px}}.bonus-indicators .reward-icon{display:block;width:22px;height:22px;border:0;image-rendering:pixelated}.shield-chip{color:#9cddff}.power-note .reward-icon{width:36px;height:36px;flex:none;background:0 0;border:0;image-rendering:pixelated}.power-note strong{font:700 10px var(--mono);letter-spacing:.4px;color:var(--ink)}.collect-hint{display:block;color:var(--mint);font-size:10px;line-height:1.6;margin-top:12px}@media(max-height:610px) and (orientation:landscape){.bonus-indicators .reward-icon{width:18px;height:18px}.collect-hint{display:none}}.score-stat small{display:flex;flex-wrap:wrap;gap:4px 9px;letter-spacing:.7px}.score-stat small span{color:var(--mint);white-space:nowrap}.level-notice{position:absolute;z-index:4;top:33%;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:15px 22px;border-block:1px solid #8ce3d277;background:#08131eed;color:var(--mint);text-align:center;font:700 clamp(19px,5vw,32px) var(--mono);letter-spacing:2px;pointer-events:none}.level-notice.is-break::before{content:"LEVEL CLEARED";display:block;margin-bottom:9px;color:#f7d58a;font:700 10px var(--mono);letter-spacing:1.6px}.final-level{font:11px var(--mono);letter-spacing:1px;color:var(--mint);margin:-8px 0 18px}.next-goal{margin:-8px 0 16px;color:var(--yellow);font:10px/1.5 var(--mono);letter-spacing:.6px;overflow-wrap:anywhere}.pause-note{margin:0 0 20px;color:var(--muted);font:12px/1.6 var(--mono);overflow-wrap:anywhere}.rank-dialog{max-height:calc(var(--dialog-height,100svh) - 24px);overscroll-behavior:contain;scrollbar-gutter:stable}.rank-dialog.is-entry .profile-details{display:none}.rank-dialog.is-entry .score-entry{margin-bottom:16px;padding-bottom:16px}.rank-dialog.is-entry .leaderboard-head h2{font-size:clamp(15px,4.5vw,18px)}.rank-dialog.is-entry .rank-description{color:#c0d1d8}.online-notice{margin:14px 0 0;color:#f7d58a;font:11px/1.6 var(--mono)}.analytics-choice{position:fixed;z-index:20;bottom:max(12px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(680px,calc(100% - 24px));max-height:calc(100svh - 24px);overflow:auto;padding:16px;background:#101922;border:1px solid #557181;border-radius:9px;box-shadow:0 8px 30px #0009;font:11px/1.65 var(--mono)}.analytics-choice strong{display:block;color:var(--mint);font-size:12px;letter-spacing:1px}.analytics-choice p{margin:7px 0 12px;color:var(--ink)}.analytics-choice a{color:var(--mint)}.analytics-actions{display:flex;gap:12px}.analytics-actions button{flex:1;min-height:44px;border:1px solid #61978c;background:#132a26;color:var(--mint);font:700 11px var(--mono);border-radius:4px;padding:10px 14px;cursor:pointer}.analytics-actions button:focus-visible,.analytics-settings:focus-visible{outline:2px solid var(--mint);outline-offset:3px}.analytics-settings{appearance:none;border:0;background:0 0;color:var(--muted);padding:0 3px;min-height:44px;font:9px var(--mono);text-decoration:underline;cursor:pointer}.footer-left{flex-wrap:wrap;align-items:center}.nickname-row input{min-height:48px;scroll-margin-block:20px}.nickname-row button{min-width:92px;min-height:48px}.nickname-row{flex-wrap:wrap}.nickname-row input{flex:1 1 140px}.leaderboard-head button{min-width:48px}.game-guide a{color:var(--mint);text-underline-offset:3px}a,button,input,summary{touch-action:manipulation}.result-actions{flex-wrap:wrap;gap:4px 10px}.top-play-counter strong{max-width:10ch;overflow:hidden;text-overflow:ellipsis}@media(any-pointer:coarse){.is-playing .game-menu{display:none}.stage{overscroll-behavior:none}.is-playing{--field-width:min(600px,calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((100svh - 256px - env(safe-area-inset-top) - env(safe-area-inset-bottom))*.75))}.is-playing .layout{padding-bottom:max(8px,env(safe-area-inset-bottom))}.rank-dialog{padding:18px;width:min(440px,calc(100vw - 24px))}.rank-dialog.keyboard-open{margin-top:0;position:fixed;top:calc(var(--dialog-top,0px) + 12px);bottom:auto;max-height:calc(var(--dialog-height,100svh) - 24px)}}@media(max-width:600px) and (any-pointer:coarse){.is-playing{--field-width:min(480px,calc(100vw - 28px - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((100svh - 232px - env(safe-area-inset-top) - env(safe-area-inset-bottom))*.75))}.is-playing .topbar{min-height:60px;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));grid-template-columns:minmax(0,1fr) auto;gap:6px}.is-playing .wordmark{display:none}.is-playing .top-play-counter{grid-row:1;grid-column:1;justify-content:start;column-gap:7px}.is-playing .top-actions{grid-row:1;grid-column:2;gap:1px}.is-playing .counter-label{font-size:8px;letter-spacing:.4px}.is-playing .top-play-counter strong{font-size:20px}.is-playing .layout{margin-top:8px}.game-hud{gap:6px}.score-stat strong{font-size:clamp(15px,calc(var(--field-width)*.065),22px)}.score-stat small{font-size:8px;gap:3px 6px}.pulse-button{min-width:66px;min-height:44px}}@media(max-height:610px) and (orientation:landscape) and (any-pointer:coarse){.is-playing{--field-width:min(480px,calc(100vw - 280px - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((100svh - 94px - env(safe-area-inset-top) - env(safe-area-inset-bottom))*.75))}.is-playing .layout{display:block;margin:calc(8px + env(safe-area-inset-top)) auto 0;padding-bottom:max(8px,env(safe-area-inset-bottom));width:var(--field-width)}.is-playing .cabinet{position:relative}.is-playing .topbar{position:absolute;z-index:6;top:max(8px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));width:112px;min-height:0;height:auto;padding:0;border:0;display:flex;flex-direction:column;gap:14px}.is-playing .wordmark{display:none}.is-playing .top-play-counter{display:flex;flex-direction:column;gap:6px;text-align:center;white-space:normal;max-width:112px}.is-playing .top-play-counter strong{font-size:21px;text-align:center;max-width:100%}.is-playing .counter-label{font-size:8px;letter-spacing:.4px}.is-playing .counter-scope{font-size:8px}.is-playing .top-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;max-width:112px}.is-playing .icon-button{border-color:var(--line)}.is-playing .game-hud{position:absolute;top:0;left:-116px;transform:none;width:104px;max-width:104px;height:auto;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.is-playing .score-stat small{justify-content:center;font-size:8px;gap:5px}.is-playing .score-stat strong{font-size:20px;letter-spacing:-1px}.is-playing .life-icon{width:16px;height:18px}.is-playing .pulse-button{width:96px;height:48px;font-size:11px}.is-playing .bonus-indicators{position:absolute;top:180px;left:-116px;width:104px;height:auto;flex-wrap:wrap;gap:12px;font-size:11px}.is-playing .bonus-indicators .reward-icon{width:22px;height:22px}.is-playing .rail,.is-playing .right-rail{display:none}.level-notice{padding:12px 15px;font-size:22px;letter-spacing:1px}}.touch-controls{display:none}.touch-pulse{position:relative;flex:0 0 auto;display:grid;grid-template-columns:26px minmax(0,1fr) 26px;align-items:center;gap:10px;width:216px;max-width:calc(100vw - 40px - env(safe-area-inset-left) - env(safe-area-inset-right));height:64px;padding:8px 14px 17px;border:1px solid var(--mint);border-radius:6px;background:linear-gradient(180deg,#203b35,#112821);color:var(--mint);box-shadow:0 4px 0 #274c42,0 5px 0 #07120e,inset 0 1px 0 #d1fff31f;font-family:var(--mono);text-align:center;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-appearance:none;appearance:none;transition:transform .08s,box-shadow .08s,border-color .12s}.touch-pulse svg{display:block;justify-self:center;width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.6}.touch-pulse-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0}.touch-pulse strong{color:#edfff6;font-size:15px;line-height:1.2;letter-spacing:2px;text-indent:2px}.touch-pulse small{color:#b1ded0;font-size:9px;line-height:1.2;letter-spacing:.4px;white-space:nowrap;font-variant-numeric:tabular-nums}.touch-pulse-light{justify-self:center;width:6px;height:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 3px #8ce3d216,0 0 10px #8ce3d240}.touch-meter{position:absolute;bottom:7px;left:18px;right:18px;height:3px;border-radius:1px;overflow:hidden;background:#081912}.touch-meter span{display:block;height:100%;width:100%;background:var(--mint)}.touch-pulse:disabled{opacity:1;color:#819aa9;border-color:#425564;background:linear-gradient(180deg,#182631,#101a23);box-shadow:0 4px 0 #263744,0 5px 0 #060b10,inset 0 1px 0 #c1d5e014}.touch-pulse:disabled strong{color:#bbcbd3}.touch-pulse:disabled small{color:#9aafb9}.touch-pulse:disabled .touch-pulse-light{background:#536b78;box-shadow:0 0 0 3px #718d9c12}.touch-pulse:disabled .touch-meter{background:#080f16}.touch-pulse:disabled .touch-meter span{background:#80c9c0}.touch-pulse:not(:disabled):active{transform:translateY(3px);box-shadow:0 1px 0 #274c42,0 2px 0 #07120e,inset 0 1px 0 #d1fff31f}.touch-pulse:focus-visible{outline-offset:6px}@media(hover:hover){.touch-pulse:not(:disabled):hover{border-color:#c1ffec;background:linear-gradient(180deg,#294b40,#163329)}}@media(any-pointer:coarse){.game-hud .pulse-button{display:none}.game-hud{grid-template-columns:minmax(0,1fr) auto}.is-playing .touch-controls{position:fixed;z-index:6;left:50%;bottom:max(18px,calc(env(safe-area-inset-bottom) + 6px));transform:translateX(-50%);display:flex;align-items:center;justify-content:center;width:216px;max-width:calc(100vw - 40px - env(safe-area-inset-left) - env(safe-area-inset-right));margin:0;padding:0}}@media(max-height:610px) and (orientation:landscape) and (any-pointer:coarse){.touch-pulse{height:56px;padding-top:7px;padding-bottom:14px}.touch-pulse-copy{gap:3px}}@media(min-width:960px) and (min-height:611px) and (hover:hover) and (pointer:fine) and (any-pointer:coarse){.is-playing{--field-width:min(480px,calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)),calc((100svh - 256px - env(safe-area-inset-top) - env(safe-area-inset-bottom))*.75))}}.saved-run-picker{margin:0 0 18px;padding:12px 0;border-top:1px solid var(--line)}.saved-run-picker label{display:block;margin-bottom:9px;color:var(--mint);font:10px/1.5 var(--mono);letter-spacing:.7px}.saved-run-picker select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:10px 8px;border:1px solid #526b77;border-radius:3px;background:#0a1420;color:var(--ink);font:16px var(--mono)}.saved-run-picker select:disabled{opacity:.6}.score-stat{min-width:0}.score-stat strong{display:block;max-width:100%;overflow-x:auto;white-space:nowrap}.final-level,.level-notice,.next-goal,.rank-description,.rank-level,.rank-score,.score-saved{min-width:0;overflow-wrap:anywhere}.summary-values>div{min-width:0}.summary-values strong{overflow-wrap:anywhere}.score-stat small span{max-width:100%;overflow-x:auto}