@font-face{font-family:Pixel;src:url('fonts/pixel.ttf');font-display:swap}@font-face{font-family:Space;src:url('fonts/interface.ttf');font-display:swap}*{box-sizing:border-box}:root{--ink:#090c17;--cream:#eee9d2;--muted:#b0b5cd;--blue:#8197ff;--gold:#efbd65;--edge:#30364d}body{margin:0;background:var(--ink);color:var(--cream);font-family:Space,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{cursor:wait;opacity:.6}::selection{background:var(--gold);color:var(--ink)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.arcade{width:min(1100px,100%);margin:auto;padding:0 38px}.topbar{height:89px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--edge)}.brand{color:var(--cream);text-decoration:none;font-size:24px;letter-spacing:-.7px;line-height:1}.brand span{display:block;margin-top:8px;font-size:10px;letter-spacing:4px}.edition{color:var(--muted);font-size:11px;letter-spacing:1.5px}.tools{display:flex;gap:8px}.icon-button{width:40px;height:40px;border:1px solid #4a516e;background:#101729;color:var(--cream);display:grid;place-items:center}.icon-button:hover{background:#293558;border-color:var(--blue)}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.icon-button svg{width:19px;height:19px}.game-heading{height:59px;display:flex;align-items:center;justify-content:space-between;gap:14px}.game-heading h1{font:11px/1.5 Pixel;margin:0}.game-heading>span{font-size:11px;letter-spacing:1.1px;color:var(--muted)}.cabinet{position:relative;width:100%;aspect-ratio:4/3;isolation:isolate;background:#020308;border:1px solid #555d7a;box-shadow:0 18px 45px #0005;overflow:hidden}.screen{position:relative;width:100%;height:100%;isolation:isolate}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:none}.title-screen{position:absolute;inset:0;background:linear-gradient(#05091988,#05091933 55%,transparent 75%);text-align:center;pointer-events:none}.title-copy{position:absolute;top:16%;left:3%;right:3%;text-shadow:3px 3px #081026}.title-lex{font:clamp(10px,1.2vw,14px) Pixel;color:var(--gold);margin-bottom:20px}.title-copy h2{font:clamp(24px,4vw,49px)/1.4 Pixel;margin:0;color:#fff1be;letter-spacing:-1px;text-shadow:0 4px #9d552e,4px 7px #09102c}.title-copy p{font:clamp(7px,.95vw,12px)/1.6 Pixel;color:#fff0b6;margin:15px 0 22px}.primary{pointer-events:auto;background:#efbe6c;color:#17182a;border:2px solid #f5da98;padding:16px 23px;font-size:12px;font-weight:bold;letter-spacing:.8px;text-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:12px}.primary:hover{background:#ffdb94}.primary:active{transform:translateY(1px)}.continue{pointer-events:auto;display:block;border:0;background:#05091abf;color:#f6e8bb;margin:12px auto 0;padding:9px;font-size:11px;text-decoration:underline;text-underline-offset:4px}.start-hint{display:block;font:8px/1.8 Pixel;color:#d4ddff;margin-top:14px}.scene-caption{position:absolute;bottom:18%;left:5%;right:5%;font:8px/1.9 Pixel;color:#ffebae;text-shadow:2px 2px #0c1124}.journey{min-height:69px;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--edge)}.journey ol{display:flex;align-items:center;justify-content:space-between;flex:1;padding:0;list-style:none;gap:10px}.journey li{font-size:11px;letter-spacing:.6px;color:#b0b5cd;white-space:nowrap}.journey li span{color:#7b86a6;margin-right:6px}.journey li.active{color:#ffe3a0}.journey li.active span{color:#efb85b}.journey li.done{color:#a0d9bf}#map-button{border:0;background:none;color:var(--cream);font-size:11px;padding:12px 0 12px 16px}#map-button:hover{color:var(--gold)}#map-button span{font-size:17px;margin-left:7px}.below{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:29px 0}.mission h2{font:11px/1.8 Space;margin:0;color:var(--gold);letter-spacing:1.1px}.mission p{font-size:14px;line-height:1.7;color:#bfc3d8;margin:10px 0 0}.keyboard{display:flex;gap:17px;text-align:center}.keyboard>div{display:flex;flex-direction:column;gap:9px;align-items:center}kbd{display:inline-flex;align-items:center;justify-content:center;font:11px Space;border:1px solid #59617f;border-bottom-width:3px;min-width:30px;height:30px;padding:0 8px;background:#131b2b;color:#f3e9c9}.keyboard small{font-size:10px;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;padding:18px 0 25px;border-top:1px solid var(--edge);font-size:10px;letter-spacing:1px;color:#9aa5c5}.center-panel{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#080e24eF;padding:30px;overflow-y:auto}.center-panel h2{font:clamp(14px,2vw,23px)/1.7 Pixel;color:#ffda8a;margin:0 0 18px}.center-panel p{font-size:15px;line-height:1.7;max-width:560px;color:#e0e1ef;margin:0 0 22px}.center-panel .primary{margin:4px 8px}.panel-buttons{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.secondary{border:1px solid #91a1c4;background:transparent;color:#eee9cc;padding:14px 20px;font-size:12px}.secondary:hover{background:#263756}.help-grid{display:grid;grid-template-columns:auto auto;gap:10px 24px;text-align:left;font-size:12px;margin:4px 0 22px;color:#e6e6ed}.help-grid kbd{margin-right:7px}.toast{position:absolute;top:5%;left:50%;transform:translateX(-50%);max-width:91%;background:#071126eE;color:#ffdf92;border:1px solid #b98c4b;padding:12px 16px;text-align:center;font:10px/1.8 Pixel;z-index:8;pointer-events:none}.dialogue{position:absolute;left:9%;right:9%;bottom:20%;background:#111b36f5;color:#efedf5;border:2px solid #c9a664;padding:18px 21px;z-index:5}.dialogue strong{display:block;font:10px/1.7 Pixel;color:#ffdd94;margin-bottom:10px}.dialogue p{font-size:15px;line-height:1.6;margin:0 0 10px}.dialogue button{padding:7px 0;color:#ffd687;border:0;background:none;font-size:13px;text-decoration:underline;text-underline-offset:4px}.pause-button{position:absolute;right:14px;top:13px;width:36px;height:36px;border:1px solid #b7bed7;background:#091127cf;color:#e5e8ff;display:grid;place-items:center}.pause-button svg{width:17px;height:17px;stroke-width:3}.rotate{display:none}.touch-controls{position:absolute;inset:0;pointer-events:none;z-index:4}.touch-controls button{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;color:#e9edff;border:1px solid #7e8caf;background:#101d36d9;min-width:44px;min-height:44px}.touch-controls button:active,.touch-controls button.pressed{background:#efb958;color:#0d1528}.dpad{position:absolute;left:14px;bottom:19%;display:grid;grid-template-columns:44px 44px 44px;grid-template-rows:44px 44px;gap:3px}.dpad button{font-size:24px}.up{grid-column:2}.left{grid-column:1;grid-row:2}.down{grid-column:2;grid-row:2}.right{grid-column:3;grid-row:2}.action-pad{position:absolute;right:14px;bottom:19%;display:grid;grid-template-columns:47px 52px 62px;gap:6px;align-items:end}.action-pad button{font-size:10px;height:47px;border-radius:50%}.action-pad .attack{height:62px;grid-column:3;grid-row:1/3;background:#d99c48e8;color:#0b1527;font-size:12px}.action-pad .switch{border-radius:0;min-height:32px;height:32px;grid-column:1/3;max-width:70px;justify-self:center}.action-pad .jump{grid-column:1;grid-row:2}.action-pad .special{grid-column:2;grid-row:2}.touch-talk{position:absolute;left:50%;bottom:calc(100% / 7 + 10px);transform:translateX(-50%);width:76px;min-height:44px;padding:0 12px;font-size:11px}.roast-meter{position:relative;width:min(480px,85%);height:37px;margin:20px 0 25px;border:3px solid #d8c592}.roast-marker{position:absolute;left:0;top:-10px;width:4px;height:51px;background:#fff6d8;box-shadow:2px 0 #0b1832}.roast-labels{display:flex;justify-content:space-between;width:min(480px,85%);font-size:11px;color:#d0d7eb}.origin-list{width:min(600px,95%);margin:0 0 22px}.origin-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #4a5474;font-size:12px;text-align:left}.origin-row strong{color:#f3d4a2}.origin-row span{color:#ccd8f2}.result-stats{font:11px/2 Pixel;margin-bottom:20px;color:#b3ddff}.touch-note{font-size:12px!important}
@media(max-width:900px){.arcade{padding:0 24px}.edition{display:none}.keyboard{gap:10px}.keyboard>div:first-child{display:none}.mission p{font-size:13px}.journey li{font-size:10px}.title-copy h2{font-size:4.8vw}.title-copy p{font-size:10px}.start-hint{font-size:7px}.primary{padding:13px 18px}.scene-caption{font-size:7px}}
@media(max-width:600px){.arcade{padding:0 12px}.topbar{height:75px}.brand{font-size:20px}.brand span{font-size:9px}.tools{gap:5px}.icon-button{width:36px;height:36px}.game-heading{height:54px}.game-heading>span{font-size:9px;letter-spacing:.2px}.game-heading h1{font-size:9px}.title-copy{top:13%}.title-lex{font-size:8px;margin-bottom:13px}.title-copy h2{font-size:6vw}.title-copy p{font-size:7px;margin:12px 0}.primary{padding:10px 14px;font-size:11px}.start-hint{font-size:5px}.scene-caption{font-size:5px;bottom:18%}.journey{gap:8px}.journey li{font-size:9px;letter-spacing:0}.journey li span{display:block;margin:0 0 5px}#map-button{font-size:10px;padding-left:5px}.below{display:block;padding:24px 0}.keyboard{margin-top:24px;justify-content:space-between}.keyboard>div:first-child{display:flex}.keyboard small{font-size:9px}footer{font-size:9px;letter-spacing:.3px}.center-panel{padding:18px}.center-panel h2{font-size:13px;margin-bottom:12px}.center-panel p{font-size:12px;margin-bottom:12px}.help-grid{font-size:10px;gap:7px 12px}.help-grid kbd{height:23px;font-size:9px}.toast{font-size:7px;padding:8px}.dialogue{left:6%;right:6%;padding:13px}.dialogue strong{font-size:8px}.dialogue p{font-size:12px}.origin-row{font-size:10px;padding:11px 0}.result-stats{font-size:8px}.title-copy .continue{font-size:9px}}
@media(pointer:coarse) and (orientation:portrait){.rotate{position:absolute;inset:0;background:#0d1735f5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;padding:20px;z-index:20}.rotate svg{width:55px;height:55px;color:var(--gold)}.rotate strong{font-size:18px}.rotate span{font-size:13px;color:#ccd6f0}}
@media(max-height:650px) and (orientation:landscape){.arcade{padding:0;max-width:none}.topbar,.game-heading,.journey,.below,footer{display:none}.cabinet{width:100%;height:100dvh;aspect-ratio:auto;border:0;box-shadow:none}.screen{height:100%;width:min(100%,calc(100dvh * 4 / 3));margin:auto}.title-copy{top:12%}.title-copy h2{font-size:clamp(21px,7vh,36px)}.title-lex{font-size:8px;margin-bottom:12px}.title-copy p{font-size:8px;margin:12px 0 15px}.primary{font-size:11px;padding:11px 15px}.start-hint{font-size:6px}.scene-caption{font-size:6px}.center-panel{padding:18px}.center-panel h2{font-size:15px;margin-bottom:10px}.center-panel p{font-size:12px;margin-bottom:14px}.help-grid{gap:5px 15px;font-size:10px;margin-bottom:14px}.help-grid kbd{height:22px;font-size:9px}.dialogue{left:6%;right:6%;bottom:21%;padding:12px 15px}.dialogue p{font-size:12px}.dialogue strong{font-size:8px}.toast{font-size:7px;padding:9px 12px}.origin-row{padding:9px 0;font-size:10px}.origin-list{margin-bottom:15px}.result-stats{font-size:9px;margin-bottom:12px}.dpad{left:max(6px,calc((100% - 100dvh * 4 / 3) / 4 - 67px));bottom:28%}.action-pad{right:max(6px,calc((100% - 100dvh * 4 / 3) / 4 - 86px));bottom:28%}.pause-button{width:31px;height:31px;right:9px;top:9px}.roast-meter{margin:10px 0 20px;height:30px}.roast-marker{height:44px}}
:fullscreen.cabinet{width:100%;height:100dvh;border:0;aspect-ratio:auto}:fullscreen .screen{height:100%;width:min(100%,calc(100dvh * 4 / 3));margin:auto}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Functional HTML text stays readable; the Canvas retains its native console lettering. */
.brand span,.game-heading h1,.game-heading>span,.journey li,.journey li span,#map-button,.keyboard small,.touch-controls button,.title-lex,.title-copy p,.start-hint,.scene-caption,.help-grid,.help-grid kbd,.title-copy .continue{font-size:11px}
footer{font-size:10px}
@media(max-height:650px) and (orientation:landscape){.action-pad{grid-template-columns:44px 44px 54px}.action-pad .attack{height:54px}.title-lex,.title-copy p,.start-hint,.scene-caption,.help-grid,.help-grid kbd{font-size:11px}.title-copy{top:9%}.title-copy p{margin:10px 0 13px}.title-lex{margin-bottom:12px}}
.super-pad{position:absolute;right:14px;bottom:calc(19% + 112px);display:flex;gap:7px;width:166px;pointer-events:none}.super-pad button{width:79px;height:49px;font-size:11px;background:var(--ink);border-color:var(--gold);color:var(--gold);line-height:1.35}.super-pad button span{display:block;font-size:11px;color:var(--muted)}.super-pad button:disabled{opacity:.4;cursor:default}.super-pad button:active{background:#efbd65;color:#11182b}.mission .super-hint{font-size:11px;line-height:1.7;color:#e7c27a;margin-top:12px}.keyboard{gap:12px}.keyboard small{font-size:11px}
@media(max-width:900px){.below{flex-wrap:wrap}.keyboard{flex:1;justify-content:space-between}.keyboard>div:first-child{display:none}}
@media(max-height:650px) and (orientation:landscape){.super-pad{right:max(6px,calc((100% - 100dvh * 4 / 3) / 4 - 78px));bottom:calc(28% + 115px);width:154px;gap:6px}.super-pad button{width:74px;height:46px}}
/* Auto margins center short panels and let longer help content scroll from its top. */
.center-panel{justify-content:flex-start}.center-panel>:first-child{margin-top:auto}.center-panel>:last-child{margin-bottom:auto}
.kick-pad{position:absolute;left:14px;bottom:calc(19% + 112px);display:flex;gap:6px;width:138px;pointer-events:none}.kick-pad button{width:66px;height:49px;font-size:11px;line-height:1.35;background:var(--ink);border-color:var(--gold);color:var(--gold)}.kick-pad button span{display:block;font-size:11px;color:var(--muted)}.kick-pad button:disabled{opacity:.4;cursor:default}.kick-pad button:active{background:var(--gold);color:var(--ink)}.keyboard{flex-wrap:wrap;row-gap:14px;justify-content:flex-end}.keyboard>div{flex-shrink:0}
@media(max-width:900px){.keyboard{justify-content:space-between}}
@media(max-height:650px) and (orientation:landscape){.kick-pad{left:max(6px,calc((100% - 100dvh * 4 / 3) / 4 - 67px));bottom:calc(28% + 115px)}.kick-pad button{height:46px}}

.shipment-skip{position:absolute;right:12px;bottom:calc(100% / 7 + 10px);z-index:5;min-height:44px;padding:10px 14px;background:#111b36;color:#eee9d2;border:1px solid #efbd65;font:700 11px Space,sans-serif}
.shipment-skip:hover{background:#273555}
/* Shared leaderboard and private registration. */
.scores-toggle{position:absolute;left:14px;top:13px;z-index:5;min-height:44px;padding:0 13px;background:#101729eF;color:#eee9d2;border:1px solid #7e8caf;font:700 11px Space,sans-serif;letter-spacing:.8px}.scores-toggle:hover{background:#293558}.center-panel.score-panel{display:block;text-align:left;padding:20px 24px;background:#080e24fa}.score-shell{max-width:900px;margin:0 auto}.score-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.score-panel .score-heading h2{font-size:17px;line-height:1.6;margin:0}.score-heading .secondary{min-height:44px;padding:10px 12px;white-space:nowrap}.score-panel p.score-intro{font-size:14px;margin:8px 0 0}.reward-route{display:flex;justify-content:space-between;gap:16px;padding:17px 0;border-bottom:1px solid #4a5474;margin-bottom:12px;color:#bbc8ea;font-size:11px;font-weight:700;letter-spacing:.4px}.reward-route span{display:flex;align-items:center;gap:9px}.reward-route strong{font-size:23px;color:#ffda8a;letter-spacing:0}.score-panel p.offer-note{max-width:none;color:#d5d8e8;font-size:12px;line-height:1.6;margin:0 0 20px}.score-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:25px}.score-table-wrap{overflow-x:auto}.score-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}.score-table th{font-size:11px;text-align:left;color:#b8c9ed;font-weight:700;letter-spacing:.5px;padding:0 8px 13px;border-bottom:1px solid #6c7896}.score-table td{padding:12px 8px;border-bottom:1px solid #303e5a;color:#eee9d2}.score-table td:nth-child(3),.score-table th:nth-child(3){text-align:right}.score-table td:first-child{color:#efbd65}.score-table td:nth-child(2){overflow-wrap:anywhere}.score-panel p.board-message{font-size:12px;line-height:1.6;margin:14px 0}.board-refresh{background:transparent;border:0;color:#ffda8a;text-decoration:underline;text-underline-offset:4px;min-height:44px;font:700 11px Space,sans-serif;padding:4px 0}.score-panel [data-player-status]>p{font-size:13px;line-height:1.6;margin:0 0 15px}.score-panel form{display:flex;flex-direction:column;gap:10px}.score-panel label:not(.board-check){font-size:13px;font-weight:700;color:#eee9d2}.score-panel label>span{font-weight:400;color:#bbc8e1}.score-panel label:not(.board-check)>span{margin-left:8px;font-size:11px}.score-panel input[type=text],.score-panel input[type=email]{width:100%;min-height:44px;border:1px solid #7888aa;background:#111c32;color:#fff3d2;padding:11px 12px;font:16px Space,sans-serif;border-radius:0;caret-color:#efbd65}.score-panel input::placeholder{color:#a7b6d3}.score-panel input:focus-visible{outline:2px solid #efbd65;outline-offset:2px}.board-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;min-height:44px;margin-top:4px;cursor:pointer}.board-check input{width:20px;height:20px;flex-shrink:0;margin:2px 0;accent-color:#efbd65}.score-panel p.board-privacy{font-size:11px;line-height:1.6;margin:0;color:#bbc8e1}.board-privacy a{color:#ffda8a;text-underline-offset:3px}.score-panel .primary{margin:5px 0;min-height:44px}.score-panel p.signup-result{font-size:13px;line-height:1.6;margin:0}.score-panel .board-error{color:#ffb7a7!important}.reward-earned{padding:15px 0;border-top:1px solid #697590;margin:12px 0}.reward-earned>strong{color:#ffe0a1;font-size:16px}.score-panel .reward-earned p{font-size:12px;line-height:1.6;margin:8px 0}.reward-code{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.reward-code code{background:#172641;color:#b5ecd2;font:700 17px Space,sans-serif;padding:12px;overflow-wrap:anywhere}.reward-code button{min-height:44px;background:none;border:1px solid #94a8cd;color:#eee9d2;padding:10px;font-size:11px}
@media(max-width:620px){.center-panel.score-panel{padding:15px}.score-layout{grid-template-columns:1fr}.score-heading{gap:10px}.score-panel .score-heading h2{font-size:13px}.reward-route{gap:8px}.reward-route span{flex-direction:column;align-items:flex-start;gap:4px;font-size:11px}.reward-route strong{font-size:21px}.score-table{font-size:12px}}
@media(max-height:450px) and (orientation:landscape){.center-panel.score-panel{padding:12px 18px}.score-panel .score-heading h2{font-size:14px}.reward-route{padding:10px 0}.reward-route strong{font-size:19px}.score-panel p.offer-note{margin-bottom:12px}.score-layout{gap:20px}}
/* Free-play arcade attract screen. */
.arcade-intro{background:linear-gradient(180deg,#050919a8,transparent 48%,#050919c7 85%);text-align:center}.arcade-intro .title-copy{top:7%;left:4%;right:4%}.arcade-intro .title-copy h2{font-size:clamp(24px,4.4vw,49px)}.arcade-intro .title-copy p{margin:8px 0 0;font:11px/1.7 Pixel,monospace;color:#ffe6a9}.intro-brief{position:absolute;top:33%;right:5%;width:44%;text-align:left;background:#091329e8;padding:14px 16px;border:1px solid #7c7190}.intro-brief p{font:13px/1.8 Pixel,monospace;color:#ffe0a0;margin:0 0 9px}.intro-brief>span{font:14px/1.6 Space,sans-serif;color:#e0e6f5}.coin-console{position:absolute;bottom:16.7%;left:5%;width:90%;pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:8px}.coin-readout{display:flex;align-items:center;gap:18px;font:11px/1.5 Pixel,monospace;color:#d6def5;min-height:28px;text-shadow:2px 2px #080e22}.coin-readout strong{color:#ffe0a0;font-weight:400}.coin-readout>span:last-child{font:700 11px Space,sans-serif;letter-spacing:1px;color:#d0def6}.coin-slot{position:relative;width:34px;height:28px;display:inline-block}.coin-slot>span{position:absolute;left:2px;right:2px;bottom:3px;height:5px;background:#020711;border:1px solid #c69758}.coin-token{position:absolute;width:24px;height:24px;left:5px;bottom:10px;opacity:0;stroke:#4e342d;stroke-width:2}.coin-token path:first-child{fill:#e9ad4e}.coin-token path:nth-child(2){fill:#ffe09a;stroke:#b37c37}.coin-token path:last-child{stroke:#855632}.coin-dropping .coin-token{animation:arcade-coin-drop .7s ease-in both}.coin-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.coin-actions button{min-height:44px;min-width:145px;letter-spacing:.8px}.coin-console .continue{margin:0;padding:5px 12px;min-height:44px;font-size:11px;background:#091329ed}.coin-console .continue:disabled{cursor:default;opacity:.55}.coin-console .start-hint{font:11px/1.6 Space,sans-serif;letter-spacing:.3px;color:#e0e6f5;margin:0;background:#091329e8;padding:3px 9px;text-shadow:none}.arcade-intro.has-save .intro-brief{display:none}
@keyframes arcade-coin-drop{0%{transform:translateY(-28px) rotateY(0);opacity:0}20%{opacity:1}80%{transform:translateY(8px) rotateY(270deg);opacity:1}100%{transform:translateY(15px) rotateY(360deg);opacity:0}}
@media(max-width:600px){.arcade-intro .title-copy h2{font-size:clamp(24px,6vw,36px)}.intro-brief{top:31%;right:4%;width:48%;padding:9px}.intro-brief p{font-size:11px;line-height:1.7;margin-bottom:6px}.intro-brief>span{font-size:12px;line-height:1.5}.coin-actions{gap:7px}.coin-actions button{min-width:135px;padding:10px 12px}}
@media(max-height:650px) and (orientation:landscape){.arcade-intro .title-copy{top:6%}.arcade-intro .title-copy h2{font-size:clamp(23px,6.7vh,36px);line-height:1.4}.arcade-intro .title-copy p{margin-top:5px;font-size:11px}.intro-brief{top:31%;right:4%;width:47%;padding:9px 11px}.intro-brief p{font-size:11px;line-height:1.6;margin-bottom:6px}.intro-brief>span{font-size:12px;line-height:1.5}.coin-console{gap:5px;bottom:16.5%}.coin-actions button{padding:10px 12px;min-width:135px}.coin-console .continue{min-height:44px;padding:4px 10px}.coin-console .start-hint{line-height:1.4}}
@media(max-height:360px) and (orientation:landscape){.intro-brief{top:29%;padding:7px 9px}.intro-brief>span{display:none}.intro-brief p{margin:0}.arcade-intro .title-copy p{font-family:Space,sans-serif;font-weight:700;letter-spacing:.7px}.arcade-intro.has-save .title-copy p{display:none}.coin-console{gap:3px}.coin-readout{min-height:25px}}
@media(prefers-reduced-motion:reduce){.coin-dropping .coin-token{animation:none;opacity:0}}
.coin-actions #add-coin:disabled{background:#111b32;color:#aebbd5;border-color:#5c6c8d;opacity:1;cursor:default}
/* Privacy choices stay separate from email-marketing consent. */
.tracking-settings{position:absolute;top:13px;right:58px;width:44px;height:44px;z-index:5;border:1px solid #7e8caf;background:#101729ef;color:#eee9d2;display:grid;place-items:center}.tracking-settings:hover{background:#293558}.tracking-settings svg{width:21px;height:21px}.tracking-settings circle{fill:#101729}.tracking-dialog{background:#0e1830;color:#eee9d2;border:1px solid #a1aac8;padding:25px;width:min(580px,calc(100vw - 28px));max-height:calc(100dvh - 24px);overflow-y:auto;box-sizing:border-box}.tracking-dialog::backdrop{background:#020611ce}.tracking-dialog h2{font:16px/1.6 Pixel,monospace;color:#ffda8a;margin:0 0 15px}.tracking-dialog p{font:14px/1.6 Space,sans-serif;margin:0 0 16px;color:#d5def0}.tracking-dialog>label{display:flex;gap:12px;min-height:44px;padding:12px 0;border-top:1px solid #34425e;cursor:pointer}.tracking-dialog input{width:21px;height:21px;flex-shrink:0;accent-color:#efbd65;margin:2px 0}.tracking-dialog label strong{display:block;font:700 14px/1.5 Space,sans-serif;color:#eee9d2}.tracking-dialog label span span{display:block;font:12px/1.6 Space,sans-serif;color:#bdcae5}.tracking-dialog p.tracking-note,.tracking-dialog #consent-gpc{font-size:12px;line-height:1.6;margin-top:12px}.tracking-actions{display:flex;gap:8px;flex-wrap:wrap}.tracking-actions button{min-height:44px;padding:11px 13px;font:700 11px Space,sans-serif;flex:1}.tracking-dialog input:focus-visible{outline:3px solid #efbd65;outline-offset:3px}@media(max-height:450px) and (orientation:landscape){.tracking-dialog{padding:16px 20px}.tracking-dialog h2{font-size:13px;margin-bottom:10px}.tracking-dialog p{font-size:12px;margin-bottom:10px}.tracking-dialog>label{padding:8px 0}}

/* Thumb-first controls: left movement, right combat, separate middle interaction. */
.touch-controls{--pad-edge:max(12px,env(safe-area-inset-left));--fight-edge:max(12px,env(safe-area-inset-right))}
.dpad{left:var(--pad-edge);bottom:18%;grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,48px);gap:6px}
.dpad button{width:44px;height:48px}
.fight-pad{position:absolute;right:var(--fight-edge);bottom:18%;width:204px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:44px 44px 52px;gap:8px;pointer-events:none}
.fight-pad .kick-pad,.fight-pad .super-pad,.fight-pad .action-pad{display:contents}
.fight-pad button{position:static;width:auto;max-width:none;min-width:44px;min-height:44px;height:auto;border-radius:0;font-size:11px;line-height:1.3;background:#101d36ed;border:1px solid #94a4c3;color:#eee9d2;align-self:stretch;justify-self:stretch;grid-column:auto;grid-row:auto}
.fight-pad .action-pad button{width:auto;max-width:none;min-height:44px;height:auto;border-radius:0;align-self:stretch;justify-self:stretch}
.fight-pad button span{display:block;font-size:11px;color:#bdc9e1}
.fight-pad #super-split{grid-area:1/1}.fight-pad #super-slide{grid-area:1/2}.fight-pad .switch{grid-area:1/3}
.fight-pad #kick-high{grid-area:2/1}.fight-pad #kick-flying{grid-area:2/2}.fight-pad .special{grid-area:2/3}
.fight-pad .jump{grid-area:3/1}.fight-pad .attack{grid-area:3/2/4/4;background:#efbd65;color:#11182b;font-size:15px;font-weight:700;border-color:#ffe2a1}
.fight-pad button:disabled{opacity:.45;cursor:default}.fight-pad button.pressed,.fight-pad button:active{background:#ffdb94;color:#11182b}.fight-pad button.pressed span{color:#11182b}
.touch-talk{width:84px;min-height:48px;bottom:18%;background:#192b45f2!important;border-color:#efbd65!important}
.pause-button{width:44px;height:44px;right:9px;top:9px}
@media(max-width:700px){.fight-pad{width:180px;gap:6px}.dpad{gap:6px}}
@media(pointer:coarse){.cabinet,.touch-controls{-webkit-touch-callout:none;overscroll-behavior:none}.touch-controls button{font-weight:700}}

@media(max-width:560px) and (orientation:landscape){.touch-talk{top:50px;bottom:auto}}

/* Speaker stays reachable when landscape mode hides the outer toolbar. */
.cabinet-sound{position:absolute;left:max(14px,env(safe-area-inset-left));top:68px;z-index:5;width:44px;height:44px;background:#101729ef;border-color:#7e8caf;color:#eee9d2}
.cabinet-sound[aria-pressed=true]{border-color:#efbd65;color:#ffda8a}.cabinet-sound svg{width:21px;height:21px}

/* Sumatra uses the spare half of the HIT row without growing the phone controls. */
.fight-pad .akita-command{grid-area:3/2;padding:3px;font-size:11px;font-weight:700;background:#162d32f2;border-color:#9de6d1;color:#e9edff}
.fight-pad .akita-command span{font-size:11px;color:#b5e1c8}
.has-akita .fight-pad .attack{grid-area:3/3}

/* The roast controls leave Lex and the machine visible throughout each batch. */
.center-panel.roast-panel{inset:3% 2% 18% auto;width:33%;padding:16px 14px;align-items:stretch;justify-content:center;text-align:left;gap:9px;background:#111b36f5;border:1px solid #c5985c;overflow-y:auto}
.roast-panel h2{font:clamp(11px,1.3vw,17px)/1.5 Pixel;margin:0;color:#ffe0a0;overflow-wrap:anywhere}
.roast-panel p{font-size:13px;line-height:1.4;margin:0;color:#e0e1ef}
.roast-panel .roast-batch{color:#b5e1c8;font-weight:700}.roast-panel .roast-notes{color:#c1cce2}.roast-panel .roast-step{font-size:13px}
.roast-panel .roast-meter{width:100%;height:28px;margin:6px 0 0;border:2px solid #d8c592;background:#765333;flex-shrink:0}
.roast-zone{position:absolute;inset:0 auto 0 0;background:#b6ce8b;border-inline:2px solid #d9edb2}
.roast-panel .roast-marker{top:-6px;height:36px;width:3px;background:#fff6d8}
.roast-panel .roast-labels{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;font-size:10px;text-align:center;color:#d7dced}
.roast-panel .primary{margin:3px 0 0;min-height:44px;width:100%;padding:10px 6px;font-size:12px;letter-spacing:.2px;line-height:1.3}
.roast-panel .roast-key{font-size:11px;color:#b8c8df;text-align:center}.roast-panel h3{font:12px/1.6 Pixel;color:#b5e1c8;margin:0}
.roast-panel .roast-quality{font:clamp(22px,3vw,36px)/1.2 Pixel;color:#ffe0a0}.roast-panel .roast-quality span{font:12px Space;color:#c1cce2}
.roast-action-label{font:11px/1.7 Pixel;color:#b5e1c8}
@media(max-height:450px) and (orientation:landscape){.center-panel.roast-panel{padding:10px 9px;gap:6px}.roast-panel h2{font-size:11px}.roast-panel p,.roast-panel .roast-step{font-size:11px;line-height:1.3}.roast-panel .roast-notes,.roast-panel .roast-key{display:none}.roast-panel .primary{font-size:11px;padding:8px 5px}.roast-panel .roast-quality{font-size:24px}.roast-panel h3{font-size:10px}}

/* Three title taps directly unlock the Akita airdrop. */
#secret-trigger{pointer-events:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none;font:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;text-shadow:inherit;background:none;border:0;padding:0;min-height:44px;cursor:pointer}

/* Origin stages reveal more scenery on wide displays without stretching sprites. */
.cabinet{touch-action:none}
.game-fullscreen{display:none;position:absolute;left:calc(max(14px,env(safe-area-inset-left)) + 52px);top:68px;z-index:5;width:44px;height:44px;background:#101729ef;color:var(--cream);border-color:#7e8caf;touch-action:manipulation}
.game-fullscreen[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}
@media(max-height:650px) and (orientation:landscape){
 html,body{overflow:hidden;overscroll-behavior:none}
 .cabinet{height:var(--visible-height,100dvh);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
 .screen{width:min(100%,calc((var(--visible-height,100dvh) - env(safe-area-inset-top) - env(safe-area-inset-bottom)) * 4 / 3))}
 .cabinet.wide-play .screen{width:100%}
 .game-fullscreen{display:grid}
 .wide-play .touch-controls button{background:#101d36b8}
 .wide-play .fight-pad .attack{background:#efbd65eb}
 .wide-play .fight-pad button.pressed{background:#ffdb94;color:#11182b}
 .wide-play .touch-controls{bottom:env(safe-area-inset-bottom)}
}
.cabinet:fullscreen{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
.cabinet:fullscreen .game-fullscreen{display:grid}
.cabinet.wide-play:fullscreen .screen{width:100%}
