html,body{height:100%;margin:0;background:#000;color:#f4ecd8;overflow:hidden;user-select:none;-webkit-user-select:none;overscroll-behavior:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{touch-action:manipulation}body:has(#stage[data-mode=playing]){touch-action:none}#app{position:fixed;inset:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}#stage{position:absolute;overflow:hidden;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;--stage-scale: 1}#stage,#rotate,.pan-arrows,.fullscreen-button{--sp-ink: #2b1a0c;--sp-cream: #f3e2bf;--sp-amber: #ffb534;--sp-orange: #ff9f1c;--sp-button-text: #fff1d0;--sp-hazard: #d33c32;--sp-urgent: #ff7043;--sp-focus: #ffd27a;--sp-font-display: Impact, Haettenschweiler, "Arial Narrow Bold", "Franklin Gothic Heavy", sans-serif;--sp-font-digits: Bahnschrift, "DIN Alternate", "Roboto Condensed", "Arial Narrow", sans-serif;--sp-font-hand: "Segoe Print", "Comic Sans MS", "Chalkboard SE", "Comic Neue", cursive;--sp-font-ui: "Trebuchet MS", "Segoe UI", system-ui, sans-serif}#world{display:block;width:100%;height:100%;image-rendering:auto;touch-action:none}#stage[data-mode=playing] #world{cursor:none}.layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.layer[hidden]{display:none}#screens>*{pointer-events:auto}#stage[data-screen=title] #screen-window{position:fixed;top:0;right:0;bottom:0;left:0}:focus-visible{outline:3px solid var(--sp-focus, #ffd27a);outline-offset:2px}#scores .board{position:absolute;right:calc(40px * var(--stage-scale));top:50%;transform:translateY(-50%);width:calc(300px * var(--stage-scale));box-sizing:border-box;padding:0 calc(4px * var(--stage-scale)) calc(2px * var(--stage-scale));border-style:solid;border-width:var(--ui-board-width);border-image-width:var(--ui-board-image-width, 1);border-image-source:var(--ui-board-src);border-image-slice:var(--ui-board-slice);border-image-repeat:var(--ui-board-repeat);color:var(--sp-cream);font-family:var(--sp-font-ui)}#scores .board-title{margin:0 0 calc(10px * var(--stage-scale));font-family:var(--sp-font-display);font-size:max(calc(22px * var(--stage-scale)),13px);font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--sp-amber)}#scores .board-list{margin:0;padding:0;list-style:none;counter-reset:rank;font-size:max(calc(16px * var(--stage-scale)),10px);line-height:1.7}#scores .board-list li{display:flex;gap:calc(12px * var(--stage-scale));counter-increment:rank}#scores .board-list li:before{content:counter(rank) ".";min-width:1.5em;opacity:.7}#scores .board-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#scores .board-score{font-variant-numeric:tabular-nums;color:var(--sp-amber)}#scores .board-note{margin:calc(-6px * var(--stage-scale)) 0 calc(8px * var(--stage-scale));font-size:max(calc(13px * var(--stage-scale)),9px);opacity:.8}#scores .board-empty{margin:0;font-size:max(calc(15px * var(--stage-scale)),10px);opacity:.8}#stage[data-layout=compact] #scores .board,#stage[data-screen=title] #scores .board{right:var(--board-compact-right);width:var(--board-compact-w)}#stage[data-layout=compact] #scores .board-title,#stage[data-screen=title] #scores .board-title{font-size:var(--board-compact-title)}#stage[data-layout=compact] #scores .board-list,#stage[data-layout=compact] #scores .board-empty,#stage[data-screen=title] #scores .board-list,#stage[data-screen=title] #scores .board-empty{font-size:var(--board-compact-row)}#stage[data-layout=compact] #scores .board-list li,#stage[data-screen=title] #scores .board-list li{gap:var(--board-compact-gap)}#stage[data-layout=compact] #scores .board-list li:before,#stage[data-screen=title] #scores .board-list li:before{min-width:var(--board-compact-rank)}#stage[data-layout=compact] #scores .board-note,#stage[data-screen=title] #scores .board-note{font-size:var(--board-compact-note);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#stage[data-layout=compact][data-screen=results]:not([data-sheet=board]) #scores .board,#stage[data-screen=title]:not([data-sheet=board]) #scores .board{display:none}#stage[data-layout=compact][data-sheet=board] #scores .board,#stage[data-screen=title][data-sheet=board] #scores .board{top:var(--board-sheet-gap);bottom:var(--board-sheet-gap);right:auto;left:50%;transform:translate(-50%);z-index:2;overflow-y:auto;pointer-events:auto}#stage[data-screen=title][data-sheet=board] #scores .board{top:calc(var(--board-sheet-gap) + env(safe-area-inset-top,0px));bottom:calc(var(--board-sheet-gap) + env(safe-area-inset-bottom,0px))}#stage[data-layout=compact][data-sheet=board] #scores .board-title,#stage[data-screen=title][data-sheet=board] #scores .board-title{display:flex;align-items:center;min-height:var(--board-control-h)}#rotate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));overflow:auto;background:#000;color:var(--sp-cream);font-family:var(--sp-font-ui);text-align:center}#rotate[hidden]{display:none}#rotate:focus{outline:none}.rotate-panel{max-width:22rem;box-sizing:border-box;padding:4px 8px 10px;border-style:solid;border-width:var(--ui-board-width);border-image-source:var(--ui-board-src);border-image-slice:var(--ui-board-slice);border-image-repeat:var(--ui-board-repeat);background:#000;background-clip:padding-box}.rotate-art{display:block;width:9rem;height:auto;margin:0 auto 6px}.rotate-device{fill:none;stroke:var(--sp-cream);stroke-width:4;stroke-linejoin:round}.rotate-ghost{fill:none;stroke:var(--sp-cream);stroke-width:2;stroke-dasharray:5 4;opacity:.45}.rotate-arrow{fill:none;stroke:var(--sp-amber);stroke-width:4;stroke-linecap:round}.rotate-arrowhead{fill:var(--sp-amber)}.rotate-title{margin:0 0 8px;font-family:var(--sp-font-display);font-size:28px;font-weight:400;letter-spacing:.04em;line-height:1.1;text-transform:uppercase;color:var(--sp-amber)}.rotate-text{margin:0;font-size:17px;line-height:1.4}.rotate-device{transform-box:fill-box;transform-origin:50% 50%;animation:sp-rotate-device 3s ease-in-out infinite}:root[data-reduced-motion=on] .rotate-device{animation:none}@keyframes sp-rotate-device{0%,25%{transform:rotate(0)}50%,80%{transform:rotate(90deg)}to{transform:rotate(0)}}.fullscreen-button{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;margin:0;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.fullscreen-button[hidden]{display:none}.fullscreen-button:focus-visible{outline:3px solid var(--sp-focus);outline-offset:-3px}.fullscreen-button-icon{display:block;pointer-events:none;transition:transform .12s ease-out,filter .12s ease-out}.fullscreen-button:hover .fullscreen-button-icon,.fullscreen-button:focus-visible .fullscreen-button-icon{filter:brightness(1.2)}.fullscreen-button:active .fullscreen-button-icon{transform:scale(.92)}:root[data-reduced-motion=on] .fullscreen-button-icon{transition:none}:root[data-reduced-motion=on] .fullscreen-button:active .fullscreen-button-icon{transform:none}.ui-frame{box-sizing:border-box;border-style:solid}.ui-frame--bar{border-width:var(--ui-bar-width);border-image-width:var(--ui-bar-image-width, 1);border-image-source:var(--ui-bar-src);border-image-slice:var(--ui-bar-slice);border-image-repeat:var(--ui-bar-repeat)}.ui-frame--panel{border-width:var(--ui-panel-width);border-image-width:var(--ui-panel-image-width, 1);border-image-source:var(--ui-panel-src);border-image-slice:var(--ui-panel-slice);border-image-repeat:var(--ui-panel-repeat)}.ui-frame--plate{border-width:var(--ui-plate-width);border-image-width:var(--ui-plate-image-width, 1);border-image-source:var(--ui-plate-src);border-image-slice:var(--ui-plate-slice);border-image-repeat:var(--ui-plate-repeat)}.ui-frame--sign{border-width:var(--ui-sign-width);border-image-width:var(--ui-sign-image-width, 1);border-image-source:var(--ui-sign-src);border-image-slice:var(--ui-sign-slice);border-image-repeat:var(--ui-sign-repeat)}.ui-frame--modal{border-width:var(--ui-modal-width);border-image-width:var(--ui-modal-image-width, 1);border-image-source:var(--ui-modal-src);border-image-slice:var(--ui-modal-slice);border-image-repeat:var(--ui-modal-repeat)}.ui-frame--button{border-width:var(--ui-button-width);border-image-width:var(--ui-button-image-width, 1);border-image-source:var(--ui-button-src);border-image-slice:var(--ui-button-slice);border-image-repeat:var(--ui-button-repeat)}.ui-frame--primary{border-width:var(--ui-primary-width);border-image-width:var(--ui-primary-image-width, 1);border-image-source:var(--ui-primary-src);border-image-slice:var(--ui-primary-slice);border-image-repeat:var(--ui-primary-repeat)}#hud>*{position:absolute}.hud-flag{z-index:1}.hud-logo{display:flex;flex-direction:column;justify-content:center;line-height:1;padding-bottom:calc(8px * var(--stage-scale, 1))}.hud-logo-title{font-family:var(--sp-font-display);letter-spacing:.02em;text-transform:uppercase;color:var(--sp-orange);-webkit-text-stroke:calc(2px * var(--stage-scale, 1)) var(--sp-ink);paint-order:stroke fill;text-shadow:0 calc(3px * var(--stage-scale, 1)) 0 var(--sp-ink);white-space:nowrap}.hud-logo-tag{margin-top:calc(2px * var(--stage-scale, 1));font-family:var(--sp-font-hand);font-weight:700;color:var(--sp-cream);text-transform:uppercase;white-space:nowrap}.hud-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(2px * var(--stage-scale, 1));z-index:1}.hud-label{color:var(--sp-cream);font-family:var(--sp-font-ui);font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase;white-space:nowrap}#stage[data-layout=compact] #hud .hud-logo,#stage[data-layout=compact] #hud .hud-sign{display:none}#stage[data-layout=compact] #hud .hud-panel,#stage[data-layout=compact] #hud .hud-combo-break{flex-direction:row;gap:var(--hud-compact-gap)}.hud-value{display:inline-block;color:var(--sp-amber);font-family:var(--sp-font-digits);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 calc(8px * var(--stage-scale, 1)) rgba(255,159,28,.45);transition:color .4s ease-out}.hud-panel--time.is-urgent .hud-value{color:var(--sp-urgent);text-shadow:0 0 calc(10px * var(--stage-scale, 1)) rgba(255,90,50,.6)}.hud-value.is-tick{animation:sp-clock-tick .32s cubic-bezier(.3,1.6,.5,1) 1}@keyframes sp-clock-tick{0%{transform:scale(1.28)}to{transform:none}}:root[data-reduced-motion=on] .hud-value.is-tick{animation:none}.hud-panel--combo,.hud-combo-shards{--combo-digit: var(--sp-amber);--combo-glow: rgba(255, 159, 28, .45);--combo-pill: transparent;--combo-pill-text: var(--sp-cream);--combo-pill-glow: transparent}.hud-panel--combo[data-level="0"],.hud-combo-shards[data-level="0"]{--combo-pill-text: #a8977a}.hud-panel--combo[data-level="2"],.hud-combo-shards[data-level="2"]{--combo-digit: #ff9f1c;--combo-glow: rgba(255, 159, 28, .6);--combo-pill: var(--sp-amber);--combo-pill-text: var(--sp-ink)}.hud-panel--combo[data-level="3"],.hud-combo-shards[data-level="3"]{--combo-digit: #ff6a3d;--combo-glow: rgba(255, 90, 50, .7);--combo-pill: #ff9f1c;--combo-pill-text: var(--sp-ink)}.hud-panel--combo[data-level="4"],.hud-combo-shards[data-level="4"]{--combo-digit: #fff4d6;--combo-glow: rgba(255, 80, 40, .95);--combo-pill: #ff6a3d;--combo-pill-text: var(--sp-ink);--combo-pill-glow: rgba(255, 80, 40, .8)}.hud-combo-row{display:inline-flex;align-items:center;gap:calc(8px * var(--stage-scale, 1));transform:scale(var(--combo-scale, 1));transition:transform .16s ease-out}.hud-combo-value{color:var(--combo-digit);text-shadow:0 0 calc(12px * var(--stage-scale, 1)) var(--combo-glow)}.hud-combo-value:empty{display:none}.hud-combo-mult{padding:.06em .28em;border-radius:.3em;background:var(--combo-pill);box-shadow:0 0 calc(12px * var(--stage-scale, 1)) var(--combo-pill-glow);color:var(--combo-pill-text);font-family:var(--sp-font-display);letter-spacing:.02em;line-height:1;transition:background-color .2s ease-out,color .2s ease-out}.hud-combo-row.is-punch{animation:sp-combo-punch var(--combo-punch-ms, .26s) cubic-bezier(.2,1.6,.4,1) 1 both}@keyframes sp-combo-punch{0%{transform:scale(calc(var(--combo-scale, 1) * 1.7))}to{transform:scale(var(--combo-scale, 1))}}.hud-combo-burst,.hud-combo-break{z-index:2;pointer-events:none}.hud-combo-spark,.hud-combo-flare,.hud-combo-skull{position:absolute;display:block;opacity:0;transform:translate(-50%,-50%)}.hud-combo-flare{mix-blend-mode:screen}.hud-combo-burst.is-bursting .hud-combo-spark{animation:sp-combo-spark var(--combo-burst-ms, .9s) cubic-bezier(.2,.9,.3,1) both}@keyframes sp-combo-spark{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-40deg)}35%{opacity:1;transform:translate(-50%,-50%) scale(1.35) rotate(10deg)}to{opacity:0;transform:translate(-50%,-50%) scale(.9) rotate(30deg)}}.hud-combo-burst.is-bursting .hud-combo-flare{animation:sp-combo-flare calc(var(--combo-burst-ms, .9s) * .6) ease-out both}@keyframes sp-combo-flare{0%{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(0)}30%{opacity:.9;transform:translate(-50%,-50%) scale(1.35) rotate(25deg)}to{opacity:0;transform:translate(-50%,-50%) scale(1.1) rotate(60deg)}}.hud-combo-break{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(2px * var(--stage-scale, 1));box-sizing:border-box}.hud-combo-spacer{visibility:hidden}.hud-combo-shards{position:relative;display:inline-grid}.hud-combo-shard{grid-area:1 / 1;opacity:0}.hud-combo-shard--l{clip-path:polygon(0 0,56% 0,44% 100%,0 100%)}.hud-combo-shard--r{clip-path:polygon(56% 0,100% 0,100% 100%,44% 100%)}.hud-combo-break.is-breaking .hud-combo-shard--l{animation:sp-combo-shard-l var(--combo-break-ms, .56s) cubic-bezier(.5,0,.9,.5) both}.hud-combo-break.is-breaking .hud-combo-shard--r{animation:sp-combo-shard-r var(--combo-break-ms, .56s) cubic-bezier(.5,0,.9,.5) both}@keyframes sp-combo-shard-l{0%{opacity:1;transform:scale(var(--combo-scale, 1))}20%{opacity:1;transform:translate(calc(-4px * var(--stage-scale, 1)),calc(-3px * var(--stage-scale, 1))) rotate(-6deg) scale(var(--combo-scale, 1))}to{opacity:0;transform:translate(calc(-22px * var(--stage-scale, 1)),calc(18px * var(--stage-scale, 1))) rotate(-28deg) scale(calc(var(--combo-scale, 1) * .8))}}@keyframes sp-combo-shard-r{0%{opacity:1;transform:scale(var(--combo-scale, 1))}20%{opacity:1;transform:translate(calc(4px * var(--stage-scale, 1)),calc(-2px * var(--stage-scale, 1))) rotate(7deg) scale(var(--combo-scale, 1))}to{opacity:0;transform:translate(calc(24px * var(--stage-scale, 1)),calc(16px * var(--stage-scale, 1))) rotate(32deg) scale(calc(var(--combo-scale, 1) * .8))}}.hud-combo-skull{left:50%;top:50%}.hud-combo-break.is-breaking .hud-combo-skull{animation:sp-combo-skull var(--combo-break-ms, .56s) ease-out both}@keyframes sp-combo-skull{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-30%) scale(.9)}}.hud-panel--combo.is-breaking .hud-combo-live{animation:sp-combo-return var(--combo-break-ms, .56s) ease-in both}@keyframes sp-combo-return{0%,60%{opacity:0}to{opacity:1}}:root[data-reduced-motion=on] .hud-combo-row.is-punch,:root[data-reduced-motion=on] .hud-combo-burst.is-bursting .hud-combo-spark,:root[data-reduced-motion=on] .hud-combo-burst.is-bursting .hud-combo-flare,:root[data-reduced-motion=on] .hud-combo-break.is-breaking .hud-combo-shard--l,:root[data-reduced-motion=on] .hud-combo-break.is-breaking .hud-combo-shard--r,:root[data-reduced-motion=on] .hud-combo-break.is-breaking .hud-combo-skull,:root[data-reduced-motion=on] .hud-panel--combo.is-breaking .hud-combo-live{animation:none}:root[data-reduced-motion=on] .hud-combo-row{transition:none}#hud{--ammo-scale: var(--stage-scale, 1)}@media(pointer:coarse){#hud{--ammo-scale: max(var(--stage-scale, 1), var(--ammo-touch-scale, .72))}}:root[data-touch=on] #hud{--ammo-scale: max(var(--stage-scale, 1), var(--ammo-touch-scale, .72))}.hud-ammo{display:flex;align-items:center;justify-content:center;padding:0;margin:0;background:none;font:inherit;pointer-events:none;touch-action:none;-webkit-tap-highlight-color:transparent;cursor:default}@media(pointer:coarse){#hud .hud-ammo{pointer-events:auto;cursor:pointer}}:root[data-touch=on] #hud .hud-ammo{pointer-events:auto;cursor:pointer}.hud-rounds{display:flex;align-items:flex-end}.hud-round{position:relative;display:block;flex:none}.hud-round-live,.hud-round-fly{position:absolute;left:0;top:0}.hud-round[data-state=spent] .hud-round-live{visibility:hidden}.hud-round-fly{opacity:0;pointer-events:none}.hud-round-fly.is-popping{animation-name:sp-round-pop;animation-timing-function:cubic-bezier(.2,.7,.4,1);animation-fill-mode:both}@keyframes sp-round-pop{0%{opacity:1;transform:none}35%{opacity:1;transform:translate(calc(14px * var(--ammo-scale)),calc(-38px * var(--ammo-scale))) rotate(120deg)}to{opacity:0;transform:translate(calc(40px * var(--ammo-scale)),calc(-16px * var(--ammo-scale))) rotate(330deg)}}.hud-round-fly.is-popping.is-popping-empty{filter:brightness(1.8) drop-shadow(0 0 calc(4px * var(--ammo-scale)) var(--sp-amber))}.hud-round-live.is-refilling{animation-name:sp-round-in;animation-timing-function:ease-out;animation-fill-mode:both}@keyframes sp-round-in{0%{opacity:0;transform:translateY(-40%) scale(1.25)}to{opacity:1;transform:none}}.hud-ammo-hint{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:none;align-items:center;justify-content:center;pointer-events:none}.hud-ammo-hint>span{padding:.2em .6em;border-radius:.4em;background:#140c06db;color:var(--sp-cream);font-family:var(--sp-font-ui);font-weight:700;letter-spacing:.08em;line-height:1;text-transform:uppercase;white-space:nowrap}.hud-ammo.is-empty .hud-ammo-hint{display:flex}.hud-ammo-hint-touch{display:none}@media(pointer:coarse){#hud .hud-ammo-hint-touch{display:inline}#hud .hud-ammo-hint-desk{display:none}}:root[data-touch=on] #hud .hud-ammo-hint-touch{display:inline}:root[data-touch=on] #hud .hud-ammo-hint-desk{display:none}.hud-ammo.is-reloading .hud-rounds{opacity:.75}.hud-ammo.is-pressed{box-shadow:0 0 0 calc(3px * var(--ammo-scale)) var(--sp-amber);filter:brightness(1.2);transform:translateY(1px)}.hud-ammo:after{content:"";position:absolute;inset:calc(-1 * var(--ammo-rim, 0px));border-radius:calc(6px * var(--ammo-scale));background:var(--sp-hazard);opacity:0;pointer-events:none}@keyframes sp-dry-flash{0%,to{box-shadow:none}30%{box-shadow:0 0 0 calc(4px * var(--ammo-scale)) var(--sp-hazard),0 0 calc(18px * var(--ammo-scale)) var(--sp-hazard)}}@keyframes sp-dry-wash{0%,to{opacity:0}30%{opacity:.5}}.hud-ammo.is-dry-flash{animation-name:sp-dry-flash;animation-timing-function:ease-out}.hud-ammo.is-dry-flash:after{animation-name:sp-dry-wash;animation-duration:inherit;animation-timing-function:ease-out}:root[data-reduced-motion=on] .hud-ammo.is-dry-flash,:root[data-reduced-motion=on] .hud-ammo.is-dry-flash:after,:root[data-reduced-motion=on] .hud-round-fly.is-popping,:root[data-reduced-motion=on] .hud-round-live.is-refilling{animation:none}:root[data-reduced-motion=on] .hud-ammo.is-dry{box-shadow:0 0 0 calc(4px * var(--ammo-scale)) var(--sp-hazard)}:root[data-reduced-motion=on] .hud-ammo.is-dry:after{opacity:.4}:root[data-reduced-motion=on] .hud-ammo.is-pressed{transform:none}.hud-sign{display:flex;align-items:center;justify-content:center}.hud-sign:before,.hud-sign:after{content:"";position:absolute;top:calc(-40px * var(--stage-scale, 1));width:calc(4px * var(--stage-scale, 1));height:calc(48px * var(--stage-scale, 1));background:linear-gradient(90deg,#5a3a1c,#a5773f 50%,#5a3a1c);border-radius:calc(2px * var(--stage-scale, 1))}.hud-sign:before{left:16%}.hud-sign:after{right:16%}.hud-sign-text{margin:0;font-family:var(--sp-font-hand);font-weight:700;line-height:1.1;color:var(--sp-ink);text-align:center;text-transform:uppercase}.hud-esc{display:flex;align-items:center;gap:calc(12px * var(--stage-scale, 1));padding-left:calc(2px * var(--stage-scale, 1))}.hud-key{display:inline-flex;align-items:center;justify-content:center;flex:none;font-family:var(--sp-font-ui);font-weight:700;color:var(--sp-cream);text-transform:uppercase;text-shadow:0 1px 2px var(--sp-ink)}.hud-esc-label{font-family:var(--sp-font-ui);font-weight:700;letter-spacing:.08em;color:var(--sp-cream);text-transform:uppercase}#stage:not([data-mode=playing]) .hud-esc{display:none}.hud-touch{display:none;align-items:center;justify-content:center;width:var(--touch-w);height:var(--touch-h);bottom:var(--touch-gap);padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;z-index:2}.hud-touch--left{left:var(--touch-left, var(--touch-gap))}.hud-touch-icon{display:block;flex:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.9)) drop-shadow(0 0 6px rgba(0,0,0,.6))}@media(pointer:coarse){#stage[data-mode=playing] #hud .hud-touch{display:flex}#hud .hud-esc{display:none}}:root[data-touch=on] #stage[data-mode=playing] #hud .hud-touch{display:flex}:root[data-touch=on] #hud .hud-esc{display:none}.hud-touch.is-pressed .hud-touch-icon,.hud-touch:active .hud-touch-icon{filter:brightness(1.3) drop-shadow(0 1px 2px rgba(0,0,0,.9)) drop-shadow(0 0 6px rgba(0,0,0,.6));transform:scale(.92)}:root[data-reduced-motion=on] .hud-touch.is-pressed .hud-touch-icon,:root[data-reduced-motion=on] .hud-touch:active .hud-touch-icon{transform:none}.pan-arrows{display:none}@media(pointer:coarse){body:has(#stage[data-mode=playing]) .pan-arrows{display:block}}:root[data-touch=on] body:has(#stage[data-mode=playing]) .pan-arrows{display:block}.pan-arrow{position:fixed;overflow:visible;pointer-events:none;opacity:var(--pan-alpha, .35);transition:opacity .12s ease-out;animation:sp-pan-hint var(--pan-pulse-ms) ease-in-out var(--pan-pulse-count)}.pan-arrow--right{transform:scaleX(-1)}.pan-arrow-ink,.pan-arrow-glow{fill:none;stroke-linecap:round;stroke-linejoin:round}.pan-arrow-ink{stroke:var(--sp-ink);stroke-width:11}.pan-arrow-glow{stroke:var(--sp-amber);stroke-width:5}@keyframes sp-pan-hint{50%{opacity:.9}}.hud-shotgun{display:none;align-items:center;justify-content:center;pointer-events:none}.hud-ammo.is-shotgun .hud-shotgun{display:flex}.hud-ammo.is-shotgun .hud-rounds,.hud-ammo.is-shotgun .hud-ammo-hint{display:none}.hud-ammo.is-shotgun{cursor:default}.hud-shotgun-gun,.hud-shotgun-ring{display:block;flex:none}.hud-shotgun-ring{overflow:visible}.hud-shotgun-gun{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.hud-shotgun-track{fill:none;stroke:#e7d5b433}.hud-shotgun-drain{fill:none;stroke:var(--sp-amber);stroke-linecap:round}.hud-shotgun-inf{fill:var(--sp-amber);font-family:var(--sp-font-digits);font-weight:700}.hud-shotgun.is-ending{animation:sp-shotgun-blink var(--shotgun-blink-ms, .4s) ease-in-out infinite}.hud-shotgun.is-ending .hud-shotgun-drain{stroke:var(--sp-urgent)}.hud-shotgun.is-ending .hud-shotgun-inf{fill:var(--sp-urgent)}@keyframes sp-shotgun-blink{50%{opacity:.35}}.hud-powerup{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease-out,visibility 0s linear .2s}.hud-powerup.is-on{opacity:1;visibility:visible;transition:none}.hud-powerup.is-punch{animation:sp-punch .28s cubic-bezier(.2,1.6,.4,1) 1 both}.hud-powerup-art{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;object-fit:contain}.hud-powerup-text{position:absolute;top:34%;right:20%;bottom:34%;left:20%;display:flex;align-items:center;justify-content:center;font-family:var(--sp-font-display);letter-spacing:.04em;color:var(--sp-ink);text-transform:uppercase;white-space:nowrap}:root[data-reduced-motion=on] .hud-shotgun.is-ending,:root[data-reduced-motion=on] .hud-powerup.is-punch{animation:none}:root[data-reduced-motion=on] .hud-powerup{transition:none}:root[data-reduced-motion=on] .pan-arrow{animation:none;transition:none}.crate-timer{left:0;top:0;display:flex;align-items:center;justify-content:center;gap:calc(6px * var(--stage-scale, 1));pointer-events:none}.crate-timer[hidden]{display:none}.crate-timer[data-mode=right]{flex-direction:row-reverse}.crate-timer-digits{color:var(--sp-amber);font-family:var(--sp-font-digits);font-weight:700;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 calc(8px * var(--stage-scale, 1)) rgba(255,159,28,.45)}.crate-timer.is-urgent .crate-timer-digits{color:var(--sp-urgent);text-shadow:0 0 calc(10px * var(--stage-scale, 1)) rgba(255,90,50,.6);animation:sp-crate-pulse var(--crate-pulse-ms, .5s) ease-in-out infinite}@keyframes sp-crate-pulse{50%{opacity:.55;transform:scale(1.15)}}.crate-timer-arrow{display:none;flex:none;overflow:visible}.crate-timer[data-mode=left] .crate-timer-arrow,.crate-timer[data-mode=right] .crate-timer-arrow{display:block}.crate-timer[data-mode=right] .crate-timer-arrow{transform:scaleX(-1)}.crate-timer-arrow-ink,.crate-timer-arrow-glow{fill:none;stroke-linecap:round;stroke-linejoin:round}.crate-timer-arrow-ink{stroke:var(--sp-ink);stroke-width:11}.crate-timer-arrow-glow{stroke:var(--sp-amber);stroke-width:5}:root[data-reduced-motion=on] .crate-timer.is-urgent .crate-timer-digits{animation:none}.hud-countdown{top:0;right:0;bottom:0;left:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease-out,visibility 0s linear .15s}.hud-countdown.is-on{opacity:1;visibility:visible;transition:none}.hud-countdown>*{position:absolute}.hud-countdown-art,.hud-countdown-banner-art{display:block;width:100%;height:100%;object-fit:contain}.hud-countdown-banner-art{position:absolute;top:0;right:0;bottom:0;left:0}.hud-countdown-text{position:absolute;top:34%;right:22%;bottom:34%;left:22%;display:flex;align-items:center;justify-content:center;font-family:var(--sp-font-display);letter-spacing:.04em;color:var(--sp-ink);text-transform:uppercase;white-space:nowrap}.hud-countdown-beat{display:flex;align-items:center;justify-content:center;font-family:var(--sp-font-display);line-height:1;color:var(--sp-amber);-webkit-text-stroke:calc(8px * var(--stage-scale, 1)) var(--sp-ink);paint-order:stroke fill;text-shadow:0 calc(6px * var(--stage-scale, 1)) 0 var(--sp-ink),0 0 calc(30px * var(--stage-scale, 1)) rgba(255,159,28,.55)}.hud-countdown-beat.is-punch,.hud-countdown-banner.is-punch{animation:sp-punch .28s cubic-bezier(.2,1.6,.4,1) 1 both}@keyframes sp-punch{0%{opacity:0;transform:scale(2.1)}45%{opacity:1}to{opacity:1;transform:none}}:root[data-reduced-motion=on] .hud-countdown-beat.is-punch,:root[data-reduced-motion=on] .hud-countdown-banner.is-punch{animation:none}:root[data-reduced-motion=on] .hud-countdown{transition:none}.boss-alert{left:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(4px * var(--stage-scale, 1));pointer-events:none;--boss-stripe-a: var(--sp-amber);--boss-stripe-b: var(--sp-ink);--boss-title: var(--sp-urgent);--boss-glow: rgba(255, 90, 50, .7)}.boss-alert[hidden]{display:none}.boss-alert[data-kind=victory]{--boss-stripe-a: #f5b657;--boss-stripe-b: #5a3413;--boss-title: var(--sp-amber);--boss-glow: rgba(255, 181, 52, .75)}.boss-alert-plate{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#17161b80,#17161bd6 22%,#17161bd6 78%,#17161b80)}.boss-alert-stripe{position:absolute;left:0;right:0;height:var(--boss-stripe);background-image:repeating-linear-gradient(-45deg,var(--boss-stripe-a) 0 calc(22px * var(--stage-scale, 1)),var(--boss-stripe-b) 0 calc(44px * var(--stage-scale, 1)));box-shadow:0 0 calc(10px * var(--stage-scale, 1)) #00000073}.boss-alert-stripe--top{top:calc(-1 * var(--boss-stripe))}.boss-alert-stripe--bottom{bottom:calc(-1 * var(--boss-stripe))}.boss-alert-title,.boss-alert-line{position:relative;font-family:var(--sp-font-display);line-height:1;text-transform:uppercase;white-space:nowrap;paint-order:stroke fill}.boss-alert-title{color:var(--boss-title);letter-spacing:.05em;-webkit-text-stroke:calc(7px * var(--stage-scale, 1)) var(--sp-ink);text-shadow:0 calc(5px * var(--stage-scale, 1)) 0 var(--sp-ink),0 0 calc(26px * var(--stage-scale, 1)) var(--boss-glow)}.boss-alert-line{color:var(--sp-cream);letter-spacing:.14em;-webkit-text-stroke:calc(4px * var(--stage-scale, 1)) var(--sp-ink)}.boss-alert.is-on .boss-alert-plate{animation:sp-boss-open .26s cubic-bezier(.2,1.5,.4,1) both}.boss-alert.is-on .boss-alert-stripe--top{animation:sp-boss-race-l .3s cubic-bezier(.2,.9,.3,1) both,sp-boss-crawl .7s linear .3s infinite}.boss-alert.is-on .boss-alert-stripe--bottom{animation:sp-boss-race-r .3s cubic-bezier(.2,.9,.3,1) both,sp-boss-crawl .7s linear .3s infinite reverse}.boss-alert.is-on .boss-alert-title{animation:sp-boss-slam .42s cubic-bezier(.2,1.3,.4,1) .11s both,sp-boss-jolt .26s linear .4s,sp-boss-pulse var(--boss-pulse-ms, .55s) ease-in-out .66s 3}.boss-alert.is-on .boss-alert-line{animation:sp-boss-fan .38s cubic-bezier(.2,.8,.3,1) .36s both}.boss-alert.is-out .boss-alert-plate{animation:sp-boss-fold var(--boss-out-ms, .32s) ease-in both}.boss-alert.is-out .boss-alert-stripe--top{animation:sp-boss-leave-l var(--boss-out-ms, .32s) ease-in both}.boss-alert.is-out .boss-alert-stripe--bottom{animation:sp-boss-leave-r var(--boss-out-ms, .32s) ease-in both}.boss-alert.is-out .boss-alert-title,.boss-alert.is-out .boss-alert-line{animation:sp-boss-lift var(--boss-out-ms, .32s) ease-in both}@keyframes sp-boss-open{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:none}}@keyframes sp-boss-race-l{0%{transform:translate(-100%)}to{transform:none}}@keyframes sp-boss-race-r{0%{transform:translate(100%)}to{transform:none}}@keyframes sp-boss-crawl{0%{background-position:0 0}to{background-position:calc(62.2px * var(--stage-scale, 1)) 0}}@keyframes sp-boss-slam{0%{opacity:0;transform:scale(3.2)}55%{opacity:1;transform:scale(.9)}78%{transform:scale(1.06)}to{opacity:1;transform:none}}@keyframes sp-boss-jolt{0%,to{translate:0 0}20%{translate:calc(-7px * var(--stage-scale, 1)) calc(3px * var(--stage-scale, 1))}45%{translate:calc(6px * var(--stage-scale, 1)) calc(-4px * var(--stage-scale, 1))}70%{translate:calc(-3px * var(--stage-scale, 1)) calc(2px * var(--stage-scale, 1))}}@keyframes sp-boss-pulse{50%{color:var(--sp-button-text);scale:1.06}}@keyframes sp-boss-fan{0%{opacity:0;letter-spacing:.6em;transform:translateY(35%)}to{opacity:1;letter-spacing:.14em;transform:none}}@keyframes sp-boss-fold{0%{opacity:1;transform:none}to{opacity:0;transform:scaleY(0)}}@keyframes sp-boss-leave-l{0%{opacity:1;transform:none}to{opacity:0;transform:translate(60%)}}@keyframes sp-boss-leave-r{0%{opacity:1;transform:none}to{opacity:0;transform:translate(-60%)}}@keyframes sp-boss-lift{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-45%)}}:root[data-reduced-motion=on] .boss-alert.is-on .boss-alert-plate,:root[data-reduced-motion=on] .boss-alert.is-on .boss-alert-stripe--top,:root[data-reduced-motion=on] .boss-alert.is-on .boss-alert-stripe--bottom,:root[data-reduced-motion=on] .boss-alert.is-on .boss-alert-title,:root[data-reduced-motion=on] .boss-alert.is-on .boss-alert-line,:root[data-reduced-motion=on] .boss-alert.is-out .boss-alert-plate,:root[data-reduced-motion=on] .boss-alert.is-out .boss-alert-stripe--top,:root[data-reduced-motion=on] .boss-alert.is-out .boss-alert-stripe--bottom,:root[data-reduced-motion=on] .boss-alert.is-out .boss-alert-title,:root[data-reduced-motion=on] .boss-alert.is-out .boss-alert-line{animation:none}.sp-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;box-sizing:border-box;padding:var(--sp-pad-y) var(--sp-pad-x);overflow-y:auto;background:#080e1ecc}.sp-column{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:calc(14px * var(--stage-scale, 1));width:100%;max-width:var(--sp-column-max);height:100%;color:var(--sp-cream);font-family:var(--sp-font-ui);text-align:center}.sp-icon{display:inline-block;flex:none;vertical-align:middle}.sp-sparkle{position:absolute;display:block;transform:translate(-50%,-50%);pointer-events:none}.sp-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;background:none;color:var(--sp-button-text);font-family:var(--sp-font-display);font-weight:400;letter-spacing:.06em;line-height:1;text-transform:uppercase;cursor:pointer}.sp-button--primary{--sp-glow-lo: drop-shadow(0 0 calc(8px * var(--stage-scale, 1)) rgba(255, 159, 28, .5));--sp-glow-hi: drop-shadow(0 0 calc(26px * var(--stage-scale, 1)) rgba(255, 159, 28, .85));--sp-ring: brightness(1);--sp-tone-k: 1;--sp-tone: brightness(var(--sp-tone-k));padding:0 calc(44px * var(--stage-scale, 1));letter-spacing:.08em;text-shadow:0 calc(2px * var(--stage-scale, 1)) 0 var(--sp-ink)}.sp-button--primary:not(:disabled){position:relative;isolation:isolate;border-image-source:none;border-color:transparent}.sp-button--primary:not(:disabled):before,.sp-button--primary:not(:disabled):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-style:solid;border-width:0;border-image-source:var(--ui-primary-src);border-image-slice:var(--ui-primary-slice);border-image-width:var(--ui-primary-image-width, var(--ui-primary-width));border-image-outset:var(--ui-primary-width);border-image-repeat:var(--ui-primary-repeat);pointer-events:none}.sp-button--primary:not(:disabled):before{filter:var(--sp-tone) var(--sp-ring) var(--sp-glow-lo)}.sp-button--primary:not(:disabled):after{filter:var(--sp-tone) var(--sp-ring) var(--sp-glow-hi);opacity:0;animation:sp-breathe-in 2.4s ease-in-out infinite}@keyframes sp-breathe-in{0%,to{opacity:0}50%{opacity:1}}.sp-button:disabled{cursor:default;border-width:var(--ui-buttonOff-width);border-image-width:var(--ui-buttonOff-image-width, 1);border-image-source:var(--ui-buttonOff-src);border-image-slice:var(--ui-buttonOff-slice);border-image-repeat:var(--ui-buttonOff-repeat);color:var(--sp-cream)}.sp-button:not(:disabled):hover{filter:brightness(1.15)}.sp-button:not(:disabled):active{filter:brightness(.92);transform:translateY(1px)}.sp-button--primary:not(:disabled),.sp-button--primary:not(:disabled):hover,.sp-button--primary:not(:disabled):active{filter:none}.sp-button--primary:not(:disabled):hover{--sp-tone-k: 1.15}.sp-button--primary:not(:disabled):active{--sp-tone-k: .92}@supports (color: rgb(from red r g b)){.sp-button--primary:not(:disabled){color:rgb(from var(--sp-button-text) calc(r * var(--sp-tone-k)) calc(g * var(--sp-tone-k)) calc(b * var(--sp-tone-k)));text-shadow:0 calc(2px * var(--stage-scale, 1)) 0 rgb(from var(--sp-ink) calc(r * var(--sp-tone-k)) calc(g * var(--sp-tone-k)) calc(b * var(--sp-tone-k)))}}#screens :focus-visible{outline:max(calc(3px * var(--stage-scale, 1)),2px) solid var(--sp-focus);outline-offset:max(calc(3px * var(--stage-scale, 1)),2px);box-shadow:0 0 0 max(calc(6px * var(--stage-scale, 1)),4px) var(--sp-ink)}#screens .sp-button--primary:focus-visible{--sp-ring-w: calc(6px * var(--stage-scale, 1) + 2px);--sp-ring: drop-shadow(var(--sp-ring-w) 0 0 var(--sp-focus)) drop-shadow(calc(-1 * var(--sp-ring-w)) 0 0 var(--sp-focus)) drop-shadow(0 var(--sp-ring-w) 0 var(--sp-focus)) drop-shadow(0 calc(-1 * var(--sp-ring-w)) 0 var(--sp-focus)) drop-shadow(0 0 calc(3px * var(--stage-scale, 1)) var(--sp-ink));outline:none;box-shadow:none}.sp-options{flex:none;display:flex;flex-direction:column;align-items:center;gap:var(--sp-corner-gap)}.sp-options-row{display:flex;justify-content:center;gap:var(--sp-corner-gap)}.sp-option{display:flex;align-items:center;gap:calc(10px * var(--stage-scale, 1));padding:0 calc(14px * var(--stage-scale, 1));white-space:nowrap;cursor:pointer}.sp-option.is-silenced{opacity:.7}.sp-option.is-blocked{cursor:default;opacity:.7}.sp-options-note{margin:0;line-height:1.2;opacity:.85}.sp-options-note[hidden]{display:none}.sp-setting-box{width:max(calc(22px * var(--stage-scale, 1)),18px);height:max(calc(22px * var(--stage-scale, 1)),18px);margin:0;accent-color:var(--sp-amber)}.sp-backdrop--title{background:#000;overflow:hidden auto;padding:calc(var(--sp-pad-y) + env(safe-area-inset-top,0px)) calc(var(--sp-pad-x) + env(safe-area-inset-right,0px)) calc(var(--sp-pad-y) + env(safe-area-inset-bottom,0px)) calc(var(--sp-pad-x) + env(safe-area-inset-left,0px))}.sp-keyart{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;container-type:size}.sp-keyart-plane{position:absolute;width:max(100cqw,100cqh * var(--sp-view-aspect));height:max(100cqh,100cqw / var(--sp-view-aspect));left:calc(50% - (max(100cqw,100cqh * var(--sp-view-aspect))/2));top:calc(50% - (max(100cqh,100cqw / var(--sp-view-aspect))/2))}.sp-keyart-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.sp-ambience{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.sp-keyart-backdrop,.sp-ambience{animation:sp-drift 28s ease-in-out infinite alternate}@keyframes sp-drift{0%{transform:scale(1.02) translate(-.6%) translateZ(1px)}to{transform:scale(1.08) translate(.6%) translateZ(1px)}}.sp-backdrop--title:after{content:"";position:absolute;left:0;right:0;bottom:0;height:calc(var(--sp-foot-solid) + var(--sp-foot-fade));background:linear-gradient(to top,rgba(0,0,0,.4) var(--sp-foot-solid),rgba(0,0,0,0));pointer-events:none}.sp-keyart-plane:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 70% 65% at 50% 42%,transparent 40%,rgba(0,0,0,.6) 100%);pointer-events:none}.sp-column--title{box-sizing:border-box;gap:0;max-width:none;padding-bottom:calc(var(--sp-credits-h) + var(--sp-credits-gap))}.sp-column--title:before,.sp-column--title:after{content:"";flex:var(--sp-title-above) 1 0}.sp-column--title:after{flex-grow:var(--sp-title-between);order:1;min-height:var(--sp-title-box-gap)}.sp-logo{flex:0 1 var(--sp-logo-h);display:flex;justify-content:center;width:100%;min-height:calc(90px * var(--stage-scale, 1))}.sp-logo-plate{position:relative;height:100%;max-width:100%;animation:sp-bob 4.5s ease-in-out infinite}@keyframes sp-bob{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-7px * var(--stage-scale, 1)))}}.sp-logo-art{position:relative;display:block;width:100%;height:100%;object-fit:contain}.sp-logo-shadow{position:absolute;pointer-events:none}.sp-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.sp-sparkles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sp-sparkles .sp-sparkle{animation:sp-twinkle 3.2s ease-in-out var(--sp-delay, 0ms) infinite both}@keyframes sp-twinkle{0%,to{opacity:.15;transform:translate(-50%,-50%) scale(.6) rotate(0)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(20deg)}}.sp-column--title .sp-button--primary{margin-top:var(--sp-title-start-gap)}.sp-menu{flex:none;display:flex;flex-wrap:nowrap;align-items:stretch;justify-content:center;gap:var(--sp-title-menu-item-gap);margin-top:var(--sp-title-menu-gap)}.sp-button--menu{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;padding:0 calc(18px * var(--stage-scale, 1));text-decoration:none}.sp-button--menu[hidden]{display:none}.sp-menu-label{display:inline-flex;align-items:center;gap:calc(10px * var(--stage-scale, 1))}.sp-menu-glyph{flex:none;width:calc(34px * var(--stage-scale, 1));height:calc(34px * var(--stage-scale, 1));fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.sp-menu-note{margin-top:calc(2px * var(--stage-scale, 1));font-family:var(--sp-font-ui);letter-spacing:0;line-height:1.2;text-transform:none}.sp-howto{flex:none;order:2;display:flex;flex-direction:column;align-items:center;gap:calc(6px * var(--stage-scale, 1));max-width:min(100%,var(--sp-column-max));padding:calc(6px * var(--stage-scale, 1)) calc(18px * var(--stage-scale, 1))}.sp-pitch{margin:0;font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--sp-amber)}.sp-controls{display:flex;flex-direction:column;gap:calc(6px * var(--stage-scale, 1));margin:0;padding:0;list-style:none;line-height:1.4}.sp-corner{position:absolute;left:0;bottom:0;display:flex;align-items:stretch;gap:var(--sp-corner-gap)}.sp-button--gear{display:block;width:var(--sp-corner-h);height:var(--sp-corner-h);padding:0;border:0;border-radius:50%}.sp-gear-art{display:block;width:100%;height:100%;pointer-events:none}.sp-button--corner{display:inline-flex;align-items:center;justify-content:center;padding:0 calc(14px * var(--stage-scale, 1));color:var(--sp-cream);font-family:var(--sp-font-ui);letter-spacing:normal;text-transform:none;white-space:nowrap}.sp-credits{position:absolute;left:0;right:0;bottom:0;margin:0;line-height:var(--sp-credits-line);opacity:.85;text-shadow:0 0 calc(4px * var(--stage-scale, 1)) var(--sp-ink);white-space:nowrap}.sp-credit-link{color:inherit;text-decoration:underline;text-underline-offset:.15em;padding-top:.15em;padding-bottom:.65em}.sp-controls li{display:flex;align-items:center;justify-content:center;gap:calc(10px * var(--stage-scale, 1))}.sp-controls li.sp-controls-touch{display:none}@media(pointer:coarse){.sp-controls li.sp-controls-touch{display:flex}.sp-controls li.sp-controls-desk{display:none}}:root[data-touch=on] .sp-controls li.sp-controls-touch{display:flex}:root[data-touch=on] .sp-controls li.sp-controls-desk{display:none}.sp-backdrop--pause .sp-column{justify-content:center}.sp-column--pause{max-width:none}.sp-panel{display:flex;flex-direction:column;align-items:center;gap:calc(16px * var(--stage-scale, 1));box-sizing:border-box;width:max-content;max-width:100%;padding:0 calc(8px * var(--stage-scale, 1)) calc(8px * var(--stage-scale, 1))}.sp-title{display:flex;align-items:center;justify-content:center;gap:calc(12px * var(--stage-scale, 1));margin:0;font-family:var(--sp-font-display);font-weight:400;letter-spacing:.04em;text-transform:uppercase;color:var(--sp-amber);text-shadow:0 calc(3px * var(--stage-scale, 1)) 0 var(--sp-ink)}.sp-text{margin:0;line-height:1.4}.sp-button--restart{display:inline-flex;align-items:center;gap:calc(10px * var(--stage-scale, 1));padding:0 calc(18px * var(--stage-scale, 1))}.sp-backdrop--results.is-new-best{background:radial-gradient(ellipse 60% 55% at 45% 38%,rgba(255,159,28,.22),transparent 70%),#080e1ecc}.sp-column--results{box-sizing:border-box;max-width:none;padding-top:var(--sp-results-top);padding-bottom:calc(var(--sp-corner-h) + var(--sp-title-box-gap))}.sp-column--results>.sp-results-row{margin-top:auto}.sp-column--results>.sp-actions{margin-bottom:auto}.sp-results-row{flex:none;display:grid;grid-template-columns:var(--sp-results-side) var(--sp-results-board) var(--sp-results-side);grid-template-areas:". verdict ." "hero board .";align-items:center;column-gap:calc(18px * var(--stage-scale, 1));row-gap:calc(14px * var(--stage-scale, 1))}.sp-results-row>.sp-board{grid-area:board}.sp-results-row>.sp-verdict-box{grid-area:verdict}.sp-results-art{grid-area:hero;justify-self:end;width:var(--sp-results-hero);height:auto;animation:sp-fly-in .75s cubic-bezier(.2,.8,.3,1) both,sp-hover 3.4s ease-in-out .75s infinite}@keyframes sp-fly-in{0%{opacity:0;transform:translate(-45%,18%) rotate(-10deg) scale(.8)}to{opacity:1;transform:none}}@keyframes sp-hover{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(calc(-9px * var(--stage-scale, 1))) rotate(-1.5deg)}}.sp-ledger{grid-area:hero;justify-self:end;align-self:center;box-sizing:border-box;width:var(--sp-results-hero);overflow:hidden;display:flex;flex-direction:column;padding:calc(4px * var(--stage-scale, 1)) calc(6px * var(--stage-scale, 1));visibility:hidden;color:var(--sp-ink)}.sp-show .sp-ledger,.sp-results-row.is-ledger-open>.sp-ledger{visibility:visible}.sp-results-row.is-ledger-open>.sp-results-art{visibility:hidden}.sp-ledger-head{flex:none;margin:0 0 .15em;font-family:var(--sp-font-display);font-weight:400;line-height:1.15;letter-spacing:.08em;text-align:center}.sp-ledger-view{position:relative;flex:1 1 0;min-height:0;overflow-y:auto;scrollbar-width:thin;font-family:var(--sp-font-hand)}.sp-show .sp-ledger-view{overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent)}.sp-show .sp-ledger-view:before{content:"";position:absolute;left:0;right:0;top:var(--sp-ledger-line);height:1.4em;translate:0 -50%;background:#ffb5344d;border-block:1px solid rgba(43,26,12,.35)}.sp-ledger-rows{position:relative;margin:0;padding:0;list-style:none}.sp-show .sp-ledger-rows{will-change:transform}.sp-ledger-row{position:relative;display:flex;align-items:center;gap:.4em;height:1.4em;padding:0 .3em;white-space:nowrap}.sp-ledger-box{flex:none;position:relative;box-sizing:border-box;width:.8em;height:.8em;border:.1em solid currentColor;border-radius:.12em}.sp-ledger-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;font-weight:700}.sp-ledger-points{flex:none;font-family:var(--sp-font-digits);font-weight:700}.sp-ledger-row:not(.is-earned){color:#2b1a0ccc}.sp-ledger-row:not(.is-earned) .sp-ledger-points{opacity:.6}.sp-ledger-row:after{content:"";position:absolute;left:1.3em;right:.2em;top:50%;height:.14em;border-radius:.07em;background:var(--sp-hazard);transform-origin:left center;transform:rotate(-1.5deg) scaleX(0);pointer-events:none}.sp-ledger-box:after{content:"";position:absolute;left:25%;top:-35%;width:45%;height:100%;border:solid var(--sp-hazard);border-width:0 .18em .18em 0;transform:rotate(40deg) scale(0)}.sp-ledger-row.is-struck:after{transform:rotate(-1.5deg) scaleX(1)}.sp-ledger-row.is-struck .sp-ledger-box:after{transform:rotate(40deg) scale(1)}.sp-show .sp-ledger-row:after{transition:transform var(--sp-strike-ms, .2s) cubic-bezier(.6,0,.3,1)}.sp-show .sp-ledger-box:after{transition:transform .24s cubic-bezier(.3,1.8,.5,1) calc(var(--sp-strike-ms, .2s) * .6)}.sp-ledger-mask{display:none}.sp-show .sp-ledger-row.is-hidden.is-earned:not(.is-struck) .sp-ledger-mask{display:inline}.sp-show .sp-ledger-row.is-hidden.is-earned:not(.is-struck) .sp-ledger-real{display:none}.sp-show .sp-ledger-row.is-hidden.is-earned:not(.is-struck) .sp-ledger-points{opacity:0}.sp-ledger-toggle-row{grid-area:hero;align-self:end;justify-self:end;width:var(--sp-results-hero);display:flex;justify-content:center;translate:0 calc(100% + calc(14px * var(--stage-scale, 1)))}.sp-ledger-toggle{display:inline-flex;align-items:center;padding:0 calc(18px * var(--stage-scale, 1))}.sp-show .sp-ledger-toggle{opacity:0;pointer-events:none}.sp-verdict-box{flex:0 1 auto;display:flex;flex-direction:column;align-items:center;gap:calc(10px * var(--stage-scale, 1));min-width:0}.sp-verdict{margin:0;font-style:italic;line-height:1.3}.sp-verdict-box .sp-title{line-height:1.25}.sp-best{margin:0;line-height:1.25;font-family:var(--sp-font-digits);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-variant-numeric:tabular-nums}.sp-newbest{position:relative;max-width:100%;aspect-ratio:660 / 261;opacity:0}.sp-newbest-art{display:block;width:100%;height:100%}.sp-newbest-text{position:absolute;top:34%;right:22%;bottom:34%;left:22%;display:flex;align-items:center;justify-content:center;margin:0;font-family:var(--sp-font-display);font-weight:400;letter-spacing:.04em;line-height:1;text-transform:uppercase;color:var(--sp-ink);white-space:nowrap}.sp-newbest-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.is-landed .sp-newbest{animation:sp-banner-in .42s cubic-bezier(.2,1.5,.4,1) both}@keyframes sp-banner-in{0%{opacity:0;transform:scale(1.8) rotate(-4deg)}to{opacity:1;transform:none}}.sp-newbest-burst .sp-sparkle{opacity:0}.is-landed .sp-newbest-burst .sp-sparkle--star{animation:sp-burst .9s cubic-bezier(.2,.9,.3,1) var(--sp-delay, 0ms) both,sp-newbest-twinkle 2.8s ease-in-out calc(.9s + var(--sp-delay, 0ms) + var(--sp-phase, 0ms)) infinite}.is-landed .sp-newbest-burst .sp-sparkle--coin{animation:sp-burst .9s cubic-bezier(.2,.9,.3,1) var(--sp-delay, 0ms) both,sp-newbest-coin 5.6s ease-in-out calc(.9s + var(--sp-delay, 0ms) + var(--sp-phase, 0ms)) infinite}@keyframes sp-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-40deg)}35%{opacity:1;transform:translate(-50%,-50%) scale(1.35) rotate(10deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}@keyframes sp-newbest-twinkle{0%,to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}50%{opacity:.55;transform:translate(-50%,-50%) scale(.8) rotate(14deg)}}@keyframes sp-newbest-coin{0%{transform:translate(-50%,-50%) translateY(0) rotateY(0)}20%{transform:translate(-50%,-50%) translateY(-8%) rotateY(180deg)}40%,to{transform:translate(-50%,-50%) translateY(0) rotateY(360deg)}}.sp-board{position:relative;flex:none;max-width:100%;aspect-ratio:720 / 265}.sp-board-art{display:block;width:100%;height:100%}.sp-board-window{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(2px * var(--stage-scale, 1));color:var(--sp-ink)}.sp-board-label{font-weight:700;letter-spacing:.06em;line-height:1;text-transform:uppercase}.sp-board-value{font-family:var(--sp-font-digits);font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.sp-rank{position:absolute}.sp-rank-art{position:absolute;display:block;max-width:none;filter:drop-shadow(0 calc(4px * var(--stage-scale, 1)) calc(5px * var(--stage-scale, 1)) rgba(0,0,0,.5))}.sp-rank-burst{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sp-rank-burst .sp-sparkle{opacity:0}.sp-show .sp-rank.is-in .sp-rank-burst .sp-sparkle{animation:sp-rank-burst .55s cubic-bezier(.2,.9,.3,1) var(--sp-delay, 0ms) both}@keyframes sp-rank-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-40deg)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.4) rotate(10deg)}to{opacity:0;transform:translate(-50%,-50%) scale(.9) rotate(0)}}.sp-show .sp-column--results{transition:opacity .3s ease-out}.sp-show[data-beat=timesUp] .sp-column--results{opacity:0}.sp-show:not(.is-art) .sp-results-art{animation-play-state:paused}.sp-show .sp-board-window--stat:not(.is-in),.sp-show .sp-feats>li:not(.is-in),.sp-show .sp-rank:not(.is-in),.sp-show .sp-column--results>.sp-name-entry,.sp-show .sp-column--results>.sp-actions{opacity:0}.sp-show .sp-column--results>.sp-name-entry,.sp-show .sp-column--results>.sp-actions{pointer-events:none}.sp-show .sp-corner>.sp-button--corner{opacity:0;pointer-events:none}.sp-show-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;overflow:hidden;pointer-events:none}.sp-timesup{position:absolute;left:50%;top:45%;translate:-50% -50%;margin:0;opacity:0;font-family:var(--sp-font-display);font-weight:400;line-height:1;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:var(--sp-amber);text-shadow:0 0 .06em var(--sp-ink),.04em .05em 0 var(--sp-ink),-.03em -.03em 0 var(--sp-ink)}.sp-flyer{position:absolute;translate:-50% -50%;font-family:var(--sp-font-digits);font-size:var(--sp-flyer-size);font-weight:700;line-height:1;white-space:nowrap;color:var(--sp-amber);text-shadow:.05em .06em 0 var(--sp-ink)}.sp-name-entry{flex:none;display:flex;flex-direction:column;align-items:center;gap:calc(6px * var(--stage-scale, 1))}.sp-name-label{line-height:1.25;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sp-name-row{display:flex;align-items:center;gap:calc(10px * var(--stage-scale, 1))}.sp-name-input{width:calc(280px * var(--stage-scale, 1));padding:0 calc(8px * var(--stage-scale, 1));background:none;color:var(--sp-cream);font-family:var(--sp-font-ui)}.sp-name-input::placeholder{color:var(--sp-cream);opacity:.7}.sp-button--save{padding:0 calc(18px * var(--stage-scale, 1))}.sp-name-saved{flex:none;margin:0}.sp-name-done{flex:none;display:flex;flex-direction:column;align-items:center;gap:calc(4px * var(--stage-scale, 1))}.sp-name-note,.sp-name-problem{margin:0;max-width:calc(520px * var(--stage-scale, 1));text-align:center}.sp-name-problem{color:var(--sp-amber)}.sp-name-input:read-only{opacity:.7}.sp-actions{flex:none;display:flex;align-items:center;justify-content:center;gap:calc(18px * var(--stage-scale, 1))}#stage[data-layout=compact] .sp-results-row{grid-template-areas:"hero board verdict"}.sp-button--board{display:none}#stage[data-layout=compact] .sp-button--board{display:inline-flex;align-items:center;gap:calc(10px * var(--stage-scale, 1));padding:0 calc(18px * var(--stage-scale, 1))}.sp-sheet-scrim,.sp-button--close{display:none}#stage[data-layout=compact][data-sheet=board] .sp-sheet-scrim,#stage[data-screen=title][data-sheet=board] .sp-sheet-scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#080e1ed9}#stage[data-layout=compact][data-sheet=board] .sp-button--close,#stage[data-screen=title][data-sheet=board] .sp-button--close{display:inline-flex;align-items:center;justify-content:center;position:absolute;z-index:3;top:calc(var(--board-sheet-gap) + var(--board-rim-top));right:calc(50% - var(--board-compact-w) / 2 + var(--board-rim-right));padding:0 calc(18px * var(--stage-scale, 1))}#stage[data-screen=title][data-sheet=board] .sp-button--close{top:calc(var(--board-sheet-gap) + var(--board-rim-top) + env(safe-area-inset-top,0px))}.sp-install-scrim,.sp-install-panel{display:none}#stage[data-screen=title][data-sheet=install] .sp-install-scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#080e1ed9}#stage[data-screen=title][data-sheet=install] .sp-install-panel{display:flex;flex-direction:column;align-items:center;gap:calc(12px * var(--stage-scale, 1));position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:min(var(--board-compact-w),calc(100% - 2 * var(--sp-pad-x) - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)));max-height:calc(100% - 2 * var(--board-sheet-gap) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto;padding:0 calc(16px * var(--stage-scale, 1)) calc(10px * var(--stage-scale, 1));color:var(--sp-cream);font-family:var(--sp-font-ui);text-align:left}.sp-install-panel .sp-title{line-height:1.25}.sp-install-steps{margin:0;padding:0 0 0 1.4em;line-height:1.35}.sp-install-step+.sp-install-step{margin-top:.3em}.sp-install-share{width:1.2em;height:1.2em;margin-right:.35em;vertical-align:-.2em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-install-note{margin:0;line-height:1.3;opacity:.85}.sp-button--done{display:inline-flex;align-items:center;justify-content:center;padding:0 calc(18px * var(--stage-scale, 1))}.sp-options-scrim,.sp-options-panel{display:none}#stage[data-sheet=settings] .sp-options-scrim{display:block;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:#080e1ed9}#stage[data-sheet=settings] .sp-options-panel{display:flex;flex-direction:column;align-items:center;gap:calc(16px * var(--stage-scale, 1));position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);box-sizing:border-box;width:max-content;max-width:calc(100% - 2 * var(--sp-pad-x) - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));max-height:calc(100% - 2 * var(--sp-pad-y) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-y:auto;padding:0 calc(8px * var(--stage-scale, 1)) calc(8px * var(--stage-scale, 1));color:var(--sp-cream);font-family:var(--sp-font-ui)}.sp-options-panel .sp-title{line-height:1.25}.sp-feats{flex:none;display:flex;flex-wrap:wrap;justify-content:center;gap:0 calc(18px * var(--stage-scale, 1));box-sizing:border-box;max-width:var(--sp-results-board);max-height:1.25em;overflow:hidden;padding:0;list-style:none}:root[data-reduced-motion=on] .sp-keyart-backdrop,:root[data-reduced-motion=on] .sp-ambience,:root[data-reduced-motion=on] .sp-logo-plate,:root[data-reduced-motion=on] .sp-sparkles .sp-sparkle,:root[data-reduced-motion=on] .sp-button--primary:not(:disabled):before,:root[data-reduced-motion=on] .sp-button--primary:not(:disabled):after,:root[data-reduced-motion=on] .sp-results-art,:root[data-reduced-motion=on] .is-landed .sp-newbest,:root[data-reduced-motion=on] .is-landed .sp-newbest-burst .sp-sparkle--star,:root[data-reduced-motion=on] .is-landed .sp-newbest-burst .sp-sparkle--coin,:root[data-reduced-motion=on] .sp-show .sp-rank.is-in .sp-rank-burst .sp-sparkle{animation:none}:root[data-reduced-motion=on] .sp-sparkles .sp-sparkle,:root[data-reduced-motion=on] .sp-newbest-burst .sp-sparkle{opacity:.9}:root[data-reduced-motion=on] .is-landed .sp-newbest{opacity:1}:root[data-reduced-motion=on] .sp-ambience{display:none}:root[data-reduced-motion=on] .sp-button:not(:disabled):active{transform:none}
