:root{color-scheme:dark;--bg:#0b1314;--panel:#0e1819;--mint:#81ffd1;--mint-dim:#3c7866;--text:#e9f3ef;--muted:#849591;--line:#22312e;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}body{color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--mint);outline-offset:5px}button{border:0}button svg{pointer-events:none}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}a{color:inherit}.app-shell{max-width:1680px;margin:0 auto;padding:0 5.1vw} .topbar{height:111px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:24px;font-weight:800;letter-spacing:3.2px;line-height:1}.brand-icon{width:44px;height:44px;background:var(--mint);color:#0d2820;border-radius:11px;display:grid;place-items:center}.brand-icon svg{width:35px;height:35px;stroke-width:3}.brand-subtitle{display:block;font:8px var(--mono);letter-spacing:3.2px;color:var(--muted);margin-top:8px}.header-center{font:9px var(--mono);letter-spacing:1.6px;color:#7f948b;display:flex;align-items:center;gap:10px}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 9px #81ffd144;flex-shrink:0}.header-actions{display:flex;gap:14px;align-items:center}.icon-button{width:36px;height:36px;display:grid;place-items:center;background:transparent;color:#8ba199;border-radius:5px;transition:background .15s,color .15s}.icon-button:hover{color:var(--mint);background:#81ffd10b}.icon-button[aria-pressed=true]{opacity:.45}.text-button{background:transparent;display:flex;align-items:center;justify-content:center;gap:9px;color:#9aada5;font-size:11px;padding:9px 0}.text-button:hover{color:var(--mint)}.text-button svg{width:16px;height:16px}.divider{height:22px;width:1px;background:var(--line);margin:0 3px}.experience{display:grid;grid-template-columns:320px minmax(0,1fr);gap:56px;padding:47px 0 35px;min-height:690px}.side-panel{padding:3px 0;position:relative}.eyebrow{font:9px var(--mono);letter-spacing:2px;color:var(--mint);display:flex;align-items:center;gap:9px}.small-line{width:18px;height:1px;background:var(--mint)}h1{font-size:61px;line-height:1.04;letter-spacing:-3.7px;font-weight:600;margin:26px 0 17px}h1 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--mint);letter-spacing:-3px}.intro{color:#82948d;font-size:13px;line-height:1.7;margin:0 0 35px}.section-label{font:8px var(--mono);letter-spacing:1.3px;color:#81938c;display:flex;justify-content:space-between;align-items:center;gap:10px}.section-label>span:last-child:not(:first-child){font-size:8px;letter-spacing:.5px}.mode-list{display:flex;flex-direction:column;gap:9px;margin-top:14px}.mode-card{border:1px solid #273530;background:linear-gradient(110deg,#121d1b,#101a18);border-radius:7px;display:flex;align-items:center;padding:16px 15px;text-align:left;min-height:77px;gap:13px;transition:border .2s,background .2s,transform .2s}.mode-card:hover{border-color:#557b6b;transform:translateX(3px)}.mode-card.selected{border-color:#71c5a1;background:linear-gradient(110deg,#1c332b,#172820);box-shadow:inset 0 0 25px #81ffd105}.mode-icon{display:grid;place-items:center;color:#718f80;width:29px}.mode-icon svg{width:24px;height:24px}.selected .mode-icon{color:var(--mint)}.mode-copy{flex:1}.mode-copy strong{display:flex;align-items:center;font-size:15px;font-weight:500;gap:10px}.tag{font:6.5px var(--mono);font-weight:400;letter-spacing:1px;border:1px solid #42574a;color:#98b4a1;border-radius:3px;padding:4px 5px;white-space:nowrap}.selected .tag{color:#9bdeb9;border-color:#446950}.mode-copy small{display:block;font-size:10px;color:#82968a;margin-top:7px}.mode-radio{width:12px;height:12px;border:1px solid #4c6456;border-radius:50%;flex-shrink:0}.selected .mode-radio{border-color:var(--mint);background:var(--mint);box-shadow:inset 0 0 0 3px #203e30}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--mint);border:1px solid var(--mint);color:#0b2920;font-size:12px;font-weight:600;border-radius:5px;min-height:51px;padding:13px 20px;width:100%;transition:background .15s,box-shadow .15s,transform .15s}.primary-button:hover{background:#a9ffdf;box-shadow:0 0 30px #81ffd118;transform:translateY(-1px)}.primary-button:active{transform:translateY(1px)}.primary-button svg{width:19px;height:19px}.launch{margin-top:23px}.launch-hint{margin-top:13px;text-align:center;font:7px var(--mono);letter-spacing:1.2px;color:#71877b;display:flex;align-items:center;justify-content:center;gap:6px}kbd{display:inline-grid;place-items:center;min-width:18px;height:19px;border:1px solid #35453d;border-bottom-width:2px;border-radius:3px;padding:2px 4px;font:8px var(--mono);color:#a6b9ab;white-space:nowrap}.launch-hint kbd{font-size:7px;height:17px}.personal-best{display:flex;align-items:center;gap:10px;padding-top:22px;margin-top:26px;border-top:1px solid var(--line);font-size:10px;color:#83988a}.personal-best svg{width:15px;height:15px}.personal-best>span{display:flex;gap:14px;align-items:center}.personal-best strong{font:12px var(--mono);color:#ccded1;letter-spacing:1px}.personal-best .local-tag{font:7px var(--mono);letter-spacing:1.1px;margin-left:auto;color:#526d5b}.arena{position:relative;isolation:isolate;min-width:0;background:#0a1213;border:1px solid #263731;border-radius:9px;overflow:hidden;min-height:610px}.arena::after{content:"";position:absolute;pointer-events:none;inset:0;box-shadow:inset 0 0 90px #0000001c;border-radius:inherit;z-index:1}#game-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;outline-offset:-5px;touch-action:none}.arena-topbar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;z-index:2;padding:23px 25px;font:8px var(--mono);letter-spacing:1.2px;color:#708e81;pointer-events:none}.arena-topbar>div{display:flex;align-items:center;gap:8px}.arena-topbar .status-dot{width:4px;height:4px}.arena-topbar>span{font-size:7px;color:#557164;letter-spacing:1px}.arena-grid-label{position:absolute;font:7px var(--mono);color:#496458;letter-spacing:1px;pointer-events:none;z-index:2}.top-left{top:73px;left:25px}.bottom-right{bottom:93px;right:25px}.arena-caption{display:flex;align-items:center;gap:13px;position:absolute;bottom:25px;left:25px;z-index:2;pointer-events:none}.caption-cross{font-size:26px;font-weight:200;color:#5d9b7f}.arena-caption strong{font-size:11px;font-weight:400;color:#b5cdbf}.arena-caption small{font-size:8px;color:#638475;display:block;margin-top:6px}.camera-toolbar{display:flex;align-items:center;gap:9px;position:absolute;right:20px;bottom:24px;z-index:4}.camera-switch{display:flex;align-items:center;padding:4px;border:1px solid #2a3b32;border-radius:5px;background:#101d17cc;gap:3px}.camera-switch button{font:8px var(--mono);letter-spacing:1px;background:transparent;border-radius:3px;min-width:33px;padding:7px 8px;color:#7c9787;transition:background .2s}.camera-switch button.active{color:var(--mint);background:#294437}.camera-switch button:hover{color:var(--mint)}.camera-toolbar .icon-button{width:28px;height:28px}.camera-toolbar .icon-button svg{width:17px;height:17px}.bottom-bar{border-top:1px solid var(--line);padding:21px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.control-guide{display:flex;align-items:center;gap:27px;font:7px var(--mono);letter-spacing:.8px;color:#819588}.control-guide>span{display:flex;align-items:center;gap:8px}.key-group{display:flex;gap:3px}.key-group kbd{padding:0;min-width:17px;height:18px;font-size:10px}.performance{display:flex;align-items:center;gap:6px;font:8px var(--mono);color:#9ab7a2;letter-spacing:.7px}.performance>.status-dot{width:4px;height:4px;margin-right:2px}.footer-divider{color:#344d3c;margin:0 7px}.performance>span:last-child{font-size:7px;color:#688371}.page-bottom{display:flex;align-items:center;justify-content:space-between;font:6.5px var(--mono);letter-spacing:1.2px;color:#526c59;padding:8px 0 27px}.tiny-diamond{color:#94c4a2;margin:0 10px}
/* Session UI shares the same stage, so camera changes preserve the running game. */
.session-title{display:flex;align-items:center;justify-content:space-between;margin-top:30px}.session-title h1{margin:0;font-size:48px;letter-spacing:-2px}.session-title .tag{font-size:10px}.score-block{margin-top:32px}.score-block>strong{display:block;font:64px var(--mono);letter-spacing:-4px;margin-top:6px;color:var(--mint)}.combo{font:8px var(--mono);color:#5fa58b;letter-spacing:1.5px;display:block;margin-top:10px}.session-stats{display:flex;gap:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin-top:28px}.session-stats>div{display:flex;flex-direction:column;gap:10px;flex:1}.session-stats span{font:8px var(--mono);color:var(--muted);letter-spacing:1.4px}.session-stats strong{font:23px var(--mono);font-weight:400;color:#cfdfd4}.boost-block{margin-top:27px}.boost-block .section-label span{display:flex;align-items:center;gap:7px}.boost-block svg{width:13px;height:13px;color:var(--mint)}.boost-block .section-label strong{font-size:8px;font-weight:400}.energy-track{height:5px;width:100%;margin-top:12px;background:#243c31;overflow:hidden;border-radius:2px}.energy-track>div{height:100%;width:100%;background:var(--mint);transform-origin:left;transition:background .2s;box-shadow:0 0 10px #81ffd133}.boost-block p{font-size:9px;color:#768d7f;margin-top:10px}.boost-block kbd{height:16px;font-size:7px}.live-info{display:flex;align-items:center;gap:7px;margin-top:27px;font:8px var(--mono);letter-spacing:1px;color:#80a591}.session-description{font-size:11px;line-height:1.7;color:#7a9182;min-height:56px}.session-actions{margin-top:21px;display:flex;flex-direction:column;gap:6px}.secondary-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 16px;background:#18271f;border:1px solid #32493b;border-radius:5px;width:100%;color:#bad8c4;font-size:11px;min-height:43px;transition:background .2s}.secondary-button:hover{background:#233b2c}.secondary-button svg{width:16px;height:16px}.secondary-button kbd{margin-left:auto;font-size:7px}.menu-back{font-size:9px;justify-content:space-between}.countdown{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;background:#0a181748;z-index:5;pointer-events:none}.countdown span{font:9px var(--mono);letter-spacing:3px;color:var(--mint)}.countdown strong{font:100px var(--mono);color:var(--mint);text-shadow:0 0 50px #81ffd188;font-weight:400;line-height:1.5}.toast{position:absolute;left:50%;top:70px;transform:translateX(-50%);border:1px solid #516b4b;background:#14271ee8;padding:12px 20px;font:9px var(--mono);letter-spacing:1px;color:#d4edbd;border-radius:5px;white-space:nowrap;z-index:8;box-shadow:0 8px 30px #0003}.score-popup{position:absolute;top:45%;left:50%;z-index:4;color:#ffe0a2;font:30px var(--mono);pointer-events:none;opacity:0}.score-popup.pop{animation:score-rise .8s ease-out forwards}@keyframes score-rise{0%{opacity:0;transform:translate(-50%,10px) scale(.8)}20%{opacity:1;transform:translate(-50%,-10px) scale(1)}100%{opacity:0;transform:translate(-50%,-65px) scale(.9)}}.state-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#081714b8;backdrop-filter:blur(9px);z-index:10;padding:25px}.state-card{width:min(330px,100%);text-align:center}.state-card .eyebrow{justify-content:center;font-size:8px}.state-card h2{font-size:37px;letter-spacing:-1.4px;font-weight:500;margin:20px 0 10px}.state-card>p{font-size:11px;line-height:1.7;color:#9cb6a4;margin-bottom:26px}.state-card .primary-button{justify-content:space-between}.state-card .secondary-button{margin-top:11px;background:#15271f}.result-stats{display:flex;justify-content:space-around;padding:20px 0 27px;gap:25px;border-top:1px solid #3a5342}.result-stats>div{display:flex;flex-direction:column;gap:8px}.result-stats span{font:7px var(--mono);color:#92aa9b;letter-spacing:1px}.result-stats strong{font:33px var(--mono);color:var(--mint)}.new-record{font:8px var(--mono);letter-spacing:1px;color:#ffcb80;margin-bottom:24px}.touch-controls{display:none}.arena:fullscreen{height:100vh;width:100vw;border:0;border-radius:0}.arena:fullscreen .camera-toolbar{bottom:28px}.arena:fullscreen .touch-controls{bottom:20px}.fatal-error{position:fixed;inset:0;z-index:100;background:#0b1715f5;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:35px;text-align:center}.fatal-error h2{font-size:28px;font-weight:500}.fatal-error p{font-size:14px;line-height:1.7;max-width:500px;color:#adccba}.fatal-error .primary-button{width:220px;justify-content:center;margin-top:20px}
/* Native dialogs provide focus containment and keyboard dismissal. */
dialog{color:var(--text);background:#101e19;border:1px solid #3f5a47;border-radius:12px;padding:29px;max-width:min(490px,calc(100vw - 30px));width:490px;max-height:calc(100dvh - 40px);box-shadow:0 35px 150px #0009}dialog::backdrop{background:#040c09ba;backdrop-filter:blur(8px)}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.dialog-header h2{font-size:33px;font-weight:500;letter-spacing:-1px;margin:12px 0 0}.dialog-header .eyebrow{font-size:7px;letter-spacing:1.5px}.dialog-header .icon-button{margin-top:-8px;margin-right:-9px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #2b4031;padding:20px 0}.setting-row strong{font-size:12px;font-weight:500;display:block}.setting-row small{font-size:9px;color:#7e9a87;display:block;margin-top:7px;line-height:1.5}.setting-row input[type=checkbox]{appearance:none;width:34px;height:19px;border:1px solid #3d5f48;background:#25382c;border-radius:15px;position:relative;flex-shrink:0;cursor:pointer}.setting-row input[type=checkbox]::before{content:"";width:11px;height:11px;border-radius:50%;background:#8ca994;position:absolute;left:3px;top:3px;transition:transform .15s}.setting-row input[type=checkbox]:checked{background:#284e39;border-color:#669b77}.setting-row input[type=checkbox]:checked::before{background:var(--mint);transform:translateX(15px)}.volume-row{flex-wrap:wrap;gap:15px}.volume-row input{width:100%;accent-color:var(--mint);height:4px;cursor:pointer}.volume-row output{font:12px var(--mono);color:var(--mint)}.setting-row select{border:1px solid #46604c;background:#1b3023;padding:8px;border-radius:4px;color:#bedac6;font-size:10px;max-width:115px}.settings-note{font-size:9px;color:#6f8d79;text-align:center;line-height:1.5;margin:23px 0}.help-intro{display:flex;gap:17px;align-items:center;padding:5px 0 15px}.help-intro p{font-size:12px;color:#b0c9b8;line-height:1.7}.food-symbol{font-size:48px;color:#ffca80;text-shadow:0 0 20px #ffa83855}.help-controls{border-top:1px solid #304b39;border-bottom:1px solid #304b39;padding:12px 0}.help-controls>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;font-size:10px}.help-controls span{color:#7e9a88}.help-controls strong{font-weight:400;text-align:right;color:#cee8d6}.help-tip{margin:23px 0}.help-tip strong{font-size:12px;font-weight:500;color:var(--mint)}.help-tip p{font-size:10px;line-height:1.8;color:#8fae99;margin:7px 0}.touch-boost{touch-action:none}.dpad button{touch-action:none}
@media(min-width:1600px){.experience{grid-template-columns:355px minmax(0,1fr);gap:70px;min-height:760px}.arena{min-height:670px}h1{font-size:70px}.intro{font-size:14px}.mode-card{min-height:84px}.mode-copy strong{font-size:16px}.mode-copy small{font-size:11px}.launch{min-height:56px}.mode-list{gap:11px}}
@media(max-width:1200px){.app-shell{padding:0 4vw}.header-center{display:none}.experience{grid-template-columns:275px minmax(0,1fr);gap:30px;padding-top:32px}.topbar{height:90px}h1{font-size:54px;letter-spacing:-3px}.intro{margin-bottom:26px}.mode-card{padding:14px 12px;gap:10px;min-height:74px}.mode-copy strong{font-size:14px;gap:7px}.tag{font-size:5.5px}.mode-copy small{font-size:9px}.section-label{font-size:7px}.arena{min-height:590px}.arena-caption{bottom:74px;left:20px}.camera-toolbar{bottom:21px}.control-guide{gap:18px}.arena-topbar{padding:21px 19px}.arena-topbar>span{display:none}.personal-best{margin-top:22px;padding-top:19px}.experience{min-height:650px}}
@media(max-width:850px){.app-shell{padding:0 24px}.experience{gap:20px;grid-template-columns:250px minmax(0,1fr)}h1{font-size:49px}.header-actions{gap:7px}.header-actions .text-button{font-size:10px}.mode-card{padding:13px 10px}.mode-icon{width:23px}.mode-copy strong{font-size:13px}.mode-copy small{font-size:8px}.tag{font-size:5px;letter-spacing:.7px}.mode-card{gap:9px}.control-guide{gap:13px;font-size:6px}.control-guide>span{gap:5px}.control-guide>span:last-child{display:none}.arena-caption strong{font-size:10px}.arena-caption small{font-size:7px}.bottom-bar{gap:8px}.performance{font-size:7px}.performance>span:last-child{display:none}.footer-divider{display:none}.arena{min-height:570px}}
@media(max-width:680px){.app-shell{padding:0 18px}.topbar{height:77px}.wordmark{font-size:20px;gap:10px;letter-spacing:2px}.brand-icon{width:36px;height:36px;border-radius:9px}.brand-icon svg{width:29px;height:29px}.brand-subtitle{font-size:6px;letter-spacing:2.8px;margin-top:7px}.header-actions .text-button span{display:none}.header-actions .divider{display:none}.header-actions{gap:4px}.header-actions .icon-button{width:30px;height:32px}.header-actions .text-button{width:28px}.experience{display:flex;flex-direction:column;padding:26px 0 20px;gap:24px;min-height:0}.side-panel{padding:0}.eyebrow{font-size:7px;letter-spacing:1.4px}h1{font-size:46px;line-height:1.02;margin:18px 0 13px;letter-spacing:-2.5px}h1 br{display:none}h1 em{letter-spacing:-2px}.intro{font-size:11px;margin-bottom:25px}.intro br{display:none}.intro br::after{content:" "}.section-label{font-size:7px;letter-spacing:.9px}.mode-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.mode-card{display:flex;flex-direction:column;align-items:flex-start;padding:14px 11px;gap:12px;position:relative;min-height:108px}.mode-card:hover{transform:none}.mode-icon svg{width:21px;height:21px}.mode-copy strong{font-size:14px}.mode-copy .tag{display:none}.mode-copy small{font-size:8px;line-height:1.5;margin-top:5px}.mode-radio{position:absolute;right:11px;top:17px;width:10px;height:10px}.launch{margin-top:17px;font-size:12px;min-height:48px}.launch-hint{display:none}.personal-best{margin-top:16px;padding-top:14px;font-size:9px}.personal-best strong{font-size:11px}.personal-best svg{width:13px;height:13px}.arena{min-height:360px;height:360px;flex:none;border-radius:7px}.arena-topbar{padding:18px;font-size:7px}.arena-grid-label{display:none}.arena-caption{bottom:20px;left:18px;gap:8px}.arena-caption strong{font-size:9px}.arena-caption small{display:none}.caption-cross{font-size:21px}.camera-toolbar{right:12px;bottom:13px;gap:4px}.camera-switch button{min-width:29px;font-size:7px;padding:6px}.camera-toolbar .icon-button{width:25px}.control-guide{gap:15px;font-size:6px}.control-guide .key-group kbd{min-width:14px;height:16px;font-size:9px}.control-guide>span:nth-child(2){display:none}.bottom-bar{padding:17px 0}.page-bottom{font-size:5.5px;letter-spacing:.7px;gap:20px;padding-bottom:18px}.page-bottom>span:first-child{max-width:200px;line-height:1.8}.tiny-diamond{margin:0 4px}.toast{font-size:7px;padding:10px;top:53px;max-width:95%;white-space:normal;text-align:center}.performance{gap:4px}.performance .status-dot{width:3px;height:3px}
body:not([data-state=Menu]):not([data-state=Boot]) .experience{padding-top:20px;gap:17px}#session-content{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}#session-content>.eyebrow{display:none}.session-title{margin:0;gap:10px;justify-content:flex-start}.session-title h1{font-size:29px;letter-spacing:-1px}.session-title .tag{font-size:7px}.score-block{margin:0;text-align:right;grid-column:2;grid-row:1 / span 2}.score-block .section-label{justify-content:flex-end;font-size:6px}.score-block>strong{font-size:37px;letter-spacing:-1px;margin-top:3px}.combo{font-size:6px;letter-spacing:1px;margin-top:4px}.session-stats{padding:0;border:0;margin:0;gap:20px;grid-column:1;grid-row:2}.session-stats>div{gap:5px;flex:none}.session-stats span{font-size:6px}.session-stats strong{font-size:14px}.boost-block{grid-column:1 / -1;margin-top:0}.boost-block .section-label{font-size:7px}.boost-block .section-label strong{font-size:7px}.boost-block p{display:none}.energy-track{margin-top:8px;height:3px}.session-actions{grid-column:1 / -1;flex-direction:row;margin:0;align-items:center;gap:12px}.session-actions .secondary-button{width:auto;padding:8px 11px;min-height:30px;font-size:9px}.session-actions .secondary-button kbd{display:none}.session-actions .menu-back{font-size:8px;gap:10px}.live-info,.session-description,#session-content .personal-best{display:none}body:not([data-state=Menu]):not([data-state=Boot]) .arena{height:min(57vh,490px);min-height:390px}body:not([data-state=Menu]):not([data-state=Boot]) .arena-caption{display:none}body:not([data-state=Menu]):not([data-state=Boot]) .camera-toolbar{top:10px;bottom:auto}body:not([data-state=Menu]):not([data-state=Boot]) .arena-topbar{padding:20px 14px;font-size:6px}body:not([data-state=Menu]):not([data-state=Boot]) .touch-controls{display:flex;align-items:flex-end;justify-content:space-between;position:absolute;bottom:15px;left:15px;right:15px;z-index:5;pointer-events:none}body[data-state=Paused] .touch-controls,body[data-state=GameOver] .touch-controls{display:none!important}.dpad{display:grid;grid-template-columns:repeat(3,34px);grid-template-rows:repeat(2,30px);gap:3px;pointer-events:auto}.dpad button{border:1px solid #4b7355;border-radius:4px;color:#b6e2c3;font-size:16px;background:#14281ecc}.dpad button:active{background:#3c6b4d}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1;grid-row:2}.dpad button:nth-child(3){grid-column:2;grid-row:2}.dpad button:nth-child(4){grid-column:3;grid-row:2}.touch-boost{display:flex;flex-direction:column;align-items:center;gap:5px;justify-content:center;width:60px;height:60px;border-radius:50%;background:#1d3a2bc9;color:var(--mint);border:1px solid #5b9472;font:6px var(--mono);letter-spacing:1px;pointer-events:auto}.touch-boost:active{background:#407a51}.touch-boost svg{width:22px;height:22px}.state-card h2{font-size:31px}.state-card>p{font-size:10px;margin-bottom:17px}.state-card .eyebrow{font-size:7px}.result-stats{padding:13px 0 19px}.result-stats strong{font-size:26px}.state-card .primary-button{min-height:43px;font-size:11px}.state-card .secondary-button{font-size:10px;min-height:39px}.new-record{font-size:7px;margin-bottom:15px}.countdown strong{font-size:80px}.countdown span{font-size:7px}}
@media(pointer:coarse) and (min-width:681px){body[data-state=Playing] .touch-controls{display:flex;justify-content:space-between;position:absolute;bottom:20px;left:20px;right:20px;z-index:5}.dpad{display:flex;gap:5px}.dpad button{width:36px;height:36px;background:#1a3528cc;border:1px solid #416e51;border-radius:4px;color:var(--mint)}.touch-boost{background:#1b3929cc;border:1px solid #557e60;border-radius:5px;display:flex;gap:8px;align-items:center;font:8px var(--mono);padding:8px;color:var(--mint)}body[data-state=Playing] .camera-toolbar{bottom:80px}}
@media(max-height:760px) and (min-width:900px){.topbar{height:78px}.experience{padding-top:28px;padding-bottom:25px;min-height:590px}.arena{min-height:540px}h1{font-size:52px;margin-top:20px;margin-bottom:12px}.intro{font-size:11px;margin-bottom:25px}.mode-card{min-height:66px;padding-top:12px;padding-bottom:12px}.mode-list{gap:8px}.launch{margin-top:18px;min-height:46px}.personal-best{margin-top:20px;padding-top:16px}.bottom-bar{padding:15px 0}.page-bottom{padding-bottom:15px}.score-block{margin-top:20px}.session-stats{margin-top:20px;padding:17px 0}.boost-block{margin-top:20px}.live-info{margin-top:20px}.session-actions{margin-top:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
body.reduced-motion *,body.reduced-motion *::before,body.reduced-motion *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
.mini-map{position:absolute;top:66px;right:25px;z-index:3;padding:9px;background:#0b1b14d9;border:1px solid #365a42;border-radius:5px;pointer-events:none}.mini-map>span{display:block;font:6px var(--mono);letter-spacing:1.1px;color:#8cab94;margin-bottom:8px}.mini-map canvas{display:block;width:112px;height:112px;opacity:.9}@media(max-width:680px){.mini-map{top:54px;right:13px;padding:6px}.mini-map canvas{width:76px;height:76px}.mini-map>span{font-size:5px;margin-bottom:5px}}
