.game-shell{min-height:100dvh;display:flex;flex-direction:column}.game-header,.game-main,.game-footer{width:min(100% - 64px,var(--max-content));margin-inline:auto}.game-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:22px;border-bottom:1px solid var(--color-border)}.game-brand{display:inline-flex;align-items:center;gap:10px;font-weight:750;letter-spacing:-.7px;font-size:var(--fs-24)}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:var(--color-accent);color:#080808}.game-header nav{display:flex;gap:8px}.game-header a,.game-footer a,.game-back{min-height:44px;display:inline-flex;align-items:center}.game-header nav a{padding:8px 17px;border-radius:12px;color:var(--color-text-secondary);font-size:14px;font-weight:600}.game-header nav a.active{background:var(--color-surface-raised);color:var(--color-text-primary)}.game-header nav a:hover,.game-footer a:hover{color:var(--color-text-primary)}.header-download{gap:12px;font-weight:600;font-size:14px}.header-download svg{color:var(--color-accent-text)}.game-main{flex:1;padding-block:24px 64px;min-width:0}.game-eyebrow,.game-label{font-size:var(--fs-12);font-weight:700;letter-spacing:1.6px;color:var(--color-text-secondary);line-height:1.6;text-transform:uppercase}.game-main p{color:var(--color-text-secondary);line-height:1.65}.game-main h2{font-size:24px;letter-spacing:-.6px;font-weight:650;line-height:1.3}.game-main h3{font-size:var(--fs-20);font-weight:650}.game-intro{max-width:780px;padding-block:32px}.game-intro h1{font-size:clamp(32px,5vw,56px);line-height:1.1;letter-spacing:-1.5px;margin:16px 0}.game-intro h1 span{color:var(--color-accent-text)}.play-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--color-accent-12);color:var(--color-accent-text);margin-bottom:20px}.play-intro{padding:24px 0 32px}.play-intro .game-eyebrow{margin:0 0 12px}.play-intro h1 span{color:var(--color-text-secondary)}.game-notice{padding:16px 20px;background:var(--color-surface);border-left:2px solid var(--color-accent);border-radius:0 12px 12px 0;line-height:1.6;margin-bottom:24px}.game-notice a{text-decoration:underline;text-underline-offset:3px}.game-card{padding:clamp(20px,3vw,28px);border:1px solid var(--color-border);border-radius:16px;background:var(--color-card);overflow-wrap:break-word}.game-back{gap:8px;color:var(--color-text-secondary);font-size:14px;margin-bottom:12px}.game-back:hover{color:var(--color-text-primary)}.page-status{min-height:50dvh;display:grid;place-content:center;justify-items:center;gap:var(--space-16);text-align:center}.page-status h1{margin:0;font-size:var(--fs-28);letter-spacing:-.6px}.page-status p{margin:0}.game-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--color-border);padding-block:28px max(28px,env(safe-area-inset-bottom));color:var(--color-text-secondary);font-size:var(--fs-14)}.footer-brand{display:grid;gap:2px}.footer-brand>a{color:var(--color-text-primary);font-size:20px;font-weight:750;letter-spacing:-.5px}.brand-dot{color:var(--color-accent)}.game-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px}.game-skip{position:absolute;top:-100px;left:20px;padding:16px;background:var(--color-card);z-index:10}.game-skip:focus{top:12px}.text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;color:var(--color-text-secondary)}.text-link:hover{color:var(--color-text-primary)}.app-store-link{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:12px;border:1px solid #666;background:#080808;color:#fff;min-height:56px;width:fit-content;flex-shrink:0}.app-store-link:hover{border-color:#fff}.app-store-link span{display:grid}.app-store-link small{font-size:10px;line-height:1.2}.app-store-link strong{font-size:22px;line-height:1.15;font-weight:550;letter-spacing:-.5px}@media(max-width:680px){.game-header,.game-main,.game-footer{width:calc(100% - 36px)}.game-header{display:grid;grid-template-columns:1fr auto;gap:12px;padding-block:14px 10px}.game-header nav{grid-row:2;grid-column:1 / -1;justify-content:center}.game-header nav a{flex:1;justify-content:center;padding-inline:10px}.game-brand{font-size:var(--fs-20)}.header-download{gap:6px}.game-main{padding-block:16px 40px}.game-footer{gap:16px}.game-footer nav{gap:4px 20px}}.store-links{display:flex;flex-wrap:wrap;gap:10px}.header-download{gap:8px}.header-download-logos{display:inline-flex;align-items:center;gap:5px;color:var(--color-text-primary)}.store-links.is-compact{gap:8px}.store-links.is-compact .app-store-link{min-height:44px;padding:6px 14px 6px 12px;gap:8px;border-radius:10px}.store-links.is-compact .app-store-link svg{width:19px;height:auto}.store-links.is-compact .app-store-link small{font-size:9px}.store-links.is-compact .app-store-link strong{font-size:16px;letter-spacing:-.3px}.app-strip{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}.app-strip p{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:var(--fs-14, 14px);font-weight:600;color:var(--color-text-secondary)}.app-strip-logos{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-primary)}.home-hero-copy .app-strip{margin-top:22px}.game-footer>.app-strip{flex-basis:100%;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.cta-band .app-strip{grid-column:2 / -1;padding-top:16px;border-top:1px solid var(--color-border)}.local-side .app-strip{flex-direction:column;align-items:flex-start;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid var(--color-border)}.local-side .app-strip p{font-size:14px;font-weight:500}@media(max-width:680px){.app-strip{gap:8px}.game-footer>.app-strip{justify-content:flex-start}.cta-band .app-strip{grid-column:1 / -1}}.header-download .header-download-logos svg{color:var(--color-text-primary)}:root{color-scheme:dark;--color-bg: #000000;--color-surface: #161618;--color-card: #1c1c1f;--color-surface-raised: #26262a;--color-lip: #101012;--color-accent-dark: #cc0000;--accent-rgb: 255 51 51;--color-accent: #ff3333;--color-accent-text: #ff6969;--color-accent-12: rgb(var(--accent-rgb) / 12%);--color-accent-15: rgb(var(--accent-rgb) / 15%);--color-border-accent: rgb(var(--accent-rgb) / 40%);--color-border: #2c2c31;--color-input-border: #6e6e76;--color-text-primary: #f5f5f5;--color-text-secondary: #a3a3a3;--color-text-muted: #929292;--color-success: #69d887;--color-text-helper: #c4c4ca;--civ-face: #15202b;--civ-lip: #0b1219;--civ-band: #1e2e3d;--civ-ring: rgb(120 180 230 / 45%);--civ-ink: #9cc8ee;--civ-role: #8fd0ff;--plate-ink: #f1e9d8;--plate-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .10 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--space-2: 2px;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-28: 28px;--space-32: 32px;--space-36: 36px;--space-48: 48px;--space-80: 80px;--radius-sm: 12px;--radius-md: 14px;--radius-lg: 16px;--radius-pill: 24px;--radius-full: 50%;--border-hairline: 1px;--border-cta: 1.5px;--font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-rounded: ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius-card: 22px;--radius-button: 18px;--lip-depth: 5px;--raised: 0 var(--lip-depth) 0 var(--color-lip);--ease-press: cubic-bezier(.3, .7, .4, 1.3);--ease-out: cubic-bezier(.2, .8, .2, 1);--fs-10: 10px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-15: 15px;--fs-16: 16px;--fs-17: 17px;--fs-18: 18px;--fs-20: 20px;--fs-22: 22px;--fs-24: 24px;--fs-26: 26px;--fs-28: 28px;--fs-32: 32px;--fs-36: 36px;--fs-48: 48px;--lh-tight: 1.4;--lh-body: 1.65;--lh-lead: 1.6;--ls-1: 1px;--ls-15: 1.5px;--ls-2: 2px;--ls-3: 3px;--ls-4: 4px;--max-content: 1120px;--max-rules: 800px;--max-legal: 800px;--gutter: 24px;--dur-fade: .25s;--ease-inout: cubic-bezier(.42, 0, .58, 1)}.button-primary,.button-secondary,.local-button,.room-button{--face: var(--color-accent);--lip: var(--color-accent-dark);--ink: #fff;--depth: 6px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 22px;border:0;border-radius:var(--radius-button);background:var(--face);color:var(--ink);font-family:var(--font-rounded);font-size:var(--fs-18);font-weight:800;line-height:1.2;letter-spacing:-.01em;text-align:center;text-decoration:none;cursor:pointer;box-shadow:inset 0 2px #ffffff2e,0 var(--depth) 0 var(--lip);transition:transform .14s var(--ease-press),box-shadow .14s var(--ease-press),filter .15s;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.button-secondary,.room-button.room-button-secondary,.local-button.is-quiet{--face: var(--color-surface-raised);--lip: var(--color-lip);--ink: var(--color-text-primary);--depth: 5px;min-height:52px;font-size:var(--fs-16);box-shadow:inset 0 1px #ffffff14,0 var(--depth) 0 var(--lip)}@media(hover:hover){.button-primary:hover:not(:disabled),.button-secondary:hover:not(:disabled),.local-button:hover:not(:disabled),.room-button:hover:not(:disabled){filter:brightness(1.08)}}.button-primary:active:not(:disabled),.button-secondary:active:not(:disabled),.local-button:active:not(:disabled),.room-button:active:not(:disabled){transform:translateY(calc(var(--depth) - 1px));box-shadow:inset 0 2px #ffffff1f,0 1px 0 var(--lip)}.button-primary:disabled,.button-secondary:disabled,.local-button:disabled,.room-button:disabled{--face: transparent;--lip: transparent;--ink: #9a9aa2;box-shadow:none;outline:2px dashed #46464d;outline-offset:-2px;filter:none;cursor:not-allowed}.raised{background:var(--color-card);border-radius:var(--radius-card);box-shadow:var(--raised)}.choice{--face: var(--color-surface-raised);--lip: var(--color-lip);background:var(--face);color:var(--color-text-primary);border:0;border-radius:16px;box-shadow:inset 0 1px #ffffff0f,0 4px 0 var(--lip);transition:transform .14s var(--ease-press),box-shadow .14s var(--ease-press),background-color .18s;-webkit-tap-highlight-color:transparent}.choice[aria-checked=true],.choice[aria-pressed=true],.choice:has(input:checked){--face: var(--color-accent);--lip: var(--color-accent-dark);color:#fff}.choice:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--lip)}.eyebrow{margin:0;color:var(--color-text-secondary);font-size:var(--fs-14);font-weight:750;letter-spacing:1.4px;text-transform:uppercase}.art{display:block;width:100%;height:100%;object-fit:cover}.art-fallback{display:grid;place-items:center;width:100%;height:100%;background:radial-gradient(circle at 50% 35%,#2e2e33,#1a1a1d 70%);font-size:2.4em;line-height:1}.plate{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:22%;container-type:size;isolation:isolate;background:#1c1c1f}.plate.is-fill{border-radius:0}.plate>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.92)}.plate.is-typeset{background:linear-gradient(to bottom,transparent 62%,hsl(var(--hue) 20% 14% / 55%) 62%),radial-gradient(120% 90% at 30% 25%,hsl(var(--hue) 28% 46%),hsl(var(--hue) 22% 30%) 55%,hsl(var(--hue) 20% 18%))}.plate-icon{position:absolute;left:50%;top:44%;width:40cqmin;height:40cqmin;translate:-50% -50%;color:var(--plate-ink);opacity:.9;filter:drop-shadow(0 1.2cqmin 1.6cqmin rgb(0 0 0 / 35%))}.plate:before,.plate:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none}.plate:before{background:radial-gradient(120% 100% at 50% 40%,transparent 55%,rgb(0 0 0 / 28%)),var(--plate-grain);background-size:auto,160px 160px;opacity:1;mix-blend-mode:normal}.plate:after{box-shadow:inset 0 0 0 1px #ffffff1f}.plate.is-fill:after{box-shadow:none}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:0;border-radius:12px;background:none;color:var(--color-text-secondary);font:inherit;font-family:var(--font-rounded);font-size:var(--fs-16);font-weight:700;text-decoration:none;cursor:pointer;transition:color .15s,background-color .15s}.text-button:hover:not(:disabled),.text-button:focus-visible{color:var(--color-text-primary)}.text-button:disabled{opacity:.5}.game-dock{position:sticky;bottom:0;z-index:3;display:grid;gap:8px;width:100%;padding:24px 0 max(14px,env(safe-area-inset-bottom));background:linear-gradient(to bottom,transparent,var(--color-bg) 24px)}.game-dock>.local-button,.game-dock>.room-button{width:100%}.game-dock-note{margin:0!important;color:var(--color-text-helper)!important;font-size:var(--fs-15)!important;line-height:1.4!important;text-align:center;font-variant-numeric:tabular-nums}@media(min-width:700px){.game-dock{position:static;padding:0;background:none}}@keyframes rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:scale(.86)}60%{opacity:1;transform:scale(1.04)}to{transform:scale(1)}}@keyframes card-turn{0%{transform:perspective(1200px) rotateY(-90deg)}to{transform:perspective(1200px) rotateY(0)}}@keyframes deal-in{0%{opacity:0;transform:translate(64px) rotate(3deg)}to{opacity:1;transform:none}}@keyframes pulse-soft{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}@media(max-width:699px){.game-shell:has(.local-game,.room-layout,.play-setup.is-online) .game-header nav{display:none}.game-shell:has(.local-game,.room-layout,.play-setup.is-online) .game-header{padding-block:12px 4px}.game-shell:has(.local-game,.room-layout,.play-setup.is-online) .game-main{padding-top:8px}}.game-shell:has(.local-round) .header-download,.game-shell:has(.local-round) .game-footer{display:none}.game-shell:has(.local-round) .game-main{padding-bottom:20px}*,*:before,*:after{box-sizing:border-box}html{color-scheme:dark;background:var(--color-bg);scroll-padding-top:24px}body{margin:0;background:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-stack);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}:root button:disabled{cursor:not-allowed}input,select,textarea{font:inherit}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto}svg{flex-shrink:0}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{text-wrap:balance}::selection{background:var(--color-accent);color:#080808}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--color-accent-text);outline-offset:4px}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.page{min-height:100dvh;background:var(--color-bg);display:flex;flex-direction:column}.container{flex:1 1 auto;display:flex;flex-direction:column}.divider{height:1px;background:var(--color-border);flex:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
