@font-face{font-family:Silkscreen;font-style:normal;font-weight:400;font-display:swap;src:url(./silkscreen-latin-400-normal-CtPo2yA5.woff2)format("woff2")}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--charcoal-950:#111619;--charcoal-900:#171e22;--charcoal-850:#1e282d;--charcoal-800:#29373d;--charcoal-600:#60747a;--charcoal-400:#a8b4b7;--charcoal-100:#eef2ef;--yellow-400:#f4d45c;--yellow-300:#ffe381;--cyan-400:#6bddda;--coral-400:#ff928e;--color-bg:var(--charcoal-950);--color-surface:var(--charcoal-900);--color-raised:var(--charcoal-850);--color-control:var(--charcoal-800);--color-border:var(--charcoal-600);--color-border-muted:var(--charcoal-800);--color-text:var(--charcoal-100);--color-muted:var(--charcoal-400);--color-accent:var(--yellow-400);--color-accent-hover:var(--yellow-300);--color-signal:var(--cyan-400);--color-danger:var(--coral-400);--color-focus:var(--cyan-400);--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Silkscreen", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.5rem;--text-xl:2rem;--text-2xl:3rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-10:40px}*{box-sizing:border-box}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0}button:disabled{cursor:default;color:var(--color-muted)}.start-overlay>*,.result-overlay>*{flex-shrink:0}button,a{touch-action:manipulation}button svg,a svg{flex-shrink:0}button:focus-visible,a:focus-visible,[tabindex]:focus-visible,textarea:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}button:disabled:focus-visible{outline-color:var(--color-muted)}a{color:var(--color-signal);text-underline-offset:3px;text-decoration-thickness:1px}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance;font-weight:600;line-height:1.2}p{text-wrap:pretty}::selection{color:var(--color-bg);background:var(--color-signal)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--color-accent);color:var(--color-bg);border-radius:4px;padding:12px 16px;position:fixed;inset-block-start:-100px;inset-inline-start:16px}.skip-link:focus{inset-block-start:12px}.app{min-block-size:100svh;max-inline-size:1360px;padding-inline:var(--space-10);flex-direction:column;margin-inline:auto;display:flex}.app-header{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;min-block-size:76px;display:flex}.brand{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.brand h1{font-family:var(--font-display);font-size:var(--text-lg);color:var(--color-accent);font-weight:400}.brand h1 span{color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);margin-block-start:2px;font-weight:600;line-height:1.5;display:block}.header-tools{align-items:center;gap:var(--space-3);display:flex}.text-button{min-block-size:44px;color:var(--color-muted);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.text-button:active,.icon-button:active,.secondary-button:active{background:var(--color-control);color:var(--color-text)}.game-shell{flex:1;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 264px;align-content:center;gap:12px 40px;inline-size:100%;max-inline-size:min(1088px,100svh + 24px);margin-inline:auto;display:grid}.signal-strip{min-block-size:32px;font-size:var(--text-xs);color:var(--color-muted);border-block-end:1px solid var(--color-border-muted);grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;padding-block-end:8px;display:flex}.signal-label{color:var(--color-text);align-items:center;gap:8px;display:flex}.signal-dot{border:1px solid var(--color-muted);flex-shrink:0;block-size:6px;inline-size:6px}.signal-dot.connected{background:var(--color-signal);border-color:var(--color-signal)}.signal-strip.demo .signal-label{color:var(--color-accent)}.signal-time{font-variant-numeric:tabular-nums}.play-zone{flex-direction:column;align-items:center;min-inline-size:0;display:flex}.instrument-row{flex-wrap:wrap;align-items:center;gap:16px;min-block-size:72px;inline-size:100%;padding-block-end:12px;display:flex}.instrument{flex-direction:column;flex:1 1 0;gap:3px;min-inline-size:max-content;display:flex}.instrument>span{color:var(--color-muted);font-size:var(--text-xs)}.instrument strong{font-family:var(--font-display);font-size:var(--text-xl);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:400;line-height:1.2}.instrument.score strong{color:var(--color-accent)}.instrument.best strong{font-size:var(--text-lg);color:var(--color-muted)}.instrument.timer strong small{font:400 var(--text-sm) var(--font-body);margin-inline-start:4px}.instrument.timer.low-time strong{color:var(--color-danger)}.icon-button{background:var(--color-raised);border-radius:4px;place-items:center;min-block-size:44px;min-inline-size:44px;display:inline-grid}.pause-button{border:1px solid var(--color-border);flex-shrink:0;align-self:center}.pause-button:disabled{border-color:var(--color-border-muted);background:0 0}.arena{aspect-ratio:1;outline:1px solid var(--color-border);outline-offset:5px;touch-action:none;background:#131b1f;border-radius:2px;inline-size:min(100%,100svh - 280px);min-inline-size:min(100%,340px);margin:6px;position:relative}.arena:focus-visible{outline:2px solid var(--color-signal);outline-offset:5px}.maze{border-radius:2px;block-size:100%;inline-size:100%;display:block}.arena-shade{pointer-events:none;background:#0b1014b8;position:absolute;inset:0}.start-overlay,.result-overlay{overscroll-behavior:contain;touch-action:pan-y;background:var(--color-surface);text-align:center;border-radius:6px;flex-direction:column;align-items:center;max-block-size:calc(100% - 24px);inline-size:min(88%,344px);margin-inline:auto;padding:24px;display:flex;position:absolute;inset-block-start:50%;inset-inline:0;overflow:auto;transform:translateY(-50%)}.start-overlay>svg{margin-block-end:16px}.start-overlay h2,.result-overlay h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;line-height:1.3}.start-overlay>p{color:var(--color-muted);margin-block-start:12px}.primary-button{background:var(--color-accent);color:var(--color-bg);border-radius:var(--space-1);min-block-size:48px;padding:var(--space-3) var(--space-4);justify-content:center;align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.primary-button>span:last-child{font-size:var(--text-xs);border-inline-start:1px solid #8d7932;margin-inline-start:auto;padding-inline-start:12px}.primary-button:disabled{background:var(--color-control);color:var(--color-muted)}.primary-button:active:not(:disabled){background:var(--color-accent-hover)}.start-overlay .primary-button{inline-size:100%;margin-block-start:24px}.start-overlay .overlay-note{font-size:var(--text-xs);margin-block-start:16px}.overlay-note{font-size:var(--text-xs);color:var(--color-muted)}.overlay-note.warning-text{color:var(--color-accent)}.result-overlay{gap:8px;inline-size:min(94%,392px);padding:24px}.result-overlay h2:focus{outline:none}.result-number{font:400 var(--text-2xl)/1.2 var(--font-display);color:var(--color-accent);justify-content:center;align-items:baseline;gap:8px;display:flex}.result-number span{font:400 var(--text-sm)/1.5 var(--font-body);color:var(--color-muted)}.result-overlay p{color:var(--color-muted)}.result-round{color:var(--color-signal);font-size:var(--text-xs)}.result-overlay .primary-button{inline-size:100%;margin-block-start:8px}.share-actions{gap:8px;inline-size:100%;display:flex}.secondary-button{border:1px solid var(--color-border);min-block-size:44px;color:var(--color-text);background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;text-decoration:none;display:inline-flex}.secondary-button:disabled{color:var(--color-muted)}.share-actions .secondary-button{font-size:var(--text-xs);flex:1;padding-inline:8px}.share-status:empty{display:none}.share-status{font-size:var(--text-xs)}.board-caption{min-block-size:36px;inline-size:100%;color:var(--color-muted);font-size:var(--text-xs);justify-content:space-between;align-items:center;gap:8px;padding-block-start:8px;display:flex}.legend{align-items:center;gap:var(--space-4);display:flex}.legend>span{align-items:center;gap:8px;display:flex}.squeek-symbol{background:var(--color-accent);flex-shrink:0;block-size:7px;inline-size:7px;display:inline-block;transform:rotate(45deg)}.hazard-symbol{background:var(--color-danger);block-size:14px;inline-size:14px;color:var(--color-bg);font:700 var(--text-sm)/1 var(--font-body);flex-shrink:0;place-items:center;font-style:normal;display:inline-grid}.board-round{font-variant-numeric:tabular-nums}.control-panel{border-inline-start:1px solid var(--color-border-muted);min-inline-size:0;gap:var(--space-6);flex-direction:column;padding-block-start:6px;padding-inline-start:var(--space-6);display:flex}.control-panel h2{font-size:var(--text-sm);font-weight:600}.panel-heading{align-items:center;gap:var(--space-2);display:flex}.panel-heading>svg{color:var(--color-signal)}.public-label{color:var(--color-muted);font-size:var(--text-xs);margin-inline-start:auto}.wheel-state{align-items:center;gap:12px;margin-block:16px;display:flex}.wheel-illustration{flex-shrink:0;inline-size:64px}.wheel-illustration svg{fill:none;inline-size:100%;stroke:var(--color-border);stroke-width:1.5px;display:block}.wheel-state strong{font-size:var(--text-lg);margin-block-end:2px;font-weight:600;display:block}.wheel-state>div:last-child>span{color:var(--color-muted);font-size:var(--text-xs);display:block}.modifier{background:var(--color-raised);border-radius:4px;align-items:flex-start;gap:12px;padding:12px;display:flex}.modifier>span{color:var(--color-muted);font-size:var(--text-lg);line-height:1}.modifier strong{font-size:var(--text-xs);font-weight:600}.modifier.enabled>span,.modifier.enabled strong{color:var(--color-signal)}.modifier p{color:var(--color-muted);font-size:var(--text-xs);margin-block-start:4px}.observation{font-size:var(--text-xs);color:var(--color-muted);overflow-wrap:anywhere;margin-block-start:12px}.source-line{font-size:var(--text-xs);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-block-start:8px;display:flex}.source-line>span{color:var(--color-muted)}.retry{inline-size:100%;font-size:var(--text-xs);margin-block-start:12px}.round-section dl{margin-block:12px 4px}.round-section dl div{justify-content:space-between;gap:12px;padding-block:4px;display:flex}dt{color:var(--color-muted)}dd{font-variant-numeric:tabular-nums;margin:0}.inline-button{color:var(--color-signal);min-block-size:44px;inline-size:100%;font-size:var(--text-xs);text-align:start;text-underline-offset:3px;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:4px 0;text-decoration:underline;display:flex}.desktop-controls{grid-template-columns:88px 1fr;align-items:center;gap:12px;display:grid}.desktop-controls h2{grid-column:1/-1}.keyboard-guide{text-align:center;color:var(--color-muted)}.keyboard-guide>kbd{margin-block-end:4px}.keyboard-guide>div{gap:4px;display:flex}kbd{border:1px solid var(--color-border);background:var(--color-raised);block-size:26px;inline-size:26px;font-family:var(--font-body);font-size:var(--text-xs);border-radius:3px;place-items:center;display:inline-grid}.desktop-controls p{color:var(--color-muted);font-size:var(--text-xs)}.local-section ol{margin-block:12px 0;padding:0;list-style:none}.local-section li{color:var(--color-muted);font-size:var(--text-xs);justify-content:space-between;align-items:center;gap:12px;padding-block:6px;display:flex}.local-section li strong{font-family:var(--font-display);font-size:var(--text-base);color:var(--color-text);font-weight:400}.local-section>p{font-size:var(--text-xs);color:var(--color-muted);margin-block-start:12px}.touch-controls{display:none}.touch-help strong{font-size:var(--text-sm);font-weight:600}.touch-help p{font-size:var(--text-xs);color:var(--color-muted);margin-block-start:4px}.touch-help>span{font-size:var(--text-xs);color:var(--color-muted);margin-block-start:8px;display:block}.dpad{flex-shrink:0;grid-template-rows:repeat(2,44px);grid-template-columns:repeat(3,44px);gap:4px;display:grid}.direction{background:var(--color-raised);border:1px solid var(--color-border);touch-action:none;border-radius:4px;place-items:center;padding:0;display:grid}.direction:active:not(:disabled){color:var(--color-bg);background:var(--color-accent)}.direction:disabled{color:var(--color-muted);border-color:var(--color-border-muted);background:var(--color-surface)}.direction-up{grid-area:1/2}.direction-left{grid-area:2/1}.direction-down{grid-area:2/2}.direction-right{grid-area:2/3}.direction-left svg{transform:rotate(-90deg)}.direction-down svg{transform:rotate(180deg)}.direction-right svg{transform:rotate(90deg)}.mobile-retry{min-block-size:44px;color:var(--color-signal);font-size:var(--text-xs);text-underline-offset:3px;background:0 0;align-items:center;gap:8px;padding:4px 0;text-decoration:underline;display:flex}.app-footer{inline-size:100%;max-inline-size:min(1088px,100svh + 24px);font-size:var(--text-xs);color:var(--color-muted);align-items:center;gap:24px;margin-inline:auto;padding-block:12px;display:flex}.app-footer>span:first-child{align-items:center;gap:8px;display:flex}.app-footer i{background:var(--color-accent);block-size:5px;inline-size:5px}.app-footer a{color:var(--color-muted)}.footer-note{margin-inline-start:auto}.modal{border:1px solid var(--color-border);background:var(--color-surface);max-block-size:calc(100svh - 48px);inline-size:min(640px,100% - 32px);color:var(--color-text);overscroll-behavior:contain;border-radius:8px;padding:0}.modal::backdrop{background:#080c10d9}.modal-inner{padding:var(--space-8)}.modal-heading{justify-content:space-between;align-items:center;gap:16px;margin-block-end:24px;display:flex}.modal-heading h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;line-height:1.3}.modal-heading .icon-button{flex-shrink:0}.rules-content,.data-content{flex-direction:column;gap:20px;line-height:1.6;display:flex}.rules-content ul{flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;display:flex}.rules-content li{color:var(--color-muted);align-items:flex-start;gap:16px;display:flex}.rules-content li strong{color:var(--color-text);font-weight:600}.rule-token{flex-shrink:0;justify-content:center;align-items:center;block-size:28px;inline-size:28px;display:inline-flex}.welfare-callout{border-inline-start:2px solid var(--color-signal);color:var(--color-muted);padding-inline-start:16px}.data-content h3{font-size:var(--text-base);margin-block-start:4px}.data-content>p{color:var(--color-muted)}.endpoint-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.endpoint-list li{flex-direction:column;gap:4px;display:flex}.endpoint-list li>span{color:var(--color-muted)}.provenance{flex-direction:column;gap:12px;margin:0;display:flex}.provenance>div{flex-direction:column;gap:2px;display:flex}.provenance dt{font-size:var(--text-xs)}.provenance dd{overflow-wrap:anywhere}.hash-value{font-family:monospace;font-size:var(--text-xs)}.download-source{align-self:flex-start}.attribution{font-size:var(--text-xs)}.copy-result{border:1px solid var(--color-border);background:var(--color-bg);min-block-size:180px;inline-size:100%;color:var(--color-text);font-size:var(--text-base);border-radius:4px;margin-block-start:16px;padding:12px;display:block}@media (hover:hover){.text-button:hover,.icon-button:not(:disabled):hover,.secondary-button:not(:disabled):hover{background:var(--color-raised);color:var(--color-text)}.primary-button:not(:disabled):hover{background:var(--color-accent-hover)}a:hover,.inline-button:hover{color:var(--color-text)}}@media (prefers-reduced-motion:no-preference){button,a{transition:color .12s ease-out,background-color .12s ease-out}.player.moving{transition:transform 85ms linear}.hazard.moving{transition:transform .33s linear}.primary-button:active:not(:disabled){scale:.96}}@media (min-width:53rem) and (max-height:850px){.app-header{min-block-size:76px}.game-shell{gap:12px 40px}.control-panel{gap:20px}.app-footer{padding-block:16px}}@media (max-width:66rem){.app{padding-inline:28px}.game-shell{grid-template-columns:minmax(0,1fr) 240px;column-gap:28px}.control-panel{padding-inline-start:20px}.instrument-row{gap:8px}.instrument strong{font-size:var(--text-lg)}.instrument.best strong{font-size:var(--text-base)}}@media (pointer:coarse) and (min-width:53rem){.control-panel{grid-row:2/span 2}.touch-controls{grid-area:3/1;justify-content:space-between;align-items:center;gap:16px;padding-block:4px 12px;display:flex}.arena{inline-size:min(100%,100svh - 400px)}}@media (max-width:52.99rem){.app{padding-inline:20px}.app-header{min-block-size:80px}.game-shell{grid-template-columns:minmax(0,1fr);align-content:start;gap:12px;max-inline-size:560px}.signal-strip{grid-column:1}.arena{inline-size:100%;min-inline-size:0;margin:6px 0}.control-panel{display:none}.instrument-row{gap:12px;min-block-size:72px;padding-block-end:12px}.instrument strong{font-size:var(--text-xl)}.instrument.best strong{font-size:var(--text-lg)}.touch-controls{justify-content:space-between;align-items:center;gap:16px;padding-block:4px 12px;display:flex}.app-footer{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;max-inline-size:560px;margin-block-start:auto;padding-block:16px}.footer-note{inline-size:100%;margin:0}}@media (max-width:28rem){.app{padding-inline:16px}.app-header{min-block-size:76px}.brand{gap:8px}.brand>svg{block-size:32px;inline-size:32px}.header-tools{gap:4px}.text-button{padding:8px}.header-tools .text-button:last-child{inline-size:44px;padding:8px}.header-tools .text-button:last-child>span{clip-path:inset(50%);block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.signal-strip{flex-wrap:wrap;gap:8px;padding-block-end:8px}.signal-time{font-size:var(--text-xs)}.game-shell{gap:8px}.instrument-row{gap:8px;min-block-size:68px}.instrument strong{font-size:var(--text-lg)}.instrument.best strong{font-size:var(--text-base)}.pause-button{min-block-size:44px;min-inline-size:44px}.board-caption{min-block-size:40px;padding-block-start:8px}.legend{gap:12px}.legend>span{gap:6px}.start-overlay{inline-size:86%;padding:20px}.start-overlay>svg{block-size:44px;inline-size:44px;margin-block-end:12px}.start-overlay h2{font-size:var(--text-lg)}.start-overlay>p{font-size:var(--text-xs);margin-block-start:8px}.start-overlay .primary-button{margin-block-start:16px}.start-overlay .overlay-note{margin-block-start:12px}.result-overlay{gap:6px;inline-size:94%;padding:16px}.result-overlay h2{font-size:var(--text-base)}.result-number{font-size:var(--text-xl)}.result-overlay .primary-button{min-block-size:44px;padding-block:8px}.touch-controls{gap:8px;padding-block:4px 8px}.touch-help>span{display:none}.modal-inner{padding:20px}}@media (max-width:22rem){.app{padding-inline:12px}.brand h1{font-size:var(--text-base)}.brand h1 span{font-size:var(--text-xs)}.brand>svg{block-size:28px;inline-size:28px}.header-tools .text-button{padding-inline:6px}.signal-strip{font-size:var(--text-xs)}.instrument-row{gap:6px}.instrument strong{font-size:var(--text-lg)}.instrument.best strong{font-size:var(--text-base)}.legend .collected-label{display:none}.start-overlay{inline-size:88%;padding:16px}.start-overlay h2{font-size:var(--text-base)}.start-overlay>svg{block-size:32px;inline-size:32px;margin-block-end:8px}.start-overlay .primary-button{min-block-size:44px;margin-block-start:12px;padding-block:8px}.start-overlay .overlay-note{margin-block-start:8px}.result-overlay{gap:4px;padding:12px}.result-overlay .overlay-note{font-size:var(--text-xs)}.touch-help p{max-inline-size:128px}.touch-help p br{display:none}.modal-heading h2{font-size:var(--text-base)}}@media (orientation:landscape) and (max-height:33.75rem),(orientation:landscape) and (pointer:coarse) and (max-height:56rem){.app{padding-inline:16px}.app-header{flex-wrap:nowrap;min-block-size:48px}.brand>svg{block-size:28px;inline-size:28px}.brand h1{font-size:var(--text-base)}.brand h1 span{margin-inline-start:8px;display:inline}.text-button{padding:8px}.game-shell{flex:none;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) 184px;align-content:start;gap:12px 20px;max-inline-size:none}.play-zone{grid-area:1/1/3;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"hud arena""caption arena";align-items:start;column-gap:16px;display:grid}.instrument-row{grid-area:hud;align-content:flex-start;gap:12px 16px;min-block-size:0;padding-block:6px 0}.instrument strong{font-size:var(--text-lg)}.instrument.best strong{font-size:var(--text-base)}.arena{grid-area:arena;inline-size:min(100svh - 72px,100vw - 414px);min-inline-size:0;margin:6px}.board-caption{flex-wrap:wrap;grid-area:caption;justify-content:flex-start;align-self:end;min-block-size:0;padding-block:0 6px}.legend{flex-wrap:wrap;gap:4px 12px}.signal-strip{flex-direction:column;grid-area:1/2;align-items:flex-start;gap:2px;padding-block:6px 8px}.control-panel{display:none}.touch-controls{flex-direction:column;grid-area:2/2;justify-content:space-between;align-items:flex-start;gap:12px;padding-block:0 6px;display:flex}.touch-help>span{display:none}.start-overlay{inline-size:min(90%,320px);padding:16px}.start-overlay>svg{display:none}.start-overlay h2{font-size:var(--text-base)}.start-overlay>p{font-size:var(--text-xs);margin-block-start:8px}.start-overlay .primary-button{min-block-size:44px;margin-block-start:12px;padding-block:8px}.start-overlay .overlay-note{margin-block-start:8px}.result-overlay{gap:4px;inline-size:94%;padding:12px 16px}.result-overlay h2{font-size:var(--text-base)}.result-number{font-size:var(--text-xl)}.result-overlay .primary-button{min-block-size:44px;margin-block-start:4px;padding-block:8px}.app-footer{max-inline-size:none}}@media (forced-colors:active){button,.arena{border:1px solid buttontext}:focus-visible{outline-color:highlight}}
