/* Game-first layout. Engine v1 and shared challenge physics remain unchanged. */
:root{--lime:#d1fc70;--panel:#191a32;--line:#393454;background:#0c0c19}
body{background:radial-gradient(ellipse at 50% 12%,#292047 0,transparent 65%),#0c0c19;min-height:100svh;overscroll-behavior-y:contain}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.app{max-width:1080px;padding:0 28px}.topbar{height:76px;border:0}.brand{font-style:italic;letter-spacing:-1.2px;font-size:26px}.beta{font-size:12px;letter-spacing:.6px}.icon{min-width:44px;min-height:44px;background:#23223a;border-color:#47405e;border-bottom-width:3px}.icon[aria-pressed=true]{background:#d1fc70;color:#18201b}
.tabs{margin:10px 0 18px;background:#181727;border-color:#39324d}.tab{font-size:14px;min-height:44px}.tab.active{background:#53417a;box-shadow:0 3px 0 #2e2544}.tab small{font-size:12px}
.game-card{border:2px solid #51466d;border-radius:22px;box-shadow:0 8px 0 #070713,0 25px 80px #0005;background:#1d1b32}.game-top{padding:16px 22px;background:#211e37}.level-tag h2{font-size:18px}.micro{font-size:12px;letter-spacing:.6px}.level-number{height:46px;width:46px;font-size:21px;background:#d1fc70;color:#1a241a;box-shadow:0 4px 0 #789a3b}.game-stats{gap:12px}.game-stats strong{font-size:22px}.progress-track,#progress{height:6px}.progress-track{background:#353049}#progress{box-shadow:0 0 14px #c6ff6b88}
.stage{height:clamp(320px,44svh,470px)}#game{touch-action:none;user-select:none;-webkit-user-select:none}.stage-badge{top:auto;bottom:12px;left:16px;font-size:12px;letter-spacing:.2px;padding:5px 8px;color:#ccd8cd;background:#10142aba;border-color:#4f6160}.run-hud{position:absolute;top:16px;left:18px;right:18px;display:flex;justify-content:space-between;gap:8px;pointer-events:none;color:#d2caf1;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}.run-hud span{padding:7px 10px;background:#111127bc;border:1px solid #574672;border-radius:8px}
.overlay{background:linear-gradient(180deg,#121126c9,#16182bd9);backdrop-filter:blur(3px);padding:22px}.overlay h3{font-size:clamp(30px,4vw,46px);font-weight:900;color:#fff}.overlay p{font-size:16px;line-height:1.5;max-width:410px;margin:0 auto 22px}.overline{font-size:12px;letter-spacing:1.1px}.overlay-foot{font-size:12px;letter-spacing:.6px;margin-top:18px}.primary,.secondary{font-size:15px;min-height:50px;border-radius:12px}.primary{box-shadow:0 5px 0 #718f35}.secondary{background:#3b2e5a;border-color:#675181}.overlay-actions{gap:12px}.overlay-actions .primary{min-width:200px}.game-bottom{padding:16px 20px;background:#211e37;gap:20px}.game-bottom p{font-size:14px;line-height:1.4;max-width:420px}.keyboard-help{font-size:12px}.jump-btn{min-width:190px;min-height:64px;background:#d1fc70;color:#1b251d;font-size:16px;border:0;border-bottom:6px solid #76963c;border-radius:15px;letter-spacing:.4px;touch-action:none;box-shadow:0 0 24px #b3ef5b10}.jump-btn:active{border-bottom-width:2px;transform:translateY(4px)}.jump-btn:disabled{opacity:.7}
.under-game{padding:18px 0;align-items:center}.proof-note p,.proof-note small{font-size:12px}.proof-note small{max-width:300px}.text-btn{font-size:14px;min-height:44px;padding:10px}.secondary-actions{gap:4px}footer{margin-top:6px;padding:20px 0;font-size:12px}footer p{font-size:12px}.panel{background:#1d1b32}.panel p,.skin-caption p,.fine-print{font-size:14px;line-height:1.6}.eyebrow,.pill{font-size:12px}.level-item{min-height:120px;border-bottom-width:5px;background:#29203f}.level-item span{font-size:14px}.level-item.done{background:#283428;border-color:#8cb252}.slot{min-height:48px;font-size:14px}select{font-size:16px;min-height:48px}input[type=range]{min-height:44px;accent-color:#d1fc70}.volume-control{display:flex;flex-direction:column;gap:8px;font-size:16px}dialog{max-height:85svh;overflow:auto}dialog p,dialog li{font-size:16px}.toast{font-size:14px;max-width:calc(100vw - 24px)}
body[data-mode=running] .game-card{border-color:#85719f}body[data-mode=won] .game-card{border-color:#d1fc70}body[data-mode=lost] .game-card{border-color:#ff9987}
@media(max-width:600px){
 .app{padding:0 max(12px,env(safe-area-inset-left)) 0 max(12px,env(safe-area-inset-right))}.topbar{height:64px;padding-top:env(safe-area-inset-top)}.brand{font-size:22px;gap:8px}.beta{display:none}.top-actions{gap:6px}.tabs{margin:4px 0 12px;width:100%;border-radius:12px}.tab{font-size:14px;padding:9px 8px}.tab small{display:none}
 .game-card{border-radius:17px}.game-top{padding:12px 10px;gap:6px}.level-tag{gap:9px;min-width:0}.level-number{width:36px;height:40px;flex-shrink:0;font-size:18px}.level-tag h2{font-size:14px;line-height:1.25}.micro{font-size:10px;letter-spacing:.4px}.game-stats{gap:6px}.game-stats strong{font-size:18px}.game-stats .icon{min-width:44px;min-height:44px;font-size:18px}.game-stats>div{display:none}
 .stage{height:clamp(260px,calc(100svh - 337px),520px)}.stage-badge{font-size:10px;left:10px;bottom:9px;max-width:calc(100% - 20px);letter-spacing:0}.run-hud{top:10px;left:10px;right:10px;font-size:12px}.run-hud span{padding:6px 8px}
 .overlay{padding:44px 16px 15px}.overlay h3{font-size:31px;line-height:1.08;margin-bottom:10px}.overlay p{font-size:14px;margin-bottom:16px;line-height:1.45}.overline{font-size:11px;letter-spacing:.7px;margin-bottom:9px}.overlay-foot{display:none}.overlay-actions{gap:9px}.primary,.secondary{min-height:46px;font-size:14px;padding:11px 14px}.overlay-actions .primary{width:100%;min-width:0}.overlay-actions .secondary{flex:1;padding:10px;font-size:13px;gap:5px}
 .game-bottom{padding:10px;display:flex;flex-direction:column;gap:8px}.game-bottom>div{width:100%;text-align:center}.game-bottom p{max-width:none;font-size:12px;line-height:1.3;margin:0}.jump-btn{width:100%;min-height:62px;padding:10px 22px;font-size:17px;border-radius:12px}.keyboard-help{display:none}.under-game{padding:9px 0 5px;gap:0}.proof-note{display:none}.secondary-actions{width:100%;display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:0}.text-btn{font-size:12px;min-height:44px;padding:7px 3px}.secondary-actions .text-btn{font-size:12px}footer{margin:6px 0 0;padding:10px 0 max(12px,env(safe-area-inset-bottom));gap:4px;align-items:center}footer p{display:none}footer>div{width:auto;margin-left:auto}footer .text-btn{font-size:12px}.footer-logo{font-size:12px}
 .level-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{padding:20px 14px}.section-heading h2{font-size:26px}.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.skin-caption p{font-size:14px}.skin-caption .secondary{font-size:13px}.pill{font-size:12px}.support-hero>p{font-size:14px}.skin-card{grid-template-columns:95px 1fr}.skin-preview{width:95px}
}
@media(max-height:520px) and (orientation:landscape){.app{max-width:1100px;padding:0 12px}.topbar{height:52px}.tabs{margin:0 0 8px}.game-top{padding:6px 12px}.stage{height:250px}.game-bottom{padding:8px 14px}.jump-btn{min-height:52px}.under-game,footer{display:none}body[data-mode=running] .topbar,body[data-mode=running] .tabs,body[data-mode=replay] .topbar,body[data-mode=replay] .tabs{display:none}body[data-mode=running] .stage,body[data-mode=replay] .stage{height:calc(100svh - 142px)}}
@media(prefers-reduced-motion:reduce){.overlay{backdrop-filter:none}.jump-btn:active{transform:none}}
@media(max-width:600px){.stage{height:clamp(260px,calc(100svh - 365px),420px)}.tab{white-space:nowrap}.overlay{overflow-y:auto}}
@media(max-width:360px){.topbar{height:58px}.brand{font-size:19px}.tab{font-size:12px;padding:8px 5px}.tabs{margin-bottom:9px}.stage{height:240px}.overlay{padding:30px 12px 12px}.overlay h3{font-size:27px}.overlay p{font-size:13px;margin-bottom:12px}.game-top{padding:10px 8px}.game-bottom{gap:6px}.jump-btn{min-height:58px}.run-hud{font-size:11px}}
