@import "https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--ground:#080d14;--panel:#121b27;--panel-2:#1a2634;--line:#2c3d52;--ink:#dde7f2;--muted:#8c9db4;--dim:#74889f;--deep:#0d1622;--rim:#9fc7e8;--cyan:#6fe3ff;--cyan-dim:#2a7f96;--flesh:#d99aa8;--flesh-lit:#ecc0c9;--mauve:#8f6a86;--maroon:#5a2a3c;--ember:#ff5a4a;--olive:#7fd6c0;--olive-dim:#3f7f74;--lobby-green:#5f7a52;--lobby-tan:#b8a483;--torch:#e0a94a;--ok:#62c39a;--gone:#6d2f3f;--steel:#8b9cb2;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--pixel:Silkscreen, var(--mono);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.hud,.dev,.dev-cue{--dim:var(--muted)}*,:before,:after{box-sizing:border-box}html,body,#root{overscroll-behavior:none;height:100%;overflow:hidden}body{background:var(--ground);color:var(--ink);font:13px/1.5 var(--mono);-webkit-font-smoothing:antialiased;margin:0}img,canvas,image{image-rendering:pixelated}h1,h2,h3{font-family:var(--pixel);letter-spacing:.02em;margin:0;font-weight:400}.tabular{font-variant-numeric:tabular-nums}.shell{grid-template-rows:auto 1fr;height:100%;display:grid}.shell:has(>.main>.stage){grid-template-rows:minmax(0,1fr)}.shell:has(>.main>.stage) .header{z-index:10;pointer-events:none;background:0 0;border-bottom:0;position:fixed;top:0;left:0;right:0}.header{border-bottom:1px solid var(--line);background:linear-gradient(var(--panel), var(--ground));align-items:center;gap:12px;padding:10px 16px;display:flex}.wordmark{color:var(--flesh);font-size:18px;font-weight:700}.spacer{flex:1}.dot{border:1px solid var(--line);background:var(--dim);width:7px;height:7px}.dot-live{background:var(--ok);border-color:var(--ok)}.dot-connecting,.dot-joining,.dot-settling{background:var(--torch);border-color:var(--torch)}.dot-stale,.dot-error{background:var(--gone);border-color:var(--flesh)}.main{min-height:0;display:grid;overflow:hidden}.main:has(>.stage){grid-template:minmax(0,1fr)/minmax(0,1fr)}.main>.stage,.main>.stage~*{grid-area:1/1;min-width:0;min-height:0}.main:has(>.card){padding:24px;overflow:auto}.main:has(>.card)>.card{margin:auto}@media (max-width:480px){.main:has(>.card){padding:12px}.main:has(>.card)>.card{padding:20px}}.errorbar{z-index:35;pointer-events:none;border:1px solid var(--maroon);max-width:min(340px,30vw);color:var(--flesh-lit);background:#1d1420;border-radius:3px;padding:8px 10px;font-size:12px;position:fixed;top:50%;right:8px;transform:translateY(-50%);box-shadow:0 8px 26px -10px #000000bf}.shell:has(>.main>.card) .errorbar{max-width:min(560px,100vw - 24px);top:auto;bottom:12px;right:50%;transform:translate(50%)}.stage{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:crosshair;background:radial-gradient(120% 100% at 50% 30%, var(--deep) 0%, var(--ground) 78%);min-height:0;position:relative;overflow:hidden}.stage:after{content:"";pointer-events:none;background:radial-gradient(115% 85% at 50% 34%,#080d1400 52%,#080d149e 100%);position:absolute;inset:0}.card{border:1px solid var(--line);background:var(--panel);flex-direction:column;gap:14px;max-width:560px;padding:28px;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:0;font-size:11px}.card h2{color:var(--flesh-lit);font-size:17px;line-height:1.4}.lede{color:var(--ink);margin:0}.fine{color:var(--muted);margin:0;font-size:11.5px;line-height:1.7}.row{flex-wrap:wrap;gap:10px;display:flex}.btn{font:12px var(--mono);color:var(--ink);background:var(--panel-2);border:1px solid var(--line);cursor:pointer;padding:9px 14px}.btn:hover:not(:disabled){border-color:var(--olive-dim)}.btn:disabled{color:var(--dim);cursor:not-allowed}.btn-primary{color:var(--olive);border-color:var(--olive-dim)}.btn:focus-visible,.skin:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.skins{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.skin{text-align:left;font:12px var(--mono);color:var(--ink);background:var(--panel-2);border:1px solid var(--line);cursor:pointer;flex-direction:column;gap:6px;padding:12px;display:flex}.skin[aria-pressed=true]{border-color:var(--olive)}.skin-chip{border:2px solid var(--line);width:100%;height:22px}.parts{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.parts li,.vent-row{grid-template-columns:11ch minmax(0,1fr) auto;align-items:center;gap:8px;font-size:11.5px;display:grid}.parts li.dead{color:var(--dim);text-decoration:line-through}.meter{background:var(--panel-2);border:1px solid var(--line);height:6px;display:block}.meter-fill{background:var(--mauve);transform-origin:0;width:100%;height:100%;transform:scaleX(var(--fill,0));transition:transform .16s linear;display:block}.shell-bar{contain:layout;gap:2px;min-width:0;display:flex}.shell-seg{flex:1 1 0;min-width:3px;height:8px}.meter.dead{border-color:var(--maroon);background:#17100f}.hr-arrow-charged line,.hr-arrow-trail{stroke:var(--cyan)}.hr-arrow-charged path{fill:var(--cyan)}.hr-arrow-trail{stroke-width:6px;stroke-linecap:round;opacity:.45}.hr-dmg-charged{fill:#ffe873;font-size:26px}.hr-beam{stroke:#fff;stroke-width:5px;stroke-linecap:round}.hr-beam-halo{stroke:var(--cyan);stroke-width:16px;stroke-linecap:round;opacity:.55}.hr-beam-hit{color:#fff}.vent{border:1px solid var(--line);background:var(--panel-2);flex-direction:column;gap:6px;padding:10px;display:flex}.vent-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pill{font:10px var(--pixel);letter-spacing:.08em;border:1px solid var(--line);color:var(--dim);white-space:nowrap;padding:3px 6px}.pill-open{color:var(--olive);border-color:var(--olive-dim)}.cadence{gap:6px;display:flex}.pill-down{color:var(--flesh);border-color:var(--maroon);background:#1d1420}.verdict{border:1px solid var(--line);background:var(--panel-2);flex-direction:column;gap:6px;padding:10px;display:flex}.verdict-label{font:15px var(--pixel);letter-spacing:.14em}.verdict-win{border-color:var(--olive-dim)}.verdict-win .verdict-label{color:var(--olive)}.verdict-wipe{border-color:var(--maroon)}.verdict-wipe .verdict-label{color:var(--flesh)}.verdict-enrage{border-color:var(--torch)}.verdict-enrage .verdict-label{color:var(--torch)}.verdict-ember{border-color:var(--ember)}.verdict-ember .verdict-label{color:var(--ember)}.overlay{z-index:40;background:#05090ee6;place-items:center;padding:24px;display:grid;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.hr-boss-breathe,.hr-boss-eye,.hr-vent-open .hr-boss-vent,.hr-fury .hr-boss-aura,.hr-smoke-wisp,.hr-hell-haze,.hr-hell-glow,.hr-fire-frames,.hr-ring-frames,.hr-thorn-frames,.hr-lock-frames,.hr-hell-erupt,.room-light circle,.room-motes,.fury-wash.is-on{animation-name:none}.meter-fill,.dev-cue,.dev-close{transition:none}}::selection{background:var(--mauve);color:var(--ink)}:root{caret-color:var(--flesh);scrollbar-color:var(--line) transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);border:2px solid var(--ground);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--dim)}.dev-cue{z-index:40;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--line);cursor:pointer;border-radius:2px;align-items:center;gap:6px;padding:5px 9px;font-size:10.5px;transition:color .16s,border-color .16s;display:flex;position:fixed;bottom:12px;right:12px}.dev-cue:hover{color:var(--ink);border-color:var(--muted)}.dev-cue-key{font-family:var(--pixel);color:var(--muted);background:var(--panel-2);border-radius:2px;padding:0 4px}.dev{z-index:40;pointer-events:none;background:color-mix(in srgb, var(--panel) 88%, transparent);border:1px solid var(--line);border-radius:3px;flex-direction:column;gap:14px;width:268px;max-height:calc(100vh - 24px);padding:12px 13px 11px;display:flex;position:fixed;bottom:12px;right:12px;overflow-y:auto;box-shadow:0 10px 34px -8px #000000bf}.dev-head{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;pointer-events:auto;align-items:baseline;gap:6px;display:flex}.dev-head:active{cursor:grabbing}.dev-head h2{font-family:var(--pixel);letter-spacing:.12em;text-transform:uppercase;color:var(--flesh);margin:0;font-size:11px;font-weight:400}.dev-close{color:var(--dim);cursor:pointer;background:0 0;border:0;padding:2px 5px;font-size:11px;line-height:1;transition:color .16s}.dev-close:hover{color:var(--ink)}.dev-group{flex-direction:column;gap:3px;display:flex}.dev-group h3{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-bottom:4px;font-size:9.5px}.dev-row{grid-template-columns:4.6rem auto;align-items:baseline;column-gap:8px;font-size:12px;display:grid}.dev-label{color:var(--muted)}.dev-value{color:var(--ink);font-variant-numeric:tabular-nums;justify-self:end}.dev-unit{color:var(--dim);margin-left:3px;font-size:10px}.dev-note{color:var(--dim);grid-column:1/-1;margin-top:-1px;font-size:10px;line-height:1.5}.dev-value.is-ok{color:var(--ok)}.dev-value.is-warn{color:var(--torch)}.dev-value.is-bad{color:var(--flesh)}.dev-txs{flex-direction:column;gap:2px;margin:4px 0 0;padding:0;list-style:none;display:flex}.dev-tx{grid-template-columns:2.6rem 1fr auto;align-items:baseline;column-gap:6px;font-size:11px;line-height:1.45;display:grid}.dev-tx-kind{color:var(--muted)}.dev-tx-sig{color:var(--dim);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dev-tx-ms{color:var(--ink);font-variant-numeric:tabular-nums;justify-self:end}.dev-tx.is-acked .dev-tx-ms{color:var(--ok)}.dev-tx.is-refused .dev-tx-ms,.dev-tx.is-dropped .dev-tx-ms{color:var(--flesh)}.dev-tx.is-sent .dev-tx-ms{color:var(--torch)}.dev-tx-empty{color:var(--dim);grid-template-columns:1fr;font-size:10px}.dev-foot{border-top:1px solid var(--line);color:var(--dim);margin:0;padding-top:10px;font-size:10px;line-height:1.6}.dev-foot code{color:var(--muted);font-size:10px}.hud-exit{border-color:color-mix(in srgb, var(--ember) 40%, transparent);color:color-mix(in srgb, var(--ember) 70%, var(--ink))}.hud-exit:hover{border-color:var(--ember);color:var(--ember)}.btn-quiet{border-color:color-mix(in srgb, var(--ink) 22%, transparent);color:color-mix(in srgb, var(--ink) 62%, transparent);background:0 0;margin-top:8px}.btn-quiet:hover{border-color:color-mix(in srgb, var(--ink) 42%, transparent);color:var(--ink)}.gate-wanted{fill-opacity:.22;stroke-opacity:.8;animation:1.4s ease-in-out infinite alternate gate-wanted}@keyframes gate-wanted{0%{opacity:.35}to{opacity:1}}@media (prefers-reduced-motion:reduce){.gate-wanted{opacity:.7;animation:none}}.is-in-room #waiting-room{visibility:hidden}.secret-label{font:700 11px var(--pixel);fill:#e6d9bd;letter-spacing:.06em}.secret-caption{font:500 8px var(--mono);fill:#a99f8c;letter-spacing:.04em}.room-text{font:600 5.6px var(--mono);fill:#e6d9bd}.room-text.is-dim{fill:#a99f8c;font-weight:500}.room-text.is-you{fill:#f2cf6b}.door-open{animation:.18s ease-out both door-open}@keyframes door-open{0%{opacity:0}to{opacity:1}}.door-veil{animation:.26s ease-out both door-veil}@keyframes door-veil{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.door-open{animation:none}}.range-dummy{transform-box:fill-box;transform-origin:50% 100%}.range-dummy.is-hit{animation:.32s ease-out dummy-hit}@keyframes dummy-hit{0%{transform:rotate(0)}30%{transform:rotate(-8deg)}65%{transform:rotate(4deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.range-dummy.is-hit{animation:none}}.gate-mark-halo{fill:color-mix(in srgb, var(--tier,var(--torch)) 26%, transparent);stroke:color-mix(in srgb, var(--tier,var(--torch)) 55%, transparent);stroke-width:1.5px}.gate-mark-ink{fill:#ffe6b0}.gate-mark{transform-box:view-box;animation:1.9s ease-in-out infinite gate-bob}@keyframes gate-bob{0%,to{opacity:.85;translate:0}50%{opacity:1;translate:0 -5px}}@media (prefers-reduced-motion:reduce){.gate-mark{opacity:1;animation:none}}.hr-hell-haze{animation:2.2s ease-in-out infinite alternate hr-hell-breathe}.hr-hell-glow{animation:1.3s ease-in-out infinite alternate hr-hell-breathe;animation-delay:calc(var(--i,0) * -.41s)}@keyframes hr-hell-breathe{0%{opacity:.72}to{opacity:1}}.hr-fire-frames{animation:.64s steps(8,end) infinite hr-fire-frames;animation-delay:calc(var(--i,0) * -.17s)}@keyframes hr-fire-frames{0%{transform:translate(0)}to{transform:translateX(var(--strip,-320px))}}.hr-ring-frames{animation:.7s steps(2,end) infinite hr-ring-frames;animation-delay:calc(var(--i,0) * -.23s)}.hr-thorn-frames{animation:.32s steps(2,end) infinite hr-ring-frames;animation-delay:calc(var(--i,0) * -.08s)}.hr-lock-frames{animation:1.5s steps(3,jump-none) forwards hr-fire-frames}@keyframes hr-ring-frames{0%{transform:translate(0)}to{transform:translateX(var(--strip,-216px))}}.hr-hell-erupt{animation:.95s cubic-bezier(.2,.8,.3,1) forwards hr-hell-erupt}@keyframes hr-hell-erupt{0%{opacity:0;transform:scale(.6,.1)}12%{opacity:1;transform:scaleY(1.06)}30%{opacity:1;transform:scale(1)}72%{opacity:1;transform:scale(1)}to{opacity:0;transform:scaleY(.7)}}.hr-hell-glow,.hr-hell-fill{mix-blend-mode:screen}.room-light circle{animation:4s ease-in-out infinite room-flicker;animation-delay:calc(var(--i,0) * -.53s)}@keyframes room-flicker{0%,to{opacity:1}30%{opacity:.87}55%{opacity:.96}75%{opacity:.85}}.room-motes{will-change:transform;animation:32s ease-in-out infinite room-drift}@keyframes room-drift{0%,to{translate:0}33%{translate:9px -14px}66%{translate:-7px -22px}}.hr-smoke{visibility:hidden}.hr-smoke.is-on{visibility:visible}.hr-smoke-chunk{opacity:0;transform-box:fill-box;transform-origin:50%}.hr-smoke-wisp{opacity:.55;animation:3.6s ease-in-out infinite alternate hr-wisp}.hr-smoke-wisp:nth-of-type(2){animation-duration:3.2s;animation-delay:-1.2s}.hr-smoke-wisp:nth-of-type(3){animation-duration:4s;animation-delay:-2.4s}@keyframes hr-wisp{0%{opacity:.45;translate:0}to{opacity:.65;translate:4px -10px}}.hud-rotate{display:none}@media (pointer:coarse){.hud-layer .hud-icon{opacity:.8;width:44px;height:44px;padding:10px}.hud-layer .hud-corner{gap:6px}.hud-layer .hud-hint{white-space:nowrap;left:50%;transform:translate(-50%)}.dev-cue{display:none}}@media (pointer:coarse) and (orientation:portrait){.hud-rotate{z-index:45;pointer-events:auto;font:12px var(--pixel);letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--ink);background:#05090eeb;place-items:center;padding:24px;display:grid;position:fixed;inset:0}}
