@font-face{font-family:Chakra Petch;font-weight:600;font-style:normal;font-display:swap;src:url(../assets/fonts/chakra-petch-latin-600.woff2) format("woff2")}@font-face{font-family:Chakra Petch;font-weight:700;font-style:normal;font-display:swap;src:url(../assets/fonts/chakra-petch-latin-700.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:600;font-style:normal;font-display:swap;src:url(../assets/fonts/barlow-condensed-latin-600.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:700;font-style:normal;font-display:swap;src:url(../assets/fonts/barlow-condensed-latin-700.woff2) format("woff2")}@font-face{font-family:Archivo;font-weight:400;font-style:normal;font-display:swap;src:url(../assets/fonts/archivo-latin-400.woff2) format("woff2")}@font-face{font-family:Archivo;font-weight:600;font-style:normal;font-display:swap;src:url(../assets/fonts/archivo-latin-600.woff2) format("woff2")}@font-face{font-family:Martian Mono;font-weight:400;font-style:normal;font-display:swap;src:url(../assets/fonts/martian-mono-latin-400.woff2) format("woff2")}@font-face{font-family:Martian Mono;font-weight:500;font-style:normal;font-display:swap;src:url(../assets/fonts/martian-mono-latin-500.woff2) format("woff2")}.home,.a4{--s0: 0;--s1: 8px;--s2: 16px;--s3: 24px;--s4: 32px;--s6: 48px;--s8: 64px;--ground: #0a0d10;--surface: #0e1418;--raised: #10161b;--selected: rgba(232, 237, 241, .1);--hover: rgba(232, 237, 241, .06);--line: #24303a;--line-strong: #34424e;--line-input: #5b6d7b;--text: #e8edf1;--text-2: #b4c0ca;--muted: #8797a4;--disabled: #6f7f8c;--accent: #c6f432;--accent-ink: #0a0d10;--danger: #c4544a;--danger-text: #ffb3aa;--danger-ground: #1c1110;--badge: #d7e3ec;--scrim: .24;--radius: 0;--t-fast: .16s ease;--t-base: .32s cubic-bezier(.7, 0, .2, 1);--t-enter: .32s cubic-bezier(.2, .7, .2, 1);--t-scene: .8s ease;--t-scene-scale: 1.6s ease;--t-beat: .72s;--font-display: "Chakra Petch", "Arial Narrow", system-ui, sans-serif;--font-body: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Martian Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace}.home[data-font=grotesk]{--font-display: "Barlow Condensed", "Arial Narrow", system-ui, sans-serif;font-variant-numeric:tabular-nums}.home .t-brand{font:700 19px/24px var(--font-display);text-transform:uppercase;letter-spacing:.24em;color:var(--text)}.home .t-nav{font:600 15px/24px var(--font-body);color:var(--text)}.home .t-ini{font:700 15px/24px var(--font-display);text-transform:uppercase;letter-spacing:.04em}.home .t-chip{font:600 19px/24px var(--font-display);text-transform:uppercase;letter-spacing:.06em}.home .t-hero{font:700 120px/96px var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-variant-numeric:tabular-nums}.home .t-head{font:700 48px/48px var(--font-display);text-transform:uppercase;letter-spacing:.02em}.home .t-mode{font:600 38px/40px var(--font-display);text-transform:uppercase;letter-spacing:.04em}.home .t-elapsed{font:600 30px/32px var(--font-display);font-variant-numeric:tabular-nums}.home .t-stat{font:600 24px/32px var(--font-display);font-variant-numeric:tabular-nums}.home .t-sub{font:400 15px/24px var(--font-body)}.home .t-cap{font:500 12px/16px var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.home .t-data{font:400 12px/16px var(--font-mono);letter-spacing:.02em;color:var(--muted)}.home .t-btn{font:600 15px/24px var(--font-body)}.home .t-name{font:600 19px/24px var(--font-display);letter-spacing:.03em}.home .t-meta{font:400 15px/24px var(--font-body);color:var(--muted)}.home .t-code{font:500 19px/24px var(--font-mono);text-transform:uppercase;letter-spacing:.2em}.home .t-input{font:400 15px/24px var(--font-mono);letter-spacing:.06em}.home .t-lead{font:400 19px/24px var(--font-body)}.home .t-body{font:400 15px/24px var(--font-body)}.home .t-error{font:400 15px/24px var(--font-body);color:var(--danger-text)}.a4 button{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:normal;text-transform:none;cursor:pointer}.a4 button:hover{background:transparent}.a4 button:focus-visible,.a4 input:focus-visible{outline:2px solid var(--text);outline-offset:-4px}.a4 button:disabled,.a4 input:disabled{cursor:not-allowed}.a4 h2,.a4 h3,.a4 p{margin:0}.a4 [hidden]{display:none!important}.a4 .a4-cap{font:500 12px/16px var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.a4 .a4-glyph{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:24px;padding:0 var(--s1);border:2px solid var(--text-2);font:500 12px/16px var(--font-mono);letter-spacing:.04em;text-transform:uppercase}.a4 .a4-glyph[data-form=face]{width:24px;padding:0;border-radius:50%}.a4.in-mouse .a4-glyph{display:none}.a4 .a4-seg{flex:1 1 auto;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));border:1px solid var(--line-input)}.a4 .a4-opt{height:46px;padding:0 4px;font:600 15px/24px var(--font-body);color:var(--text-2);white-space:nowrap;transition:background var(--t-fast),color var(--t-fast)}.a4 .a4-opt+.a4-opt{border-left:1px solid var(--line-input)}.a4 .a4-opt[aria-checked=true]{background:var(--selected);color:var(--text);box-shadow:inset 0 -3px 0 var(--text)}.a4.in-mouse .a4-opt:hover:not([aria-checked=true]){background:var(--hover);color:var(--text)}.a4 .a4-range{--thumb: 16px;flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1fr) 64px;column-gap:var(--s2);align-items:center}.a4 .a4-track{position:relative;height:var(--s6)}.a4 .a4-tick{position:absolute;top:18px;left:calc(var(--thumb) / 2 + var(--d) * (100% - var(--thumb)) - 1px);width:2px;height:12px;background:var(--line-input);pointer-events:none}.a4 .a4-range input{--fill: calc(var(--thumb) / 2 + var(--f) * (100% - var(--thumb)));position:relative;display:block;width:100%;height:var(--s6);margin:0;background:transparent;appearance:none;-webkit-appearance:none;cursor:pointer}.a4 .a4-range input:focus-visible{outline-offset:0}.a4 .a4-range input::-webkit-slider-runnable-track{height:2px;background:linear-gradient(to right,var(--text) var(--fill),var(--line-strong) var(--fill))}.a4 .a4-range input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--thumb);height:var(--thumb);margin-top:-7px;border:0;border-radius:0;background:var(--text)}.a4 .a4-range input::-moz-range-track{height:2px;background:var(--line-strong)}.a4 .a4-range input::-moz-range-progress{height:2px;background:var(--text)}.a4 .a4-range input::-moz-range-thumb{width:var(--thumb);height:var(--thumb);border:0;border-radius:0;background:var(--text)}.a4 .is-off .a4-range input::-webkit-slider-runnable-track{background:var(--line)}.a4 .is-off .a4-range input::-webkit-slider-thumb{background:var(--disabled)}.a4 .is-off .a4-range input::-moz-range-progress{background:var(--line)}.a4 .is-off .a4-range input::-moz-range-thumb{background:var(--disabled)}.a4 .a4-val{font:400 15px/24px var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.a4 .is-off .a4-val{color:var(--disabled)}.a4 .a4-btn{height:var(--s6);padding:0 var(--s3);border:1px solid var(--line-strong);font:600 15px/24px var(--font-body)}.a4.in-mouse .a4-btn:hover,.a4 .a4-btn:focus-visible{background:var(--hover)}.sys{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--ground);color:var(--text);font:400 15px/24px var(--font-body);cursor:default;user-select:none;-webkit-user-select:none;overflow-y:auto}.sys .sys-bar{box-sizing:border-box;flex:none;width:100%;max-width:calc(1376px + 2 * var(--s4));min-height:var(--s8);margin-inline:auto;padding-inline:var(--s4);display:flex;align-items:center;justify-content:space-between;gap:var(--s2)}.sys .sys-brand{font:700 19px/24px var(--font-display);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.sys .sys-stage{box-sizing:border-box;flex:1 0 auto;width:100%;max-width:calc(1376px + 2 * var(--s4));margin-inline:auto;padding:var(--s6) var(--s4) var(--s8)}.sys .sys-frame{position:relative;overflow:hidden;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);padding:var(--s4);display:flex;flex-direction:column;gap:var(--s2)}.sys .sys-sweep{position:absolute;left:0;top:0;width:30%;height:2px;background:var(--accent);pointer-events:none;animation:sys-sweep 1.8s linear infinite}.sys .sys-sweep[hidden]{display:none}@keyframes sys-sweep{0%{transform:translate(-100%)}to{transform:translate(340%)}}.sys .sys-head{font:700 48px/48px var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sys .sys-lead{color:var(--text-2)}.sys .sys-btn{box-sizing:border-box;height:var(--s6);padding:0 var(--s3);display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);border:1px solid var(--line-strong);font:600 15px/24px var(--font-body);color:var(--text);transition:background var(--t-fast)}.sys .sys-btn:hover:not(:disabled),.sys .sys-btn:focus-visible{background:var(--hover)}.sys .sys-btn:disabled{color:var(--disabled);border-color:var(--line)}@media(max-width:640px){.sys .sys-bar{padding-inline:var(--s2)}.sys .sys-stage{padding:var(--s3) var(--s2) var(--s6)}.sys .sys-frame{padding:var(--s3) var(--s2)}.sys .sys-head{font-size:32px;line-height:40px}}@media(prefers-reduced-motion:reduce){.sys .sys-sweep{animation:none;width:100%}}.fatal-screen{position:fixed;inset:0;z-index:3000;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px;padding:32px max(16px,calc((100vw - 1376px)/2))!important;overflow-y:auto;background:#0a0d10;color:#e8edf1;text-align:left;font:400 15px/24px Archivo,system-ui,-apple-system,Segoe UI,sans-serif}.fatal-screen .fatal-cap{margin:0;font:500 12px/16px Martian Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:.12em;color:#ffb3aa}.fatal-screen h1{margin:0;max-width:720px;font:700 48px/48px Chakra Petch,Arial Narrow,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.02em}.fatal-screen p{margin:0;max-width:560px;color:#b4c0ca}.fatal-detail{box-sizing:border-box;max-width:min(720px,100%);margin:0;padding:16px;border:1px solid #24303a;border-left:2px solid #c4544a;background:#1c1110;color:#ffb3aa;font:400 12px/16px Martian Mono,ui-monospace,SF Mono,Menlo,Consolas,monospace;letter-spacing:.02em;white-space:pre-wrap;word-break:break-word;text-align:left}.fatal-reload{height:48px;padding:0 24px;border:0;border-radius:0;background:#c6f432;color:#0a0d10;font:600 15px/24px Archivo,system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:normal;text-transform:none;cursor:pointer}.fatal-reload:focus-visible{outline:2px solid #e8edf1;outline-offset:2px}@media(max-width:640px){.fatal-screen h1{font-size:32px;line-height:40px}}:root{--lobby-warm: #ffc83d;--lobby-live: #ff6a4d;--lobby-idle: #8593a1;--lobby-end: #b39dff}.lobby-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:6px 0 4px;max-width:760px}.lobby-list.compact{margin:10px 0 14px}.lobby-card{display:flex;flex-direction:column;gap:3px;padding:10px 12px;min-width:0;background:var(--panel-strong);border-left:3px solid var(--lobby-idle)}.lobby-card.warmup{border-left-color:var(--lobby-warm)}.lobby-card.live{border-left-color:var(--lobby-live)}.lobby-card.ended{border-left-color:var(--lobby-end)}.lobby-card.you{background:#3fd0ff1f}.lc-name{font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:15px}.lc-badge{font-weight:800;letter-spacing:.1em;font-size:13px;color:#a3aebb;line-height:1.3;min-height:17px;white-space:nowrap}.lobby-card.warmup .lc-badge{color:var(--lobby-warm)}.lobby-card.live .lc-badge{color:var(--lobby-live)}.lobby-card.ended .lc-badge{color:var(--lobby-end)}.lc-meta{color:#b3bdc7;font-size:14px;min-height:18px}.lc-map{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;min-height:15px;opacity:.9}.lc-join{margin-top:6px;padding:6px 14px;font-size:12px;align-self:flex-start}.lc-join:hover{border-color:var(--accent);color:var(--accent)}.lobby-card{min-height:108px}.menu.queue-screen{z-index:30;display:flex;align-items:stretch;justify-content:flex-start;background:var(--ground)}.queue-screen .q-stage{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--s2);align-items:start}.queue-screen .q-frame{grid-column:1 / 7;align-items:flex-start}.queue-screen .q-count{margin-top:var(--s1)}.queue-screen .q-sub{max-width:480px;margin-bottom:var(--s1)}.queue-screen .q-error{min-height:24px;color:var(--danger-text)}.queue-screen .q-error:empty{display:none}.queue-screen .q-lobbies{grid-column:8 / 13;min-width:0}.queue-screen .q-lobbies-title{margin-bottom:var(--s1)}.queue-screen .lobby-list{display:flex;flex-direction:column;gap:0;max-width:none;margin:0;border-top:1px solid var(--line)}.queue-screen .lobby-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"name map join" "badge badge join" "meta meta join";column-gap:var(--s2);align-items:center;min-height:80px;padding:var(--s1) var(--s2);background:transparent;border-left:0;border-bottom:1px solid var(--line);box-shadow:inset 2px 0 0 var(--line-strong)}.queue-screen .lobby-card.warmup{box-shadow:inset 2px 0 0 var(--text-2)}.queue-screen .lobby-card.live{box-shadow:inset 2px 0 0 var(--text)}.queue-screen .lobby-card.you{background:var(--selected)}.queue-screen .lc-name{grid-area:name;font:600 19px/24px var(--font-display);letter-spacing:.03em}.queue-screen .lc-map{grid-area:map;min-height:0;font:500 12px/16px var(--font-mono);letter-spacing:.12em;color:var(--muted);opacity:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-screen .lc-badge,.queue-screen .lobby-card.warmup .lc-badge,.queue-screen .lobby-card.live .lc-badge,.queue-screen .lobby-card.ended .lc-badge{grid-area:badge;min-height:0;font:500 12px/16px var(--font-mono);letter-spacing:.12em;color:var(--text-2)}.queue-screen .lc-meta{grid-area:meta;min-height:0;font:400 15px/24px var(--font-body);color:var(--muted)}.queue-screen .lc-join{grid-area:join;align-self:center;margin:0;padding:0 var(--s3);height:var(--s6);border:1px solid var(--line-strong);font:600 15px/24px var(--font-body);color:var(--text);letter-spacing:normal;text-transform:none}.queue-screen .lc-join:hover:not(:disabled),.queue-screen .lc-join:focus-visible{background:var(--hover);border-color:var(--line-strong);color:var(--text)}.queue-screen .lc-join:disabled{opacity:1;border-style:solid;border-color:var(--line);color:var(--disabled)}.queue-screen .lc-join.hidden{display:none}.queue-toggle{box-sizing:border-box;height:var(--s6);padding:0 var(--s1);display:inline-flex;align-items:center;gap:var(--s1);border:0;text-align:left}.queue-toggle .qt-track{position:relative;flex:none;width:32px;height:16px;background:var(--line-strong)}.queue-toggle .qt-track i{position:absolute;left:0;top:0;width:16px;height:16px;background:var(--ground);transition:left var(--t-fast)}.queue-toggle.on .qt-track{background:var(--accent)}.queue-toggle.on .qt-track i{left:16px}.queue-toggle .qt-label{color:var(--text-2);white-space:nowrap}.queue-toggle .qt-pill{padding:0;background:transparent;font:500 12px/16px var(--font-mono);letter-spacing:.12em;color:var(--text)}.queue-toggle.on .qt-pill{background:transparent;color:var(--text)}.queue-toggle.on{border:0;background:transparent}.queue-toggle:hover:not(:disabled),.queue-toggle:focus-visible{background:var(--hover)}.queue-toggle.gated,.queue-toggle.gated .qt-pill{opacity:1;border:0;background:transparent;cursor:not-allowed}.queue-toggle.gated .qt-track{background:var(--line)}.queue-toggle.gated .qt-label,.queue-toggle.gated .qt-pill{color:var(--disabled);font-size:12px}.queue-toggle.gated .qt-label{font-size:15px}.queue-bar{position:absolute;left:50%;bottom:84px;transform:translate(-50%);z-index:25;pointer-events:auto;box-sizing:border-box;display:flex;align-items:center;gap:var(--s3);padding:var(--s1) var(--s2);max-width:calc(100vw - 2 * var(--s2));background:var(--surface);border:1px solid var(--line);box-shadow:inset 2px 0 0 var(--line-strong);color:var(--text);font:400 15px/24px var(--font-body)}.queue-bar .qb-count{font:600 24px/32px var(--font-display);text-transform:uppercase;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.queue-bar .qb-sub{color:var(--text-2);font-size:15px;letter-spacing:normal}.queue-bar .qb-sub.gated{color:var(--text);font-size:15px;font-weight:600}.queue-bar button.qb-update{box-sizing:border-box;height:var(--s6);padding:0 var(--s3);display:inline-flex;align-items:center;justify-content:center;gap:var(--s1);border:0;background:var(--accent);color:var(--accent-ink);font:600 15px/24px var(--font-body);white-space:nowrap}.queue-bar button.qb-update:hover{filter:brightness(1.08)}.queue-bar button.qb-update:focus-visible{outline-color:var(--accent-ink)}.queue-bar button.qb-update.hidden{display:none}@media(max-width:900px){.queue-screen .q-frame,.queue-screen .q-lobbies{grid-column:1 / -1}.queue-screen .q-lobbies{margin-top:var(--s3)}}@media(max-width:640px){.queue-bar{flex-direction:column;align-items:stretch;gap:var(--s1);bottom:var(--s2)}.queue-screen .lobby-card{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name join" "map join" "badge join" "meta join"}}@media(prefers-reduced-motion:reduce){.queue-toggle .qt-track i{transition:none}}
