.chatpanel{--chatpanel-tap:2.75rem;--chatpanel-gap:.375rem;gap:var(--chatpanel-gap);border:1px solid var(--edge);background:var(--surface);border-radius:.5rem;flex-direction:column;margin-top:1rem;padding:.75rem;display:flex}.chatpanel__head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chatpanel__title{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0;font-size:.6875rem;font-weight:600}.chatpanel__tabs{gap:.25rem;display:flex}.chatpanel__tab{min-height:var(--chatpanel-tap);border:1px solid var(--edge);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 .75rem;font-size:.8125rem}.chatpanel__tab--on{border-color:var(--action);background:color-mix(in srgb, var(--action) 30%, transparent);color:var(--text);font-weight:600}.chatpanel__tab:focus-visible,.chatpanel__input:focus-visible,.chatpanel__send:focus-visible{outline:2px solid var(--action);outline-offset:2px}.chatpanel__lines{overscroll-behavior:contain;flex-direction:column;gap:.25rem;max-height:14rem;display:flex;overflow-y:auto}.chatpanel__line{overflow-wrap:anywhere;margin:0;font-size:.875rem;line-height:1.4}.chatpanel__who{color:var(--text);margin-right:.375rem;font-weight:600}.chatpanel__line--mine .chatpanel__who{color:color-mix(in srgb, var(--action) 45%, var(--text))}.chatpanel__at{font-variant-numeric:tabular-nums;color:var(--muted);margin-right:.375rem;font-size:.6875rem}.chatpanel__text{color:var(--text)}.chatpanel__empty,.chatpanel__divider,.chatpanel__notice,.chatpanel__count{color:var(--muted);margin:0;font-size:.75rem}.chatpanel__divider{border-bottom:1px dashed var(--edge);text-align:center;padding-bottom:.25rem}.chatpanel__notice{border-left:3px solid var(--panic);background:color-mix(in srgb, var(--panic) 18%, transparent);color:var(--text);border-radius:0 .25rem .25rem 0;padding:.375rem .5rem}.chatpanel__composer{gap:var(--chatpanel-gap);flex-direction:column;display:flex}.chatpanel__row{gap:var(--chatpanel-gap);display:flex}.chatpanel__input{min-width:0;min-height:var(--chatpanel-tap);border:1px solid var(--edge);background:var(--bg);color:var(--text);font:inherit;border-radius:.5rem;flex:auto;padding:0 .75rem;font-size:1rem}.chatpanel__send{min-height:var(--chatpanel-tap);border:1px solid var(--edge);background:color-mix(in srgb, var(--action) 40%, var(--surface));color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;flex:none;padding:0 1rem;font-size:.875rem}.chatpanel__input:disabled,.chatpanel__send:disabled{opacity:.4;cursor:default}.chatpanel__count{text-align:right}.lanes{--lanes-obstacle:color-mix(in srgb, var(--obstacle) 70%, var(--text));--lanes-flow:color-mix(in srgb, var(--action) 70%, var(--text));--lanes-pick:color-mix(in srgb, var(--defense) 75%, var(--text));align-items:stretch;gap:.25rem;display:flex}.lanes__lane{border:1px solid var(--edge);background:var(--surface);min-height:4.5rem;color:var(--text);font:inherit;text-align:center;border-radius:.625rem;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:.125rem;padding:.5rem .375rem;display:flex}.lanes__lane[disabled]{opacity:1;cursor:default;-webkit-text-fill-color:currentColor}.lanes__lane--me{border-color:var(--text);flex:1.2 1 0}.lanes__lane--vacant{color:var(--muted);border-style:dotted}.lanes__lane--sealed{border-style:dashed;border-color:var(--lanes-obstacle)}.lanes__lane--downstream{box-shadow:inset 0 -2px 0 var(--lanes-flow)}.lanes__lane--pickable{border-color:var(--lanes-pick);background:color-mix(in srgb, var(--defense) 30%, var(--surface));cursor:pointer}.lanes__lane:focus-visible{outline:2px solid var(--text);outline-offset:2px}.lanes__name{font-size:.875rem;font-weight:600}.lanes__meta{color:var(--muted);font-size:.625rem}.lanes__tag{color:var(--lanes-obstacle);font-size:.625rem}.lanes__gate{flex-direction:column;flex:0 0 2rem;justify-content:center;align-items:center;gap:.125rem;display:flex;position:relative}.lanes__wall{color:var(--lanes-obstacle);font-size:.875rem;line-height:1}.lanes__doors{color:var(--lanes-obstacle);font-size:.625rem;font-weight:700;line-height:1}.lanes__arrow{color:var(--muted);font-size:1rem;line-height:1}.lanes__gate--flow .lanes__arrow{color:var(--lanes-flow);font-weight:700}.lanes__sr{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.lanes__notice{border:1px dotted var(--edge);background:var(--surface);color:var(--muted);text-align:center;border-radius:.625rem;flex:auto;margin:0;padding:.75rem;font-size:.8125rem}@media (prefers-reduced-motion:no-preference){.lanes__lane{animation:.15s ease-out lanes-in}@keyframes lanes-in{0%{opacity:0}to{opacity:1}}}.emotebar{--emotebar-tap:2.75rem;flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}.emotebar__open{min-height:var(--emotebar-tap);border:1px solid var(--edge);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;align-self:flex-start;padding:0 1rem;font-size:.875rem}.emotebar__picker{border:1px solid var(--edge);background:var(--surface);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.emotebar__aim{border:0;margin:0;padding:0}.emotebar__legend{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:.375rem;padding:0;font-size:.6875rem}.emotebar__chips{flex-wrap:wrap;gap:.375rem;display:flex}.emotebar__chip{min-height:var(--emotebar-tap);border:1px solid var(--edge);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 .75rem;font-size:.8125rem}.emotebar__chip--on{border-color:var(--action);background:color-mix(in srgb, var(--action) 30%, transparent);color:var(--text);font-weight:600}.emotebar__row{flex-wrap:wrap;gap:.375rem;display:flex}.emotebar__emote{min-height:var(--emotebar-tap);border:1px solid var(--edge);background:var(--bg);color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;flex-direction:column;flex:4.5rem;align-items:center;gap:.125rem;padding:.375rem .5rem;display:flex}.emotebar__glyph{font-size:1.125rem;line-height:1}.emotebar__label{color:var(--muted);font-size:.6875rem}.emotebar__open:disabled,.emotebar__emote:disabled{opacity:.4;cursor:default}.emotebar__open:focus-visible,.emotebar__chip:focus-visible,.emotebar__emote:focus-visible{outline:2px solid var(--action);outline-offset:2px}.emotefeed{border:1px solid var(--edge);background:var(--surface);border-radius:.5rem;flex-direction:column;gap:.25rem;margin-top:.5rem;padding:.375rem .5rem;display:flex}.emotefeed__row{align-items:baseline;gap:.5rem;margin:0;font-size:.8125rem;line-height:1.4;display:flex}.emotefeed__glyph{flex:none;font-size:1rem;line-height:1}.emotefeed__label{color:var(--text);flex:none;font-weight:600}.emotefeed__who{overflow-wrap:anywhere;min-width:0;color:var(--muted);flex:auto}@media (prefers-reduced-motion:no-preference){.emotefeed__row{animation:2s linear forwards emotefeed-fade}@keyframes emotefeed-fade{0%{opacity:0}8%{opacity:1}70%{opacity:1}to{opacity:0}}}.seatring{--ring-size:clamp(15rem, min(84vw, 38svh), 18rem);--pip-r:calc(var(--ring-size) * .42);--pip-hit:2.75rem;--pip-dot:2.25rem;--pip-num:.625rem;--seatring-obstacle:color-mix(in srgb, var(--obstacle) 70%, var(--text));--seatring-turn:color-mix(in srgb, var(--action) 70%, var(--text));--seatring-pick:color-mix(in srgb, var(--defense) 75%, var(--text));--seatring-burned:color-mix(in srgb, var(--muted) 40%, var(--text));width:var(--ring-size);height:var(--ring-size);margin-inline:auto;position:relative;overflow:visible}.seatring[data-density=roomy]{--pip-dot:2.75rem;--pip-num:.75rem}.seatring[data-density=tight]{--pip-dot:2.5rem;--pip-num:.6875rem}.seatring[data-density=dense]{--pip-dot:2.25rem;--pip-num:.625rem}.seatring:before{content:"";inset:calc(50% - var(--pip-r));border:1px dashed var(--edge);border-radius:50%;position:absolute}.seatring__hub{padding-inline:calc(var(--pip-hit) + .5rem);text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.125rem;display:flex;position:absolute;inset:0}.seatring__glyph{color:var(--seatring-turn);font-size:1.75rem;line-height:1}.seatring__round{color:var(--text);font-size:.75rem}.seatring__piles{color:var(--muted);font-size:.625rem}.seatring__burned{color:var(--seatring-burned);font-size:.625rem}.seatring__sr{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.seatring__orbit{transform:rotate(var(--spin));position:absolute;inset:0}.seatring__pip{width:var(--pip-hit);height:var(--pip-hit);color:inherit;font:inherit;cursor:default;transform:translate(-50%, -50%) translate(calc(var(--ux) * var(--pip-r)), calc(var(--uy) * var(--pip-r)));background:0 0;border:0;margin:0;padding:0;display:block;position:absolute;top:50%;left:50%}.seatring__pip--pickable{cursor:pointer}.seatring__face{transform:rotate(calc(-1 * var(--spin)));justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.seatring__dot{width:var(--pip-dot);height:var(--pip-dot);border:1px solid var(--edge);background:var(--surface);color:var(--text);font-size:var(--pip-num);white-space:nowrap;border-radius:50%;justify-content:center;align-items:center;font-weight:600;line-height:1;display:flex;overflow:hidden}.seatring__pip--me .seatring__dot{border-width:2px;border-color:var(--text)}.seatring__pip--turn .seatring__dot{border-color:var(--seatring-turn);background:var(--seatring-turn);color:var(--bg);box-shadow:0 0 0 3px color-mix(in srgb, var(--action) 55%, transparent);transform:scale(1.12)}.seatring__pip--pickable .seatring__dot{border-color:var(--seatring-pick);background:color-mix(in srgb, var(--defense) 30%, var(--surface))}.seatring__pip--sealed .seatring__dot{border-style:dashed;border-width:2px;border-color:var(--seatring-obstacle)}.seatring__pip:focus-visible{outline:none}.seatring__pip:focus-visible .seatring__dot{outline:2px solid var(--text);outline-offset:2px}.seatring__seal{background:var(--seatring-obstacle);min-width:1rem;color:var(--bg);text-align:center;border-radius:2px;padding:0 .1875rem;font-size:.625rem;font-weight:700;line-height:1rem;position:absolute;top:0;left:0}.seatring__count{border:1px solid var(--edge);background:var(--surface);min-width:1rem;height:1rem;color:var(--text);text-align:center;border-radius:999px;font-size:.625rem;line-height:.875rem;position:absolute;bottom:0;right:0}.seatring__pip--empty{opacity:.5}.seatring__pip--empty .seatring__dot{width:calc(var(--pip-dot) * .6);height:calc(var(--pip-dot) * .6);border-style:dotted;border-width:1px;border-color:var(--seatring-burned);color:var(--seatring-burned);background:0 0}.seatring__door{background:var(--seatring-obstacle);width:4px;height:22px;box-shadow:0 0 0 1px var(--bg);transform:translate(-50%, -50%) translate(calc(var(--ux) * var(--pip-r)), calc(var(--uy) * var(--pip-r))) rotate(var(--rot));border-radius:1px;position:absolute;top:50%;left:50%}@media (prefers-reduced-motion:no-preference){.seatring__orbit,.seatring__pip,.seatring__face{transition:transform .32s cubic-bezier(.4,0,.2,1)}.seatring__dot{transition:transform .32s cubic-bezier(.4,0,.2,1),background-color .32s linear,border-color .32s linear}.seatring__glyph{animation:.26s cubic-bezier(.4,0,.2,1) seatring-reverse}@keyframes seatring-reverse{0%{opacity:0;transform:rotate(-90deg)}to{opacity:1;transform:rotate(0)}}}.seatcard{z-index:3;border:1px solid var(--edge);background:var(--surface);text-align:center;border-radius:.75rem;flex-direction:column;align-items:center;gap:.1875rem;min-width:8.5rem;max-width:13rem;padding:.75rem .875rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 .5rem 1.5rem #0000008c}.seatcard__name{margin:0;font-size:1rem;font-weight:600}.seatcard__line{color:var(--muted);margin:0;font-size:.75rem}.seatcard__line--turn{color:color-mix(in srgb, var(--action) 70%, var(--text))}.seatcard__line--sealed{color:color-mix(in srgb, var(--obstacle) 70%, var(--text))}.seatcard__close{border:1px solid var(--edge);background:var(--bg);min-height:2.75rem;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;margin-top:.25rem;padding:0 1rem;font-size:.8125rem}.seatcard__close:focus-visible{outline:2px solid var(--text);outline-offset:2px}@media (prefers-reduced-motion:no-preference){.seatcard{animation:.15s ease-out seatcard-in}@keyframes seatcard-in{0%{opacity:0}to{opacity:1}}}.replaybar{--replaybar-tap:2.75rem;border:1px solid var(--edge);background:var(--surface);border-radius:.625rem;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.replaybar__head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.replaybar__title{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0;font-size:.6875rem;font-weight:600}.replaybar__seats{border:0;margin:0;padding:0}.replaybar__label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:.375rem;padding:0;font-size:.6875rem}.replaybar__options{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.replaybar__seat{min-height:var(--replaybar-tap);border:1px solid var(--edge);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:0 .875rem;font-size:.8125rem}.replaybar__seat--on{border-color:var(--action);background:color-mix(in srgb, var(--action) 30%, transparent);color:var(--text);font-weight:600}.replaybar__at{font-variant-numeric:tabular-nums;color:var(--text);margin:0;font-size:.8125rem}.replaybar__range{width:100%;min-height:var(--replaybar-tap);accent-color:var(--action);font-size:1rem}.replaybar__controls{flex-wrap:wrap;gap:.375rem;display:flex}.replaybar__step{min-height:var(--replaybar-tap);border:1px solid var(--edge);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;flex:auto;padding:0 .75rem;font-size:.8125rem}.replaybar__seat:focus-visible,.replaybar__step:focus-visible,.replaybar__range:focus-visible,.replaybar__summary:focus-visible{outline:2px solid var(--action);outline-offset:2px}.replaybar__detail{color:var(--muted);font-size:.75rem}.replaybar__summary{min-height:var(--replaybar-tap);cursor:pointer;align-items:center;display:flex}.replaybar__reason{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.6875rem}.replaybar__honesty{border-top:1px dashed var(--edge);flex-direction:column;gap:.25rem;padding-top:.5rem;display:flex}.replaybar__note{color:var(--muted);margin:0;font-size:.75rem;line-height:1.4}@media (prefers-reduced-motion:reduce){.replaybar__seat,.replaybar__step,.replaybar__range{transition:none}}.replayviewer{flex-direction:column;gap:.75rem;max-width:34rem;margin:0 auto;padding:.75rem .75rem 0;display:flex}.replayviewer__picker{max-width:34rem}.replayviewer__hint{color:var(--muted);margin:.5rem 0 1.5rem;font-size:.8125rem}.replayviewer__file{cursor:pointer;padding:.625rem .75rem;font-size:1rem}.replayviewer__file:focus-visible,.replayviewer__summary:focus-visible{outline:2px solid var(--action);outline-offset:2px}.replayviewer__detail{color:var(--muted);margin-top:.5rem;font-size:.75rem}.replayviewer__summary{cursor:pointer;align-items:center;min-height:2.75rem;display:flex}.replayviewer__reason{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.6875rem}@media (prefers-reduced-motion:reduce){.replayviewer__file{transition:none}}.coach{--coach-tap:2.75rem;border:1px solid var(--edge);border-left:3px solid var(--action);background:var(--surface);border-radius:.625rem;flex-direction:column;gap:.5rem;margin:.75rem 0;padding:.75rem;display:flex}.coach__card{background:color-mix(in srgb, var(--action) 18%, transparent);border-radius:.5rem;flex-direction:column;gap:.5rem;padding:.625rem .75rem;display:flex}.coach__line{color:var(--text);margin:0;font-size:.9375rem;line-height:1.5}.coach__strip{color:var(--muted);margin:0;font-size:.875rem;line-height:1.45}.coach__got{min-height:var(--coach-tap);align-self:flex-start}.coach__skip{min-height:var(--coach-tap);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0 .75rem;font-size:.75rem;text-decoration:underline}.coach--pill{border-left-width:1px;flex-direction:row;justify-content:flex-end;padding:.375rem}.coach__pill{min-height:var(--coach-tap);border:1px solid var(--edge);color:var(--muted);font:inherit;text-transform:uppercase;letter-spacing:.12em;cursor:pointer;background:0 0;border-radius:999px;padding:0 .875rem;font-size:.75rem}.coach__got:focus-visible,.coach__skip:focus-visible,.coach__pill:focus-visible{outline:2px solid var(--action);outline-offset:2px}@media (prefers-reduced-motion:reduce){.coach,.coach__card,.coach__pill{transition:none}}:root{--bg:#0d0e12;--surface:#16181f;--edge:#262a35;--text:#e6e6ea;--muted:#8b90a0;--contagion:#7a2230;--action:#2f5d7c;--defense:#3f6b4a;--obstacle:#6b5326;--panic:#5b3a70;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;margin:0;font:16px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.app{max-width:60rem;margin:0 auto;padding:1.5rem 1rem 4rem}.app__header h1{letter-spacing:.02em;margin:0 0 .25rem;font-size:1.75rem}.app__sub,.group__blurb,.app__footer{color:var(--muted);font-size:.875rem}.lang{border:0;margin:1rem 0 0;padding:0}.lang__label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:.5rem;padding:0;font-size:.6875rem}.lang__options{flex-wrap:wrap;gap:.375rem;display:flex}.lang__option{border:1px solid var(--edge);background:var(--surface);min-height:2.75rem;color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;padding:0 .875rem;font-size:.8125rem}.lang__option--on{color:var(--text);border-color:var(--action);background:color-mix(in srgb, var(--action) 22%, var(--surface))}.lang__option:focus-visible{outline:2px solid var(--action);outline-offset:2px}.group{margin-top:2rem}.group h2{text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:0 0 .75rem;font-size:1rem;display:flex}.group__blurb{text-transform:none;letter-spacing:normal;font-weight:400}.hand{flex-wrap:wrap;gap:.625rem;display:flex}.card{background:var(--surface);border:1px solid var(--edge);border-top:3px solid var(--accent,var(--edge));border-radius:.625rem;flex-direction:column;flex:0 auto;gap:.375rem;min-width:8.5rem;max-width:100%;min-height:5.5rem;padding:.625rem .75rem;display:flex}.card--hand{width:9rem}.card--inspect{width:15rem;min-height:9rem}.card--contagion{--accent:var(--contagion)}.card--action{--accent:var(--action)}.card--defense{--accent:var(--defense)}.card--obstacle{--accent:var(--obstacle)}.card--panic{--accent:var(--panic)}.card__type{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.625rem}.card__name{margin:0;font-size:.95rem;line-height:1.25}.card__summary{color:var(--text);opacity:.85;margin:0;font-size:.8125rem}.card__target{color:var(--muted);margin-top:auto;font-size:.6875rem}.app__footer{border-top:1px solid var(--edge);margin-top:3rem;padding-top:1rem}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.btn{border:1px solid var(--edge);background:var(--surface);min-height:2.75rem;color:var(--text);font:inherit;cursor:pointer;border-radius:.5rem;padding:0 1rem;font-size:.875rem}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible{outline:2px solid var(--action);outline-offset:2px}.btn--primary{border-color:var(--action);background:color-mix(in srgb, var(--action) 30%, var(--surface))}.btn--danger{border-color:var(--contagion);background:color-mix(in srgb, var(--contagion) 35%, var(--surface))}.btn--ghost{color:var(--muted);background:0 0}.btn--wide{width:100%}.game{flex-direction:column;gap:.75rem;max-width:34rem;margin:0 auto;padding:.75rem .75rem 2rem;display:flex}.game__bar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.turn{color:var(--muted);font-size:.8125rem}.turn--mine{color:var(--text);font-weight:600}.alert{border:1px solid var(--contagion);background:color-mix(in srgb, var(--contagion) 18%, var(--surface));border-radius:.5rem;margin:0;padding:.5rem .75rem;font-size:.8125rem}.prompt{border:1px solid var(--edge);background:var(--surface);border-radius:.625rem;flex-direction:column;align-items:stretch;gap:.5rem;min-height:5rem;padding:.75rem;display:flex}.prompt h2{margin:0;font-size:1.25rem}.prompt h2.won{color:var(--defense)}.prompt h2.lost{color:var(--contagion)}.prompt__hint{color:var(--muted);margin:0;font-size:.8125rem}.prompt__hint strong,.prompt__hint--warn{color:var(--text)}.prompt__row{flex-wrap:wrap;gap:.5rem;display:flex}.hand{padding-bottom:.25rem;overflow-x:auto}.hand .card--hand{width:5.75rem;min-width:5.75rem;min-height:4.75rem}.hand--offered{border-top:1px dashed var(--edge);padding-top:.5rem}.card--tappable{cursor:pointer;text-align:left;font:inherit}.card--selected{border-color:var(--text);box-shadow:0 0 0 2px var(--action)}.card--dimmed{opacity:.45}.log{border:1px solid var(--edge);background:color-mix(in srgb, var(--surface) 60%, var(--bg));border-radius:.625rem;max-height:8rem;padding:.5rem .75rem;overflow-y:auto}.log__line{color:var(--muted);margin:0 0 .25rem;font-size:.75rem}.log__line:last-child{color:var(--text)}.home .btn--wide{margin-top:1rem}.prompt fieldset,.guard{border:0;margin:0;padding:0}.prompt fieldset{flex-direction:column;align-items:stretch;gap:.5rem;display:flex}.guard{display:contents}.link-banner{border:1px solid var(--action);background:color-mix(in srgb, var(--action) 15%, var(--surface));border-radius:.625rem;flex-direction:column;align-items:flex-start;gap:.375rem;max-width:34rem;margin:.75rem auto;padding:.75rem;display:flex}.link-banner--lost{border-color:var(--contagion);background:color-mix(in srgb, var(--contagion) 18%, var(--surface))}.link-banner__text{margin:0;font-size:.875rem}.link-banner__hint{color:var(--muted);margin:0;font-size:.8125rem}.countdown{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:.375rem;font-size:.75rem;display:inline-flex}.countdown--mine{color:var(--text)}.countdown__ring{background:conic-gradient(var(--edge) var(--elapsed,0%), var(--action) 0);border-radius:50%;width:.875rem;height:.875rem}@media (prefers-reduced-motion:reduce){.countdown__ring{display:none}}.code{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.code__pill{border:1px solid var(--edge);background:var(--surface);letter-spacing:.18em;-webkit-user-select:all;user-select:all;border-radius:999px;padding:.5rem .875rem;font-size:1.125rem}.roster{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.roster__row{border:1px solid var(--edge);background:var(--surface);border-radius:.5rem;flex-wrap:wrap;align-items:center;gap:.5rem;min-height:2.75rem;padding:.375rem .75rem;font-size:.875rem;display:flex}.roster__row--empty{opacity:.4;border-style:dotted}.roster__name{font-weight:600}.roster__badge{border:1px solid var(--edge);text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border-radius:999px;padding:.125rem .5rem;font-size:.625rem}.roster__state{color:var(--muted);margin-left:auto;font-size:.75rem}.field{flex-direction:column;gap:.25rem;margin-top:1rem;display:flex}.field__label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:.6875rem}.field__input{border:1px solid var(--edge);background:var(--surface);min-height:2.75rem;color:var(--text);font:inherit;border-radius:.5rem;padding:0 .75rem}.field__input--code{text-transform:uppercase;letter-spacing:.18em}.field__input:focus-visible{outline:2px solid var(--action);outline-offset:2px}.setting{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.875rem;display:flex}.setting__label{flex:10rem}.setting__value{min-width:5rem;color:var(--muted);font-size:.8125rem}.crash{text-align:center;max-width:32rem;margin:4rem auto;padding:0 1.5rem}.crash h1{margin-bottom:.75rem;font-size:1.25rem}.crash p{color:var(--muted,#9aa);margin-bottom:1.5rem;line-height:1.5}.crash button{min-height:2.75rem;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:.5rem;padding:0 1.5rem}
