@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-vietnamese-400-normal-B6gKbkHm.woff2) format("woff2"),url(/assets/bungee-vietnamese-400-normal-CmjDSWyd.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-latin-ext-400-normal-DWzJMwsA.woff2) format("woff2"),url(/assets/bungee-latin-ext-400-normal-DXe9_7Rr.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bungee;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bungee-latin-400-normal-Dfnurram.woff2) format("woff2"),url(/assets/bungee-latin-400-normal-DA8IEVW_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chivo-vietnamese-400-normal-CSXFuz3V.woff2) format("woff2"),url(/assets/chivo-vietnamese-400-normal-DmGqoTkK.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chivo-latin-ext-400-normal-9x6Ncs2n.woff2) format("woff2"),url(/assets/chivo-latin-ext-400-normal-C9-UC0c8.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/chivo-latin-400-normal-BP0TbwmH.woff2) format("woff2"),url(/assets/chivo-latin-400-normal-DBaM4DNC.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chivo-vietnamese-700-normal-DagjMFNh.woff2) format("woff2"),url(/assets/chivo-vietnamese-700-normal-CW5-sSjj.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chivo-latin-ext-700-normal-B0JFxKuy.woff2) format("woff2"),url(/assets/chivo-latin-ext-700-normal-DBLBw1OD.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/chivo-latin-700-normal-w8tJISmu.woff2) format("woff2"),url(/assets/chivo-latin-700-normal-D76hz2nd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/chivo-vietnamese-900-normal-CYNGsr_b.woff2) format("woff2"),url(/assets/chivo-vietnamese-900-normal-DUrinyzK.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/chivo-latin-ext-900-normal-nEu8l0yL.woff2) format("woff2"),url(/assets/chivo-latin-ext-900-normal-C1CGxgfi.woff) format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Chivo;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/chivo-latin-900-normal-C9LqtGxx.woff2) format("woff2"),url(/assets/chivo-latin-900-normal-BOCGNdu-.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--space-3xs: 2px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 40px;--space-2xl: 64px;--space-3xl: 96px;--space-4xl: 144px;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.2rem;--text-xl: 1.44rem;--text-2xl: 1.728rem;--text-3xl: 2.074rem;--text-display-s: 1.44rem;--text-display: 1.728rem;--text-section: 1.2rem;--text-title: 1rem;--text-lead: 1rem;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .22s;--dur-long: .42s;--color-error: oklch(72% .15 27);--color-success: oklch(76% .13 150);--container: 1440px;--gutter: 64px;--gap-columns: 32px;--section-gap-s: 120px;--section-gap: 144px;--section-gap-l: 176px;--z-base: 1;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-sticky-nav: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--color-paper: oklch(14% .04 312);--color-paper-2: oklch(18.5% .042 312);--color-paper-3: oklch(23% .045 312);--color-ink: oklch(95% .014 315);--color-ink-2: oklch(87% .018 315);--color-muted: oklch(71% .024 315);--color-rule: oklch(34% .05 312);--color-accent: oklch(66% .215 40);--color-accent-2: oklch(88% .195 115);--color-accent-ink: oklch(14% .04 312);--color-focus: oklch(88% .195 115);--color-crt-r: oklch(63% .24 25);--color-crt-g: oklch(80% .25 140);--color-crt-b: oklch(60% .24 265);--color-crt-c: oklch(78% .14 200);--color-shade: oklch(8% .02 315);--font-display: "Bungee", "Impact", sans-serif;--font-body: "Chivo", ui-sans-serif, sans-serif;--radius-card: 4px;--radius-pill: 0;--rule-hair: 1px;--rule-bar: 2px;--shadow-card: 6px 6px 0 var(--color-accent-2);--tracking-display: 0;--display-weight: 400}*,*:before,*:after{box-sizing:border-box}html,body{overflow-x:clip}html{scrollbar-color:var(--color-muted) var(--color-paper);scroll-padding-top:var(--space-3xl)}body{margin:0;background:var(--color-paper);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);line-height:1.55;-webkit-font-smoothing:antialiased;caret-color:var(--color-accent)}::selection{background:color-mix(in oklab,var(--color-accent) 22%,transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.16em}h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:var(--display-weight, 700);font-synthesis:none;letter-spacing:var(--tracking-display);line-height:1.05;overflow-wrap:break-word;min-width:0;text-wrap:balance}h1{max-width:20ch;font-size:var(--text-display)}h2{max-width:30ch;font-size:var(--text-section)}h3{max-width:40ch;font-size:var(--text-title);line-height:1.2}.lead{font-size:var(--text-lead);line-height:1.45;max-width:52ch}p{margin:0;text-wrap:pretty}p:not([class]){max-width:65ch}img,video{max-width:100%;height:auto;display:block}svg{display:block}[hidden]{display:none!important}button,input,select,textarea{font:inherit}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);box-sizing:border-box}.num,.figure,td.num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}[data-slot]{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--color-paper-2, var(--color-paper)),var(--color-paper-3, var(--color-paper)))}[data-slot]>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1}[data-slot]:has(>img)>:not(img):not([data-keep]){display:none!important}@media(max-width:60rem){:root{--gutter: 24px;--section-gap-s: 80px;--section-gap: 96px;--section-gap-l: 120px}}@media(max-width:40rem){:root{--gutter: 16px;--section-gap-s: 56px;--section-gap: 72px;--section-gap-l: 96px;--gap-columns: 16px}}@media(prefers-reduced-motion:reduce){*:not(.keep-motion),*:not(.keep-motion):before,*:not(.keep-motion):after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-slot]:has(>img){isolation:isolate;background:var(--color-accent);outline:1px solid color-mix(in oklab,var(--color-ink) 8%,transparent);outline-offset:-1px}[data-slot]>img{z-index:0;filter:grayscale(1);mix-blend-mode:multiply}[data-slot]:has(>img):before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--color-paper);mix-blend-mode:lighten;pointer-events:none}:root{--color-dawn: oklch(76% .11 213);--color-dawn-2: oklch(67% .17 275);--color-dusk: oklch(66% .19 32);--color-dusk-2: oklch(77% .15 70);--rule-team: 6px;--control-h: 44px;--control-h-lg: 52px;--topbar-h: 64px;--seat-sprite-scale: 2}body,.screen{min-height:100dvh}.screen[hidden]{display:none!important}.container{padding-block:var(--space-xl) var(--space-2xl)}.pixel{image-rendering:pixelated}.muted{color:var(--color-muted)}.num{font-variant-numeric:tabular-nums}h2,h3{font-family:var(--font-body);font-weight:900;letter-spacing:-.02em;line-height:1}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg);line-height:1.2}.wordmark-display{font-family:var(--font-display);font-weight:400;text-transform:uppercase;line-height:1.02;font-size:clamp(2.5rem,6vw,4.5rem);max-width:none;text-shadow:-2px 0 0 var(--color-crt-r),2px 0 0 var(--color-crt-c)}.label{display:block;font-weight:700;font-size:var(--text-sm);color:var(--color-ink-2)}.help{min-height:1lh;font-size:var(--text-sm);color:var(--color-muted)}.help--error{color:var(--color-error)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:var(--control-h);padding:0 var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);border:var(--rule-bar) solid var(--color-ink);border-radius:var(--radius-card);box-shadow:var(--shadow-card);font-weight:700;cursor:pointer;-webkit-user-select:none;user-select:none;transition:translate var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out),background-color var(--dur-micro) var(--ease-out)}@media(hover:hover){.btn:hover{translate:-1px -1px;box-shadow:7px 7px 0 var(--color-accent-2)}}.btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.btn:active{translate:3px 3px;box-shadow:2px 2px 0 var(--color-accent-2)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;translate:none;box-shadow:var(--shadow-card)}.btn.is-loading .btn__label:after{content:"…"}.btn.is-loading{cursor:progress}.btn--quiet{background:transparent;color:var(--color-ink);border-color:var(--color-muted);box-shadow:4px 4px 0 var(--color-rule)}@media(hover:hover){.btn--quiet:hover{border-color:var(--color-ink);box-shadow:5px 5px 0 var(--color-rule)}}.btn--quiet:active{box-shadow:1px 1px 0 var(--color-rule)}.btn--quiet:disabled{box-shadow:4px 4px 0 var(--color-rule)}.btn--lg{min-height:var(--control-h-lg);font-size:var(--text-lg)}.link-btn{background:none;border:0;padding:var(--space-xs) 0;min-height:var(--control-h);color:var(--color-ink);font-weight:700;text-decoration:underline 2px var(--color-accent-2);text-underline-offset:.25em;cursor:pointer}@media(hover:hover){.link-btn:hover{color:var(--color-accent-2)}}.link-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.link-btn:active{translate:0 1px}.input{width:100%;min-height:var(--control-h);padding:0 var(--space-md);background:var(--color-paper);color:var(--color-ink);border:var(--rule-bar) solid var(--color-muted);border-radius:0;outline:2px solid transparent;outline-offset:-4px;font-size:var(--text-md);transition:background-color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out)}.input::placeholder{color:var(--color-muted)}@media(hover:hover){.input:hover{background:var(--color-paper-2)}}.input:focus-visible{outline-color:var(--color-focus);border-color:var(--color-ink-2)}.input:disabled{opacity:.55;cursor:not-allowed}.input[aria-invalid=true]{border-color:var(--color-error)}.login{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:var(--space-2xl);max-width:var(--container);margin-inline:auto;padding:var(--space-2xl) var(--gutter)}.login__stage{border:var(--rule-bar) solid var(--color-rule);background:var(--color-paper-2)}.login__stage img{width:100%;height:auto}.login__panel{display:grid;gap:var(--space-lg);align-content:center;min-width:0}.login__panel .lead{color:var(--color-ink-2);font-size:var(--text-lg)}.login__form{display:grid;gap:var(--space-xs);max-width:20rem}.login__form .input{min-height:var(--control-h-lg)}.login__form .btn{justify-self:start;margin-top:var(--space-xs);min-height:var(--control-h-lg)}.crt{position:relative;isolation:isolate}.crt:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:repeating-linear-gradient(to right,color-mix(in oklab,var(--color-crt-r) 5%,transparent) 0,color-mix(in oklab,var(--color-crt-r) 5%,transparent) 1px,color-mix(in oklab,var(--color-crt-g) 5%,transparent) 1px,color-mix(in oklab,var(--color-crt-g) 5%,transparent) 2px,color-mix(in oklab,var(--color-crt-b) 5%,transparent) 2px,color-mix(in oklab,var(--color-crt-b) 5%,transparent) 3px),repeating-linear-gradient(to bottom,transparent 0 2px,color-mix(in oklab,var(--color-shade) 16%,transparent) 2px 3px)}.topbar{display:flex;align-items:center;gap:var(--space-lg);min-height:var(--topbar-h);padding:0 var(--gutter);background:var(--color-paper);border-bottom:var(--rule-hair) solid var(--color-rule)}.screen:not([hidden])>.topbar{position:sticky;top:0;z-index:var(--z-sticky-nav)}.wordmark{font-family:var(--font-display);font-size:var(--text-lg);text-transform:uppercase;text-decoration:none;color:var(--color-ink);text-shadow:-1.5px 0 0 var(--color-crt-r),1.5px 0 0 var(--color-crt-c)}.wordmark:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.topbar__meta{color:var(--color-muted);font-size:var(--text-sm)}.topbar__meta .num{color:var(--color-ink);font-weight:700}.topbar__me{margin-left:auto;display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted)}.topbar__me strong{color:var(--color-ink)}.lobby{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,22rem);gap:var(--gap-columns);align-items:start}.section-head{display:grid;gap:var(--space-xs);margin-bottom:var(--space-lg)}.well{background:var(--color-paper-2);border:var(--rule-bar) solid var(--color-rule);border-radius:var(--radius-card)}.lobby__host{padding:var(--space-lg);display:grid;gap:var(--space-lg);position:sticky;top:calc(var(--topbar-h) + var(--space-lg))}.stack{display:grid;gap:var(--space-lg)}.field{display:grid;gap:var(--space-xs);border:0;margin:0;padding:0;min-width:0}.lobby__host .btn{justify-self:start}.segmented{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-xs)}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented label{display:grid;gap:var(--space-3xs);padding:var(--space-sm);border:var(--rule-bar) solid var(--color-muted);border-radius:var(--radius-card);cursor:pointer;transition:background-color var(--dur-micro) steps(1),border-color var(--dur-micro) steps(1)}.segmented label strong{font-family:var(--font-body);font-weight:900;font-size:var(--text-lg)}.segmented label span{font-size:var(--text-sm);color:var(--color-muted)}@media(hover:hover){.segmented label:hover{border-color:var(--color-ink)}}.segmented input:checked+label{background:var(--color-accent);border-color:var(--color-ink);color:var(--color-accent-ink)}.segmented input:checked+label span{color:var(--color-accent-ink)}.segmented input:focus-visible+label{outline:2px solid var(--color-focus);outline-offset:2px}.segmented input:disabled+label{opacity:.55;cursor:not-allowed}.games{width:100%;border-collapse:collapse}.games th{text-align:left;font-size:var(--text-sm);font-weight:700;color:var(--color-muted);white-space:nowrap;padding:0 var(--space-sm) var(--space-xs);border-bottom:var(--rule-bar) solid var(--color-rule)}.games td{padding:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule);vertical-align:middle}.games th:first-child,.games td:first-child{padding-left:var(--space-sm)}.games .num{text-align:right}.games__name{font-weight:900;font-size:var(--text-lg)}.games__mode{font-weight:700}.games td:last-child{text-align:right;width:1%;white-space:nowrap}.games tbody tr.game{transition:background-color var(--dur-micro) steps(1),color var(--dur-micro) steps(1)}.games tbody tr.game:hover,.games tbody tr.game:focus-within,.games tbody tr.game[aria-current=true]{background:var(--color-accent);color:var(--color-accent-ink)}.games tbody tr.game:hover .muted,.games tbody tr.game:focus-within .muted,.games tbody tr.game[aria-current=true] .muted{color:var(--color-accent-ink)}.games tbody tr.game:hover .btn--quiet,.games tbody tr.game:focus-within .btn--quiet,.games tbody tr.game[aria-current=true] .btn--quiet{color:var(--color-accent-ink);border-color:var(--color-accent-ink);box-shadow:4px 4px 0 var(--color-accent-ink)}.games__skeleton td{padding:var(--space-md) var(--space-sm)}.games__skeleton span{display:block;height:var(--space-lg);background:var(--color-paper-3);border-radius:var(--radius-card)}.games__skeleton:nth-child(2) span{width:82%}.games__skeleton:nth-child(3) span{width:64%}.state{padding:var(--space-xl) var(--space-sm);display:grid;gap:var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-rule)}.state p{color:var(--color-muted)}.state--error h3{color:var(--color-error)}.room{display:grid;gap:var(--space-xl)}.room__head{display:grid;gap:var(--space-xs)}.room__head h1{font-family:var(--font-display);font-weight:400;text-transform:uppercase;font-size:clamp(1.75rem,4vw,3rem);text-shadow:-2px 0 0 var(--color-crt-r),2px 0 0 var(--color-crt-c);max-width:24ch}.room__status{color:var(--color-ink-2);font-size:var(--text-lg)}.teams{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-columns)}.team{background:var(--color-paper-2);border-radius:var(--radius-card);border-top:var(--rule-team) solid var(--team);padding:var(--space-lg);display:grid;gap:var(--space-md);align-content:start}.team--dawn{--team: var(--color-dawn)}.team--dusk{--team: var(--color-dusk)}.seats{list-style:none;margin:0;padding:0;display:grid}.seat{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;border-top:var(--rule-hair) solid var(--color-rule);min-height:calc(32px * var(--seat-sprite-scale) + var(--space-sm) * 2)}.seat:first-child{border-top:0}.seat__sprite{width:calc(24px * var(--seat-sprite-scale));height:calc(32px * var(--seat-sprite-scale));flex-shrink:0}.seat__body{display:grid;gap:var(--space-3xs);min-width:0}.seat__name{font-weight:900;font-size:var(--text-lg);overflow-wrap:anywhere}.seat__meta{font-size:var(--text-sm);color:var(--color-muted)}.seat__meta strong{color:var(--color-ink)}.seat__meta .is-ready{color:var(--color-success);font-weight:700}.seat__meta .is-away{color:var(--color-error);font-weight:700}.seat__actions{display:flex;gap:var(--space-xs);flex-wrap:wrap;justify-content:flex-end}.seat--empty .seat__name{color:var(--color-muted);font-weight:700}.seat--empty .seat__sprite{opacity:.25}.seat--you .seat__name:after{content:" (you)";font-weight:400;color:var(--color-muted);font-size:var(--text-sm)}.room__foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap-columns);align-items:start}.room__actions{display:grid;gap:var(--space-sm);justify-items:start}#ready[aria-pressed=true]{background:var(--color-accent-2)}.chat{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:var(--space-sm);padding:var(--space-md);height:18rem}.chat__title{font-size:var(--text-md)}.chat__log{list-style:none;margin:0;padding:0;overflow-y:auto;display:grid;align-content:start;gap:var(--space-2xs);font-size:var(--text-sm)}.chat__log b{color:var(--color-ink)}.chat__log .sys{color:var(--color-muted)}.chat__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xs)}.toast{position:fixed;left:50%;bottom:var(--space-lg);z-index:var(--z-toast);translate:-50% 0;max-width:min(32rem,calc(100% - var(--space-xl)));padding:var(--space-sm) var(--space-md);background:var(--color-ink);color:var(--color-paper);border-radius:var(--radius-card);font-weight:700;opacity:0;pointer-events:none;transition:opacity var(--dur-short) var(--ease-out)}.toast.is-shown{opacity:1}.noscript{padding:var(--space-lg)}.credit{font-size:var(--text-sm);color:var(--color-muted)}.credit a{color:var(--color-ink);font-weight:700;text-decoration:underline 2px var(--color-accent-2);text-underline-offset:.25em}@media(hover:hover){.credit a:hover{color:var(--color-accent-2)}}.credit a:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.site-foot{padding-block:var(--space-2xl) var(--space-lg)}:root{--meadow-gold: #f5d05a;--meadow-gold-hi: #ffe28a;--meadow-ink: #1a1423;--meadow-cream: #fff3c8;--glass: rgb(18 9 30 / .72);--glass-strong: rgb(14 6 24 / .82);--glass-line: rgb(255 243 200 / .18);--glass-line-strong: rgb(255 243 200 / .32);--glass-blur: blur(10px);--row-lit: rgb(255 210 120 / .14)}.app,.results{position:relative;isolation:isolate;background:transparent}.app:before,.results:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(#0e061833,#0e06180d 45%,#0e061873),url(/backdrops/meadow.jpg) center bottom / cover no-repeat,var(--color-paper)}.app .topbar{background:#0e06188c;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom-color:var(--glass-line)}.wordmark{color:var(--meadow-cream);text-shadow:0 2px 0 var(--meadow-ink)}.wordmark-display,.room__head h1{color:var(--meadow-cream);text-shadow:0 3px 0 var(--meadow-ink),0 0 24px rgb(14 6 24 / .6)}.room__status,.lobby .section-head .muted{text-shadow:0 1px 2px rgb(14 6 24 / .8)}.link-btn{text-decoration-color:var(--meadow-gold)}@media(hover:hover){.link-btn:hover{color:var(--meadow-gold-hi)}}.well,.lobby__games,.team{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--rule-hair) solid var(--glass-line);border-radius:12px}.lobby__games{padding:var(--space-lg)}.team{border-top:var(--rule-team) solid var(--team)}.btn{background:var(--meadow-gold);color:var(--meadow-ink);border:3px solid var(--meadow-ink);border-radius:8px;box-shadow:0 4px 0 var(--meadow-ink);font-family:var(--font-display);font-weight:400}@media(hover:hover){.btn:hover{translate:0 -1px;background:var(--meadow-gold-hi);box-shadow:0 5px 0 var(--meadow-ink)}}.btn:active{translate:0 3px;box-shadow:0 1px 0 var(--meadow-ink)}.btn:disabled,.btn[aria-disabled=true]{box-shadow:0 4px 0 var(--meadow-ink)}#ready[aria-pressed=true]{background:var(--color-success)}.btn--quiet{background:#0000004d;color:var(--color-ink);border:2px solid var(--glass-line-strong);box-shadow:none;font-family:var(--font-body);font-weight:900}@media(hover:hover){.btn--quiet:hover{background:#0006;border-color:var(--meadow-gold);box-shadow:none}}.btn--quiet:active,.btn--quiet:disabled{box-shadow:none}.input{background:#00000059;border:var(--rule-hair) solid var(--glass-line-strong);border-radius:6px}@media(hover:hover){.input:hover{background:#00000073}}.segmented label{background:#0000004d;border:var(--rule-hair) solid var(--glass-line-strong);border-radius:8px}.segmented input:checked+label{background:#f5d05a33;border-color:var(--meadow-gold);color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--meadow-gold)}.segmented input:checked+label span{color:var(--color-ink-2)}.games th{border-bottom-color:var(--glass-line)}.games td{border-bottom-color:#ffffff14}.games tbody tr.game:hover,.games tbody tr.game:focus-within,.games tbody tr.game[aria-current=true]{background:var(--row-lit);color:var(--color-ink)}.games tbody tr.game:hover .muted,.games tbody tr.game:focus-within .muted,.games tbody tr.game[aria-current=true] .muted{color:var(--color-muted)}.games tbody tr.game:hover .btn--quiet,.games tbody tr.game:focus-within .btn--quiet,.games tbody tr.game[aria-current=true] .btn--quiet{background:var(--meadow-gold);color:var(--meadow-ink);border-color:var(--meadow-ink);box-shadow:0 3px 0 var(--meadow-ink)}.games__skeleton span{background:#ffffff14}.state{border-bottom-color:#ffffff14}.seat{border-top-color:#ffffff14}.res-table th,.res-table td{border-bottom-color:#ffffff14}.res-table thead th{border-bottom-color:var(--glass-line)}.credit{color:var(--meadow-cream);text-shadow:0 1px 2px rgb(14 6 24 / .9)}.credit a{text-decoration-color:var(--meadow-gold)}@media(max-width:60rem){.login{grid-template-columns:minmax(0,1fr);gap:var(--space-xl);padding-top:var(--space-xl);align-content:start}.lobby{grid-template-columns:minmax(0,1fr)}.lobby__host{position:static}.room__foot{grid-template-columns:minmax(0,1fr)}.topbar__meta{display:none}}@media(max-width:40rem){.teams{grid-template-columns:minmax(0,1fr)}.topbar{gap:var(--space-sm)}.topbar__me{font-size:var(--text-sm);white-space:nowrap}.topbar__me-label{display:none}.wordmark{font-size:var(--text-md)}.topbar__me{gap:var(--space-xs)}.games thead{display:none}.games,.games tbody,.games tr,.games td{display:block;width:100%}.games tr.game{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-2xs) var(--space-md);padding:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule)}.games tr.game td{border:0;padding:0;text-align:left}.games tr.game td[data-label]:before{content:attr(data-label) " ";color:var(--color-muted);font-size:var(--text-sm)}.games tr.game td:first-child{grid-column:1 / -1}.games tr.game td:last-child{grid-column:2;grid-row:2 / span 4;align-self:center;width:auto}.seat{grid-template-columns:auto minmax(0,1fr)}.seat__actions{grid-column:1 / -1;justify-content:flex-start}}:root{--color-p0: oklch(76% .11 213);--color-p1: oklch(67% .17 275);--color-p2: oklch(66% .19 32);--color-p3: oklch(77% .15 70);--color-hp: oklch(80% .17 140);--color-hp-low: oklch(66% .19 32);--color-veil: oklch(8% .02 315 / .72);--color-mana: oklch(80% .11 315);--color-mana-deep: oklch(58% .25 300);--gem: polygon(50% 0, 100% 30%, 82% 100%, 18% 100%, 0 30%);--gem-fill: conic-gradient(from 200deg at 50% 35%, #f3dcff, #b071ff, #6a2ad0, #b071ff, #f3dcff);--gem-fill-dim: conic-gradient(from 200deg at 50% 35%, #d8d2e0, #8a8296, #4e4858, #8a8296, #d8d2e0);--clock-plate: oklch(21% .05 310);--card-w: 88px}.match{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);height:100dvh;min-height:0;background:var(--color-shade);overflow:hidden}.hud-top{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--space-md);padding:var(--space-xs) var(--space-md);background:var(--color-paper);border-bottom:var(--rule-bar) solid var(--color-rule)}.hud-team{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2xs)}.hud-team--right .hud-player{grid-template-columns:auto minmax(0,1fr) auto auto}.hud-team--right .hud-hp__num{order:0;text-align:left}.hud-team--right .hud-player__sprite{order:3;transform:scaleX(-1)}.hud-team--right .hud-player__name{order:2;text-align:right}.hud-team--right .hud-hp{order:1}.hud-player{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);font-weight:700}.hud-player__sprite{width:18px;height:24px}.hud-player__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:12rem}.hud-player.is-you .hud-player__name{color:var(--color-accent-2)}.hud-player.is-fallen{color:var(--color-muted)}.hud-player.is-fallen .hud-player__name{text-decoration:line-through}.hud-hp{--hp: 1;position:relative;display:block;height:14px;min-width:4rem;margin-inline:4px;background:#03010499;outline:var(--rule-hair) solid oklch(100% 0 0 / .12);transform:skew(-20deg)}.hud-hp__fill,.hud-hp__trail{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;transform:scaleX(var(--hp))}.hud-hp__fill{background:linear-gradient(to bottom,oklch(100% 0 0 / .3),transparent 50%),var(--pc, var(--color-hp));transition:transform var(--dur-micro) var(--ease-out)}.hud-hp__trail{background:var(--color-ink);opacity:.85;transition:transform var(--dur-long) var(--ease-in) .45s}.hud-team--right .hud-hp__fill,.hud-team--right .hud-hp__trail{transform-origin:right}.hud-player.is-fallen .hud-hp__trail{opacity:0}.hud-hp__num{min-width:7.5rem;text-align:right;font-family:var(--font-display);font-size:var(--text-xs);color:var(--color-ink);font-variant-numeric:tabular-nums;white-space:nowrap}.hud-hp__max,.hud-player.is-fallen .hud-hp__num{color:var(--color-muted)}.hud-totals{display:flex;align-items:baseline;gap:var(--space-xs);margin-top:var(--space-2xs);font-size:var(--text-xs);font-weight:700;color:var(--color-muted);white-space:nowrap}.hud-totals[hidden]{display:none}.hud-totals b{font-family:var(--font-display);font-weight:400;font-size:var(--text-xs);color:var(--color-ink-2)}.hud-tug{--share: .5;position:relative;align-self:center;width:9rem;height:5px;background:var(--color-p2)}.hud-tug__dawn{position:absolute;inset:0 auto 0 0;width:calc(var(--share) * 100%);background:var(--color-p0);border-right:var(--rule-bar) solid var(--color-ink);transition:width var(--dur-short) var(--ease-out)}.hud-totals__team--0 b.is-leading{color:var(--color-p0)}.hud-totals__team--1 b.is-leading{color:var(--color-p2)}.hud-clock{display:grid;justify-items:center;align-content:center;gap:var(--space-2xs);line-height:1;align-self:stretch;margin-block:calc(-1 * var(--space-xs));padding:var(--space-2xs) var(--space-xl) var(--space-xs);background:var(--clock-plate);clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,18px 100%)}.hud-time{font-family:var(--font-display);font-weight:400;font-size:2.4rem;color:var(--color-ink);font-variant-numeric:tabular-nums}.hud-phase{min-height:1lh;font-size:var(--text-sm);font-weight:700;color:var(--color-accent-2)}.arena-wrap{position:relative;display:grid;place-items:center;min-height:0;min-width:0;overflow:hidden;padding:var(--space-xs)}#arena{display:block;border:var(--rule-bar) solid var(--color-rule);background:var(--color-paper-2);touch-action:manipulation;cursor:crosshair}.hud-banner{position:absolute;left:50%;top:22%;translate:-50% 6px;scale:.96;max-width:calc(100% - var(--space-xl));padding:var(--space-sm) var(--space-2xl);background:linear-gradient(#1a0e28db,#0e0618e6);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:inset 0 2px 0 var(--meadow-gold),inset 0 -2px 0 var(--meadow-gold),inset 0 6px 14px #f5d05a1f;clip-path:polygon(22px 0,calc(100% - 22px) 0,100% 50%,calc(100% - 22px) 100%,22px 100%,0 50%);color:var(--meadow-cream);text-shadow:0 2px 0 var(--meadow-ink);font-family:var(--font-display);font-weight:400;font-size:var(--text-xl);letter-spacing:.02em;text-align:center;text-wrap:balance;pointer-events:none;opacity:0;transition:opacity var(--dur-short) var(--ease-out),translate var(--dur-long) var(--ease-out),scale var(--dur-long) var(--ease-out)}.hud-banner.is-shown{opacity:1;translate:-50% 0;scale:1}.hand-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"mana hand mute" "hint hint hint";align-items:center;gap:var(--space-2xs) var(--space-md);padding:var(--space-xs) var(--space-md) var(--space-sm);background:var(--color-paper);border-top:var(--rule-bar) solid var(--color-rule)}.mana{grid-area:mana;display:flex;align-items:center;gap:var(--space-sm)}.mana__pips{order:1;display:grid;grid-template-columns:repeat(10,13px);gap:3px;padding-inline:4px}.pip{width:13px;height:22px;background:#ffffff14;position:relative;overflow:hidden;transform:skew(-20deg)}.pip:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(var(--color-mana),var(--color-mana-deep));transform-origin:bottom;transform:scaleY(var(--fill, 0));opacity:.5}.pip.is-full:after{opacity:1}.mana__num{min-width:1.6ch;text-align:center;font-family:var(--font-display);font-weight:400;font-size:2.4rem;line-height:1;background:linear-gradient(#f3dcff,#b071ff);-webkit-background-clip:text;background-clip:text;color:transparent;font-variant-numeric:tabular-nums}.hand{grid-area:hand;list-style:none;margin:0;padding:0;display:flex;gap:var(--space-xs);overflow-x:auto;justify-content:center;scrollbar-width:thin}.card{position:relative;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;width:var(--card-w);height:calc(var(--card-w) * 1.32);padding:0;background:var(--color-paper-2);color:var(--color-ink);border:var(--rule-bar) solid var(--color-muted);border-radius:var(--radius-card);cursor:pointer;overflow:hidden;transition:translate var(--dur-micro) var(--ease-out),background-color var(--dur-micro) steps(1)}@media(hover:hover){.card:hover{translate:0 -3px;border-color:var(--color-ink)}}.card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.card:active{translate:0 1px}.card[aria-pressed=true]{border-color:var(--color-accent);translate:0 -4px;box-shadow:0 0 0 2px var(--color-accent),4px 4px 0 var(--color-accent-2)}.card:disabled{opacity:.55;cursor:not-allowed;translate:none}.card.is-poor .card__art{filter:grayscale(1) brightness(.7)}.card.is-poor .card__cost{background:var(--gem-fill-dim)}.card__key{position:relative;z-index:1;justify-self:start;margin:var(--space-2xs);min-width:18px;text-align:center;font-size:var(--text-xs);font-weight:700;color:var(--color-ink);background:var(--color-veil)}.card[aria-pressed=true] .card__key{background:var(--color-accent);color:var(--color-accent-ink)}.card__art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}.card__name{grid-row:3;position:relative;z-index:1;align-self:end;width:100%;min-height:2lh;padding:var(--space-xs) var(--space-3xs) var(--space-2xs);display:grid;place-items:center;font-size:var(--text-xs);font-weight:700;line-height:1.15;text-align:center;color:var(--color-ink);background:linear-gradient(to bottom,transparent,var(--color-shade) 45%)}.card[aria-pressed=true] .card__name{background:linear-gradient(to bottom,transparent,var(--color-accent) 45%);color:var(--color-accent-ink)}.card__cost{position:absolute;top:var(--space-2xs);right:var(--space-2xs);width:24px;height:28px;padding-top:4px;display:grid;place-items:center;clip-path:var(--gem);background:var(--gem-fill);color:#1a0034;color:oklch(18% .1 300);font-family:var(--font-display);font-size:var(--text-sm)}.card__cd{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-veil);transform-origin:top;transform:scaleY(0);pointer-events:none}.card.is-denied{animation:deny var(--dur-short) steps(4) 1}@keyframes deny{25%{translate:-3px 0}50%{translate:3px 0}75%{translate:-2px 0}}.hand-tools{grid-area:mute;display:flex;align-items:center;gap:var(--space-md);font-size:var(--text-sm)}.hand-tools kbd{font-family:var(--font-display);font-size:var(--text-xs);padding:0 var(--space-3xs);border:var(--rule-hair) solid var(--color-muted);text-decoration:none;display:inline-block}.hand-hint{grid-area:hint;text-align:center;font-size:var(--text-sm);color:var(--color-muted)}.results{display:grid;place-items:center;padding:var(--space-xl) var(--gutter)}.results__card{width:min(100%,52rem);padding:var(--space-xl);display:grid;gap:var(--space-lg);justify-items:start}.results__card .lead{color:var(--color-ink-2)}.res-table{width:100%;border-collapse:collapse}.res-table th,.res-table td{padding:var(--space-sm);border-bottom:var(--rule-hair) solid var(--color-rule);text-align:left}.res-table thead th{font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;border-bottom:var(--rule-bar) solid var(--color-rule)}.res-table .num{text-align:right;font-variant-numeric:tabular-nums}.res-table tbody th{font-weight:900}.res-table tr.is-winner th{color:var(--color-accent-2)}.res-who{display:inline-flex;align-items:center;gap:var(--space-xs)}.res-sprite{width:24px;height:32px}@media(max-width:40rem){:root{--card-w: 72px}.hud-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"clock clock" "dawn dusk";gap:var(--space-2xs) var(--space-sm);padding:var(--space-2xs) var(--space-xs)}.hud-clock{grid-area:clock;display:flex;justify-content:center;gap:var(--space-2xs) var(--space-sm);align-items:baseline}.hud-player{min-width:0;gap:var(--space-2xs)}#hud-team-0{grid-area:dawn}#hud-team-1{grid-area:dusk}.hud-player__name{max-width:5.5rem}.hud-hp{min-width:2rem}.hud-team{min-width:0}.hud-player,.hud-team--right .hud-player{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"sprite name num" "sprite hp hp";row-gap:var(--space-3xs)}.hud-team--right .hud-player{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"num name sprite" "hp hp sprite"}.hud-player__sprite{grid-area:sprite}.hud-player__name{grid-area:name;max-width:none}.hud-hp{grid-area:hp}.hud-hp__num{grid-area:num;min-width:0;font-size:var(--text-xs)}.hud-hp__max{display:none}.hud-clock{flex-wrap:wrap;margin:0;padding:var(--space-2xs) var(--space-sm);clip-path:none;background:none}.hud-totals{flex-basis:100%;justify-content:center;margin-top:0}.hud-time,.mana__num{font-size:1.75rem}.hud-banner{width:calc(100% - var(--space-lg));font-size:var(--text-md);padding:var(--space-xs) var(--space-xl)}.mana{gap:var(--space-xs)}.mana__pips{grid-template-columns:repeat(10,9px);gap:2px}.pip{width:9px;height:18px}.hand-tools{white-space:nowrap;gap:var(--space-sm)}.hand-bar{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"mana mute" "hand hand" "hint hint"}.hand{justify-content:flex-start}.res-table{font-size:var(--text-sm)}.results__card{padding:var(--space-md)}}:root{--color-strong: oklch(80% .17 140);--color-strong-bg: oklch(80% .17 140 / .18);--color-weak: oklch(70% .19 30);--color-weak-bg: oklch(66% .19 32 / .2)}.codex-head{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:var(--space-sm)}.codex-portrait{display:block;width:56px;height:112px;object-fit:contain;filter:drop-shadow(2px 2px 0 var(--color-shade))}.codex-head__text{min-width:0;display:grid;gap:var(--space-3xs)}.codex-name{margin:0;font-family:var(--font-body);font-weight:900;font-size:var(--text-lg);line-height:1.1}.codex-role{margin:0;font-size:var(--text-xs);font-weight:700;color:var(--color-accent-2);text-transform:uppercase;letter-spacing:.04em}.codex-blurb{margin:0;font-size:var(--text-sm);color:var(--color-ink-2)}.codex-cost{align-self:start;min-width:28px;height:28px;display:grid;place-items:center;background:var(--color-accent-2);color:var(--color-accent-ink);font-weight:900;border:var(--rule-hair) solid var(--color-shade)}.codex-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xs) var(--space-sm);margin:0}.codex-stats dt{font-size:var(--text-xs);color:var(--color-muted);font-weight:700}.codex-stats dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;font-size:var(--text-sm)}.codex-traits{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2xs);font-size:var(--text-sm)}.codex-traits li{padding:var(--space-3xs) var(--space-xs);background:var(--color-paper-3);border:var(--rule-hair) solid var(--color-rule)}.codex-traits li strong{color:var(--color-ink)}.codex-traits li span{color:var(--color-ink-2)}.codex-entry .codex-traits{display:grid}.codex-matchups{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-sm)}.codex-h{margin:0 0 var(--space-2xs);font-size:var(--text-xs);font-weight:700;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em}.codex-chips{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3xs);font-size:var(--text-sm);font-weight:700}.codex-chips li{display:flex;align-items:center;gap:var(--space-2xs);padding:var(--space-3xs) var(--space-2xs);border-left:var(--rule-bar) solid}.codex-chips--strong li{border-color:var(--color-strong);background:var(--color-strong-bg)}.codex-chips--weak li{border-color:var(--color-weak);background:var(--color-weak-bg)}.codex-chip__art{width:26px;height:26px;flex:none;border-radius:50%;object-fit:cover;object-position:50% 32%;box-shadow:0 0 0 2px var(--meadow-ink)}.codex-none{margin:0;font-size:var(--text-sm);color:var(--color-muted)}.codex-siege{margin:0;font-size:var(--text-sm);color:var(--color-ink-2);padding:var(--space-2xs) var(--space-xs);border-left:var(--rule-bar) solid var(--color-accent-2)}.codex-tip{margin:0;font-size:var(--text-sm);line-height:1.45;color:var(--color-ink-2);padding-top:var(--space-xs);border-top:var(--rule-hair) solid var(--color-rule)}.codex{width:min(100% - 2 * var(--space-md),72rem);max-height:min(100dvh - 2 * var(--space-md),56rem);padding:0;background:var(--color-paper);color:var(--color-ink);border:var(--rule-bar) solid var(--color-ink);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.codex[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr)}.codex::backdrop{background:var(--color-veil, oklch(8% .02 315 / .72))}.codex__bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-lg);padding:var(--space-md) var(--space-lg);border-bottom:var(--rule-bar) solid var(--color-rule);background:var(--color-paper-2)}.codex__title{margin:0;font-family:var(--font-display);font-weight:400;font-size:var(--text-xl)}.codex__tabs{display:flex;gap:var(--space-2xs)}.codex__tabs [role=tab]{min-height:40px;padding:0 var(--space-md);background:transparent;color:var(--color-ink-2);border:var(--rule-bar) solid var(--color-rule);font:inherit;font-weight:700;cursor:pointer}@media(hover:hover){.codex__tabs [role=tab]:hover{border-color:var(--color-ink);color:var(--color-ink)}}.codex__tabs [role=tab][aria-selected=true]{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-ink)}.codex__tabs [role=tab]:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.codex__close{margin-left:auto;min-height:40px}.codex__note{display:none;margin:0;padding:var(--space-2xs) var(--space-lg);font-size:var(--text-sm);color:var(--color-accent-2);background:var(--color-paper-2)}body[data-screen=match] .codex__note{display:block}.codex__panel{overflow:auto;padding:var(--space-lg);overscroll-behavior:contain}.codex__panel[hidden]{display:none}.codex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:var(--space-md)}.codex-entry{display:grid;align-content:start;gap:var(--space-sm);padding:var(--space-md);background:var(--color-paper-2);border:var(--rule-bar) solid var(--color-rule);border-radius:var(--radius-card);scroll-margin-top:var(--space-md)}.codex-chart-wrap{display:grid;gap:var(--space-md)}.codex-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);font-size:var(--text-sm);font-weight:700}.codex-legend li{display:inline-flex;align-items:center;gap:var(--space-xs)}.codex-legend .v-mark{display:inline-grid;place-items:center;width:24px;height:24px;border:var(--rule-hair) solid var(--color-rule)}.codex-chart-scroll{overflow-x:auto}.codex-chart{border-collapse:collapse;font-size:var(--text-sm)}.codex-chart th,.codex-chart td{border:var(--rule-hair) solid var(--color-rule)}.codex-chart thead th{padding:var(--space-2xs);vertical-align:bottom;font-size:var(--text-xs);font-weight:700;color:var(--color-ink-2);min-width:64px}.codex-chart thead th>*{display:block;margin-inline:auto}.codex-chart__corner{text-align:left;color:var(--color-muted)}.codex-chart__corner span{margin:0!important}.codex-chart tbody th{padding:var(--space-2xs) var(--space-sm) var(--space-2xs) var(--space-2xs);text-align:left;white-space:nowrap;font-weight:700}.codex-chart tbody th span{margin-left:var(--space-xs)}.codex-chart__art{width:32px;height:32px;border-radius:50%;object-fit:cover;object-position:50% 32%;box-shadow:0 0 0 2px var(--meadow-ink)}.codex-chart td{width:64px;height:44px;text-align:center;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.05}.codex-chart td .v-mark{display:block;font-size:var(--text-md)}.codex-chart td .v-num{display:block;font-size:var(--text-xs);opacity:.85}.v-strong .v-mark,.v-strong{color:var(--color-strong)}td.v-strong,.codex-legend .v-strong .v-mark{background:var(--color-strong-bg)}.v-weak .v-mark,.v-weak{color:var(--color-weak)}td.v-weak,.codex-legend .v-weak .v-mark{background:var(--color-weak-bg)}.v-even{color:var(--color-ink-2)}.v-siege{color:var(--color-muted)}td.v-siege,.codex-legend .v-siege .v-mark{background:repeating-linear-gradient(135deg,transparent 0 5px,var(--color-paper-3) 5px 7px)}td.v-self{color:var(--color-muted);background:var(--color-paper-2)}.codex-chart tbody tr:hover th,.codex-chart tbody tr:hover td,.codex-chart .is-col{outline:var(--rule-hair) solid var(--color-ink-2);outline-offset:-1px}.codex-chart thead th.is-col,.codex-chart tbody tr:hover th{color:var(--color-ink);background:var(--color-paper-3)}.codex-method{margin:0;max-width:72ch;font-size:var(--text-sm);line-height:1.5;color:var(--color-muted)}.popout{position:fixed;z-index:var(--z-tooltip);width:min(22rem,calc(100vw - 28px));display:grid;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-paper);color:var(--color-ink);border:var(--rule-bar) solid var(--color-ink);border-radius:var(--radius-card);box-shadow:4px 4px 0 var(--color-accent-2);pointer-events:none}.popout[hidden]{display:none}.popout .codex-head{grid-template-columns:40px minmax(0,1fr) auto}.popout .codex-portrait{width:40px;height:80px}.popout .codex-name{font-size:var(--text-md)}.popout .codex-stats dd,.popout .codex-traits,.popout .codex-chips,.popout .codex-siege{font-size:var(--text-xs)}.popout-side{margin:0;font-size:var(--text-xs);color:var(--color-ink-2)}.popout-team{font-weight:900}.popout-team--0{color:var(--color-p0)}.popout-team--1{color:var(--color-p2)}.popout-hp{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-xs);font-size:var(--text-xs);font-weight:700}.popout-hp__bar{position:relative;display:block;height:8px;background:var(--color-paper-3);border:var(--rule-hair) solid var(--color-shade)}.popout-hp__fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--pc);transform-origin:left}@media(max-width:40rem){.codex__bar{padding:var(--space-sm) var(--space-md)}.codex__panel{padding:var(--space-md)}.codex-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.codex-chart tbody th,.codex-chart__corner{position:sticky;left:0;z-index:1;background:var(--color-paper)}.codex{background:linear-gradient(#0e06189e,#0e0618cc),url(/backdrops/meadow.jpg) center bottom / cover no-repeat,var(--color-paper);border:var(--rule-hair) solid var(--glass-line-strong);border-radius:16px;box-shadow:0 24px 60px #0009}.codex::backdrop{background:#08040e99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.codex__bar{background:#0e06188c;border-bottom:var(--rule-hair) solid var(--glass-line)}.codex__title{color:var(--meadow-cream);text-shadow:0 2px 0 var(--meadow-ink)}.codex__tabs [role=tab]{background:#0000004d;border:var(--rule-hair) solid var(--glass-line-strong);border-radius:8px}@media(hover:hover){.codex__tabs [role=tab]:hover{border-color:var(--meadow-gold)}}.codex__tabs [role=tab][aria-selected=true]{background:var(--meadow-gold);color:var(--meadow-ink);border:2px solid var(--meadow-ink);box-shadow:0 3px 0 var(--meadow-ink)}.codex__note{background:#0e06188c;color:var(--meadow-gold)}.codex-entry{background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--rule-hair) solid var(--glass-line);border-radius:12px}.codex-portrait{filter:drop-shadow(0 3px 0 var(--meadow-ink))}.codex-role{color:var(--meadow-gold)}.codex-cost{min-width:0;width:28px;height:33px;padding-top:5px;clip-path:var(--gem);background:var(--gem-fill);color:#1a0034;color:oklch(18% .1 300);border:0;font-family:var(--font-display);font-weight:400}.codex-traits li{background:#0000004d;border:var(--rule-hair) solid var(--glass-line);border-radius:6px}.codex-chips li{border-left:0;border-radius:99px;padding:3px 12px 3px 3px;gap:var(--space-xs)}.codex-chips--strong li{box-shadow:inset 0 0 0 1px var(--color-strong)}.codex-chips--weak li{box-shadow:inset 0 0 0 1px var(--color-weak)}.codex-siege{border-left-color:var(--meadow-gold)}.codex-tip{border-top-color:var(--glass-line)}.codex-chart th,.codex-chart td{border-color:#ffffff1a}.codex-chart thead th{min-width:68px}.codex-chart tbody th>*{vertical-align:middle}.codex-chart tbody th .codex-chart__art{display:inline-block}.codex-legend .v-mark{border-color:var(--glass-line-strong);border-radius:4px}td.v-self{background:#00000040}td.v-siege,.codex-legend .v-siege .v-mark{background:repeating-linear-gradient(135deg,transparent 0 5px,rgb(255 255 255 / .07) 5px 7px)}.codex-chart thead th.is-col,.codex-chart tbody tr:hover th{background:#ffd27824}.codex-chart tbody th,.codex-chart__corner{background:#1b1026}.popout{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--rule-hair) solid var(--glass-line-strong);border-radius:12px;box-shadow:0 12px 30px #0000008c}.popout-hp__bar{height:8px;background:#00000080;border:0;border-radius:99px;overflow:hidden}.popout-hp__fill{border-radius:99px}.popout .codex-cost{width:24px;height:28px;padding-top:4px;font-size:var(--text-sm)}
