@font-face{font-family:Archivo Black;src:url(../assets/fonts/ArchivoBlack.woff2) format("woff2");font-display:swap}@font-face{font-family:Archivo;src:url(../assets/fonts/Archivo-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Archivo;src:url(../assets/fonts/Archivo-700.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Archivo;src:url(../assets/fonts/Archivo-800.woff2) format("woff2");font-weight:800;font-display:swap}@font-face{font-family:Space Mono;src:url(../assets/fonts/SpaceMono-400.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Space Mono;src:url(../assets/fonts/SpaceMono-700.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Archivo Black;src:url(../assets/fonts/ArchivoBlack-ext.woff2) format("woff2");font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;src:url(../assets/fonts/Archivo-ext.woff2) format("woff2");font-weight:400 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;src:url(../assets/fonts/SpaceMono-400-ext.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;src:url(../assets/fonts/SpaceMono-700-ext.woff2) format("woff2");font-weight:700;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--ink: #17131f;--paper: #fbf8f0;--cream: #f3e7c9;--pink: #ff5ca8;--magenta: #c2407a;--cyan: #3fdcff;--blue: #2f8fd8;--navy: #2a4fd6;--yellow: #ffd23f;--purple: #7a5cff;--lilac: #bba8ff;--mint: #52f0c2;--orange: #ff8a3d;--red: #ff2d4b;--lime: #b4f03c;--line: 3px;--shadow: 6px;--display: "Archivo Black", "Arial Black", "Segoe UI Black", system-ui, sans-serif;--body: "Archivo", "Segoe UI", system-ui, sans-serif;--mono: "Space Mono", ui-monospace, "Consolas", monospace;--u: clamp(.78px, calc(100vh / 1080), 1.4px);--u: clamp(.78px, calc(100dvh / 1080), 1.4px)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--ink);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none}button{font:inherit;color:inherit}#app{position:fixed;inset:0;overflow:hidden}#viewport{position:absolute;inset:0}.game-canvas{display:block;width:100%;height:100%}#hud,#ui{position:absolute;inset:0;pointer-events:none}#ui>*{pointer-events:auto}.hidden{display:none!important}.boot{position:absolute;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(28 * var(--u));background:var(--yellow);transition:opacity .35s ease}.boot.done{opacity:0;pointer-events:none}.boot-logo{font-family:var(--display);font-size:calc(92 * var(--u));letter-spacing:-.02em;line-height:1;color:var(--ink);text-shadow:calc(6 * var(--u)) calc(6 * var(--u)) 0 var(--pink)}.boot-logo span{color:var(--paper);-webkit-text-stroke:calc(3 * var(--u)) var(--ink);text-shadow:calc(6 * var(--u)) calc(6 * var(--u)) 0 var(--ink)}.boot-bar{width:calc(360 * var(--u));height:calc(22 * var(--u));border:var(--line) solid var(--ink);background:var(--paper);box-shadow:var(--shadow) var(--shadow) 0 var(--ink);overflow:hidden}.boot-bar i{display:block;height:100%;width:0;background:var(--pink);border-right:var(--line) solid var(--ink);transition:width .2s ease}.boot-msg{font-family:var(--mono);font-size:14px;max-width:520px;text-align:center}
