#overlay-root{--ov-ink:#1d1b33;--ov-paper:#fff1e8;--ov-card:#7e2553;--ov-accent:#ffd25a;--ov-shade:#771b36;font-family:monospace}.overlay-backdrop{color:var(--ov-paper);font-size:calc(6px * var(--ui-scale,2));background:#1d1b338c;justify-content:center;align-items:center;line-height:1.4;display:flex;position:fixed;inset:0}.overlay-panel{box-sizing:border-box;max-width:min(94vw, calc(200px * var(--ui-scale,2)));max-height:92vh;padding:calc(4px * var(--ui-scale,2));border:calc(1px * var(--ui-scale,2) * 2) solid var(--ov-paper);background:var(--ov-card);box-shadow:0 0 0 calc(1px * var(--ui-scale,2)) var(--ov-ink);image-rendering:pixelated;animation:.12s steps(3,end) both overlay-pop;overflow:auto}.overlay-panel:focus{outline:none}.overlay-panel :focus-visible{outline:calc(1px * var(--ui-scale,2)) solid var(--ov-accent);outline-offset:1px}.overlay-title{color:var(--ov-accent);margin:0 0 .6em;font-size:1.1em}.overlay-body button{font:inherit;color:var(--ov-ink);background:var(--ov-paper);border:calc(1px * var(--ui-scale,2)) solid var(--ov-ink);cursor:pointer;padding:.3em .8em}.overlay-body button:hover{background:var(--ov-accent)}@keyframes overlay-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}#overlay-root.reduced-motion .overlay-panel{animation:none}@media (prefers-reduced-motion:reduce){.overlay-panel{animation:none}}.objective-arrow{align-items:center;gap:calc(1px * var(--ui-scale,2));pointer-events:none;white-space:nowrap;flex-direction:column;display:flex;position:absolute;top:0;left:0}.objective-arrow[hidden]{display:none}.objective-arrow--marker{flex-direction:column-reverse}.objective-arrow__glyph{width:calc(10px * var(--ui-scale,2));height:calc(10px * var(--ui-scale,2));transform:rotate(calc(var(--angle,90) * 1deg));filter:drop-shadow(0 0 0 #1d1b33) drop-shadow(0 0 calc(1px * var(--ui-scale,2)) #1d1b33);display:block}.objective-arrow[data-edge=bottom] .objective-arrow__glyph{order:1}.objective-arrow__glyph:before{content:"";clip-path:polygon(0 10%,100% 50%,0 90%,22% 50%);background:#ffd25a;width:100%;height:100%;display:block}.objective-arrow__name,.objective-arrow__steps{padding:0 calc(2px * var(--ui-scale,2));color:#fff1e8;background:#1d1b33d9;border:1px solid #fff1e8}.objective-arrow__steps{border-top:0}.objective-arrow__steps[hidden]{display:none}@keyframes objective-arrow-bob{0%,to{translate:0}50%{translate:0 calc(1.5px * var(--ui-scale,2) / 2)}}.objective-arrow--marker:not(.is-still) .objective-arrow__glyph{animation:1.2s ease-in-out infinite objective-arrow-bob}.leaderboard{box-sizing:border-box;width:min(30vw, calc(96px * var(--ui-scale,2)))}.leaderboard[hidden]{display:none}.leaderboard__head{color:#ffd25a;white-space:nowrap;font-weight:700}.leaderboard__row{gap:calc(2px * var(--ui-scale,2));white-space:nowrap;grid-template-columns:3ch minmax(0,1fr) auto;display:grid}.leaderboard__rank,.leaderboard__points{text-align:right;font-variant-numeric:tabular-nums}.leaderboard__name{text-overflow:ellipsis;overflow:hidden}.leaderboard__row--mine{color:#ffd25a;font-weight:700}.leaderboard__row--own{margin-top:calc(1px * var(--ui-scale,2));padding-top:calc(1px * var(--ui-scale,2));border-top:calc(1px * var(--ui-scale,2)) solid #696c83}.leaderboard__hint{color:#fff4b8}.hud-widget--meters .hud-meter{grid-template-columns:1.2em 1fr 3ch 3ch}.hud-meter__fill{transition:width .4s steps(4,end)}.hud-meter__delta{text-align:right;min-width:3ch;font-weight:700}.hud-meter--up .hud-meter__delta{color:#9ad46e}.hud-meter--down .hud-meter__delta{color:#ff8a80}.hud-meter--up .hud-meter__fill{background:#c6f09c}.hud-meter--down .hud-meter__fill{background:#ff8a80}.hud-meter--low .hud-meter__value{color:#ff8a80}.hud-meter--low .hud-meter__fill{background:#ffa300}.hud-meter.is-still .hud-meter__fill{transition:none}@media (prefers-reduced-motion:reduce){.hud-meter__fill{transition:none}}.incident-banner{top:calc(4px * var(--ui-scale,2));box-sizing:border-box;width:min(38vw, calc(170px * var(--ui-scale,2)));padding:calc(2px * var(--ui-scale,2)) calc(3px * var(--ui-scale,2));border:calc(1px * var(--ui-scale,2)) solid #fff1e8;box-shadow:0 0 0 calc(1px * var(--ui-scale,2)) #1d1b33;color:#fff1e8;pointer-events:none;background:#7e2553;position:absolute;left:50%;transform:translate(-50%)}.incident-banner--resolved{background:#1f6b4a}.incident-banner--expired{background:#464a5f}.incident-banner__head{align-items:center;gap:calc(2px * var(--ui-scale,2));white-space:nowrap;display:flex}.incident-banner__chip{padding:0 calc(2px * var(--ui-scale,2));color:#1d1b33;background:#ffd25a;font-weight:700}.incident-banner--resolved .incident-banner__chip{background:#9ad46e}.incident-banner--expired .incident-banner__chip{background:#c2c3c7}.incident-banner__title{text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.incident-banner__timer{color:#ffd25a}.incident-banner--urgent .incident-banner__timer{color:#ff8a80}.incident-banner__line{margin-top:calc(1px * var(--ui-scale,2));color:#fff4b8}.incident-banner__bar{height:calc(5px * var(--ui-scale,2));margin-top:calc(2px * var(--ui-scale,2));background:#1d1b33;position:relative}.incident-banner__fill{background:#ffd25a;height:100%;transition:width .3s steps(4,end)}.incident-banner__count{text-align:center;font-size:.85em;line-height:calc(5px * var(--ui-scale,2));color:#fff1e8;text-shadow:1px 0 #1d1b33,-1px 0 #1d1b33,0 1px #1d1b33,0 -1px #1d1b33;position:absolute;inset:0}.incident-banner.is-new{animation:.36s steps(4,end) both incident-drop}.incident-banner--urgent.incident-banner--active{animation:1s steps(2,end) infinite incident-pulse}@keyframes incident-drop{0%{transform:translate(-50%,-120%)}to{transform:translate(-50%)}}@keyframes incident-pulse{50%{border-color:#ff8a80}}.incident-banner.is-still,.incident-banner.is-still .incident-banner__fill{transition:none;animation:none}@media (prefers-reduced-motion:reduce){.incident-banner.incident-banner,.incident-banner--urgent.incident-banner--active,.incident-banner__fill{transition:none;animation:none}}.quest-tracker{box-sizing:border-box;width:100%;min-width:calc(110px * var(--ui-scale,2));max-width:calc(130px * var(--ui-scale,2));max-height:calc(60px * var(--ui-scale,2));font:inherit;text-align:left;color:#fff1e8;cursor:pointer;display:block;overflow:hidden}.quest-tracker:hover{border-color:#ffd25a}.quest-tracker:focus-visible{outline:calc(1px * var(--ui-scale,2)) solid #ffd25a}.quest-tracker__head{align-items:baseline;gap:calc(2px * var(--ui-scale,2));white-space:nowrap;display:flex}.quest-tracker__title{text-overflow:ellipsis;color:#ffd25a;flex:1;font-weight:700;overflow:hidden}.quest-tracker__steps,.quest-tracker__key{color:#c2c3c7}.quest-tracker__key kbd{padding:0 calc(1px * var(--ui-scale,2));color:#1d1b33;font:inherit;background:#ffd25a}.quest-tracker__line{gap:calc(2px * var(--ui-scale,2));margin-top:calc(1px * var(--ui-scale,2));display:flex}.quest-tracker__text{flex:1}.quest-tracker__count{color:#ffd25a;white-space:nowrap}.quest-tracker__bar{height:calc(2px * var(--ui-scale,2));margin-top:calc(1px * var(--ui-scale,2));background:#464a5f}.quest-tracker__fill{background:#ffd25a;height:100%}.quest-tracker.is-moved{animation:.9s steps(3,end) both quest-moved}@keyframes quest-moved{0%,66%{background:#7e2553eb;border-color:#ffd25a}}.quest-tracker.is-still{animation:none}@media (prefers-reduced-motion:reduce){.quest-tracker.is-moved{animation:none}}.quest-log{width:min(94vw, calc(200px * var(--ui-scale,2)))}.quest-log__intro,.quest-log__giver,.quest-log__summary,.quest-log__empty{margin:0 0 .5em}.quest-log__intro,.quest-log__giver{color:#dde8f6}.quest-log__list{flex-direction:column;gap:.6em;margin-bottom:.6em;display:flex}.quest-log__quest{border:calc(1px * var(--ui-scale,2)) solid #fff1e8;background:#1d1b3373;padding:.4em .6em}.quest-log__quest--completed{opacity:.75}.quest-log__title{color:#ffd25a;justify-content:space-between;gap:1em;margin:0 0 .3em;font-size:1em;display:flex}.quest-log__status{color:#1d1b33;background:#fff1e8;padding:0 .3em;font-size:.85em}.quest-log__quest--completed .quest-log__status{background:#9ad46e}.quest-log__steps{margin:0;padding:0;list-style:none}.quest-log__step{grid-template-columns:1.4em 1fr auto;gap:.4em;display:grid}.quest-log__step--done{color:#9ad46e}.quest-log__step--current{color:#fff4b8;font-weight:700}.quest-log__step--todo{color:#c2c3c7}.quest-log__count{color:#ffd25a}.settings-form{flex-direction:column;gap:.8em;min-width:22em;display:flex}.settings-form fieldset{border:1px solid #fff1e8;margin:0;padding:.4em .6em}.settings-form legend{color:#ffd25a;padding:0 .3em}.settings-help{color:#dde8f6;margin:.2em 0 0}.settings-row{grid-template-columns:1fr auto 4ch;align-items:center;gap:.6em;display:grid}.settings-row output{text-align:right}.settings-choice{align-items:center;gap:.3em;margin-right:1em;display:inline-flex}#overlay-root .overlay-panel input[type=radio],#overlay-root .overlay-panel input[type=checkbox],#overlay-root .overlay-panel input[type=range]{accent-color:var(--ov-accent)}.team-badge{align-items:center;gap:calc(2px * var(--ui-scale,2));white-space:nowrap;display:flex}.team-badge[hidden]{display:none}.team-badge__swatch{width:calc(5px * var(--ui-scale,2));height:calc(5px * var(--ui-scale,2));border:calc(1px * var(--ui-scale,2)) solid #fff1e8;flex:none}.team-badge__name{text-overflow:ellipsis;overflow:hidden}.voice-widget{align-items:flex-start;gap:calc(1px * var(--ui-scale,2));white-space:nowrap;flex-direction:column;display:flex}.voice-widget[hidden],.voice-widget [hidden]{display:none}.voice-widget__state{font:inherit;color:#ffd25a;cursor:pointer;background:0 0;border:none;padding:0;font-weight:700}.voice-widget[data-status=live] .voice-widget__state{color:#7ee07e}.voice-widget[data-status=unavailable] .voice-widget__state,.voice-widget[data-status=reconnecting] .voice-widget__state{color:#ff8a80}.voice-widget__state:focus-visible{outline:calc(1px * var(--ui-scale,2)) solid #ffd25a;outline-offset:1px}.voice-widget__team{align-items:center;gap:calc(2px * var(--ui-scale,2));display:flex}.voice-widget__swatch{width:calc(5px * var(--ui-scale,2));height:calc(5px * var(--ui-scale,2));border:calc(1px * var(--ui-scale,2)) solid #fff1e8;flex:none}.voice-widget__mic.is-live,.voice-widget__radio.is-live{color:#7ee07e;font-weight:700}.voice-widget__mic.is-live:before,.voice-widget__radio.is-live:before{content:"● "}#hud{z-index:5;pointer-events:none;font-family:monospace;font-size:max(9px, calc(6px * var(--ui-scale,2)));color:#fff1e8;line-height:1.3;position:fixed;inset:0}.hud-slot{gap:calc(2px * var(--ui-scale,2));max-width:30vw;margin:calc(4px * var(--ui-scale,2));flex-direction:column;display:flex;position:absolute}.hud-slot[data-slot=top-left]{align-items:flex-start;max-width:24vw;top:0;left:0}.hud-slot[data-slot=top-right]{align-items:flex-end;top:0;right:0}.hud-slot[data-slot=bottom-left]{align-items:flex-start;bottom:0;left:0}.hud-slot[data-slot=bottom-right]{align-items:flex-end;bottom:0;right:0}.hud-widget{pointer-events:auto}.hud-panel{padding:calc(2px * var(--ui-scale,2)) calc(3px * var(--ui-scale,2));border:calc(1px * var(--ui-scale,2)) solid #fff1e8;box-shadow:0 0 0 calc(1px * var(--ui-scale,2)) #1d1b33;background:#1d1b33d1}.hud-chip{padding:0 calc(2px * var(--ui-scale,2));margin-right:calc(2px * var(--ui-scale,2));color:#1d1b33;background:#ffd25a;font-weight:700;display:inline-block}.hud-clock{margin-left:calc(3px * var(--ui-scale,2));color:#ffd25a}.hud-objective{color:#fff4b8}.hud-meter{align-items:center;gap:calc(2px * var(--ui-scale,2));white-space:nowrap;grid-template-columns:1.2em 1fr 3ch;display:grid}.hud-meter__bar{height:calc(2px * var(--ui-scale,2));background:#464a5f;grid-column:1/-1}.hud-meter__bar--empty{background:repeating-linear-gradient(90deg, #696c83 0 calc(2px * var(--ui-scale,2)), transparent 0 calc(4px * var(--ui-scale,2)))}.hud-meter__fill{background:#9ad46e;height:100%}.hud-meter__value{text-align:right}.hud-button{font:inherit;padding:calc(1px * var(--ui-scale,2)) calc(3px * var(--ui-scale,2));color:#1d1b33;border:calc(1px * var(--ui-scale,2)) solid #1d1b33;cursor:pointer;background:#fff1e8}.hud-button:hover{background:#ffd25a}.hud-button:focus-visible{outline:calc(1px * var(--ui-scale,2)) solid #ffd25a;outline-offset:1px}.overlay-panel.task-host{max-width:min(96vw, calc(260px * var(--ui-scale,2)));max-height:98vh;padding:calc(2px * var(--ui-scale,2)) calc(3px * var(--ui-scale,2));position:relative}.task-host .overlay-title{margin:0 0 .3em;padding-right:9em}.task-host__bar{top:calc(2px * var(--ui-scale,2));right:calc(3px * var(--ui-scale,2));align-items:center;gap:.5em;display:flex;position:absolute}.task-host__difficulty{color:#1d1b33;background:#ffd25a;padding:0 .5em}.task-host__timer{text-align:right;color:#1d1b33;font-variant-numeric:tabular-nums;background:#fff1e8;min-width:4ch;padding:0 .5em}.task-host__timer--urgent{color:#fff1e8;background:#e8484d;animation:.8s ease-in-out infinite alternate task-host-urgent}.task-host__timer--urgent:before{content:"! "}.task-host__timer--urgent.is-still{animation:none}@keyframes task-host-urgent{to{background:#a02a2e}}@media (prefers-reduced-motion:reduce){.task-host__timer--urgent{animation:none}}.task-host__view{font-size:14px}.task-host__view>*{margin-top:0;margin-bottom:0}.task-toast{left:50%;top:calc(4px * var(--ui-scale,2));z-index:5000;max-width:min(90vw, calc(180px * var(--ui-scale,2)));padding:calc(3px * var(--ui-scale,2)) calc(5px * var(--ui-scale,2));font-family:monospace;font-size:calc(6px * var(--ui-scale,2));color:#fff1e8;border:calc(1px * var(--ui-scale,2) * 2) solid #fff1e8;box-shadow:0 0 0 calc(1px * var(--ui-scale,2)) #1d1b33;pointer-events:none;background:#1d1b33;flex-direction:column;gap:.2em;line-height:1.35;animation:.16s steps(3,end) both task-toast-in;display:flex;position:fixed;transform:translate(-50%)}.task-toast[hidden]{display:none}.task-toast--still{animation:none}.task-toast--success{background:#265e43;border-color:#ffd25a}.task-toast--failure{background:#b22a3e}.task-toast__title{color:#ffd25a}.task-toast--failure .task-toast__title{color:#fff1e8}@keyframes task-toast-in{0%{opacity:0;transform:translate(-50%,-40%)}}@media (prefers-reduced-motion:reduce){.task-toast{animation:none}}.dialogue .overlay-panel,.overlay-panel.dialogue{width:min(94vw, calc(180px * var(--ui-scale,2)))}.dialogue-body{gap:calc(4px * var(--ui-scale,2));align-items:flex-start;min-height:5em;display:flex}.dialogue-portrait{image-rendering:pixelated;box-sizing:content-box;background-color:#1d1b33;background-repeat:no-repeat;border:2px solid #fff1e8;flex:none}.dialogue-text{white-space:pre-wrap;flex:1;min-height:4em}.dialogue-footer{align-items:center;gap:1em;margin-top:.6em;display:flex}.dialogue-counter{color:#dde8f6}.dialogue-hint{color:#fff4b8;margin-left:auto}.dialogue-hint kbd{color:#1d1b33;background:#fff1e8;border:2px solid #1d1b33;border-radius:2px;padding:0 .4em}.overlay-panel.dialogue--sign{background:#6c3e26;border-color:#cf9461}.overlay-panel.dialogue--station{background:#264e6b;border-color:#78c6e8;font-family:monospace}.location-banner{z-index:5;color:#fff1e8;letter-spacing:.08em;text-transform:uppercase;pointer-events:none;opacity:0;background:#7e2553;border:3px solid #fff1e8;padding:.4rem 1.4rem;font:700 18px/1.3 monospace;transition:opacity .25s,transform .25s;position:fixed;top:12%;left:50%;transform:translate(-50%,-8px);box-shadow:0 0 0 3px #000}.location-banner.is-shown{opacity:1;transform:translate(-50%)}.location-banner.reduced-motion,.location-banner.reduced-motion.is-shown{transition:none;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.location-banner,.location-banner.is-shown{transition:none;transform:translate(-50%)}}.location-blurb{z-index:5;box-sizing:border-box;max-width:min(90vw, calc(220px * var(--ui-scale,2)));color:#fff1e8;text-align:center;pointer-events:none;opacity:0;background:#1d1b33;border:3px solid #fff1e8;padding:.3rem 1rem;font:13px/1.35 monospace;transition:opacity .25s,transform .25s;position:fixed;top:calc(12% + 3.2rem);left:50%;transform:translate(-50%,-8px);box-shadow:0 0 0 3px #000}.location-blurb.is-shown{opacity:1;transform:translate(-50%)}.location-blurb.reduced-motion,.location-blurb.reduced-motion.is-shown{transition:none;transform:translate(-50%)}body:has(.incident-banner:not([hidden])) .location-banner{top:calc(34px * var(--ui-scale,2))}body:has(.incident-banner:not([hidden])) .location-blurb{top:calc(34px * var(--ui-scale,2) + 3.2rem)}@media (prefers-reduced-motion:reduce){.location-blurb,.location-blurb.is-shown{transition:none;transform:translate(-50%)}}#story-ui{--u:calc(1px * var(--ui-scale,2));z-index:6;pointer-events:none;font-family:monospace;font-size:calc(6px * var(--ui-scale,2));color:#fff1e8;line-height:1.3;position:fixed;inset:0}.story-beat{box-sizing:border-box;width:min(72vw, calc(210px * var(--ui-scale,2)));padding:calc(4 * var(--u)) calc(6 * var(--u));text-align:center;border:var(--u) solid #ffd25a;box-shadow:0 0 0 var(--u) #1d1b33, 0 calc(2 * var(--u)) 0 calc(var(--u)) #1d1b3399;background:#1d1b33;position:absolute;top:22%;left:50%;transform:translate(-50%)}.story-beat.is-new:not(.is-still){animation:.26s steps(4,end) both story-beat-in}.story-beat__chip{padding:0 calc(3 * var(--u));color:#1d1b33;letter-spacing:.1em;background:#ffd25a;font-weight:700;display:inline-block}.story-beat__speaker{margin-top:calc(2 * var(--u));color:#78c6e8;font-weight:700}.story-beat__title{margin-top:calc(2 * var(--u));color:#fff4b8;text-shadow:var(--u) var(--u) 0 #771b36;font-size:1.5em;font-weight:700}.story-beat__text{margin-top:calc(2 * var(--u))}.story-beat__where{margin-top:calc(3 * var(--u));color:#ffd25a}.story-beat__where:before{content:"▶ "}.story-beat--alert{width:min(86vw, calc(250px * var(--ui-scale,2)));border-color:#ff9b8c;border-width:calc(2 * var(--u));background:#771b36}.story-beat--alert .story-beat__chip{color:#fff1e8;background:#e8484d}.story-beat--alert .story-beat__title{color:#fff1e8;text-shadow:var(--u) var(--u) 0 #1d1b33;font-size:1.7em}.story-beat--celebrate{background:#265e43;border-color:#9ad46e}.story-beat--celebrate .story-beat__chip{background:#9ad46e}.story-beat--alert.is-new:not(.is-still) .story-beat__chip{animation:.5s step-end 6 story-blink}@keyframes story-beat-in{0%{opacity:0;transform:translate(-50%,-30%)}to{opacity:1;transform:translate(-50%)}}@keyframes story-blink{50%{color:#771b36;background:#fff1e8}}.finale-bar{bottom:calc(4 * var(--u));box-sizing:border-box;width:min(62vw, calc(236px * var(--ui-scale,2)));padding:calc(2 * var(--u)) calc(3 * var(--u));border:var(--u) solid #fff1e8;box-shadow:0 0 0 var(--u) #1d1b33;background:#771b36;position:absolute;left:50%;transform:translate(-50%)}.finale-bar__head{align-items:center;gap:calc(2 * var(--u));white-space:nowrap;display:flex}.finale-bar__chip{padding:0 calc(2 * var(--u));background:#e8484d;font-weight:700}.finale-bar__title{text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.finale-bar__count{color:#ffd25a;font-weight:700}.finale-bar__bar{height:calc(6 * var(--u));margin-top:calc(2 * var(--u));border:var(--u) solid #b22a3e;background:#1d1b33}.finale-bar__fill{background:repeating-linear-gradient(90deg, #ffd25a 0 calc(4 * var(--u)), #eaa33c calc(4 * var(--u)) calc(5 * var(--u)));height:100%;transition:width .3s steps(4,end)}.finale-bar.is-still .finale-bar__fill{transition:none}.finale-bar.is-moved:not(.is-still) .finale-bar__bar{animation:.4s steps(2,end) finale-pulse}.finale-bar__objectives{gap:calc(2 * var(--u));margin-top:calc(2 * var(--u));grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.finale-objective{min-width:0;padding:var(--u) calc(2 * var(--u));background:#1d1b33}.finale-objective__place{overflow-wrap:anywhere;color:#fff4b8;min-height:2lh;display:block}.finale-objective__count{font-weight:700;display:block}.finale-objective__bar{height:calc(2 * var(--u));margin-top:var(--u);background:#464a5f}.finale-objective__fill{background:#ffd25a;height:100%}.finale-objective--done{background:#265e43}.finale-objective--done .finale-objective__count{color:#9ad46e}.finale-objective--done .finale-objective__fill{background:#9ad46e}.finale-bar--complete{background:#265e43}.finale-bar--complete .finale-bar__chip{color:#1d1b33;background:#9ad46e}@keyframes finale-pulse{50%{border-color:#fff4b8}}.results-reopen{bottom:calc(4 * var(--u));padding:var(--u) calc(4 * var(--u));font:inherit;color:#1d1b33;border:var(--u) solid #fff1e8;box-shadow:0 0 0 var(--u) #1d1b33;cursor:pointer;pointer-events:auto;background:#ffd25a;font-weight:700;position:absolute;left:50%;transform:translate(-50%)}.overlay-panel.results{--u:calc(1px * var(--ui-scale,2));width:min(94vw, calc(230px * var(--ui-scale,2)));max-width:min(94vw, calc(230px * var(--ui-scale,2)));font-size:calc(6px * var(--ui-scale,2));text-align:center;background:#1f6b4a;border-color:#ffd25a;position:relative;overflow-x:hidden}.overlay-panel.results .overlay-title{color:#fff4b8;text-shadow:var(--u) var(--u) 0 #1d1b33;font-size:1.8em;position:relative}.results--failure.overlay-panel{background:#464a5f;border-color:#c4effa}.results__scene{inset:var(--u) var(--u) auto;height:calc(40 * var(--u));pointer-events:none;position:absolute;overflow:hidden}.results__confetti{top:calc(-4 * var(--u));left:calc(var(--i) * 5.5%);width:calc(2 * var(--u));height:calc(3 * var(--u));background:#ffd25a;position:absolute}.results__scene:not(.is-still) .results__confetti{animation:2.4s steps(12,end) infinite results-fall;animation-delay:calc(var(--i) * -.37s)}.results__scene.is-still .results__confetti{top:calc(mod(var(--i) * 7, 30) * var(--u))}.results__confetti:nth-child(3n){background:#e8484d}.results__confetti:nth-child(3n+1){background:#78c6e8}@keyframes results-fall{to{transform:translateY(calc(44 * var(--u))) rotate(180deg)}}.results__bus{top:calc(4 * var(--u));width:calc(30 * var(--u));height:calc(12 * var(--u));background:linear-gradient(#c4effa, #c4effa) calc(4 * var(--u)) calc(2 * var(--u)) / calc(5 * var(--u)) calc(4 * var(--u)) no-repeat, linear-gradient(#c4effa, #c4effa) calc(11 * var(--u)) calc(2 * var(--u)) / calc(5 * var(--u)) calc(4 * var(--u)) no-repeat, linear-gradient(#c4effa, #c4effa) calc(18 * var(--u)) calc(2 * var(--u)) / calc(5 * var(--u)) calc(4 * var(--u)) no-repeat, #ffd25a;border:var(--u) solid #1d1b33;position:absolute;left:100%}.results__scene:not(.is-still) .results__bus{animation:6s steps(40,end) infinite results-drive}.results__scene.is-still .results__bus{left:calc(50% - 15 * var(--u))}.results__bus-santa{top:calc(1 * var(--u));left:calc(18 * var(--u));width:calc(5 * var(--u));height:calc(3 * var(--u));box-shadow:0 calc(-1 * var(--u)) 0 0 #fff1e8;background:#e8484d;position:absolute}.results__bus-wheel{bottom:calc(-3 * var(--u));left:calc(4 * var(--u));width:calc(4 * var(--u));height:calc(4 * var(--u));background:#1d1b33;position:absolute}.results__bus-wheel:last-child{left:calc(21 * var(--u))}@keyframes results-drive{to{left:calc(-34 * var(--u))}}.results__rating{margin-top:calc(16 * var(--u));padding:0 calc(4 * var(--u));color:#1d1b33;background:#ffd25a;font-weight:700;display:inline-block;position:relative}.results__message{margin:calc(3 * var(--u)) 0;color:#fff1e8;position:relative}.results__meters{gap:var(--u);margin:calc(3 * var(--u)) 0;text-align:left;display:grid}.results-meter{align-items:center;gap:calc(2 * var(--u));grid-template-columns:max-content 1fr 2.2em;display:grid}.results-meter__bar{height:calc(4 * var(--u));background:#1d1b33}.results-meter__fill{background:#9ad46e;height:100%}.results-meter[data-meter=satisfaction] .results-meter__fill{background:#ff9b8c}.results-meter[data-meter=stability] .results-meter__fill{background:#78c6e8}.results-meter[data-meter=spirit] .results-meter__fill{background:#ffd25a}.results-meter__label{white-space:nowrap}.results-meter__value{text-align:right;font-weight:700}.results__stats{gap:calc(2 * var(--u));grid-template-columns:repeat(3,1fr);display:grid}.results-stat{padding:calc(2 * var(--u));background:#1d1b338c}.results-stat__value{color:#fff4b8;font-size:1.4em;font-weight:700}.results__heading{margin:calc(4 * var(--u)) 0 calc(2 * var(--u));color:#ffd25a;font-size:1.1em}.results__grid{grid-template-columns:repeat(auto-fill, minmax(calc(70 * var(--u)), 1fr));gap:calc(2 * var(--u));text-align:left;display:grid}.results-award{padding:calc(2 * var(--u)) calc(3 * var(--u));border:var(--u) solid #3a8150;background:#1d1b33;position:relative}.results-award.is-mine{background:#3c2a12;border-color:#ffd25a}.results-award__mine{float:right;color:#ffd25a;font-weight:700}.results-award__title{color:#fff4b8;font-weight:700}.results-award__desc{color:#c2c3c7}.results-award__winners{margin-top:var(--u);color:#9ad46e}.overlay-body .results__close{margin-top:calc(4 * var(--u));font-weight:700}.overlay-panel.character{width:min(96vw,46em);max-width:none}.character-form{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.8em;display:grid}.character-options{flex-direction:column;grid-area:1/2;gap:.4em;max-height:calc(92vh - 5em);display:flex;overflow-y:auto}.character-aside{flex-direction:column;grid-area:1/1;gap:.5em;min-width:7em;display:flex}.character-form input{accent-color:#ffd25a}.character-form fieldset{border:1px solid #fff1e8;margin:0;padding:.4em .6em}.character-form legend{color:#ffd25a;padding:0 .3em}.character-choice{white-space:nowrap;align-items:center;gap:.3em;margin-right:1em;display:inline-flex}.character-preview{width:64px;height:96px;image-rendering:pixelated;align-self:center}.character-form button{font:inherit;color:#fff1e8;cursor:pointer;background:#1d1b33;border:2px solid #fff1e8;padding:.3em .6em}.character-form button:hover{color:#1d1b33;background:#ffd25a}.join-overlay{z-index:10;color:#fff1e8;background:#1d2b53;justify-content:center;align-items:center;font:16px/1.4 monospace;display:flex;position:fixed;inset:0}.join-overlay[hidden]{display:none}.join-card{background:#7e2553;border:3px solid #fff1e8;width:min(92vw,24rem);padding:1.5rem;box-shadow:0 0 0 3px #000}.join-card h1{margin:0 0 1rem;font-size:1.1rem}.join-card h2{margin:0 0 .5rem;font-size:1rem}.join-form{flex-direction:column;gap:.5rem;display:flex}.join-form[hidden],.join-error[hidden]{display:none}.join-card input,.join-card button{box-sizing:border-box;font:inherit;color:#fff1e8;background:#000;border:2px solid #fff1e8;padding:.5rem .6rem}.join-card button{cursor:pointer;color:#fff1e8;background:#ff004d;font-weight:700}.join-card button:disabled,.join-card input:disabled{opacity:.6;cursor:default}.join-card input:focus-visible,.join-card button:focus-visible{outline-offset:2px;outline:3px solid #ffec27}.join-status{min-height:1.4em;margin:.75rem 0 0}.join-card .join-preview{width:64px;height:96px;image-rendering:pixelated;background:0 0;border:0;align-self:center;padding:0}.join-card button.join-customize{background:#000;font-weight:400}.reconnect-overlay{z-index:4000;pointer-events:auto;background:#1d1b3366;position:fixed;inset:0}.reconnect-overlay[hidden]{display:none}.reconnect-overlay__pill{left:50%;top:calc(4px * var(--ui-scale,2));max-width:min(90vw, calc(180px * var(--ui-scale,2)));padding:calc(3px * var(--ui-scale,2)) calc(5px * var(--ui-scale,2));font-family:monospace;font-size:calc(6px * var(--ui-scale,2));color:#fff1e8;border:calc(1px * var(--ui-scale,2) * 2) solid #fff1e8;box-shadow:0 0 0 calc(1px * var(--ui-scale,2)) #1d1b33;background:#1d1b33;line-height:1.35;position:absolute;transform:translate(-50%)}.reconnect-overlay__dots{vertical-align:bottom;width:3ch;display:inline-block;overflow:hidden}.reconnect-overlay:not(.is-still) .reconnect-overlay__dots{animation:1.2s steps(4,end) infinite reconnect-dots}@keyframes reconnect-dots{0%{width:0}to{width:3ch}}
