@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.uppercase{text-transform:uppercase}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root,[data-theme=base]{--bg:#f4ead8;--bg-rgb:244 234 216;--surface-low-solid:#fff7e9;--surface-low-rgb:255 247 233;--surface-high-solid:#fffaf0;--surface-high-rgb:255 250 240;--surface-bright-solid:#f4dfbd;--surface-bright-rgb:244 223 189;--field-surface-solid:#fff2dc;--field-surface-rgb:255 242 220;--modal-surface-solid:#fffaf2;--modal-surface-rgb:255 250 242;--overlay-scrim-solid:#f0e2cf;--overlay-scrim-rgb:240 226 207;--scene-base:#f7efdf;--scene-base-rgb:247 239 223;--scene-tint-1:#f3bd5d;--scene-tint-1-rgb:243 189 93;--scene-tint-2:#65d8cc;--scene-tint-2-rgb:101 216 204;--scene-tint-3:#ff9a82;--scene-tint-3-rgb:255 154 130;--accent:#b97718;--accent-rgb:185 119 24;--accent-contrast:#fffaf0;--accent-grad:linear-gradient(135deg, #ffe19a 0%, #f2b84f 48%, #41d6c3 100%);--accent-2:#178f84;--accent-2-rgb:23 143 132;--accent-3:#d95d48;--accent-3-rgb:217 93 72;--accent-4:#5f6fd6;--accent-4-rgb:95 111 214;--accent-2-grad:linear-gradient(135deg, #41d6c3, #4f9cff);--danger:#c93f55;--danger-rgb:201 63 85;--danger-grad:linear-gradient(135deg, #ff8c7e, #d94b5d);--success:#168962;--success-rgb:22 137 98;--outsider:#5f6fd6;--outsider-rgb:95 111 214;--warning:#b97718;--warning-rgb:185 119 24;--text:#241a11;--text-rgb:36 26 17;--muted:#796851;--brand:#a96810;--brand-soft:#8f7f66;--title-strong:#1a120a;--copy-strong:#241a11e0;--border:#ae803647;--line:#946c2f47;--line-rgb:148 108 47;--line-bright:#bc893d80;--line-bright-rgb:188 137 61;--surface-shadow:130 99 54;--shadow:0 16px 40px rgb(var(--surface-shadow) / .16);--shadow-elevated:0 16px 48px rgb(var(--surface-shadow) / .2), 0 4px 18px rgb(var(--surface-shadow) / .12);--team-werewolf:#ff7a66;--team-werewolf-rgb:255 122 102;--team-werewolf-bg:rgb(var(--accent-3-rgb) / .18);--team-werewolf-border:rgb(var(--accent-3-rgb) / .28);--team-village:#41d6c3;--team-village-rgb:65 214 195;--team-village-bg:rgb(var(--accent-2-rgb) / .16);--team-village-border:rgb(var(--accent-2-rgb) / .24);--team-outsider:#8ea7ff;--team-outsider-rgb:142 167 255;--team-outsider-bg:rgb(var(--accent-4-rgb) / .16);--team-outsider-border:rgb(var(--accent-4-rgb) / .24);--phase-lobby:var(--accent);--phase-lobby-bg:rgb(var(--accent-rgb) / .16);--phase-lobby-border:rgb(var(--accent-rgb) / .24);--phase-night:var(--team-werewolf);--phase-night-bg:var(--team-werewolf-bg);--phase-night-border:var(--team-werewolf-border);--phase-discussion:var(--accent-2);--phase-discussion-bg:rgb(var(--accent-2-rgb) / .18);--phase-discussion-border:rgb(var(--accent-2-rgb) / .26);--phase-voting:var(--accent-3);--phase-voting-bg:rgb(var(--accent-3-rgb) / .18);--phase-voting-border:rgb(var(--accent-3-rgb) / .26);--phase-resolved:var(--success);--phase-resolved-bg:#233426c7;--phase-resolved-border:#91d5b033;--panel:var(--surface-high);--panel-strong:var(--surface-bright);--panel-alpha:1;--scene-opacity:calc(.5 * var(--panel-alpha));--overlay-opacity:calc(.74 * var(--panel-alpha));--surface-low:rgb(var(--surface-low-rgb) / calc(.9 * var(--panel-alpha)));--surface-high:rgb(var(--surface-high-rgb) / calc(.92 * var(--panel-alpha)));--surface-bright:rgb(var(--surface-bright-rgb) / calc(.94 * var(--panel-alpha)));--field-surface:rgb(var(--field-surface-rgb) / calc(.92 * var(--panel-alpha)));--modal-surface:rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha)));--overlay-scrim:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity))}[data-theme=midnight]{--bg:#07060d;--bg-rgb:7 6 13;--surface-low-solid:#0d0b14;--surface-low-rgb:13 11 20;--surface-high-solid:#13101d;--surface-high-rgb:19 16 29;--surface-bright-solid:#211a30;--surface-bright-rgb:33 26 48;--field-surface-solid:#0f0d18;--field-surface-rgb:15 13 24;--modal-surface-solid:#14101d;--modal-surface-rgb:20 16 29;--overlay-scrim-solid:#05040a;--overlay-scrim-rgb:5 4 10;--scene-base:#07060d;--scene-base-rgb:7 6 13;--scene-tint-1:#361f67;--scene-tint-1-rgb:54 31 103;--scene-tint-2:#0f385b;--scene-tint-2-rgb:15 56 91;--scene-tint-3:#4c172d;--scene-tint-3-rgb:76 23 45;--accent:#b68cff;--accent-rgb:182 140 255;--accent-contrast:#1b1228;--accent-grad:linear-gradient(135deg, #cfb0ff 0%, #8d7dff 52%, #6ecbff 100%);--accent-2:#6ecbff;--accent-2-rgb:110 203 255;--accent-3:#ff6f91;--accent-3-rgb:255 111 145;--accent-4:#f6c75c;--accent-4-rgb:246 199 92;--accent-2-grad:linear-gradient(135deg, #6ecbff, #8fd0b1);--danger:#ff5f78;--danger-rgb:255 95 120;--danger-grad:linear-gradient(135deg, #ff8699, #f24d68);--success:#8fd0b1;--success-rgb:143 208 177;--outsider:#f6c75c;--outsider-rgb:246 199 92;--warning:#f6c75c;--warning-rgb:246 199 92;--text:#f4ecff;--text-rgb:244 236 255;--muted:#b8adcf;--brand:#d0acff;--brand-soft:#b99be0;--title-strong:#fbf6ff;--copy-strong:#f4ecffe6;--border:#a28bd13d;--line:#9a84c552;--line-rgb:154 132 197;--line-bright:#c3abeb75;--line-bright-rgb:195 171 235;--surface-shadow:13 10 20;--shadow:0 16px 40px #0000006b;--shadow-elevated:0 18px 54px #00000094, 0 4px 18px #00000057;--team-werewolf:#ff6f91;--team-werewolf-rgb:255 111 145;--team-werewolf-bg:rgb(var(--accent-3-rgb) / .2);--team-werewolf-border:rgb(var(--accent-3-rgb) / .3);--team-village:#6ecbff;--team-village-rgb:110 203 255;--team-village-bg:rgb(var(--accent-2-rgb) / .16);--team-village-border:rgb(var(--accent-2-rgb) / .24);--team-outsider:#f6c75c;--team-outsider-rgb:246 199 92;--team-outsider-bg:rgb(var(--accent-4-rgb) / .16);--team-outsider-border:rgb(var(--accent-4-rgb) / .24);--phase-lobby:var(--team-village);--phase-lobby-bg:var(--team-village-bg);--phase-lobby-border:var(--team-village-border);--phase-night:var(--team-werewolf);--phase-night-bg:var(--team-werewolf-bg);--phase-night-border:var(--team-werewolf-border);--phase-discussion:var(--accent-2);--phase-discussion-bg:rgb(var(--accent-2-rgb) / .18);--phase-discussion-border:rgb(var(--accent-2-rgb) / .26);--phase-voting:var(--accent-4);--phase-voting-bg:rgb(var(--accent-4-rgb) / .18);--phase-voting-border:rgb(var(--accent-4-rgb) / .26);--phase-resolved:var(--success);--phase-resolved-bg:#202c25e6;--phase-resolved-border:#8cb89b2e}[data-theme=spy-mission]{--bg:#18283b;--bg-rgb:24 40 59;--surface-low-solid:#1d3148;--surface-low-rgb:29 49 72;--surface-high-solid:#243a55;--surface-high-rgb:36 58 85;--surface-bright-solid:#31506f;--surface-bright-rgb:49 80 111;--field-surface-solid:#20354e;--field-surface-rgb:32 53 78;--modal-surface-solid:#253b57;--modal-surface-rgb:37 59 87;--overlay-scrim-solid:#122236;--overlay-scrim-rgb:18 34 54;--scene-base:#17263a;--scene-base-rgb:23 38 58;--scene-tint-1:#4f86cb;--scene-tint-1-rgb:79 134 203;--scene-tint-2:#2ba99d;--scene-tint-2-rgb:43 169 157;--scene-tint-3:#b07724;--scene-tint-3-rgb:176 119 36;--accent:#8fb7ff;--accent-rgb:143 183 255;--accent-contrast:#07111f;--accent-grad:linear-gradient(135deg, #b7d2ff 0%, #5f95ff 52%, #46d6d0 100%);--accent-2:#46d6d0;--accent-2-rgb:70 214 208;--accent-3:#ffce6b;--accent-3-rgb:255 206 107;--accent-4:#b79cff;--accent-4-rgb:183 156 255;--accent-2-grad:linear-gradient(135deg, #46d6d0, #65e0b5);--danger:#ff6f84;--danger-rgb:255 111 132;--danger-grad:linear-gradient(135deg, #ff9aaa, #ec526b);--success:#7de0c5;--success-rgb:125 224 197;--outsider:#b79cff;--outsider-rgb:183 156 255;--warning:#ffd36f;--warning-rgb:255 211 111;--text:#f3f8ff;--text-rgb:243 248 255;--muted:#b9c8d9;--brand:#c6dcff;--brand-soft:#9cc4ff;--title-strong:#fff;--copy-strong:#f3f8ffe6;--border:#8fb7ff38;--line:#779dd952;--line-rgb:119 157 217;--line-bright:#b7d2ff75;--line-bright-rgb:183 210 255;--surface-shadow:9 22 38;--shadow:0 16px 40px rgb(var(--surface-shadow) / .24);--shadow-elevated:0 16px 48px rgb(var(--surface-shadow) / .34), 0 4px 18px rgb(var(--surface-shadow) / .22);--team-werewolf:#ff617d;--team-werewolf-rgb:255 97 125;--team-werewolf-bg:rgb(var(--danger-rgb) / .17);--team-werewolf-border:rgb(var(--danger-rgb) / .28);--team-village:#46d6d0;--team-village-rgb:70 214 208;--team-village-bg:rgb(var(--accent-2-rgb) / .17);--team-village-border:rgb(var(--accent-2-rgb) / .25);--team-outsider:#b79cff;--team-outsider-rgb:183 156 255;--team-outsider-bg:rgb(var(--accent-4-rgb) / .16);--team-outsider-border:rgb(var(--accent-4-rgb) / .24);--phase-lobby:var(--accent);--phase-lobby-bg:rgb(var(--accent-rgb) / .16);--phase-lobby-border:rgb(var(--accent-rgb) / .24);--phase-night:var(--accent-4);--phase-night-bg:rgb(var(--accent-4-rgb) / .18);--phase-night-border:rgb(var(--accent-4-rgb) / .25);--phase-discussion:var(--accent-2);--phase-discussion-bg:rgb(var(--accent-2-rgb) / .18);--phase-discussion-border:rgb(var(--accent-2-rgb) / .25);--phase-voting:var(--accent-3);--phase-voting-bg:rgb(var(--accent-3-rgb) / .18);--phase-voting-border:rgb(var(--accent-3-rgb) / .28);--phase-resolved:var(--success);--phase-resolved-bg:#10423ec7;--phase-resolved-border:#7de0c533}[data-theme=tichu]{--bg:#303140;--bg-rgb:48 49 64;--surface-low-solid:#393b4f;--surface-low-rgb:57 59 79;--surface-high-solid:#45465f;--surface-high-rgb:69 70 95;--surface-bright-solid:#525473;--surface-bright-rgb:82 84 115;--field-surface-solid:#3e4058;--field-surface-rgb:62 64 88;--modal-surface-solid:#464760;--modal-surface-rgb:70 71 96;--overlay-scrim-solid:#1f2130;--overlay-scrim-rgb:31 33 48;--scene-base:#303247;--scene-base-rgb:48 50 71;--scene-tint-1:#ffd75e;--scene-tint-1-rgb:255 215 94;--scene-tint-2:#ff9c72;--scene-tint-2-rgb:255 156 114;--scene-tint-3:#7eb6ff;--scene-tint-3-rgb:126 182 255;--accent:#ffd75e;--accent-rgb:255 215 94;--accent-contrast:#241b08;--accent-grad:#ffd75e;--accent-2:#7bdff7;--accent-2-rgb:123 223 247;--accent-3:#df5a61;--accent-3-rgb:223 90 97;--accent-4:#6f9cf0;--accent-4-rgb:111 156 240;--accent-2-grad:#7bdff7;--danger:#ff6f78;--danger-rgb:255 111 120;--danger-grad:#ff6f78;--success:#6fe0b5;--success-rgb:111 224 181;--outsider:#6f9cf0;--outsider-rgb:111 156 240;--warning:#f0c96a;--warning-rgb:240 201 106;--text:#f8fff9;--text-rgb:248 255 249;--muted:#c4d4c6;--brand:#f1d279;--brand-soft:#adddc0;--title-strong:#fff;--copy-strong:#f8fff9e6;--border:#f0c96a3d;--line:#8dbf9e52;--line-rgb:141 191 158;--line-bright:#f0d59075;--line-bright-rgb:240 213 144;--surface-shadow:16 28 22;--shadow:0 16px 40px rgb(var(--surface-shadow) / .28);--shadow-elevated:0 18px 54px rgb(var(--surface-shadow) / .38), 0 4px 18px rgb(var(--surface-shadow) / .24);--team-werewolf:#df5a61;--team-werewolf-rgb:223 90 97;--team-werewolf-bg:rgb(var(--accent-3-rgb) / .18);--team-werewolf-border:rgb(var(--accent-3-rgb) / .28);--team-village:#47cfa2;--team-village-rgb:71 207 162;--team-village-bg:rgb(var(--accent-2-rgb) / .18);--team-village-border:rgb(var(--accent-2-rgb) / .28);--team-outsider:#6f9cf0;--team-outsider-rgb:111 156 240;--team-outsider-bg:rgb(var(--accent-4-rgb) / .16);--team-outsider-border:rgb(var(--accent-4-rgb) / .24);--phase-lobby:var(--accent);--phase-lobby-bg:rgb(var(--accent-rgb) / .16);--phase-lobby-border:rgb(var(--accent-rgb) / .26);--phase-night:var(--accent-4);--phase-night-bg:rgb(var(--accent-4-rgb) / .18);--phase-night-border:rgb(var(--accent-4-rgb) / .25);--phase-discussion:var(--accent-2);--phase-discussion-bg:rgb(var(--accent-2-rgb) / .18);--phase-discussion-border:rgb(var(--accent-2-rgb) / .25);--phase-voting:var(--accent-3);--phase-voting-bg:rgb(var(--accent-3-rgb) / .18);--phase-voting-border:rgb(var(--accent-3-rgb) / .28);--phase-resolved:var(--success);--phase-resolved-bg:#194332d1;--phase-resolved-border:#6fe0b533}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;font-size:clamp(14px,1.5vw + 11px,16px)}html,body{max-width:100vw;overflow-x:hidden}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:400;src:url(/fonts/material-symbols-outlined.ttf)format("truetype")}body{min-height:100%;color:var(--text);background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .95)) 0%, transparent 28%), radial-gradient(circle at bottom left, rgb(var(--scene-tint-2-rgb) / calc(var(--scene-opacity) * .9)) 0%, transparent 36%), radial-gradient(circle at 54% 18%, rgb(var(--scene-tint-3-rgb) / calc(var(--scene-opacity) * .42)) 0%, transparent 32%), rgb(var(--scene-base-rgb));font-family:var(--font-body), system-ui, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;direction:ltr;justify-content:center;align-items:center;font-family:Material Symbols Outlined;font-style:normal;line-height:1;display:inline-flex}button{cursor:pointer;border:0}ul{list-style:none}body>*{z-index:1;position:relative}.app-shell{width:min(1120px,100vw - 32px);margin:0 auto;padding:44px 0 100px}.site-page{background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .82)) 0%, transparent 26%), radial-gradient(circle at 40% 100%, rgb(var(--scene-tint-2-rgb) / calc(var(--scene-opacity) * .72)) 0%, transparent 42%), radial-gradient(circle at 8% 20%, rgb(var(--scene-tint-3-rgb) / calc(var(--scene-opacity) * .44)) 0%, transparent 34%), linear-gradient(180deg, rgb(var(--scene-base-rgb)) 0%, rgb(var(--bg-rgb)) 100%);min-height:100vh}.site-header{border-bottom:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.88 * var(--panel-alpha)));-webkit-backdrop-filter:blur(12px)}.site-header-inner,.site-footer-inner,.site-main{width:min(1480px,100vw - 60px);margin:0 auto}.site-header-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:82px;display:grid}.site-brand{font-family:var(--font-title), serif;letter-spacing:.1em;color:var(--brand);justify-self:start;font-size:1.04rem;font-style:italic;font-weight:600}.site-nav{justify-self:center;align-items:center;gap:22px;display:flex}.site-nav-link{color:var(--text);opacity:.9;letter-spacing:.03em;padding-bottom:4px;font-size:.9rem;position:relative}.site-nav-link:after{content:"";background:var(--brand);transform-origin:50%;height:1px;transition:transform .14s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav-link:hover:after,.site-nav-link.is-active:after{transform:scaleX(1)}.site-nav-link.is-active{color:var(--brand)}.site-header-action{justify-self:end;align-items:center;gap:12px;display:inline-flex}.site-header-button,.site-primary-button,.site-secondary-button,.site-invite-button{letter-spacing:.02em;border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-size:.92rem;font-weight:600;transition:opacity .14s,transform .14s,border-color .14s,box-shadow .14s;display:inline-flex}.site-header-button,.site-primary-button,.site-invite-button{background:var(--accent);color:var(--accent-contrast);border:1px solid rgb(var(--accent-rgb) / .28)}.site-header-button:hover,.site-primary-button:hover,.site-invite-button:hover{opacity:.92;box-shadow:0 8px 18px rgb(var(--accent-rgb) / .18);transform:translateY(-1px)}.site-secondary-button{background:rgb(var(--surface-high-rgb) / calc(.56 * var(--panel-alpha)));color:var(--text);border:1px solid var(--line)}.site-secondary-button:hover{border-color:var(--line-bright);background:rgb(var(--surface-bright-rgb) / calc(.8 * var(--panel-alpha)))}.site-main{padding:56px 0 120px}.site-footer{border-top:1px solid var(--line);background:rgb(var(--surface-low-rgb) / calc(.78 * var(--panel-alpha)))}.site-footer-inner{justify-content:space-between;align-items:center;gap:16px;min-height:92px;display:flex}.site-footer-brand{font-family:var(--font-title), serif;letter-spacing:.08em;color:var(--brand-soft);font-size:.92rem;font-style:italic}.site-footer-links{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;gap:24px;font-size:.86rem;display:flex}.landing-hero{grid-template-columns:minmax(0,1.2fr) minmax(340px,420px);align-items:center;gap:48px;min-height:560px;padding:34px 0 24px;display:grid;position:relative;overflow:hidden}.landing-moon{pointer-events:none;z-index:0;background:radial-gradient(circle at 38% 38%, rgb(var(--scene-tint-2-rgb) / .55), rgb(var(--scene-tint-1-rgb) / .3) 50%, transparent 75%);filter:blur(2px);opacity:.9;border-radius:50%;width:360px;height:360px;position:absolute;top:-40px;right:-80px}.landing-copy{z-index:1;max-width:720px;position:relative}.landing-eyebrow{font-family:var(--font-title), serif;letter-spacing:.14em;text-transform:uppercase;color:var(--brand);margin-bottom:18px;font-size:.8rem;font-style:italic;font-weight:600}.landing-title{font-family:var(--font-title), serif;letter-spacing:-.06em;color:var(--title-strong);font-size:clamp(3.6rem,7vw,5.7rem);line-height:.96}.landing-title em{color:var(--brand);font-style:italic}.landing-body{max-width:560px;color:var(--copy-strong);margin-top:26px;font-size:1.08rem;line-height:1.75}.landing-actions{flex-wrap:wrap;gap:16px;margin-top:34px;display:flex}.invitation-card,.lounge-panel{border:1px solid var(--line);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.96 * var(--panel-alpha))), rgb(var(--field-surface-rgb) / calc(.9 * var(--panel-alpha))));box-shadow:var(--shadow-elevated)}.invitation-card{border-radius:18px;gap:18px;padding:30px;display:grid}.invitation-copy h2{font-family:var(--font-title), serif;margin-bottom:12px;font-size:2rem;line-height:1}.invitation-copy p{color:var(--muted);line-height:1.72}.invitation-input{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha)));min-height:76px;color:rgb(var(--text-rgb) / .55);letter-spacing:.14em;border-radius:12px;justify-content:center;align-items:center;font-size:1.12rem;display:flex}.fact-ribbon{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin-top:32px;padding:22px 10px;display:grid}.fact-ribbon-item{color:var(--copy-strong);justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:.94rem;display:inline-flex}.fact-ribbon-item+.fact-ribbon-item{border-left:1px solid var(--line)}.steps-section{padding:78px 0 24px}.steps-heading h2,.lounge-intro h1{font-family:var(--font-title), serif;letter-spacing:-.05em;font-size:clamp(2.8rem,5vw,4.5rem);line-height:1.02}.steps-heading p,.lounge-intro p{max-width:680px;color:var(--copy-strong);margin-top:18px;font-size:1rem;line-height:1.72}.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:34px;display:grid}.steps-card{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.86 * var(--panel-alpha)));border-radius:18px;flex-direction:column;gap:18px;min-height:260px;padding:28px 26px 24px;display:flex}.steps-index{border:1px solid var(--line-bright);width:52px;height:44px;color:var(--brand);font-family:var(--font-title), serif;border-radius:10px;justify-content:center;align-items:center;font-size:1.1rem;display:inline-flex}.steps-card strong{font-family:var(--font-title), serif;font-size:1.55rem;line-height:1.2}.steps-card p{color:var(--muted);line-height:1.76}.lounge-intro{padding:20px 0 36px}.site-alert{border:1px solid rgb(var(--danger-rgb) / .34);background:linear-gradient(180deg, rgb(var(--danger-rgb) / calc(.16 * var(--panel-alpha))), rgb(var(--danger-rgb) / calc(.1 * var(--panel-alpha))));color:#ffd0cbf5;-webkit-backdrop-filter:blur(10px);border-radius:18px;margin-bottom:18px;padding:16px 18px}.lounge-grid{grid-template-columns:minmax(0,2.1fr) minmax(320px,.95fr);align-items:start;gap:40px;display:grid}.lounge-panel{border-radius:18px;padding:30px}.lounge-host-panel{gap:26px;display:grid}.lounge-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.lounge-panel-head h2,.lounge-side h2{font-family:var(--font-title), serif;margin-top:4px;font-size:2rem;line-height:1}.lounge-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.lounge-field-stack{gap:18px;display:grid}.lounge-field{gap:8px;display:grid}.lounge-field span,.lounge-control-head span{color:rgb(var(--text-rgb) / .84);font-size:.92rem;font-weight:600}.lounge-field input{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.84 * var(--panel-alpha)));min-height:58px;color:var(--text);border-radius:12px;padding:0 18px}.lounge-field input::placeholder{color:rgb(var(--text-rgb) / .42)}.lounge-field input:focus{border-color:rgb(var(--accent-rgb) / .52);box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .18);outline:none}.lounge-control-block{gap:14px;display:grid}.lounge-control-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.lounge-control-head strong{color:var(--brand);font-family:var(--font-title), serif;font-size:1.5rem;font-weight:600}.count-chip-row{flex-wrap:wrap;gap:10px;display:flex}.count-chip{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.78 * var(--panel-alpha)));width:44px;height:44px;color:var(--text);border-radius:10px;font-size:1rem;transition:background .14s,border-color .14s,box-shadow .14s}.count-chip:hover:not(.is-active){border-color:var(--line-bright);background:rgb(var(--surface-bright-rgb) / calc(.9 * var(--panel-alpha)))}.count-chip.is-active{background:var(--accent);color:var(--accent-contrast);border-color:rgb(var(--accent-rgb) / .3);box-shadow:0 4px 12px rgb(var(--accent-rgb) / .16)}.discussion-slider{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha)));border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:18px 16px;display:grid}.discussion-slider-icon{color:var(--brand);font-size:1.3rem}.discussion-slider input{accent-color:var(--accent)}.role-pill-row{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha)));flex-wrap:wrap;gap:12px;padding:18px 16px;display:flex}.role-pill{border:1px solid var(--line);background:rgb(var(--surface-bright-rgb) / calc(.72 * var(--panel-alpha)));color:#f2e6e5;align-items:center;gap:8px;min-height:34px;padding:0 14px;display:inline-flex}.role-pill small{color:var(--brand-soft);font-size:.8rem}.role-preview-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.role-preview-card{border:1px solid var(--line);background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .34)) 0%, transparent 58%), rgb(var(--field-surface-rgb) / calc(.78 * var(--panel-alpha)));align-content:start;gap:12px;min-height:168px;padding:16px;display:grid}.role-preview-card[data-team=werewolf]{border-color:var(--team-werewolf-border)}.role-preview-card[data-team=outsider]{border-color:var(--team-outsider-border)}.role-preview-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.role-preview-icon-wrap{background:rgb(var(--surface-bright-rgb) / calc(.82 * var(--panel-alpha)));border:1px solid var(--line);border-radius:9999px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.role-preview-icon{color:var(--text);font-size:1.35rem}.role-preview-card[data-team=werewolf] .role-preview-icon,.role-preview-card[data-team=werewolf] .role-preview-count{color:var(--team-werewolf)}.role-preview-card[data-team=outsider] .role-preview-icon,.role-preview-card[data-team=outsider] .role-preview-count{color:var(--team-outsider)}.role-preview-count{background:rgb(var(--surface-bright-rgb) / calc(.9 * var(--panel-alpha)));min-height:24px;color:var(--text);letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;justify-content:center;align-items:center;padding:0 8px;font-size:.74rem;font-weight:700;display:inline-flex}.role-preview-card strong{font-family:var(--font-title), sans-serif;color:var(--text);letter-spacing:-.01em;font-size:1rem;font-weight:700}.role-preview-card p{color:var(--muted);font-size:.82rem;line-height:1.55}.inline-link-button{color:var(--brand);background:0 0;padding:0;font-size:.9rem;font-weight:600}.custom-deck-panel{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.72 * var(--panel-alpha)));gap:18px;padding:18px 20px;display:grid}.custom-deck-copy strong{margin-bottom:6px;display:block}.custom-deck-copy p{color:var(--muted);line-height:1.6}.custom-deck-editor{display:grid}.host-panel-actions{justify-content:flex-end;display:flex}.lounge-side,.lounge-resume-card{gap:18px;display:grid}.lounge-resume-card p{color:var(--muted);margin-top:10px;line-height:1.7}.resume-actions{gap:10px;display:flex}.resume-actions>*{flex:1}.lounge-join-panel{gap:20px;display:grid}.lounge-join-button{width:100%}.grid-layout{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px;display:grid}.grid-two{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.stack{align-content:start;gap:16px;display:grid}.form-grid{gap:14px;margin-top:16px;display:grid}.room-wrapper{background:radial-gradient(circle at 22% 0%, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .78)) 0%, transparent 28%), radial-gradient(circle at 88% 18%, rgb(var(--scene-tint-2-rgb) / calc(var(--scene-opacity) * .72)) 0%, transparent 24%), radial-gradient(circle at 54% 100%, rgb(var(--scene-tint-3-rgb) / calc(var(--scene-opacity) * .44)) 0%, transparent 32%), linear-gradient(180deg, rgb(var(--scene-base-rgb)) 0%, rgb(var(--bg-rgb)) 52%, rgb(var(--surface-low-rgb)) 100%);isolation:isolate;flex-direction:column;display:flex;position:fixed;inset:0}.room-wrapper:before{content:"";pointer-events:none;opacity:.03;z-index:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.room-wrapper:after{content:"";pointer-events:none;background:radial-gradient(circle at 45% 42%, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .34)) 0%, transparent 56%), radial-gradient(circle at 62% 60%, rgb(var(--accent-2-rgb) / calc(var(--scene-opacity) * .24)) 0%, transparent 62%);filter:blur(24px);z-index:0;width:760px;height:760px;position:absolute;top:-180px;left:18%}.room-wrapper[data-phase=night]{background:radial-gradient(circle at 18% 0%, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .74)) 0%, transparent 26%), radial-gradient(circle at 84% 18%, rgb(var(--scene-tint-3-rgb) / calc(var(--scene-opacity) * .68)) 0%, transparent 24%), linear-gradient(180deg, rgb(var(--scene-base-rgb)) 0%, rgb(var(--bg-rgb)) 52%, rgb(var(--surface-low-rgb)) 100%)}.room-wrapper[data-phase=night]:after{background:radial-gradient(circle at 34% 34%, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .18)) 0%, transparent 40%), radial-gradient(circle at 66% 62%, rgb(var(--scene-tint-2-rgb) / calc(var(--scene-opacity) * .24)) 0%, transparent 44%);filter:blur(40px);opacity:.9;width:920px;height:920px;top:-120px;left:50%;transform:translate(-50%)}.room-header-bar{background:rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha)));-webkit-backdrop-filter:blur(16px);z-index:2;flex-shrink:0;padding:0 max(24px,50vw - 636px);position:relative}.room-body{z-index:1;flex:1;width:100%;max-width:1440px;min-height:0;margin:0 auto;padding:0 12px;display:flex;position:relative}.room-main{--mw-pane-top-offset:42px;min-width:0;padding:var(--mw-pane-top-offset) 14px 88px 0;flex:1;overflow-y:auto}.room-sidebar{scrollbar-width:thin;scrollbar-color:var(--surface-bright) transparent;background:0 0;flex-direction:column;flex-shrink:0;gap:18px;width:420px;padding:42px 0 24px 8px;display:flex;overflow:hidden auto}.room-shell-topbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:84px;display:grid}.room-shell-brand{font-family:var(--font-title), serif;letter-spacing:-.03em;color:var(--brand);justify-self:start;font-size:1.5rem;font-style:italic;font-weight:500}.room-shell-meta{flex-wrap:wrap;justify-self:center;align-items:center;gap:12px;display:inline-flex}.room-shell-code{color:var(--copy-strong);letter-spacing:.08em;font-size:.92rem;font-weight:700}.room-shell-title{color:rgb(var(--text-rgb) / .64);letter-spacing:.08em;text-transform:uppercase;padding-left:12px;font-size:.82rem;position:relative}.room-shell-title:before{content:"";background:var(--line-bright);width:1px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.room-shell-actions{justify-self:end;align-items:center;gap:12px;display:flex}.room-shell-actions .dsettings{flex-shrink:0}.room-shell-actions .dsettings-trigger{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.82 * var(--panel-alpha)));width:38px;height:38px;color:var(--brand);border-radius:4px}.room-shell-actions .dsettings-trigger:hover,.room-shell-actions .dsettings-trigger.is-open{background:rgb(var(--surface-bright-rgb) / calc(.86 * var(--panel-alpha)));color:var(--text);transform:translateY(-1px)}.room-shell-link,.room-shell-button{border-radius:4px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-size:.88rem;display:inline-flex}.room-shell-link{color:var(--muted);background:0 0}.room-shell-button{color:var(--text);border:1px solid var(--line);background:0 0}.room-shell-icon-button{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.82 * var(--panel-alpha)));width:38px;height:38px;color:var(--brand);border-radius:4px;justify-content:center;align-items:center;transition:background .14s,color .14s,transform .14s;display:inline-flex}.room-shell-icon-button:hover:not(:disabled){background:rgb(var(--surface-bright-rgb) / calc(.86 * var(--panel-alpha)));color:var(--text);transform:translateY(-1px)}.room-shell-icon-button:disabled{opacity:.45;cursor:not-allowed}.room-sidebar .compact-panel{background:rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha)));border:1px solid var(--line);max-height:220px;box-shadow:var(--shadow-elevated);border-radius:6px;flex-shrink:0;padding:0;overflow-y:auto}.room-sidebar-roster{flex-shrink:0;max-height:420px;overflow:hidden}.room-stage-layout{gap:28px;display:grid}.room-lobby-layout{gap:16px}.lobby-room-grid{flex:1;grid-template-columns:minmax(212px,228px) minmax(0,1fr) clamp(300px,24vw,320px);align-items:stretch;gap:16px;min-height:0;display:grid}.lobby-context-column,.lobby-main-column,.room-lobby-sidebar{flex-direction:column;gap:16px;min-height:0;display:flex}.lobby-context-column,.lobby-main-column{overflow:hidden}.lobby-column-scroll{scrollbar-width:thin;scrollbar-color:var(--surface-bright) transparent;overscroll-behavior:contain;flex-direction:column;flex:auto;gap:14px;min-height:0;padding-right:10px;display:flex;overflow:hidden auto}.lobby-column-scroll>*{flex-shrink:0}.room-wrapper[data-phase=lobby] .room-body{max-width:1520px;overflow:hidden}.room-wrapper[data-phase=lobby] .room-main{flex-direction:column;height:calc(100dvh - 84px);min-height:0;padding:42px 0 24px;display:flex;overflow:hidden}.room-wrapper[data-phase=lobby] .lobby-room-grid{flex:1;align-items:stretch;height:100%;min-height:0;max-height:calc(100dvh - 140px)}.room-wrapper[data-phase=lobby] .lobby-context-column,.room-wrapper[data-phase=lobby] .lobby-main-column,.room-wrapper[data-phase=lobby] .room-lobby-sidebar{height:100%;min-height:0;max-height:100%}.room-wrapper[data-phase=lobby] .lobby-context-column,.room-wrapper[data-phase=lobby] .lobby-main-column{overflow:hidden}.room-wrapper[data-phase=lobby] .lobby-context-column>.lobby-column-scroll,.room-wrapper[data-phase=lobby] .lobby-main-column>.lobby-column-scroll{flex:auto;min-height:0;max-height:100%;padding-right:10px;overflow:hidden auto}.room-wrapper[data-phase=lobby] .lobby-context-column>.lobby-column-scroll>*,.room-wrapper[data-phase=lobby] .lobby-main-column>.lobby-column-scroll>*{flex-shrink:0}.lobby-hero-card{background:radial-gradient(circle at top right, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .3)) 0%, transparent 52%), radial-gradient(circle at bottom left, rgb(var(--accent-2-rgb) / calc(var(--scene-opacity) * .24)) 0%, transparent 48%), linear-gradient(135deg, rgb(var(--accent-3-rgb) / .08), transparent 58%), rgb(var(--surface-high-rgb) / calc(.78 * var(--panel-alpha)));border:1px solid rgb(var(--accent-rgb) / .26);gap:12px;padding:22px 24px;display:grid}.lobby-hero-card h2{font-family:var(--font-title), serif;letter-spacing:-.06em;color:var(--title-strong);font-size:clamp(1.8rem,3.2vw,2.4rem);line-height:1.02}.lobby-stats-ribbon{gap:10px;display:grid}.lobby-stat-cell{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:0 2px 8px;display:flex}.lobby-stat-cell span{color:rgb(var(--text-rgb) / .62);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem}.lobby-stat-cell strong{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-size:clamp(1.05rem,1.8vw,1.35rem);line-height:1}.lobby-stats-ribbon .lobby-stat-cell:first-of-type strong{color:var(--accent)}.lobby-stats-ribbon .lobby-stat-cell:nth-of-type(2) strong{color:var(--accent-2)}.lobby-stats-ribbon .lobby-stat-cell:nth-of-type(3) strong{color:var(--accent-3)}.lobby-stat-divider{display:none}.room-stage-grid,.room-support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.room-lobby-grid{align-items:stretch}.lobby-invite-panel{gap:10px;padding:22px 20px;display:grid}.lobby-invite-row{gap:10px;display:grid}.lobby-invite-url{border:1px solid rgb(var(--accent-4-rgb) / .24);background:linear-gradient(135deg, rgb(var(--accent-4-rgb) / .12), transparent 62%), rgb(var(--field-surface-rgb) / calc(.9 * var(--panel-alpha)));min-height:48px;color:var(--brand);letter-spacing:.12em;border-radius:6px;justify-content:center;align-items:center;padding:0 14px;font-size:1.05rem;display:flex}.lobby-mobile-sidebar,.lobby-sidebar-stack{flex-direction:column;gap:14px;display:flex}.room-lobby-sidebar{flex-direction:column;justify-content:flex-start;min-height:0;display:flex;overflow:hidden}.lobby-sidebar-stack{flex:auto;height:100%;min-height:0;overflow:hidden}.room-lobby-sidebar .chat-panel{flex:auto;height:100%;min-height:0;max-height:none}.room-lobby-sidebar .chat-messages{min-height:0}.room-lobby-sidebar .chat-input-row{background:rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha)));flex-shrink:0}.lobby-mobile-sidebar{grid-template-rows:auto minmax(0,1fr)}.lobby-mobile-sidebar .chat-panel{height:clamp(280px,52dvh,460px);min-height:0;max-height:none}.lobby-mobile-sidebar .chat-messages{min-height:0}.room-sidebar:not(.room-lobby-sidebar) .chat-panel{flex:none;height:min(64vh,620px);min-height:440px;max-height:620px}.room-lobby-deck-panel,.lobby-settings-panel{gap:14px;display:grid}.lobby-settings-panel{padding:24px 22px}.lobby-section-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:10px;display:flex}.lobby-section-head h2{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-size:1.5rem}.lobby-game-picker{gap:16px;display:grid}.lobby-game-picker-compact{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px}.lobby-game-picker-current{--card-accent-rgb:var(--accent-rgb);--card-spot-rgb:var(--accent-2-rgb);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.lobby-game-picker-current-copy{gap:4px;min-width:0;display:grid}.lobby-game-picker-current-copy span{color:rgb(var(--text-rgb) / .56);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:800}.lobby-game-picker-current-copy strong{color:var(--title-strong);font-family:var(--font-title), serif;letter-spacing:-.035em;word-break:keep-all;font-size:clamp(1.2rem,2.2vw,1.55rem);line-height:1.08}.lobby-game-picker-current-copy p{color:rgb(var(--text-rgb) / .64);word-break:keep-all;font-size:.8rem;line-height:1.45}.lobby-game-picker-compact-actions{justify-content:flex-end;align-items:center;gap:10px;min-width:max-content;display:flex}.lobby-game-picker-modal-backdrop{z-index:90;pointer-events:auto;background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);place-items:center;padding:24px;animation:.2s result-overlay-fade;display:grid;position:fixed;inset:0}.lobby-game-picker-modal{pointer-events:auto;border:1px solid rgb(var(--line-rgb) / .72);background:radial-gradient(circle at top left, rgb(var(--accent-rgb) / .12), transparent 34%), rgb(var(--modal-surface-rgb) / calc(.96 * var(--panel-alpha)));width:min(980px,100%);max-height:min(760px,100dvh - 48px);box-shadow:var(--shadow-strong);border-radius:22px;gap:18px;padding:22px;animation:.28s cubic-bezier(.2,.85,.3,1) both result-modal-rise;display:grid;overflow:hidden}.lobby-game-picker-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.lobby-game-picker-modal-header h2{color:var(--title-strong);font-family:var(--font-title), serif;letter-spacing:-.04em;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1}.lobby-game-picker-modal-close{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.72 * var(--panel-alpha)));width:42px;height:42px;color:rgb(var(--text-rgb) / .78);cursor:pointer;border-radius:999px;transition:transform .14s,border-color .14s,color .14s}.lobby-game-picker-modal-close:hover{border-color:rgb(var(--accent-rgb) / .36);color:rgb(var(--accent-rgb) / .96);transform:translateY(-1px)}.lobby-game-picker-modal .lobby-game-picker-grid{padding-right:4px;overflow-y:auto}.lobby-game-picker-modal-actions{justify-content:flex-end;padding-top:2px;display:flex}.lobby-game-picker .lobby-section-head{align-items:flex-start}.lobby-game-picker-status{border:1px solid rgb(var(--warning-rgb) / .22);background:rgb(var(--warning-rgb) / .1);min-height:30px;color:rgb(var(--warning-rgb) / .92);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:.72rem;font-weight:800;display:inline-flex}.lobby-game-picker-status.is-ready{border-color:rgb(var(--success-rgb) / .24);background:rgb(var(--success-rgb) / .12);color:rgb(var(--success-rgb) / .92)}.lobby-game-picker-summary{border:1px solid rgb(var(--warning-rgb) / .2);background:radial-gradient(circle at top left, rgb(var(--warning-rgb) / .1), transparent 42%), rgb(var(--field-surface-rgb) / calc(.76 * var(--panel-alpha)));border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 16px;padding:16px;display:grid}.lobby-game-picker-summary.is-ready{border-color:rgb(var(--accent-rgb) / .24);background:radial-gradient(circle at top left, rgb(var(--accent-rgb) / .11), transparent 42%), rgb(var(--field-surface-rgb) / calc(.78 * var(--panel-alpha)))}.lobby-game-picker-summary span{color:rgb(var(--text-rgb) / .56);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:800}.lobby-game-picker-summary strong{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);word-break:keep-all;font-size:clamp(1.45rem,3vw,2rem);line-height:1.08}.lobby-game-picker-summary p{color:rgb(var(--text-rgb) / .66);word-break:keep-all;grid-column:1;font-size:.86rem;line-height:1.6}.lobby-game-picker-summary button{grid-area:1/2/span 3;align-self:center}.lobby-game-picker-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.lobby-game-picker-card{--card-accent-rgb:var(--accent-rgb);--card-spot-rgb:var(--accent-2-rgb);border:1px solid rgb(var(--card-accent-rgb) / .2);background:radial-gradient(circle at top right, rgb(var(--card-accent-rgb) / .08), transparent 42%), linear-gradient(180deg, rgb(var(--field-surface-rgb) / calc(.9 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.86 * var(--panel-alpha))));text-align:left;border-radius:16px;align-content:space-between;gap:16px;min-height:228px;padding:16px;transition:transform .14s,border-color .14s,background .14s;display:grid}.lobby-game-picker-card[data-game=spy-mission]{--card-accent-rgb:var(--accent-2-rgb);--card-spot-rgb:var(--accent-3-rgb)}.lobby-game-picker-card:hover{border-color:rgb(var(--card-accent-rgb) / .34);transform:translateY(-1px)}.lobby-game-picker-card.is-selected{border-color:rgb(var(--card-accent-rgb) / .54);box-shadow:inset 0 0 0 1px rgb(var(--card-accent-rgb) / .14), 0 14px 28px rgb(var(--card-spot-rgb) / .1)}.lobby-game-picker-topline{flex-wrap:wrap;gap:8px;display:flex}.lobby-game-picker-topline span{background:rgb(var(--card-spot-rgb) / .12);min-height:28px;color:rgb(var(--card-spot-rgb) / .9);letter-spacing:.05em;white-space:nowrap;border-radius:999px;align-items:center;padding:0 10px;font-size:.7rem;font-weight:800;display:inline-flex}.lobby-game-picker-copy{grid-template-columns:44px minmax(0,1fr);gap:14px;display:grid}.lobby-game-picker-icon-wrap{border:1px solid rgb(var(--card-accent-rgb) / .2);background:rgb(var(--card-accent-rgb) / .12);border-radius:14px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.lobby-game-picker-icon{color:rgb(var(--card-accent-rgb) / .92);font-size:1.35rem}.lobby-game-picker-copy strong{font-family:var(--font-title), serif;letter-spacing:-.035em;color:var(--title-strong);word-break:keep-all;font-size:1.15rem;line-height:1.12;display:block}.lobby-game-picker-copy p{color:rgb(var(--text-rgb) / .68);word-break:keep-all;margin-top:8px;font-size:.84rem;line-height:1.55}.lobby-game-picker-copy span:not(.material-symbols-outlined){color:rgb(var(--card-accent-rgb) / .9);word-break:keep-all;margin-top:8px;font-size:.76rem;font-weight:700;line-height:1.45;display:block}.lobby-game-picker-actions{gap:8px;display:grid}.lobby-game-picker-actions .button-primary,.lobby-game-picker-actions .button-secondary{width:100%}.lobby-role-grid{scrollbar-width:thin;scrollbar-color:var(--line-bright) transparent;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:10px;padding-bottom:4px;display:grid;overflow-x:auto}.lobby-role-card{--card-accent-rgb:var(--accent-rgb);--card-spot-rgb:var(--accent-2-rgb);background:radial-gradient(circle at 50% 0%, rgb(var(--card-accent-rgb) / .12), transparent 44%), linear-gradient(180deg, rgb(var(--field-surface-rgb) / calc(.96 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha))));border:1px solid rgb(var(--card-accent-rgb) / .22);text-align:center;align-content:start;gap:8px;min-height:124px;padding:12px 10px 14px;transition:border-color .14s,transform .14s,background .14s;display:grid}.lobby-role-card:nth-child(2n){--card-accent-rgb:var(--accent-2-rgb);--card-spot-rgb:var(--accent-3-rgb)}.lobby-role-card:nth-child(3n){--card-accent-rgb:var(--accent-4-rgb);--card-spot-rgb:var(--accent-rgb)}.lobby-role-card[data-team=werewolf]{border-color:var(--team-werewolf-border)}.lobby-role-card:hover{background:radial-gradient(circle at 50% 0%, rgb(var(--card-accent-rgb) / .18), transparent 48%), linear-gradient(180deg, rgb(var(--surface-bright-rgb) / calc(.96 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.92 * var(--panel-alpha))));transform:translateY(-1px)}.lobby-role-card.is-selected{border-color:rgb(var(--card-accent-rgb) / .52);box-shadow:inset 0 0 0 1px rgb(var(--card-accent-rgb) / .16), 0 14px 28px rgb(var(--card-spot-rgb) / .12)}.lobby-role-topline{justify-content:flex-end;align-items:center;gap:8px;display:flex}.lobby-role-icon-wrap{background:rgb(var(--card-accent-rgb) / .14);border:1px solid rgb(var(--card-accent-rgb) / .24);border-radius:9999px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.lobby-role-icon{color:rgb(var(--card-accent-rgb) / .92);font-size:1.25rem}.lobby-role-card[data-team=werewolf] .lobby-role-icon,.lobby-role-card[data-team=werewolf] .lobby-role-count{color:var(--team-werewolf)}.lobby-role-card[data-team=werewolf] .lobby-role-icon-wrap{background:var(--team-werewolf-bg);border-color:var(--team-werewolf-border)}.lobby-role-copy{justify-items:center;gap:10px;display:grid}.lobby-role-card strong{font-family:var(--font-title), serif;color:var(--title-strong);white-space:normal;font-size:.9rem;line-height:1.1}.lobby-role-count{letter-spacing:.08em;text-transform:uppercase;background:rgb(var(--card-spot-rgb) / .14);color:rgb(var(--card-spot-rgb) / .92);white-space:nowrap;border-radius:9999px;padding:4px 8px;font-size:.74rem;font-weight:700}.lobby-editor-wrap{margin-top:6px}.lobby-settings-summary{background:rgb(var(--surface-high-rgb) / calc(.82 * var(--panel-alpha)));grid-template-columns:1fr;gap:14px;padding:22px 24px;display:grid}.lobby-settings-cell{gap:12px;padding:0;display:grid}.lobby-settings-cell span{color:rgb(var(--text-rgb) / .58);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.lobby-settings-cell strong{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-size:2rem;line-height:1.1}.lobby-settings-divider{background:var(--line);width:100%;height:1px;margin-right:0}.lobby-settings-controls{gap:14px;max-width:none;display:grid}.lobby-setting-group{border:1px solid rgb(var(--accent-2-rgb) / .18);background:radial-gradient(circle at top right, rgb(var(--accent-2-rgb) / .1), transparent 42%), rgb(var(--field-surface-rgb) / calc(.76 * var(--panel-alpha)));border-radius:12px;gap:14px;padding:16px;display:grid}.lobby-setting-group-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.lobby-setting-group-head span{color:rgb(var(--text-rgb) / .58);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem}.lobby-setting-group-head strong{font-family:var(--font-title), serif;letter-spacing:-.03em;color:var(--title-strong);font-size:1.15rem;line-height:1}.lobby-setting-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.lobby-setting-chip{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha)));min-height:38px;color:rgb(var(--text-rgb) / .78);letter-spacing:.04em;border-radius:999px;padding:0 14px;font-size:.82rem;font-weight:700;transition:transform .14s,border-color .14s,background .14s,color .14s}.lobby-setting-chip:hover:not(:disabled){border-color:rgb(var(--accent-rgb) / .28);color:var(--text);transform:translateY(-1px)}.lobby-setting-chip.is-active{border-color:rgb(var(--accent-rgb) / .48);background:var(--accent);color:var(--accent-contrast);box-shadow:0 4px 12px rgb(var(--accent-rgb) / .14)}.lobby-setting-chip:disabled{opacity:.48;cursor:not-allowed}.lobby-action-panel{gap:10px;margin-bottom:2px;padding-top:0;padding-bottom:12px;display:grid}.lobby-start-button{min-height:48px;font-family:var(--font-title), serif;letter-spacing:.08em;font-size:1rem}.lobby-start-note{color:var(--brand);letter-spacing:.04em;text-align:center;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex}.lobby-start-note.is-warning{color:rgb(var(--text-rgb) / .78)}.lobby-countdown-overlay{z-index:260;pointer-events:none;justify-content:center;padding:0 20px;display:flex;position:fixed;inset:108px 0 auto}.lobby-countdown-card{border:1px solid rgb(var(--accent-3-rgb) / .3);background:linear-gradient(135deg, rgb(var(--accent-3-rgb) / .12), rgb(var(--accent-2-rgb) / .08)), rgb(var(--modal-surface-rgb) / calc(.92 * var(--panel-alpha)));min-width:220px;box-shadow:0 18px 40px rgb(var(--surface-shadow) / .2);-webkit-backdrop-filter:blur(14px);border-radius:16px;justify-items:center;gap:8px;padding:18px 22px;display:grid}.lobby-countdown-label{color:rgb(var(--accent-3-rgb) / .88);letter-spacing:.16em;text-transform:uppercase;font-size:.66rem;font-weight:700}.lobby-countdown-card strong{font-family:var(--font-title), serif;letter-spacing:-.06em;color:var(--title-strong);font-size:2.6rem;line-height:1}.lobby-countdown-card p{color:var(--copy-strong);margin:0;font-size:.9rem}.room-lobby-wait{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.66 * var(--panel-alpha)));border-radius:6px;padding:16px 18px}.room-lobby-wait-label{color:rgb(var(--text-rgb) / .62);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.68rem;display:inline-flex}.room-brief-card,.room-phase-panel,.room-support-panel{border:1px solid var(--line);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha))));box-shadow:var(--shadow-elevated);border-radius:8px}.room-brief-card{background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.84 * var(--panel-alpha))))}.room-brief-card h2,.room-phase-panel h2,.room-support-panel h2{letter-spacing:-.04em;margin-bottom:0;font-size:clamp(1.3rem,2vw,1.9rem)}.room-panel-head{gap:10px;margin-bottom:20px;display:grid}.room-panel-kicker{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--text-rgb) / .62);align-items:center;font-size:.66rem;font-weight:700;display:inline-flex}.lobby-participants-panel .roster-panel-head{border-bottom:1px solid var(--line);padding-bottom:12px}.lobby-participants-panel,.room-lobby-deck-panel{padding:24px 22px}.lobby-participants-panel .roster-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin-top:10px;padding-right:0;display:grid;overflow:visible}.lobby-participants-panel .roster-seat{background:rgb(var(--surface-high-rgb) / calc(.74 * var(--panel-alpha)));min-height:0;box-shadow:none;border-radius:10px;gap:6px;padding:10px 10px 9px}.lobby-participants-panel .roster-seat-row{align-items:center;gap:8px}.lobby-participants-panel .roster-seat-avatar{border-radius:999px;width:34px;height:34px;font-size:.8rem}.lobby-participants-panel .roster-seat-body{gap:4px}.lobby-participants-panel .roster-seat-topline{gap:5px}.lobby-participants-panel .roster-seat-topline strong{font-size:.88rem}.lobby-participants-panel .roster-seat-meta{gap:4px 8px;font-size:.7rem}.lobby-participants-panel .roster-seat-actions{justify-content:flex-end;width:auto;margin-left:auto;padding-top:0}.lobby-participants-panel.is-compact .roster-seat-meta{align-items:center}.lobby-participants-panel.is-compact .roster-mini-button{min-height:28px;padding:0 8px;font-size:.68rem}.lobby-participants-panel.is-compact .roster-badge{min-height:20px;padding:0 7px;font-size:.62rem}.roster-badge.is-rematch-ready{background:rgb(var(--success-rgb) / .16);color:var(--success)}.roster-badge.is-rematch-pending{background:rgb(var(--danger-rgb) / .12);color:var(--danger)}.lobby-participants-panel.is-compact .roster-seat.is-self{box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .22), 0 8px 18px rgb(var(--surface-shadow) / .08)}.roster-panel-status{color:rgb(var(--text-rgb) / .58);margin-top:6px;font-size:.78rem}.room-brief-head{border-bottom:1px solid var(--line);padding-bottom:18px}.room-brief-list{gap:16px;margin-top:4px;display:grid}.room-brief-list li{color:rgb(var(--text-rgb) / .82);padding-left:24px;line-height:1.6;position:relative}.room-brief-list li:before{content:"";background:var(--brand);width:8px;height:8px;box-shadow:0 0 0 4px rgb(var(--accent-rgb) / .1);border-radius:50%;position:absolute;top:10px;left:0}.room-phase-panel{gap:16px;padding:18px clamp(18px,2.5vw,30px) clamp(18px,2.5vw,30px);display:grid;position:relative;overflow:hidden}.room-phase-head{z-index:1;justify-content:space-between;align-items:flex-start;gap:18px;min-height:32px;display:flex;position:relative}.room-phase-muted{margin-top:-4px}.room-phase-timer{min-width:236px}.room-phase-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.room-phase-meta{color:var(--muted);letter-spacing:.06em;font-size:.88rem}.room-phase-countdown{color:var(--brand);font-family:var(--font-title), serif;letter-spacing:-.04em;white-space:nowrap;font-size:1.55rem;transition:color .3s,transform .3s}.room-phase-countdown.is-urgent{color:var(--danger,#e12a29);animation:.7s ease-in-out infinite alternate countdown-pulse}@keyframes countdown-pulse{0%{opacity:1}to{opacity:.55}}.room-phase-waiting{align-content:center;min-height:280px}.room-vote-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.room-vote-option{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.84 * var(--panel-alpha)));min-height:86px;color:var(--text);font-family:var(--font-title), serif;text-align:center;border-radius:6px;font-size:1.08rem;transition:border-color .16s,background .16s,transform .16s,color .16s}.room-vote-option:hover{background:rgb(var(--surface-bright-rgb) / calc(.88 * var(--panel-alpha)));transform:translateY(-1px)}.room-vote-option.is-selected{background:rgb(var(--accent-rgb) / .12);border-color:rgb(var(--accent-rgb) / .4);color:var(--text)}.room-vote-meta{color:rgb(var(--text-rgb) / .58);letter-spacing:.12em;text-transform:uppercase;gap:2px;font-size:.7rem;display:grid}.room-vote-confirmed{gap:12px;display:grid}.spy-mission-side-timer{border-color:rgb(var(--accent-3-rgb) / .28);background:radial-gradient(circle at top right, rgb(var(--accent-3-rgb) / .14), transparent 44%), linear-gradient(180deg, rgb(var(--scene-tint-3-rgb) / .82), rgb(var(--surface-high-rgb) / calc(.82 * var(--panel-alpha))));gap:18px}.spy-mission-side-timer .discussion-timer{align-items:stretch}.spy-mission-side-timer .timer-number{font-size:clamp(2.2rem,5vw,3.3rem)}.spy-mission-intel-panel{border-color:rgb(var(--accent-2-rgb) / .28);background:radial-gradient(circle at top right, rgb(var(--accent-2-rgb) / .15), transparent 46%), radial-gradient(circle at bottom left, rgb(var(--accent-4-rgb) / .12), transparent 48%), linear-gradient(135deg, rgb(var(--scene-tint-1-rgb) / .48), rgb(var(--surface-high-rgb) / calc(.88 * var(--panel-alpha))));gap:14px;padding:18px 22px 20px;position:relative;overflow:hidden}.spy-mission-intel-panel:before,.spy-mission-discussion-panel:before{content:"";pointer-events:none;background:linear-gradient(90deg, transparent, rgb(var(--accent-2-rgb) / .08), transparent), repeating-linear-gradient(90deg, transparent 0 52px, #ffffff06 52px 53px);position:absolute;inset:0}.spy-mission-intel-panel>*,.spy-mission-discussion-panel>*{z-index:1;position:relative}.spy-mission-intel-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.spy-mission-intel-head h2{font-size:clamp(1.75rem,3.2vw,2.65rem)}.spy-mission-briefing-badge{border:1px solid rgb(var(--accent-3-rgb) / .28);background:rgb(var(--accent-3-rgb) / .1);border-radius:8px;justify-items:end;gap:5px;min-width:118px;padding:10px 12px;display:grid}.spy-mission-briefing-badge span{color:rgb(var(--accent-3-rgb) / .88);font-size:.72rem;font-weight:800}.spy-mission-briefing-badge strong{color:var(--text);font-size:.88rem}.spy-mission-intel-grid{grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr);gap:12px;display:grid}.spy-mission-intel-card,.spy-mission-score-card{--spy-card-rgb:var(--accent-rgb);border:1px solid rgb(var(--spy-card-rgb) / .22);background:linear-gradient(135deg, rgb(var(--spy-card-rgb) / .12), transparent 58%), rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha)));border-radius:8px;gap:8px;min-width:0;display:grid}.spy-mission-intel-card:nth-child(2),.spy-mission-score-card:nth-child(2n){--spy-card-rgb:var(--accent-2-rgb)}.spy-mission-intel-card:nth-child(3),.spy-mission-score-card:nth-child(3n){--spy-card-rgb:var(--accent-3-rgb)}.spy-mission-intel-card:nth-child(4),.spy-mission-score-card:nth-child(4n){--spy-card-rgb:var(--accent-4-rgb)}.spy-mission-intel-card{align-content:center;min-height:102px;padding:15px 20px}.spy-mission-intel-card.is-location{min-height:112px}.spy-mission-intel-card span,.spy-mission-score-card span{color:rgb(var(--spy-card-rgb) / .86);letter-spacing:0;text-transform:uppercase;font-size:.74rem;font-weight:700}.spy-mission-intel-card strong{color:var(--text);font-family:var(--font-title), sans-serif;overflow-wrap:anywhere;font-size:clamp(1.55rem,3.5vw,2.8rem);font-weight:800;line-height:.98}.spy-mission-intel-card:not(.is-location) strong{font-size:clamp(1.25rem,2.4vw,1.8rem);line-height:1.08}.spy-mission-discussion-panel{border-color:rgb(var(--accent-2-rgb) / .24);background:radial-gradient(circle at 10% 0%, rgb(var(--accent-2-rgb) / .14), transparent 42%), radial-gradient(circle at 100% 100%, rgb(var(--accent-3-rgb) / .1), transparent 48%), linear-gradient(145deg, rgb(var(--scene-tint-2-rgb) / .28), rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha))));gap:12px;padding-top:16px;position:relative;overflow:hidden}.spy-mission-discussion-head{align-items:flex-start}.spy-mission-discussion-head h2{font-size:clamp(1.35rem,2.4vw,1.9rem)}.spy-mission-comms-signal{min-width:110px;color:var(--muted);justify-items:end;gap:4px;font-size:.76rem;display:grid}.spy-mission-comms-signal strong{color:rgb(var(--accent-2-rgb) / .95);font-family:var(--font-title), sans-serif;font-size:1.35rem;line-height:1}.spy-mission-comms-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.spy-mission-comms-card,.spy-mission-command-meter,.spy-mission-accuse-zone{border:1px solid rgb(var(--accent-2-rgb) / .18);background:rgb(var(--field-surface-rgb) / .34);border-radius:8px}.spy-mission-comms-card:first-child{border-color:rgb(var(--accent-rgb) / .2)}.spy-mission-comms-card:nth-child(2){border-color:rgb(var(--accent-2-rgb) / .24)}.spy-mission-comms-card:nth-child(3){border-color:rgb(var(--accent-3-rgb) / .24)}.spy-mission-comms-card{align-content:start;gap:6px;min-height:88px;padding:11px 12px;display:grid}.spy-mission-comms-card span{color:rgb(var(--accent-2-rgb) / .84);font-family:var(--font-title), sans-serif;font-size:.86rem;font-weight:800}.spy-mission-comms-card strong{color:var(--accent-3);font-size:.98rem}.spy-mission-comms-card p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.38}.spy-mission-command-row{grid-template-columns:minmax(120px,.32fr) minmax(120px,.32fr) minmax(280px,1fr);align-items:stretch;gap:10px;display:grid}.spy-mission-command-meter{align-content:center;gap:4px;min-height:52px;padding:10px 12px;display:grid}.spy-mission-command-meter span{color:var(--muted);font-size:.72rem;font-weight:700}.spy-mission-command-meter strong{color:rgb(var(--accent-3-rgb) / .95);font-family:var(--font-title), sans-serif;font-size:1.2rem;line-height:1}.spy-mission-discussion-actions,.spy-mission-accuse-actions{justify-content:flex-end;gap:10px}.spy-mission-accuse-zone{gap:12px;padding:14px;display:grid}.spy-mission-accuse-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.spy-mission-accuse-head div{gap:2px;display:grid}.spy-mission-accuse-head strong{color:var(--text);font-size:1rem}.spy-mission-accuse-head>span{color:var(--muted);font-size:.78rem}.spy-mission-accuse-grid{gap:10px}.spy-mission-accuse-grid .room-vote-option{min-height:58px}.spy-mission-accusation-status{border:1px solid rgb(var(--danger-rgb) / .24);background:rgb(var(--danger-rgb) / .08);border-radius:8px;margin-top:2px;padding:12px 14px}.spy-mission-scoreboard-panel{border-color:rgb(var(--accent-rgb) / .2);gap:14px}.mw-pane-left .spy-mission-scoreboard-panel{border-color:rgb(var(--accent-rgb) / .22);background:linear-gradient(180deg, rgb(var(--scene-tint-3-rgb) / .84), rgb(var(--surface-high-rgb) / calc(.82 * var(--panel-alpha))));gap:10px;padding:16px}.mw-pane-left .spy-mission-scoreboard-panel h2{font-size:1.08rem}.spy-mission-score-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.mw-pane-left .spy-mission-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.spy-mission-score-card{align-content:center;min-height:58px;padding:12px 14px}.mw-pane-left .spy-mission-score-card{gap:4px;min-height:54px;padding:8px 9px}.mw-pane-left .spy-mission-score-card strong{font-size:.84rem}.spy-mission-score-card strong{color:var(--text);overflow-wrap:anywhere;font-size:.96rem;line-height:1.2}.spy-mission-score-card span{color:var(--accent);justify-self:start}.room-support-head{justify-content:space-between;align-items:center;margin-bottom:0;display:flex}.room-memo-panel,.room-detail-panel{min-height:240px;box-shadow:none;border-color:var(--line);background:0 0}.room-memo-input{resize:none;border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.62 * var(--panel-alpha)));width:100%;min-height:170px;color:var(--text);border-radius:6px;padding:18px}.room-memo-input::placeholder{color:rgb(var(--text-rgb) / .44)}.room-memo-input:focus{border-color:rgb(var(--accent-rgb) / .48);outline:none}.room-detail-lead{color:var(--copy-strong);margin-bottom:14px;font-size:1rem;line-height:1.78}.room-mobile-only{display:none}.room-desktop-only{display:block}.warroom-topbar{grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;height:64px;display:grid}.warroom-brand,.warroom-actions{align-items:center;gap:14px;display:flex}.warroom-actions{justify-content:flex-end}.warroom-wordmark{font-family:var(--font-title), sans-serif;letter-spacing:.16em;color:var(--accent-2);text-transform:uppercase;text-shadow:0 0 8px rgb(var(--accent-2-rgb) / .24);font-size:1.2rem;font-weight:700}.warroom-submark{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:.68rem}.warroom-phase-chip{background:rgb(var(--surface-bright-rgb) / calc(.82 * var(--panel-alpha)));-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow);font-family:var(--font-title), sans-serif;letter-spacing:.12em;color:var(--text);text-transform:uppercase;border-radius:9999px;justify-self:center;align-items:center;gap:8px;padding:8px 18px;font-size:.88rem;font-weight:700;display:inline-flex}.warroom-phase-icon{color:var(--accent-4);font-size:1rem}.warroom-icon-button{width:40px;height:40px;color:var(--muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;transition:background .12s,color .12s;display:inline-flex}.warroom-icon-button:hover{background:rgb(var(--surface-bright-rgb) / calc(.72 * var(--panel-alpha)));color:var(--text)}.warroom-exit-button,.warroom-ghost-link{min-height:42px;font-family:var(--font-title), sans-serif;letter-spacing:.1em;text-transform:uppercase;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-size:.82rem;font-weight:700;display:inline-flex}.warroom-exit-button{background:rgb(var(--field-surface-rgb) / calc(.9 * var(--panel-alpha)));color:var(--text)}.warroom-ghost-link{color:var(--muted)}.warroom-hero-grid{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.warroom-role-column{z-index:2;position:relative}.warroom-command-column{align-content:start;gap:16px;margin-top:60px;margin-left:-28px;display:grid}.warroom-directive-card{background:var(--surface-high);position:relative;overflow:hidden}.warroom-directive-card:after{content:"";background:radial-gradient(circle at 40% 40%, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .28)), transparent 54%), radial-gradient(circle at 70% 70%, rgb(var(--accent-3-rgb) / calc(var(--scene-opacity) * .24)), transparent 58%);filter:blur(28px);pointer-events:none;border-radius:50%;width:180px;height:180px;position:absolute;inset:auto -5% -20% auto}.warroom-directive-kicker{font-family:var(--font-title), sans-serif;letter-spacing:.14em;color:var(--accent-4);text-transform:uppercase;margin-bottom:10px;font-size:.72rem;font-weight:700}.warroom-directive-list{gap:12px;margin-top:14px;display:grid}.warroom-directive-list li{color:var(--muted);padding-left:24px;font-size:.95rem;position:relative}.warroom-directive-list li:before{content:"◉";color:var(--team-werewolf);font-size:.8rem;position:absolute;top:0;left:0}.warroom-action-panel,.warroom-wait-panel{background:var(--surface-high)}.warroom-sidebar-header{border-bottom:1px solid var(--line);justify-content:flex-start;align-items:flex-start;gap:12px;padding:18px 16px 16px;display:flex}.warroom-sidebar-header h2{font-family:var(--font-title), sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-2);margin:0;font-size:1rem;font-weight:700}.warroom-directive-card,.warroom-action-panel,.warroom-wait-panel{box-shadow:var(--shadow-elevated)}.room-reports-panel{border-left:3px solid rgb(var(--accent-4-rgb) / .54);background:radial-gradient(circle at top right, rgb(var(--accent-4-rgb) / calc(var(--scene-opacity) * .34)) 0%, transparent 42%), radial-gradient(circle at bottom left, rgb(var(--accent-2-rgb) / calc(var(--scene-opacity) * .18)) 0%, transparent 46%), linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.96 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha))))}.room-reports-panel h2{margin-bottom:14px}.flow-panel,.compact-panel,.panel{background:radial-gradient(circle at top right, rgb(var(--accent-2-rgb) / calc(var(--scene-opacity) * .12)) 0%, transparent 38%), rgb(var(--surface-high-rgb) / calc(.88 * var(--panel-alpha)));border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;position:relative;overflow:hidden}.hero-card:before{content:"";background:var(--accent-grad);pointer-events:none;height:2px;position:absolute;top:0;left:0;right:0}.hero-card{margin-bottom:20px;padding:44px 40px}.hero-card h1{font-family:var(--font-title), sans-serif;letter-spacing:-.04em;color:var(--text);font-size:clamp(2.2rem,5vw,4rem);font-weight:700;line-height:1.08}.hero-copy{max-width:52rem;color:var(--muted);font-size:.98rem;line-height:1.8;font-family:var(--font-body), sans-serif;margin-top:16px}.hero-sub{font-family:var(--font-body), sans-serif;color:var(--muted);opacity:.8;margin-top:12px;font-size:.92rem;line-height:1.6}.panel,.flow-panel,.compact-panel{padding:26px}.panel h2,.flow-panel h2,.compact-panel h2{font-family:var(--font-title), sans-serif;color:var(--text);letter-spacing:-.02em;margin-bottom:10px;font-size:1.12rem;font-weight:700}.page-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.page-header-actions{align-items:center;gap:10px;display:inline-flex}.page-header.page-header-compact{flex-wrap:nowrap}.page-header.page-header-compact .page-header-actions{flex-shrink:0;width:auto;margin-left:auto}.page-header h1{font-family:var(--font-title), sans-serif;letter-spacing:-.05em;color:var(--text);font-size:clamp(2rem,4vw,3.3rem);font-weight:700;line-height:1.02}.eyebrow,.mini-label{font-family:var(--font-body), sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;margin-bottom:8px;font-size:.66rem;font-weight:600;display:inline-flex}.helper-text{color:var(--muted);font-size:.88rem;line-height:1.68;font-family:var(--font-body), sans-serif;margin-top:4px}.muted{color:var(--muted)}.danger{color:var(--danger)}.success{color:var(--success)}.divider{background:var(--surface-bright);height:1px;margin:16px 0}.countdown{font-family:var(--font-body), monospace;color:var(--accent);letter-spacing:.06em;font-size:1rem}.phase-pill{font-family:var(--font-body), sans-serif;letter-spacing:.14em;text-transform:uppercase;border:1px solid #0000;border-radius:4px;align-items:center;gap:6px;padding:6px 12px;font-size:.62rem;font-weight:700;display:inline-flex}.phase-pill[data-phase=lobby]{background:var(--phase-lobby-bg);color:var(--phase-lobby);border-color:var(--phase-lobby-border)}.phase-pill[data-phase=night]{background:var(--phase-night-bg);color:var(--phase-night);border-color:var(--phase-night-border)}.phase-pill[data-phase=discussion]{background:var(--phase-discussion-bg);color:var(--phase-discussion);border-color:var(--phase-discussion-border)}.phase-pill[data-phase=voting]{background:var(--phase-voting-bg);color:var(--phase-voting);border-color:var(--phase-voting-border)}.phase-pill[data-phase=resolved]{background:var(--phase-resolved-bg);color:var(--phase-resolved);border-color:var(--phase-resolved-border)}.button-primary,.button-secondary,.button-ghost{min-height:44px;font-family:var(--font-body), sans-serif;letter-spacing:.06em;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:10px 22px;font-size:.82rem;font-weight:600;transition:opacity .13s,box-shadow .13s,transform .13s;display:inline-flex}.button-primary{background:var(--accent);color:var(--accent-contrast);border:1px solid rgb(var(--accent-rgb) / .28)}.button-primary:hover:not(:disabled){opacity:.94;box-shadow:0 5px 16px rgb(var(--accent-rgb) / .18)}.button-primary:disabled{opacity:.4;cursor:not-allowed}.button-secondary{background:linear-gradient(135deg, rgb(var(--accent-2-rgb) / .14), transparent 70%), rgb(var(--surface-bright-rgb) / calc(.9 * var(--panel-alpha)));color:var(--text);border:1px solid rgb(var(--accent-2-rgb) / .18)}.button-secondary:hover:not(:disabled){opacity:.85}.button-secondary:disabled{opacity:.4;cursor:not-allowed}.button-ghost{color:var(--muted);border:1px solid var(--line);background:0 0}.button-ghost:hover:not(:disabled){color:var(--text);background:rgb(var(--surface-bright-rgb) / calc(.76 * var(--panel-alpha)));border-color:var(--line-bright)}.button-ghost:disabled{opacity:.4;cursor:not-allowed}.icon-button{background:var(--surface-bright);width:32px;height:32px;color:var(--muted);border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.92rem;line-height:1;transition:background .12s,color .12s;display:inline-flex}.icon-button:hover:not(:disabled){color:var(--text);background:var(--surface-bright);opacity:.75}.action-row{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.inline-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.field{gap:6px;display:grid}.field label{color:var(--muted);font-size:.74rem;font-family:var(--font-body), sans-serif;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.field input,.field select{background:rgb(var(--field-surface-rgb) / calc(.92 * var(--panel-alpha)));border:1px solid rgb(var(--line-bright-rgb) / .14);width:100%;min-height:52px;color:var(--text);border-radius:16px;padding:12px 16px;transition:border-color .12s,box-shadow .12s,transform .12s}.field input:focus,.field select:focus{border-color:rgb(var(--accent-rgb) / .62);box-shadow:0 0 0 4px rgb(var(--accent-rgb) / .12);outline:none}.lobby-settings-panel .field input,.lobby-settings-panel .field select{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.94 * var(--panel-alpha)));border-bottom-width:1px;border-radius:4px}.lobby-settings-panel .field input:focus,.lobby-settings-panel .field select:focus{border-color:rgb(var(--accent-rgb) / .42)}.status-line{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.inline-name-editor{flex-direction:column;gap:8px;margin-top:12px;display:flex}.inline-name-input{background:rgb(var(--field-surface-rgb) / calc(.88 * var(--panel-alpha)));width:100%;color:var(--text);font-family:var(--font-body), sans-serif;border:none;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;padding:8px 12px;font-size:.88rem;transition:border-color .12s}.inline-name-input:focus{border-bottom-color:var(--accent);outline:none}.inline-name-actions{margin-top:0}.roster-name-editor{margin-top:0;padding-top:2px}.roster-name-actions{margin-top:4px}.roster-panel-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.roster-panel-head h2{margin-bottom:0}.roster-count-pill{background:rgb(var(--field-surface-rgb) / calc(.86 * var(--panel-alpha)));min-height:34px;color:var(--brand);border:1px solid var(--line);letter-spacing:.12em;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:0 12px;font-size:.76rem;font-weight:700;display:inline-flex}.roster-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;margin-bottom:14px;display:grid}.roster-summary-card{background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .3)) 0%, transparent 58%), rgb(var(--surface-high-rgb) / calc(.84 * var(--panel-alpha)));box-shadow:inset 0 0 0 1px var(--line);border-radius:6px;gap:4px;padding:14px 16px;display:grid}.roster-summary-card span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem}.roster-summary-card strong{font-family:var(--font-title), sans-serif;color:var(--text);font-size:1.4rem;font-weight:700;line-height:1}.roster-list{scrollbar-width:thin;scrollbar-color:var(--surface-bright) transparent;flex-direction:column;gap:10px;min-height:0;padding-right:4px;display:flex;overflow-y:auto}.roster-seat{background:linear-gradient(135deg, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .22)), transparent 48%), rgb(var(--surface-high-rgb) / calc(.82 * var(--panel-alpha)));box-shadow:inset 0 0 0 1px var(--line);border-radius:6px;flex-direction:column;gap:12px;padding:14px;display:flex}.roster-seat.is-self{box-shadow:inset 0 0 0 1px rgb(var(--accent-rgb) / .26), 0 10px 24px rgb(var(--surface-shadow) / .12)}.roster-seat.is-offline{background:linear-gradient(135deg, rgb(var(--danger-rgb) / .08), transparent 52%), rgb(var(--surface-high-rgb) / calc(.82 * var(--panel-alpha)))}.roster-seat-row{align-items:flex-start;gap:12px;display:flex}.roster-seat-avatar{background:linear-gradient(135deg, rgb(var(--scene-tint-2-rgb) / .52), rgb(var(--accent-rgb) / .16));width:44px;height:44px;color:rgb(var(--text-rgb) / .96);font-family:var(--font-title), sans-serif;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:inline-flex}.roster-seat-body{flex:1;gap:6px;min-width:0;display:grid}.roster-seat-topline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.roster-seat-topline strong{font-family:var(--font-title), sans-serif;font-size:1rem;font-weight:700;line-height:1.2;display:block}.roster-badge{background:rgb(var(--surface-bright-rgb) / calc(.82 * var(--panel-alpha)));min-height:24px;color:rgb(var(--text-rgb) / .68);letter-spacing:.08em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;padding:0 9px;font-size:.68rem;font-weight:700;display:inline-flex}.roster-badge.is-host{background:var(--team-werewolf-bg);color:var(--team-werewolf)}.roster-badge.is-self{background:var(--team-village-bg);color:var(--team-village)}.roster-seat-meta{color:var(--muted);flex-wrap:wrap;gap:8px 12px;font-size:.8rem;display:flex}.roster-presence{align-items:center;gap:6px;display:inline-flex}.roster-presence-dot{opacity:.95;background:currentColor;border-radius:50%;width:8px;height:8px}.roster-presence.is-online{color:var(--success)}.roster-presence.is-offline{color:var(--danger)}.roster-seat-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:8px;display:flex}.roster-mini-button{background:rgb(var(--field-surface-rgb) / calc(.92 * var(--panel-alpha)));min-height:34px;color:var(--text);box-shadow:inset 0 0 0 1px var(--line);letter-spacing:.05em;white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;padding:0 12px;font-size:.74rem;font-weight:700;transition:opacity .12s,transform .12s;display:inline-flex}.roster-mini-button:hover:not(:disabled){opacity:.86;transform:translateY(-1px)}.roster-mini-button.is-danger{color:var(--danger);box-shadow:inset 0 0 0 1px rgb(var(--danger-rgb) / .24)}.player-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;display:grid}.vote-grid{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:14px;margin-top:14px;display:grid}.role-grid{grid-template-columns:repeat(auto-fit,minmax(188px,1fr));gap:10px;margin-top:16px;display:grid}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.seat-card,.vote-card,.role-card,.result-card{background:linear-gradient(180deg, rgb(var(--surface-low-rgb) / calc(.82 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.78 * var(--panel-alpha))));border:1px solid rgb(var(--line-bright-rgb) / .14);box-shadow:0 18px 40px rgb(var(--surface-shadow) / .16);border-radius:20px;padding:18px;position:relative}.role-card[data-team=werewolf]{border-left:3px solid var(--team-werewolf-border)}.role-card[data-team=village]{border-left:3px solid var(--team-village-border)}.role-card[data-team=outsider]{border-left:3px solid var(--team-outsider-border)}.role-card strong,.seat-card strong,.vote-card strong{font-family:var(--font-title), sans-serif;color:var(--text);letter-spacing:-.01em;font-size:.97rem;font-weight:700;display:block}.room-lobby-deck-panel .role-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:0}.room-lobby-deck-panel .role-card{border:1px solid var(--line);background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .28)) 0%, transparent 60%), rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha)));min-height:144px;box-shadow:none;text-align:center;border-radius:6px;place-items:center;padding:16px 14px;display:grid}.room-lobby-deck-panel .role-card .helper-text{letter-spacing:.08em;margin-top:0;font-size:.72rem}.room-lobby-deck-panel .role-badge{width:38px;height:38px;margin-bottom:12px}.seat-card-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.vote-card{text-align:left;cursor:pointer;min-height:62px;font:inherit;color:var(--text);width:100%;transition:background .12s,box-shadow .12s}.vote-card:hover:not(:disabled){background:rgb(var(--surface-bright-rgb) / calc(.9 * var(--panel-alpha)));box-shadow:0 12px 28px rgb(var(--accent-rgb) / .18)}.role-badge{background:var(--team-werewolf-bg);width:32px;height:32px;color:var(--team-werewolf);font-family:var(--font-body), sans-serif;letter-spacing:.06em;border-radius:8px;justify-content:center;align-items:center;margin-bottom:10px;font-size:.58rem;font-weight:700;display:inline-flex}.role-card[data-team=village] .role-badge{background:var(--team-village-bg);color:var(--team-village)}.role-card[data-team=outsider] .role-badge{background:var(--team-outsider-bg);color:var(--team-outsider)}.role-team-badge{letter-spacing:.12em;text-transform:uppercase;background:rgb(var(--surface-bright-rgb) / calc(.88 * var(--panel-alpha)));color:rgb(var(--text-rgb) / .78);border:1px solid var(--line);border-radius:4px;align-items:center;gap:5px;padding:6px 10px;font-size:.64rem;font-weight:700;display:inline-flex}.my-role-card{background:radial-gradient(circle at top right, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .52)) 0%, transparent 45%), linear-gradient(160deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.98 * var(--panel-alpha))));box-shadow:var(--shadow-elevated);border:1px solid var(--line);border-radius:8px;min-height:348px;padding:30px;position:relative;overflow:hidden}.my-role-card[data-team=werewolf]{border-left:3px solid var(--team-werewolf-border)}.my-role-card[data-team=village]{border-left:3px solid var(--team-village-border)}.my-role-card[data-team=outsider]{border-left:3px solid var(--team-outsider-border)}.my-role-top{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.my-role-side{justify-items:end;gap:12px;display:grid}.my-role-meta{gap:12px;display:grid}.my-role-label{letter-spacing:.14em;text-transform:uppercase;color:rgb(var(--text-rgb) / .62);align-items:center;font-size:.64rem;font-weight:700;display:inline-flex}.my-role-sigil{font-family:var(--font-title), serif;color:rgb(var(--accent-rgb) / .14);text-transform:uppercase;font-size:4.6rem;line-height:1}.my-role-toggle{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.84 * var(--panel-alpha)));width:36px;height:36px;color:rgb(var(--text-rgb) / .68);border-radius:9999px;justify-content:center;align-items:center;transition:background .12s,color .12s,transform .12s;display:inline-flex}.my-role-toggle:hover{background:rgb(var(--surface-bright-rgb) / calc(.88 * var(--panel-alpha)));color:var(--text);transform:translateY(-1px)}.my-role-body{margin-top:42px;display:block}.my-role-copy{gap:12px;display:grid}.my-role-heading{flex-wrap:wrap;align-items:baseline;gap:10px 14px;display:flex}.my-role-name{font-family:var(--font-title), serif;color:var(--title-strong);letter-spacing:-.05em;font-size:clamp(2.5rem,4vw,3.7rem);font-weight:700;line-height:.98;display:block}.my-role-team-copy{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--text-rgb) / .62);font-size:.76rem}.my-role-player{color:rgb(var(--text-rgb) / .68);font-size:.92rem;font-weight:300}.my-role-note{border-left:2px solid var(--brand);background:rgb(var(--field-surface-rgb) / calc(.62 * var(--panel-alpha)));border-radius:4px;max-width:520px;padding:14px 16px}.my-role-note p{color:var(--copy-strong);line-height:1.72}.my-role-card.is-hidden .my-role-sigil{letter-spacing:.18em}.chat-panel{background:radial-gradient(circle at top right, rgb(var(--accent-2-rgb) / calc(var(--scene-opacity) * .12)) 0%, transparent 44%), rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha)));height:auto;min-height:200px;box-shadow:var(--shadow-elevated);border:1px solid var(--line);border-radius:8px;flex-direction:column;padding:0;display:flex;overflow:hidden}.chat-panel-header{background:linear-gradient(90deg, rgb(var(--accent-2-rgb) / .11), transparent 58%), rgb(var(--modal-surface-rgb) / calc(.96 * var(--panel-alpha)));border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:8px;padding:14px 16px 12px;display:flex}.chat-panel-header h2{font-family:var(--font-body), sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--text);margin:0;font-size:.7rem;font-weight:700}.chat-header-badge{background:rgb(var(--accent-4-rgb) / .12);color:rgb(var(--accent-4-rgb) / .92);border-radius:4px;margin-left:auto;padding:3px 8px;font-size:.64rem}.chat-status-dot{background:var(--muted);border-radius:50%;flex-shrink:0;width:7px;height:7px}.chat-status-dot.is-connected{background:var(--accent-2);box-shadow:0 0 6px rgb(var(--accent-2-rgb) / .55)}.chat-messages{scrollbar-width:thin;scrollbar-color:var(--surface-bright) transparent;flex-direction:column;flex:1;gap:10px;min-height:0;padding:14px 14px 10px;display:flex;overflow-y:auto}.chat-empty{color:var(--muted);font-size:.82rem;font-family:var(--font-body), sans-serif;text-align:center;opacity:.7;margin:auto}.chat-system-log{color:rgb(var(--accent-3-rgb) / .88);text-align:center;letter-spacing:.12em;text-transform:uppercase;justify-items:center;gap:2px;font-size:.66rem;display:grid}@keyframes chat-msg-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-msg{flex-direction:column;align-items:flex-start;gap:3px;padding-left:10px;animation:.25s both chat-msg-appear;display:flex;position:relative}.chat-msg.is-self{align-items:flex-end;padding-left:0}.chat-msg.is-grouped{margin-top:-6px}.chat-msg.is-grouped .chat-msg-accent{display:none}.chat-msg-meta{align-items:center;gap:8px;display:flex}.chat-msg-name{font-family:var(--font-body), sans-serif;letter-spacing:.1em;color:var(--chat-meta,var(--muted));font-size:.58rem;font-weight:700}.chat-msg.is-self .chat-msg-name{color:var(--chat-meta,var(--accent))}.chat-msg-time{color:var(--muted);opacity:.6;font-size:.56rem}.chat-msg-accent{background:linear-gradient(180deg, rgb(var(--accent-rgb) / .7), rgb(var(--accent-2-rgb) / .6));border-radius:999px;width:2px;position:absolute;top:4px;bottom:4px;left:0}.chat-msg-bubble{background:var(--chat-accent-bg,var(--surface-bright));width:fit-content;max-width:92%;font-family:var(--font-body), sans-serif;color:var(--text);word-break:break-word;white-space:pre-wrap;box-shadow:none;border:1px solid var(--chat-accent-border,#45465526);border-radius:0 10px 10px;padding:6px 10px;font-size:.8rem;line-height:1.42}.chat-msg.is-self .chat-msg-bubble{background:var(--chat-accent-bg,#5865f226);border-color:var(--chat-accent-border,#5865f240);border-radius:10px 0 10px 10px}.chat-msg.is-grouped:not(.is-self) .chat-msg-bubble{border-top-left-radius:8px}.chat-msg.is-grouped.is-self .chat-msg-bubble{border-top-right-radius:8px}.chat-blocked{text-align:center;color:var(--muted);padding:10px;font-size:.82rem;font-style:italic}.chat-system-pill{background:linear-gradient(135deg, rgb(var(--accent-3-rgb) / .13), rgb(var(--accent-4-rgb) / .1));color:rgb(var(--accent-3-rgb) / .9);text-align:center;border:1px solid rgb(var(--accent-3-rgb) / .24);border-radius:4px;align-self:center;margin:14px 16px -2px;padding:7px 14px;font-size:.76rem}.chat-locked-state{text-align:center;min-height:0;color:rgb(var(--text-rgb) / .74);flex:1;align-content:center;place-items:center;gap:12px;padding:32px 24px;display:grid}.chat-locked-glyph{border:1px solid var(--line);width:72px;height:72px;color:rgb(var(--text-rgb) / .44);border-radius:999px;justify-content:center;align-items:center;font-size:2rem;display:inline-flex}.chat-locked-title{font-size:.98rem;font-weight:500}.chat-locked-copy{color:rgb(var(--text-rgb) / .54);line-height:1.7}.chat-input-row{border-top:1px solid var(--line);background:0 0;flex-shrink:0;padding:10px 12px 12px}.chat-compose-shell{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.92 * var(--panel-alpha)));box-shadow:inset 0 1px 0 rgb(var(--surface-high-rgb) / .04);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.chat-input{min-height:40px;max-height:84px;color:var(--text);font:inherit;font-family:var(--font-body), sans-serif;resize:none;background:0 0;border:none;border-radius:0;flex:1;padding:8px 2px 6px;font-size:.8rem;line-height:1.35;transition:opacity .12s;overflow-y:auto}.chat-input:focus{background:0 0;outline:none}.chat-input:disabled{opacity:.45;cursor:not-allowed}.chat-send-btn{background:var(--accent);width:36px;min-width:36px;height:36px;color:var(--accent-contrast);border:1px solid rgb(var(--accent-rgb) / .28);cursor:pointer;box-shadow:0 6px 14px rgb(var(--accent-rgb) / .22);border-radius:6px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;transition:opacity .12s,transform .12s,box-shadow .12s;display:inline-flex}.chat-send-btn:hover:not(:disabled){opacity:.92;box-shadow:0 8px 18px rgb(var(--accent-rgb) / .28);transform:translateY(-1px)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.chat-send-btn .material-symbols-outlined{font-size:.95rem}.chat-input-disabled{border:1px solid rgb(var(--danger-rgb) / .18);background:rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha)));width:100%;min-height:48px;color:rgb(var(--text-rgb) / .54);border-radius:4px;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;display:flex}.chat-input-disabled-icon{color:rgb(var(--danger-rgb) / .52);font-weight:700}.room-sidebar:not(.room-lobby-sidebar) .chat-panel{border-radius:8px;height:min(64vh,620px);min-height:440px;max-height:620px}.room-sidebar:not(.room-lobby-sidebar) .chat-messages{padding-top:24px}.room-sidebar:not(.room-lobby-sidebar) .chat-input-row{background:rgb(var(--modal-surface-rgb) / calc(.96 * var(--panel-alpha)));padding:14px 18px 18px}.room-sidebar:not(.room-lobby-sidebar) .chat-input{background:rgb(var(--field-surface-rgb) / calc(.88 * var(--panel-alpha)))}.room-sidebar:not(.room-lobby-sidebar) .room-sidebar-roster{background:linear-gradient(180deg, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .42)), rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha))));padding:18px}.chat-fab{background:var(--accent);border:1px solid rgb(var(--accent-rgb) / .28);cursor:pointer;width:54px;height:54px;box-shadow:var(--shadow-elevated);z-index:200;color:var(--accent-contrast);border-radius:9999px;justify-content:center;align-items:center;font-size:1.3rem;transition:opacity .12s,transform .12s;display:none;position:fixed;bottom:24px;right:24px}.chat-fab:hover{opacity:.88;transform:scale(1.06)}.chat-fab-badge{background:var(--danger);min-width:18px;height:18px;color:var(--accent-contrast);font-family:var(--font-body), sans-serif;border-radius:9999px;justify-content:center;align-items:center;padding:0 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-3px;right:-3px}.chat-drawer-backdrop{background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));z-index:210;-webkit-backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .28s;display:none;position:fixed;inset:0}.chat-drawer-backdrop.is-open{opacity:1;pointer-events:auto}.chat-drawer{background:var(--surface-high);z-index:220;height:82vh;box-shadow:0 -8px 40px rgb(var(--surface-shadow) / .12);border-radius:16px 16px 0 0;flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1);display:none;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.chat-drawer-handle{background:var(--surface-bright);cursor:pointer;border-radius:2px;flex-shrink:0;width:38px;height:4px;margin:12px auto 4px}.chat-drawer .chat-panel{height:auto;min-height:0;box-shadow:none;border-radius:0;flex:1}.chat-drawer.is-open{transform:translateY(0)}.deck-editor{flex-direction:column;gap:10px;display:flex}.room-lobby-deck-panel .deck-editor{gap:14px}.deck-editor-header{align-items:center;gap:10px;display:flex}.room-lobby-deck-panel .deck-editor-header{flex-wrap:wrap;align-items:center}.deck-count-badge{font-family:var(--font-body), sans-serif;background:var(--surface-bright);color:var(--text);letter-spacing:.06em;border-radius:9999px;padding:3px 10px;font-size:.8rem;font-weight:700}.deck-count-badge.is-done{background:rgb(var(--success-rgb) / .18);color:var(--success)}.deck-count-badge.is-over{background:rgb(var(--danger-rgb) / .15);color:var(--danger)}.deck-role-list{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.room-lobby-deck-panel .deck-role-list{background:rgb(var(--surface-high-rgb) / calc(.8 * var(--panel-alpha)));border:1px solid var(--line);box-shadow:none;border-radius:6px}.deck-role-row{grid-template-columns:28px 82px minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:9px 12px;transition:background .1s;display:grid}.room-lobby-deck-panel .deck-role-row{padding:10px 12px}.deck-role-row+.deck-role-row{border-top:1px solid var(--surface-bright)}.deck-role-row.is-active{background:rgb(var(--surface-bright-rgb) / calc(.42 * var(--panel-alpha)))}.deck-role-row[data-team=werewolf].is-active{background:rgb(var(--danger-rgb) / .07)}.deck-role-row[data-team=village].is-active{background:rgb(var(--accent-rgb) / .07)}.deck-role-row[data-team=outsider].is-active{background:rgb(var(--outsider-rgb) / .07)}.deck-role-abbr{font-family:var(--font-body), sans-serif;letter-spacing:.05em;color:var(--team-werewolf);text-align:center;flex-shrink:0;min-width:22px;font-size:.58rem;font-weight:700}[data-team=village] .deck-role-abbr{color:var(--team-village)}[data-team=outsider] .deck-role-abbr{color:var(--team-outsider)}.deck-role-name{font-family:var(--font-title), sans-serif;color:var(--text);letter-spacing:-.01em;min-width:0;font-size:.82rem;font-weight:700}.deck-role-desc{font-family:var(--font-body), sans-serif;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;overflow:hidden}.deck-count{font-family:var(--font-body), sans-serif;color:var(--text);text-align:center;min-width:28px;font-size:.9rem;font-weight:700}.deck-btn{background:var(--surface-bright);width:28px;height:28px;color:var(--text);cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;line-height:1;transition:opacity .1s;display:flex}.deck-btn:hover:not(:disabled){opacity:.75}.deck-btn:disabled{opacity:.3;cursor:not-allowed}.role-deck-summary{margin-top:10px}.role-deck-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.role-chip{font-family:var(--font-body), sans-serif;background:var(--surface-bright);color:var(--muted);border-radius:9999px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.night-turn-panel{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;padding:20px}.night-options{gap:8px;margin-top:12px;display:grid}.night-option-btn{background:var(--surface-bright);width:100%;color:var(--text);font:inherit;font-family:var(--font-body), sans-serif;cursor:pointer;text-align:left;border:none;border-radius:8px;padding:12px 16px;font-size:.9rem;font-weight:500;transition:background .1s,box-shadow .1s}.night-option-btn:hover:not(:disabled){background:var(--accent);color:var(--accent-contrast);box-shadow:0 4px 16px rgb(var(--accent-rgb) / .35)}.night-option-btn:disabled{opacity:.4;cursor:not-allowed}.center-slots{gap:10px;margin-top:12px;display:flex}.center-slot{background:var(--surface-bright);cursor:pointer;min-height:72px;font:inherit;color:var(--text);border:none;border-radius:8px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:12px;transition:background .1s,box-shadow .1s;display:flex}.center-slot:hover:not(:disabled){box-shadow:0 4px 16px rgb(var(--accent-rgb) / .2);background:var(--surface-bright);opacity:.85}.night-progress-panel{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;padding:16px 20px}.night-step{font-family:var(--font-body), sans-serif;color:var(--muted);align-items:center;gap:10px;padding:8px 0;font-size:.88rem;display:flex}.night-step+.night-step{border-top:1px solid var(--surface-bright)}.night-step.is-done{color:var(--success);opacity:.7}.night-step.is-current{color:var(--text);font-weight:600}.night-step.is-pending{color:var(--muted);opacity:.5}.result-panel{box-shadow:var(--shadow-elevated);border:1px solid var(--line);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha))));border-radius:8px;overflow:hidden}.result-seat-card{transition:box-shadow .16s}.result-seat-card.is-winner{box-shadow:0 0 0 2px rgb(var(--success-rgb) / .45)}.result-seat-card.is-dead{background:rgb(var(--danger-rgb) / .08)}.result-seat-card.is-dead strong{color:var(--team-werewolf)}.result-seat-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.result-seat-badge{background:rgb(var(--success-rgb) / .15);color:var(--success);font-family:var(--font-body), sans-serif;letter-spacing:.12em;text-transform:uppercase;border-radius:9999px;justify-content:center;align-items:center;padding:2px 8px;font-size:.58rem;font-weight:700;display:inline-flex}.result-hero{gap:20px;display:grid}.result-summary-banner{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.64 * var(--panel-alpha)));border-radius:6px;align-content:center;justify-items:center;gap:12px;min-height:160px;padding:26px;display:grid}.result-summary-line{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--brand);text-align:center;max-width:18ch;font-size:clamp(1.45rem,2.8vw,2.35rem);line-height:1.18}.result-team-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.result-team-chip{font-family:var(--font-body), sans-serif;letter-spacing:.08em;text-transform:uppercase;border-radius:9999px;align-items:center;padding:5px 12px;font-size:.67rem;font-weight:600;display:inline-flex}.result-team-chip.is-village{background:var(--team-village-bg);color:var(--team-village)}.result-team-chip.is-werewolf{background:var(--team-werewolf-bg);color:var(--team-werewolf)}.result-team-chip.is-outsider{background:var(--team-outsider-bg);color:var(--team-outsider)}.result-team-chip.is-empty{background:var(--surface-bright);color:var(--muted)}.result-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.result-summary-card{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.7 * var(--panel-alpha)));border-radius:6px;gap:10px;min-height:128px;padding:22px 24px;display:grid}.result-summary-card span{color:var(--muted);font-size:.82rem}.result-summary-card strong{font-family:var(--font-title), serif;font-size:1.75rem;line-height:1.2}.result-table-wrap{border:1px solid var(--line);background:rgb(var(--modal-surface-rgb) / calc(.76 * var(--panel-alpha)));border-radius:8px;margin-top:26px;overflow:hidden}.result-table-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 24px;display:flex}.result-table-head h3{font-family:var(--font-title), serif;font-size:1.4rem}.result-table-head span{color:var(--muted)}.result-table{border-collapse:collapse;width:100%}.result-table th,.result-table td{text-align:left;padding:18px 20px}.result-table th{color:var(--muted);font-size:.82rem;font-weight:600}.result-table tbody tr{border-top:1px solid var(--line)}.result-table tbody tr.is-dead{background:rgb(var(--danger-rgb) / .16)}.result-table tbody tr.is-winner{background:rgb(var(--success-rgb) / .14)}.result-role-chip{border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.result-role-chip.is-village{background:var(--team-village-bg);color:var(--team-village)}.result-role-chip.is-werewolf{background:var(--team-werewolf-bg);color:var(--team-werewolf)}.result-role-chip.is-outsider{background:var(--team-outsider-bg);color:var(--team-outsider)}.result-log-wrap{border:1px solid var(--line);background:rgb(var(--modal-surface-rgb) / calc(.76 * var(--panel-alpha)));border-radius:8px;margin-top:26px;overflow:hidden}.result-log-list{gap:0;display:grid}.result-log-item{border-top:1px solid var(--line);color:rgb(var(--text-rgb) / .82);padding:14px 18px;font-size:.84rem;line-height:1.6}@keyframes result-overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes result-modal-rise{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.result-reveal-modal-backdrop{z-index:320;background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(12px);justify-content:center;align-items:center;padding:24px;animation:.24s result-overlay-fade;display:flex;position:fixed;inset:0}.result-reveal-modal{background:rgb(var(--modal-surface-rgb) / calc(.84 * var(--panel-alpha)));-webkit-backdrop-filter:blur(12px);width:min(760px,100%);max-height:min(88vh,900px);box-shadow:var(--shadow-elevated);border-radius:16px;padding:24px 24px 20px;animation:.34s cubic-bezier(.2,.85,.3,1) both result-modal-rise;position:relative;overflow:auto}.result-reveal-modal .result-panel{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.result-modal-eyebrow{font-family:var(--font-body), sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);font-size:.68rem;font-weight:600}.result-modal-actions{justify-items:center;gap:16px;margin-top:8px;display:grid}.result-overlay{z-index:320;background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(12px);justify-content:center;align-items:center;padding:24px;animation:.24s result-overlay-fade;display:flex;position:fixed;inset:0}.result-modal{border:1px solid var(--line);background:rgb(var(--modal-surface-rgb) / calc(.84 * var(--panel-alpha)));-webkit-backdrop-filter:blur(18px);border-radius:10px;width:min(1120px,100vw - 48px);max-height:min(88vh,940px);padding:56px 64px 48px;animation:.34s cubic-bezier(.2,.85,.3,1) both result-modal-rise;position:relative;overflow:auto;box-shadow:0 24px 80px #00000047}.result-modal .result-panel{box-shadow:none;background:0 0;border:none;margin:0;padding:0}.result-verdict{gap:42px;display:grid}.result-verdict-head{text-align:center;justify-items:center;gap:18px;display:grid}.result-verdict-stem{background:linear-gradient(180deg, transparent, var(--line-bright));width:1px;height:58px}.result-verdict-title{font-family:var(--font-title), serif;letter-spacing:-.05em;color:var(--title-strong);margin:0;font-size:clamp(3.8rem,7vw,5.6rem);line-height:1.05}.result-verdict-summary{font-family:var(--font-title), serif;color:var(--copy-strong);font-size:clamp(1.8rem,3vw,2.6rem);font-style:italic;line-height:1.25}.result-verdict-rule{background:var(--line-bright);width:88px;height:1px}.result-verdict-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:84px;display:grid;position:relative}.result-verdict-columns:before{content:"";background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.result-verdict-column{gap:24px;display:grid}.result-verdict-column h3{font-family:var(--font-body), sans-serif;letter-spacing:.2em;text-transform:uppercase;color:rgb(var(--text-rgb) / .58);border-bottom:1px solid var(--line);padding-bottom:16px;font-size:.74rem;font-weight:700}.result-verdict-column ul{display:grid}.result-verdict-column li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:0 4px;display:flex}.result-verdict-name{font-family:var(--font-title), serif;color:var(--title-strong);font-size:1.6rem;line-height:1.2}.result-verdict-chip{background:rgb(var(--surface-bright-rgb) / calc(.82 * var(--panel-alpha)));min-height:24px;color:rgb(var(--text-rgb) / .68);letter-spacing:.12em;text-transform:uppercase;border-radius:4px;justify-content:center;align-items:center;padding:0 10px;font-size:.68rem;display:inline-flex}.result-verdict-chip.is-village{background:var(--team-village-bg);color:var(--team-village)}.result-verdict-chip.is-werewolf{background:var(--team-werewolf-bg);color:var(--team-werewolf)}.result-verdict-chip.is-outsider{background:var(--team-outsider-bg);color:var(--team-outsider)}.result-modal-children{justify-content:center;display:flex}.result-reset-stack{justify-items:center;gap:8px;display:grid}.result-verdict-button{min-width:268px;min-height:60px}.result-win-banner{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.result-win-chip{letter-spacing:.08em;text-transform:uppercase;border:2px solid;border-radius:100px;align-items:center;padding:8px 20px;font-size:.9rem;font-weight:800;display:inline-flex}.result-win-chip.is-village{background:var(--team-village-bg);color:var(--team-village)}.result-win-chip.is-werewolf{background:var(--team-werewolf-bg);color:var(--team-werewolf)}.result-win-chip.is-outsider{background:var(--team-outsider-bg);color:var(--team-outsider)}.result-verdict-chip{flex-direction:column;gap:2px;min-height:40px;padding:6px 12px}.result-chip-role{letter-spacing:.04em;font-size:.78rem;font-weight:700}.result-chip-team{letter-spacing:.16em;text-transform:uppercase;opacity:.72;font-size:.6rem;font-weight:600}.result-verdict-logs{border-top:1px solid var(--line);gap:20px;padding-top:8px;display:grid}.result-log-group{gap:6px;display:grid}.result-log-group-title{letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--accent-rgb) / .7);border-bottom:1px solid var(--line);margin:0;padding-bottom:6px;font-size:.7rem;font-weight:700}.result-log-entry{color:rgb(var(--text-rgb) / .72);border-bottom:1px solid var(--line);padding:4px 0;font-size:.82rem;line-height:1.5}.result-log-entry:last-child{border-bottom:none}.phase-transition-overlay{z-index:600;background:radial-gradient(circle at 50% 50%, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .44)) 0%, transparent 22%), rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(6px);cursor:pointer;justify-content:center;align-items:center;animation:.35s both pt-fade-in;display:flex;position:fixed;inset:0}.phase-transition-card{text-align:center;pointer-events:none;flex-direction:column;justify-content:flex-end;align-items:center;gap:22px;width:min(960px,100vw - 48px);min-height:72vh;padding:0 24px 48px;animation:.5s cubic-bezier(.34,1.56,.64,1) 50ms both pt-card-in;display:flex}.phase-transition-icon{color:rgb(var(--text-rgb) / .24);font-size:2.2rem;line-height:1}.phase-transition-label{font-family:var(--font-body), sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--brand);border-bottom:none;align-items:center;gap:18px;width:auto;padding:0;font-size:.78rem;font-weight:700;display:inline-flex}.phase-transition-label:before,.phase-transition-label:after{content:"";background:rgb(var(--accent-rgb) / .32);width:60px;height:1px}.phase-transition-copy{justify-items:center;gap:24px;display:grid}.phase-transition-title{font-family:var(--font-title), sans-serif;letter-spacing:-.04em;color:var(--text);margin:0;font-size:clamp(4rem,8vw,6.4rem);font-weight:700;line-height:1.12}.phase-transition-sub{font-family:var(--font-body), sans-serif;color:rgb(var(--accent-rgb) / .78);max-width:40rem;margin:0;font-size:1.35rem;line-height:1.65}.phase-transition-hint{font-family:var(--font-body), sans-serif;color:var(--muted);opacity:.5;letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:.68rem}.phase-transition-bar-wrap{background:var(--line);border-radius:9999px;width:min(560px,80vw);height:2px;margin-top:8px;overflow:hidden}.phase-transition-bar-fill{background:var(--accent-grad);border-radius:9999px;height:100%;animation:3s linear .1s both pt-bar-drain}@keyframes pt-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pt-card-in{0%{opacity:0;transform:scale(.82)translateY(24px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes pt-bar-drain{0%{width:100%}to{width:0%}}.reveal-overlay{background:radial-gradient(circle at 50% 18%, rgb(var(--accent-rgb) / calc(var(--scene-opacity) * .38)) 0%, transparent 30%), rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));z-index:300;cursor:pointer;-webkit-backdrop-filter:blur(12px);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.reveal-eyebrow{font-family:var(--font-body), sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--accent-rgb) / .76);margin-bottom:0;font-size:.68rem;font-weight:600}.reveal-scene{opacity:0;justify-items:center;gap:18px;width:min(380px,100vw - 44px);transition:opacity .32s,transform .42s cubic-bezier(.2,.85,.3,1);display:grid;transform:translateY(16px)scale(.98)}.reveal-scene.is-revealed{opacity:1;transform:translateY(0)scale(1)}.reveal-card-shell{border:1px solid var(--line);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.96 * var(--panel-alpha))));width:100%;min-height:232px;box-shadow:0 18px 42px rgb(var(--surface-shadow) / .24);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:30px 28px 24px;display:flex}.reveal-glyph{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.62 * var(--panel-alpha)));width:68px;height:68px;color:var(--brand);opacity:1;border-radius:9999px;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:inline-flex}.reveal-card-shell h3{font-family:var(--font-title), sans-serif;letter-spacing:-.04em;color:var(--text);margin:0;font-size:2rem;font-weight:700}.reveal-copy{gap:6px;display:grid}.reveal-copy p{font-family:var(--font-body), sans-serif;color:rgb(var(--text-rgb) / .68);margin:0;font-size:.92rem;line-height:1.65}.reveal-rule{background:var(--line);width:84px;height:1px}@keyframes hint-blink{0%,to{opacity:.4}50%{opacity:1}}.reveal-hint{font-family:var(--font-body), sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:.62rem;font-weight:600;animation:1.8s infinite hint-blink}.discussion-timer{margin:6px 0 12px}.room-phase-timer .discussion-timer{margin:0}.timer-bar{margin-top:12px}.timer-fill{background:var(--accent);border-radius:9999px;height:5px;transition:width 1s linear}.timer-fill.is-urgent{background:var(--danger)}.timer-number{font-family:var(--font-title), serif;letter-spacing:-.02em;color:var(--brand);margin-bottom:12px;font-size:clamp(2.2rem,6vw,3.3rem);font-weight:700;line-height:1}.timer-number.timer-urgent{color:var(--danger)}.timer-bar-track{background:rgb(var(--surface-bright-rgb) / calc(.72 * var(--panel-alpha)));border-radius:9999px;height:6px;overflow:hidden}.timer-bar-fill{background:var(--accent);border-radius:9999px;height:100%;transition:width 1s linear}.timer-bar-fill.is-urgent{background:var(--danger)}.notes-panel{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.notes-seat-row{cursor:pointer;align-items:center;gap:10px;padding:10px 14px;transition:background .1s;display:flex}.notes-seat-row:hover{background:var(--surface-bright)}.notes-toggle{color:var(--muted);margin-left:auto;font-size:.75rem}.notes-body{background:var(--surface-low);padding:10px 14px 14px}.notes-textarea{background:var(--surface-high);width:100%;min-height:80px;color:var(--text);font:inherit;font-family:var(--font-body), sans-serif;resize:vertical;border:none;border-bottom:2px solid #0000;border-radius:8px 8px 0 0;padding:8px 12px;font-size:.85rem;transition:border-color .12s}.notes-textarea:focus{border-bottom-color:var(--accent);outline:none}.player-notes-list{flex-direction:column;gap:6px;display:flex}.player-note-item{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.player-note-header{width:100%;color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;transition:background .12s;display:flex}.player-note-header:hover,.player-note-header.is-open{background:var(--surface-bright)}.player-note-seat{font-family:var(--font-body), sans-serif;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;flex-shrink:0;font-size:.62rem;font-weight:600}.player-note-name{font-family:var(--font-title), sans-serif;color:var(--text);flex-shrink:0;font-size:.92rem;font-weight:700}.note-marks-row{flex-wrap:wrap;flex:1;gap:4px;display:flex}.note-mark{font-size:.66rem;font-family:var(--font-body), sans-serif;border-radius:4px;padding:2px 6px}.note-mark.is-maybe{background:rgb(var(--warning-rgb) / .15);color:var(--warning)}.note-mark.is-no{background:rgb(var(--danger-rgb) / .12);color:var(--danger);opacity:.7;text-decoration:line-through}.note-chevron{color:var(--muted);flex-shrink:0;margin-left:auto;font-size:.6rem}.note-role-grid{background:var(--surface-low);flex-wrap:wrap;gap:6px;padding:10px 14px 14px;display:flex}.note-chip{background:var(--surface-bright);color:var(--muted);font:inherit;font-family:var(--font-body), sans-serif;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:5px;padding:5px 10px;font-size:.8rem;transition:background .1s,color .1s;display:inline-flex}.note-chip:hover{color:var(--text);opacity:.85}.note-chip.is-maybe{background:rgb(var(--warning-rgb) / .15);color:var(--warning)}.note-chip.is-no{background:rgb(var(--danger-rgb) / .12);color:var(--danger);opacity:.75;text-decoration:line-through}.note-chip-icon{text-align:center;flex-shrink:0;width:14px;font-size:.75rem}.role-ref-panel{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.role-ref-toggle{width:100%;color:var(--text);font:inherit;font-family:var(--font-body), sans-serif;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:12px 16px;font-size:.88rem;font-weight:600;transition:background .1s;display:flex}.role-ref-toggle:hover{background:var(--surface-bright)}.role-ref-body{padding:4px 12px 14px}.role-ref-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px;margin-top:8px;display:grid}.role-ref-card{background:var(--surface-bright);font-family:var(--font-body), sans-serif;color:var(--text);border-radius:8px;padding:8px 10px;font-size:.78rem}.reports-panel{background:var(--surface-high);box-shadow:var(--shadow);border-radius:8px;padding:16px 20px}.report-list{gap:10px;margin-top:14px;display:grid}.report-item{perspective:1200px;min-height:116px}.report-item-inner{min-height:116px;transform-style:preserve-3d;transition:transform .46s cubic-bezier(.22,1,.36,1);position:relative}.report-item:hover .report-item-inner,.report-item:focus-within .report-item-inner,.report-item.is-flipped .report-item-inner{transform:rotateY(180deg)}.report-item{cursor:pointer}.report-face{backface-visibility:hidden;background:linear-gradient(180deg, rgb(var(--surface-bright-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha))));border:1px solid rgb(var(--accent-rgb) / .16);box-shadow:inset 0 1px 0 rgb(var(--text-rgb) / .04);border-radius:14px;padding:14px 16px;position:absolute;inset:0}.report-face-front{text-align:center;align-content:space-between;justify-items:center;display:grid}.report-face-back{align-content:start;gap:6px;display:grid;overflow-y:auto;transform:rotateY(180deg)}.report-kicker{letter-spacing:.18em;text-transform:uppercase;color:rgb(var(--accent-rgb) / .82);font-size:.64rem;font-weight:700}.report-front-glyph{font-family:var(--font-title), serif;letter-spacing:.16em;color:rgb(var(--accent-rgb) / .88);align-self:center;font-size:3.2rem;line-height:1}.report-front-copy{color:rgb(var(--text-rgb) / .74);font-size:.78rem;line-height:1.6}.report-face h3{color:var(--text);margin-bottom:4px;font-size:.9rem;font-weight:700}.report-back-stack{gap:10px;display:grid}.report-back-section+.report-back-section{border-top:1px solid rgb(var(--line-bright-rgb) / .14);padding-top:10px}.theme-toggle{background:var(--surface-high);cursor:pointer;z-index:200;width:42px;height:42px;box-shadow:var(--shadow-elevated);border:none;border-radius:9999px;justify-content:center;align-items:center;gap:8px;transition:transform .15s,opacity .15s;display:flex;position:fixed;bottom:24px;left:24px}.theme-toggle .material-symbols-outlined{font-size:1.1rem}.theme-toggle:hover{opacity:.85;transform:scale(1.1)}.theme-toggle-inline{width:auto;height:38px;min-height:38px;box-shadow:none;background:rgb(var(--field-surface-rgb) / calc(.82 * var(--panel-alpha)));border:1px solid var(--line);color:var(--brand);border-radius:4px;padding:0 12px;position:static;inset:auto;transform:none}.theme-toggle-inline:hover{opacity:1;background:rgb(var(--surface-bright-rgb) / calc(.86 * var(--panel-alpha)));color:var(--text);transform:none}.theme-toggle-label{font-family:var(--font-body), sans-serif;letter-spacing:.06em;white-space:nowrap;font-size:.76rem;font-weight:700}.home-flow{align-items:flex-start;gap:0;margin-top:8px;display:flex}.home-flow-step{background:var(--surface-bright);border-radius:8px;flex-direction:column;flex:1;gap:6px;padding:22px 18px;display:flex}.home-flow-step strong{font-family:var(--font-title), sans-serif;letter-spacing:-.01em;color:var(--text);font-size:.85rem;font-weight:700}.home-flow-step p{font-family:var(--font-body), sans-serif;color:var(--muted);margin:0;font-size:.83rem;line-height:1.6}.home-flow-icon{margin-bottom:4px;font-size:1.5rem;line-height:1}.home-flow-arrow{color:var(--muted);opacity:.45;flex-shrink:0;align-self:center;padding:0 6px;font-size:1.2rem}.home-meta{flex-wrap:wrap;gap:10px;padding:4px 0;display:flex}.home-meta span{font-family:var(--font-body), sans-serif;color:var(--muted);background:var(--surface-bright);border-radius:9999px;padding:5px 13px;font-size:.8rem}@media (max-width:880px){.home-flow{flex-direction:column;gap:10px}.home-flow-arrow{align-self:flex-start;margin-left:18px;transform:rotate(90deg)}}.card-select-grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:12px;margin-top:14px;display:grid}.center-card-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px;display:grid}.selectable-seat,.selectable-center{background:rgb(var(--field-surface-rgb) / calc(.84 * var(--panel-alpha)));cursor:pointer;text-align:left;border:1px solid var(--line);font:inherit;color:var(--text);width:100%;box-shadow:none;border-radius:16px;padding:16px;transition:background .12s,box-shadow .12s,border-color .12s,transform .12s}.selectable-seat:hover:not(:disabled),.selectable-center:hover:not(:disabled){background:rgb(var(--surface-bright-rgb) / calc(.88 * var(--panel-alpha)));border-color:rgb(var(--accent-rgb) / .28);transform:translateY(-1px)}.selectable-seat.is-primary,.selectable-center.is-primary{background:rgb(var(--danger-rgb) / .2);border-color:rgb(var(--danger-rgb) / .9);box-shadow:0 0 0 2px rgb(var(--danger-rgb) / .28), 0 0 12px rgb(var(--danger-rgb) / .15);transform:translateY(-2px)}.selectable-seat.is-secondary,.selectable-center.is-secondary{background:rgb(var(--accent-rgb) / .16);border-color:rgb(var(--accent-rgb) / .9);box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .24), 0 0 12px rgb(var(--accent-rgb) / .12);transform:translateY(-2px)}.selectable-seat-topline,.selectable-center-topline{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.select-order{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:22px;padding:0 8px;font-size:.62rem;font-weight:700;display:inline-flex}.select-order.is-primary{background:rgb(var(--danger-rgb) / .22);color:var(--danger);font-weight:800}.select-order.is-secondary{background:rgb(var(--accent-rgb) / .2);color:var(--accent);font-weight:800}@keyframes seat-select{0%{transform:scale(1)}35%{transform:scale(1.06)}65%{transform:scale(.96)}to{transform:scale(1)}}@keyframes center-flip-anim{0%{transform:rotateY(0)scale(1)}30%{transform:rotateY(90deg)scale(.88)}58%{transform:rotateY(0)scale(1.07)}to{transform:rotateY(0)scale(1)}}.selectable-seat.is-animating{animation:.38s seat-select}.selectable-center.is-animating{animation:.52s center-flip-anim}.selectable-seat .seat-num{font-family:var(--font-body), sans-serif;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:0;font-size:.58rem;font-weight:600}.selectable-seat.is-secondary .seat-num{color:var(--team-village)}.selectable-seat .seat-name{font-family:var(--font-title), sans-serif;letter-spacing:-.02em;color:var(--text);font-size:1rem;font-weight:700;line-height:1.35}.selectable-seat .seat-hint{color:rgb(var(--text-rgb) / .56);margin-top:8px;font-size:.72rem}.selectable-center{text-align:center;padding:16px 12px}.selectable-center .card-glyph{opacity:.55;margin-bottom:6px;font-size:1.7rem;line-height:1;display:block}.selectable-center .center-label{font-family:var(--font-body), sans-serif;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:600}.selectable-center.is-primary .center-label,.selectable-center.is-secondary .center-label{color:var(--text)}.seer-tabs{background:rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha)));border:1px solid var(--line);border-radius:999px;gap:8px;padding:4px;display:inline-flex}.seer-tab{color:var(--muted);font-family:var(--font-body), sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:9px 16px;font-size:.72rem;font-weight:600;transition:background .12s,color .12s}.seer-tab.is-active{background:rgb(var(--accent-rgb) / .12);color:var(--brand)}.select-hint{font-family:var(--font-body), sans-serif;color:rgb(var(--text-rgb) / .68);margin-bottom:4px;font-size:.84rem;line-height:1.6}.privacy-screen{text-align:center;place-items:center;gap:18px;min-height:380px;padding:40px 32px;display:grid}.privacy-screen h2{font-family:var(--font-title), sans-serif;color:var(--text);letter-spacing:-.04em;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;line-height:1.15}.detail-list{color:var(--muted);font-family:var(--font-body), sans-serif;gap:10px;margin-top:16px;font-size:.9rem;display:grid}.detail-list li{padding-left:18px;line-height:1.6;position:relative}.detail-list li:before{content:"—";color:var(--accent);opacity:.6;position:absolute;left:0}.rules-list{counter-reset:rules;gap:14px;margin-top:14px;padding:0;list-style:none;display:grid}.rules-list li{counter-increment:rules;grid-template-rows:auto auto;grid-template-columns:24px 1fr;align-items:baseline;gap:0 14px;display:grid}.rules-list li:before{content:counter(rules);font-family:var(--font-body), sans-serif;color:var(--accent);text-align:right;min-width:18px;padding-top:2px;font-size:.7rem;font-weight:700}.rules-list strong{color:var(--text);grid-area:1/2;font-size:.92rem}.rules-list span{color:var(--muted);font-size:.88rem;line-height:1.65;font-family:var(--font-body), sans-serif;grid-area:2/2}.roles-reader-shell{gap:24px;display:grid}.roles-reader-header{align-items:end}.roles-reader-lead{max-width:54rem;color:var(--copy-strong);margin-top:12px;font-size:1rem;line-height:1.75}.roles-reader-kicker{font-family:var(--font-body), sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--accent-rgb) / .82);margin:0;font-size:.68rem;font-weight:700}.roles-reader-hero{background:radial-gradient(circle at top right, rgb(var(--accent-rgb) / .1) 0%, transparent 40%), rgb(var(--surface-high-rgb) / calc(.9 * var(--panel-alpha)));grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start;gap:24px;padding:30px 32px;display:grid}.roles-reader-hero-copy{gap:14px;display:grid}.roles-reader-hero-copy h2{font-family:var(--font-title), serif;letter-spacing:-.06em;color:var(--title-strong);font-size:clamp(2.4rem,5vw,3.6rem);line-height:1.02}.roles-reader-hero-copy p:last-child{color:var(--copy-strong);margin:0;font-size:1rem;line-height:1.75}.roles-quickfacts-grid{gap:12px;display:grid}.roles-quickfact-card{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.86 * var(--panel-alpha)));border-radius:12px;gap:10px;padding:18px 18px 16px;display:grid}.roles-quickfact-card span{color:rgb(var(--text-rgb) / .58);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem}.roles-quickfact-card strong{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-size:1.4rem;line-height:1.05}.roles-quickfact-card p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.6}.roles-reader-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:24px;display:grid}.roles-reader-aside{gap:16px;display:grid;position:sticky;top:24px}.roles-reader-toc,.roles-reader-note{gap:14px;display:grid}.roles-reader-toc-list{gap:8px;display:grid}.roles-reader-toc-link{color:rgb(var(--text-rgb) / .72);background:rgb(var(--field-surface-rgb) / calc(.68 * var(--panel-alpha)));border:1px solid #0000;border-radius:8px;padding:10px 12px;transition:border-color .14s,color .14s,background .14s,transform .14s;display:block}.roles-reader-toc-link:hover{border-color:rgb(var(--accent-rgb) / .28);color:var(--text);background:rgb(var(--surface-bright-rgb) / calc(.82 * var(--panel-alpha)));transform:translateY(-1px)}.roles-reader-note-list{color:var(--copy-strong);gap:10px;margin:0;padding-left:18px;line-height:1.65;display:grid}.roles-reader-main{gap:18px;display:grid}.roles-section-head{gap:8px;margin-bottom:18px;display:grid}.roles-section-head h2{font-family:var(--font-title), serif;letter-spacing:-.05em;color:var(--title-strong);font-size:clamp(1.9rem,3.4vw,2.5rem);line-height:1.06}.roles-flow-panel,.roles-win-panel,.roles-order-panel{gap:6px;display:grid}.roles-flow-list{margin-top:0}.roles-flow-list li{border-bottom:1px solid var(--line);padding-bottom:14px}.roles-flow-list li:last-child{border-bottom:none;padding-bottom:0}.roles-win-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.roles-win-card{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha)));border-radius:12px;gap:10px;min-height:170px;padding:18px;display:grid}.roles-win-card[data-team=werewolf]{border-color:var(--team-werewolf-border);background:linear-gradient(180deg, var(--team-werewolf-bg), rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha))))}.roles-win-card[data-team=village]{border-color:var(--team-village-border);background:linear-gradient(180deg, var(--team-village-bg), rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha))))}.roles-win-card[data-team=outsider]{border-color:var(--team-outsider-border);background:linear-gradient(180deg, var(--team-outsider-bg), rgb(var(--field-surface-rgb) / calc(.8 * var(--panel-alpha))))}.roles-win-title{font-family:var(--font-title), serif;color:var(--title-strong);font-size:1.18rem}.roles-win-card p{color:var(--copy-strong);margin:0;font-size:.92rem;line-height:1.7}.roles-inline-caution{border:1px solid var(--line);background:rgb(var(--surface-bright-rgb) / calc(.58 * var(--panel-alpha)));color:var(--copy-strong);border-radius:10px;margin-top:14px;padding:14px 16px;line-height:1.65}.roles-order-list{counter-reset:night-order;gap:10px;margin:0;padding:0;list-style:none;display:grid}.roles-order-list li{border-bottom:1px solid var(--line);color:var(--copy-strong);grid-template-columns:34px 1fr;align-items:start;gap:14px;padding:14px 0;line-height:1.65;display:grid}.roles-order-list li:last-child{border-bottom:none;padding-bottom:0}.roles-order-list li:before{counter-increment:night-order;content:counter(night-order);background:rgb(var(--accent-rgb) / .16);width:28px;height:28px;color:var(--brand);border-radius:999px;justify-content:center;align-items:center;font-size:.74rem;font-weight:700;display:inline-flex}.roles-team-section{gap:18px;display:grid}.roles-team-banner{border:1px solid var(--roles-team-border);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.92 * var(--panel-alpha))), rgb(var(--field-surface-rgb) / calc(.86 * var(--panel-alpha))));border-left-width:4px;border-radius:14px;gap:12px;padding:22px 24px;display:grid}.roles-team-banner h2{font-family:var(--font-title), serif;letter-spacing:-.05em;color:var(--title-strong);font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.08}.roles-team-banner p:last-child{color:var(--copy-strong);margin:0;line-height:1.65}.roles-card-stack{gap:16px;display:grid}.roles-role-card{border:1px solid var(--line);background:rgb(var(--surface-high-rgb) / calc(.88 * var(--panel-alpha)));box-shadow:var(--shadow);border-left-width:4px;border-radius:14px;padding:22px 24px}.roles-role-card[data-team=werewolf]{border-left-color:var(--team-werewolf-border)}.roles-role-card[data-team=village]{border-left-color:var(--team-village-border)}.roles-role-card[data-team=outsider]{border-left-color:var(--team-outsider-border)}.roles-role-card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex}.roles-role-card-title{align-items:flex-start;gap:16px;min-width:0;display:flex}.roles-role-badge{border:1px solid var(--line);background:rgb(var(--surface-bright-rgb) / calc(.78 * var(--panel-alpha)));width:50px;height:50px;color:var(--text);letter-spacing:.08em;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:inline-flex}.roles-role-card[data-team=werewolf] .roles-role-badge{background:var(--team-werewolf-bg);border-color:var(--team-werewolf-border);color:var(--team-werewolf)}.roles-role-card[data-team=village] .roles-role-badge{background:var(--team-village-bg);border-color:var(--team-village-border);color:var(--team-village)}.roles-role-card[data-team=outsider] .roles-role-badge{background:var(--team-outsider-bg);border-color:var(--team-outsider-border);color:var(--team-outsider)}.roles-role-card-title h3{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-size:1.5rem;line-height:1.05}.roles-role-card-title p{color:var(--copy-strong);margin-top:8px;line-height:1.65}.roles-role-meta{text-align:right;flex-shrink:0;justify-items:end;gap:8px;display:grid}.roles-role-count,.roles-role-team{letter-spacing:.08em;text-transform:uppercase;background:rgb(var(--surface-bright-rgb) / calc(.8 * var(--panel-alpha)));min-height:30px;color:rgb(var(--text-rgb) / .72);border-radius:999px;align-items:center;padding:0 10px;font-size:.68rem;font-weight:700;display:inline-flex}.roles-role-card-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:18px;display:grid}.roles-role-block,.roles-role-tip{background:rgb(var(--field-surface-rgb) / calc(.76 * var(--panel-alpha)));border-radius:12px;gap:10px;padding:16px;display:grid}.roles-role-tip{border:1px solid var(--line);grid-column:1/-1}.roles-role-label{color:rgb(var(--text-rgb) / .54);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:700}.roles-role-block p,.roles-role-tip p{color:var(--copy-strong);margin:0;line-height:1.72}.role-guide-list,.role-guide-launcher{gap:10px;display:grid}.role-guide-modal-backdrop{z-index:260;background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(8px);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.role-guide-modal{background:rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha)));-webkit-backdrop-filter:blur(12px);width:min(100%,760px);max-height:min(86vh,920px);box-shadow:var(--shadow-elevated);border-radius:16px;padding:22px;overflow-y:auto}.role-guide-modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.role-guide-modal-close{background:var(--surface-bright);min-width:72px;color:var(--text);font:inherit;cursor:pointer;border:none;border-radius:9999px;flex-shrink:0;padding:10px 14px;transition:opacity .12s,transform .12s}.role-guide-modal-close:hover{opacity:.75;transform:translateY(-1px)}.role-guide-modal-actions{justify-content:flex-end;margin-top:16px;display:flex}.role-guide-item{background:var(--surface-bright);border-radius:10px;overflow:hidden}.role-guide-item.is-highlighted{box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .3)}.role-guide-item .role-guide-header{text-align:left;cursor:pointer;width:100%;transition:background .14s}.role-guide-item .role-guide-header:hover{background:var(--surface-high)}.role-guide-item .role-guide-header.is-open{background:var(--surface-high);border-bottom:1px solid var(--line)}.role-guide-badge{background:var(--team-village-bg);width:38px;height:38px;color:var(--team-village);font-family:var(--font-body), sans-serif;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:inline-flex}.role-guide-title-wrap{flex:1;gap:2px;min-width:0;display:grid}.deck-role-short{font-family:var(--font-body), sans-serif;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.78rem;overflow:hidden}.deck-role-controls{flex-shrink:0;align-items:center;gap:6px;display:flex}.deck-role-max{color:var(--muted);font-size:.68rem;font-weight:400}.deck-role-count{font-family:var(--font-body), sans-serif;color:var(--text);text-align:center;min-width:28px;font-size:.9rem;font-weight:700}.deck-role-badge{font-family:var(--font-body), sans-serif;letter-spacing:.05em;color:var(--team-werewolf);text-align:center;flex-shrink:0;min-width:22px;font-size:.58rem;font-weight:700}[data-team=village] .deck-role-badge{color:var(--team-village)}[data-team=outsider] .deck-role-badge{color:var(--team-outsider)}.result-modal-eyebrow{font-family:var(--font-body), sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-size:.68rem;font-weight:600}.result-hero-kicker{font-family:var(--font-body), sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:.66rem;font-weight:600}:root .privacy-screen{background:radial-gradient(ellipse at 50% 40%, rgb(var(--scene-tint-1-rgb) / calc(var(--scene-opacity) * .32)) 0%, transparent 68%)}@keyframes report-appear{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@media (max-width:1100px){.roles-reader-hero,.roles-reader-layout,.roles-win-grid,.roles-role-card-body{grid-template-columns:1fr}.roles-reader-aside{position:static}.roles-reader-toc-list{grid-template-columns:repeat(2,minmax(0,1fr))}.roles-role-meta{text-align:left;justify-items:start}}@media (max-width:880px){.grid-two,.grid-layout,.two-columns{grid-template-columns:1fr}.app-shell{width:min(1120px,100vw - 20px);padding-top:24px;padding-bottom:80px}.site-header-inner,.site-footer-inner,.site-main{width:min(1480px,100vw - 28px)}.site-header-inner{grid-template-columns:1fr auto;gap:10px;min-height:74px}.site-nav{order:3;grid-column:1/-1;justify-self:start;padding-bottom:12px}.site-main{padding-top:34px;padding-bottom:92px}.landing-hero,.lounge-grid,.steps-grid{grid-template-columns:1fr}.landing-hero{gap:28px;min-height:0;padding-top:12px}.landing-title,.steps-heading h2,.lounge-intro h1{font-size:clamp(2.5rem,12vw,4rem)}.fact-ribbon{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 0}.fact-ribbon-item:nth-child(odd),.fact-ribbon-item+.fact-ribbon-item{border-left:none}.fact-ribbon-item{border-top:1px solid #7e62662e;justify-content:flex-start}.fact-ribbon-item:nth-child(-n+2){border-top:none}.steps-section{padding-top:56px}.lounge-field-grid{grid-template-columns:1fr}.custom-deck-panel,.resume-actions,.site-footer-inner{flex-direction:column;align-items:stretch}.host-panel-actions{justify-content:stretch}.host-panel-actions>*{width:100%}.hero-card{padding:28px 20px}.panel,.flow-panel,.compact-panel{padding:20px}.roles-reader-shell{gap:18px}.roles-reader-header{gap:14px}.roles-reader-lead{font-size:.94rem}.roles-reader-hero{gap:18px;padding:22px 20px}.roles-reader-hero-copy h2{font-size:clamp(2rem,11vw,3rem)}.roles-reader-toc-list{grid-template-columns:1fr}.roles-team-banner,.roles-role-card{padding:18px}.roles-role-card-head{flex-direction:column;align-items:stretch}.roles-role-card-title{gap:12px}.roles-role-badge{width:44px;height:44px}.roles-role-card-title h3{font-size:1.3rem}.roles-order-list li{grid-template-columns:28px 1fr;gap:12px}.room-wrapper{position:fixed;inset:0}.room-header-bar,.room-body{padding:0 12px}.room-main{padding:24px 0 80px}.room-shell-topbar{grid-template-columns:1fr auto;gap:10px;min-height:auto;padding:12px 0}.room-shell-meta{grid-column:1/-1;justify-self:center;row-gap:8px;margin-top:4px}.room-stage-grid,.room-support-grid,.warroom-hero-grid{grid-template-columns:1fr;gap:16px}.lobby-room-grid{grid-template-columns:1fr;gap:24px}.lobby-context-column,.lobby-main-column{gap:24px}.lobby-hero-card h2{font-size:clamp(2.8rem,11vw,4rem)}.lobby-invite-row{gap:12px}.lobby-invite-action,.room-lobby-actions>*{width:100%}.lobby-participants-panel .roster-list,.lobby-role-grid{grid-template-columns:1fr}.lobby-settings-summary{grid-template-columns:1fr;gap:14px;padding:20px}.lobby-settings-divider{width:100%;height:1px;margin:0}.lobby-settings-cell{padding:0}.room-shell-actions{justify-self:end}.my-role-card{min-height:320px}.my-role-body{margin-top:32px}.room-sidebar{display:none!important}.room-mobile-only{display:block}.room-desktop-only{display:none!important}.chat-fab{display:flex}.chat-drawer-backdrop{display:block}.chat-drawer{display:flex}.chat-drawer.is-open{transform:translateY(0)}.page-header{flex-wrap:wrap}.page-header .inline-actions{flex-direction:row;margin-top:0}.page-header-actions{justify-content:flex-end;width:100%}.page-header.page-header-compact{flex-wrap:nowrap}.page-header.page-header-compact .page-header-actions{width:auto}.page-header h1{font-size:clamp(1.5rem,6vw,2rem)}.role-guide-modal-backdrop{padding:12px}.role-guide-modal{border-radius:20px;width:100%;max-height:90vh;padding:18px}.role-guide-modal-header{flex-direction:column}.role-guide-modal-close{width:100%}}.dsettings{position:relative}.dsettings-trigger{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;transition:color .14s,background .14s;display:flex}.dsettings-trigger:hover,.dsettings-trigger.is-open{color:var(--text);background:var(--surface-bright)}.dsettings-trigger .material-symbols-outlined{font-size:19px}.dsettings-popover{background:var(--surface-high);border:1px solid var(--line);width:248px;box-shadow:var(--shadow-elevated);z-index:200;border-radius:14px;gap:10px;padding:18px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.dsettings-section-label{font-family:var(--font-body), sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.66rem;font-weight:700}.dsettings-section-label:not(:first-child){margin-top:4px}.dsettings-theme-btn{background:var(--surface-bright);color:var(--text);font-family:var(--font-body), sans-serif;cursor:pointer;text-align:left;border-radius:9px;justify-content:center;align-items:center;width:100%;padding:10px 12px;font-size:.86rem;transition:background .14s;display:flex}.dsettings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.dsettings-theme-btn:hover{background:var(--line)}.dsettings-theme-btn.is-active{background:var(--accent);color:var(--accent-contrast);box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .24)}.dsettings-theme-label{letter-spacing:.04em;font-size:.78rem;font-weight:700}.dsettings-slider-wrap{gap:6px;display:grid}.dsettings-slider{cursor:pointer;width:100%;accent-color:var(--accent);height:18px}.dsettings-slider-labels{color:var(--muted);font-size:.7rem;font-family:var(--font-body), sans-serif;justify-content:space-between;display:flex}.dsettings-reset{font-family:var(--font-body), sans-serif;color:var(--muted);cursor:pointer;text-align:center;border-radius:7px;width:100%;padding:6px 8px;font-size:.76rem;transition:color .14s,background .14s}.dsettings-reset:hover{color:var(--text);background:var(--surface-bright)}.mw-home-main{background:radial-gradient(circle at 50% 18%, rgb(var(--accent-rgb) / .06), transparent 28%), radial-gradient(circle at 18% 58%, rgb(var(--accent-2-rgb) / .05), transparent 34%), radial-gradient(circle at 86% 76%, rgb(var(--accent-3-rgb) / .04), transparent 30%), linear-gradient(180deg, rgb(var(--bg-rgb)) 0%, rgb(var(--scene-base-rgb)) 100%);padding:0 0 88px;position:relative}.mw-home-nav{z-index:30;background:rgb(var(--overlay-scrim-rgb) / .84);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgb(var(--accent-rgb) / .12);position:sticky;top:0}.mw-home-nav-inner{justify-content:space-between;align-items:center;gap:24px;width:min(1280px,100vw - 40px);min-height:98px;margin:0 auto;display:flex}.mw-home-brand{font-family:var(--font-title), serif;color:rgb(var(--text-rgb) / .96);letter-spacing:-.02em;align-items:center;gap:12px;font-size:1.08rem;font-weight:700;display:flex}.mw-home-brand .material-symbols-outlined{color:rgb(var(--accent-rgb) / .92);font-size:1.28rem}.mw-home-nav-links{align-items:center;gap:44px;display:flex}.mw-home-nav-link{color:rgb(var(--text-rgb) / .62);letter-spacing:.14em;text-transform:uppercase;font-size:.84rem;font-weight:600;transition:color .18s;position:relative}.mw-home-nav-link:hover,.mw-home-nav-link.is-active{color:var(--brand)}.mw-home-nav-link:after{content:"";background:rgb(var(--accent-rgb) / .86);transform-origin:50%;border-radius:999px;height:2px;transition:transform .18s;position:absolute;bottom:-12px;left:0;right:0;transform:scaleX(0)}.mw-home-nav-link.is-active:after,.mw-home-nav-link:hover:after{transform:scaleX(1)}.mw-home-hero{min-height:640px;padding:140px 24px 90px;position:relative;overflow:hidden}.mw-home-hero:before{content:"";background:radial-gradient(circle at 50% 42%, rgb(var(--accent-rgb) / .045), transparent 26%), radial-gradient(circle at 30% 62%, rgb(var(--accent-2-rgb) / .045), transparent 30%), radial-gradient(circle at 72% 30%, rgb(var(--accent-3-rgb) / .04), transparent 30%), linear-gradient(180deg, rgb(var(--surface-high-rgb) / .44), rgb(var(--overlay-scrim-rgb) / .2));pointer-events:none;position:absolute;inset:0}.mw-home-hero:after{content:"";border:1px solid rgb(var(--accent-rgb) / .06);background:radial-gradient(circle at 50% 100%, rgb(var(--accent-rgb) / .025), transparent 42%), linear-gradient(135deg, rgb(var(--accent-2-rgb) / .018), rgb(var(--accent-3-rgb) / .018));pointer-events:none;border-radius:32px;position:absolute;inset:24px}.mw-home-hero-inner{z-index:1;text-align:center;flex-direction:column;align-items:center;width:min(1040px,100vw - 48px);margin:0 auto;display:flex;position:relative}.mw-home-hero-title{font-family:var(--font-title), serif;letter-spacing:-.05em;color:var(--title-strong);text-shadow:0 4px 26px #0006;word-break:keep-all;font-size:clamp(3rem,6vw,4.9rem);line-height:1.08}.mw-home-hero-copy{max-width:42rem;color:rgb(var(--text-rgb) / .72);word-break:keep-all;margin-top:18px;font-size:1.06rem;line-height:1.7}.mw-home-hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:34px;display:flex}.mw-home-button{border:1px solid rgb(var(--line-bright-rgb) / .16);letter-spacing:.08em;min-width:200px;min-height:64px;color:rgb(var(--text-rgb) / .96);text-transform:uppercase;border-radius:2px;justify-content:center;align-items:center;gap:8px;padding:0 28px;font-size:.95rem;font-weight:700;transition:transform .18s,border-color .18s,background .18s;display:flex}.mw-home-button .material-symbols-outlined{font-size:1.2rem}.mw-home-button:hover{transform:translateY(-1px)}.mw-home-button.is-primary{background:var(--accent);border-color:rgb(var(--accent-rgb) / .28);color:var(--accent-contrast);box-shadow:0 8px 18px rgb(var(--accent-rgb) / .16)}.mw-home-button.is-secondary{background:rgb(var(--field-surface-rgb) / .64);border-color:rgb(var(--accent-2-rgb) / .22)}.mw-home-support-strip{border-top:1px solid rgb(var(--line-bright-rgb) / .14);border-bottom:1px solid rgb(var(--line-bright-rgb) / .1);justify-content:center;align-items:center;gap:44px;width:min(1280px,100vw - 48px);margin:0 auto;padding:0 0 56px;display:flex}.mw-home-support-item{color:rgb(var(--text-rgb) / .76);letter-spacing:.04em;align-items:center;gap:10px;font-size:.92rem;font-weight:600;display:inline-flex}.mw-home-support-item .material-symbols-outlined{color:rgb(var(--accent-rgb) / .86);font-size:1.1rem}.mw-home-support-item:nth-child(2) .material-symbols-outlined{color:rgb(var(--accent-2-rgb) / .88)}.mw-home-support-item:nth-child(3) .material-symbols-outlined{color:rgb(var(--accent-3-rgb) / .88)}.mw-home-game-shelf{width:min(1280px,100vw - 48px);margin:0 auto;padding-top:52px}.mw-home-section-head{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:10px;margin-bottom:22px;display:flex}.mw-home-section-head span{color:rgb(var(--accent-rgb) / .86);letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:800}.mw-home-section-head h2{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);word-break:keep-all;font-size:clamp(2rem,3vw,2.9rem);line-height:1.08}.mw-home-game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.mw-home-game-card{border:1px solid rgb(var(--line-bright-rgb) / .14);background:rgb(var(--surface-high-rgb) / .74);min-height:180px;box-shadow:0 18px 46px rgb(var(--surface-shadow) / .12);border-radius:18px;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:20px;padding:26px;display:grid}.mw-home-game-icon{border:1px solid rgb(var(--line-bright-rgb) / .16);background:rgb(var(--field-surface-rgb) / .62);border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;display:inline-flex}.mw-home-game-icon .material-symbols-outlined{color:rgb(var(--accent-rgb) / .9);font-size:1.55rem}.mw-home-game-card[data-game=spy-mission] .material-symbols-outlined{color:rgb(var(--accent-2-rgb) / .9)}.mw-home-game-kicker{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.mw-home-game-kicker span{border:1px solid rgb(var(--line-bright-rgb) / .16);min-height:28px;color:rgb(var(--text-rgb) / .66);letter-spacing:.04em;border-radius:999px;align-items:center;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.mw-home-game-card h3{font-family:var(--font-title), serif;letter-spacing:-.035em;color:var(--title-strong);word-break:keep-all;font-size:1.7rem;line-height:1.08}.mw-home-game-card p{color:rgb(var(--text-rgb) / .7);word-break:keep-all;margin-top:10px;font-size:.94rem;line-height:1.65}.mw-home-game-card-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.mw-home-game-action{border:1px solid rgb(var(--line-bright-rgb) / .16);background:rgb(var(--field-surface-rgb) / .62);min-height:40px;color:rgb(var(--text-rgb) / .86);letter-spacing:.06em;border-radius:2px;justify-content:center;align-items:center;padding:0 14px;font-size:.78rem;font-weight:800;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.mw-home-game-action:hover{border-color:rgb(var(--accent-rgb) / .32);transform:translateY(-1px)}.mw-home-game-action.is-primary{border-color:rgb(var(--accent-rgb) / .24);background:rgb(var(--accent-rgb) / .12);color:rgb(var(--text-rgb) / .92)}.mw-home-actions{grid-template-columns:1.08fr 1fr;gap:28px;width:min(1280px,100vw - 48px);margin:0 auto;padding-top:34px;display:grid}.mw-home-card{border:1px solid rgb(var(--line-bright-rgb) / .12);background:linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.92 * var(--panel-alpha))), rgb(var(--surface-low-rgb) / calc(.96 * var(--panel-alpha))));min-height:432px;box-shadow:0 30px 80px rgb(var(--surface-shadow) / .18);border-radius:20px;flex-direction:column;padding:46px 52px;display:flex;position:relative;overflow:hidden}.mw-home-card.is-primary{background:radial-gradient(circle at 12% 0%, rgb(var(--accent-3-rgb) / .08), transparent 36%), linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.92 * var(--panel-alpha))), rgb(var(--surface-low-rgb) / calc(.96 * var(--panel-alpha))))}.mw-home-card.is-primary:before{content:"";background:linear-gradient(135deg, rgb(var(--accent-2-rgb) / .08), rgb(var(--accent-rgb) / .04), rgb(var(--accent-3-rgb) / .04));opacity:.7;border-radius:32px;width:240px;height:240px;position:absolute;top:-32px;right:-36px}.mw-home-card.is-primary:after{content:"";background:rgb(var(--accent-3-rgb) / .18);border-radius:50%;width:18px;height:18px;position:absolute;top:44px;right:44px}.mw-home-card>*{z-index:1;position:relative}.mw-home-card-icon{border:1px solid rgb(var(--line-bright-rgb) / .14);background:rgb(var(--field-surface-rgb) / .46);border-radius:16px;justify-content:center;align-items:center;width:58px;height:58px;display:inline-flex}.mw-home-card-icon .material-symbols-outlined{color:rgb(var(--accent-rgb) / .9);font-size:1.6rem}.mw-home-card:nth-child(2) .mw-home-card-icon .material-symbols-outlined{color:rgb(var(--accent-2-rgb) / .9)}.mw-home-card h2{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);word-break:keep-all;margin-top:38px;font-size:clamp(2.2rem,3vw,3.1rem);line-height:1.08}.mw-home-card p{max-width:28rem;color:rgb(var(--text-rgb) / .74);word-break:keep-all;margin-top:14px;font-size:1rem;line-height:1.7}.mw-home-card-cta{border:1px solid rgb(var(--line-bright-rgb) / .14);background:var(--accent);min-height:72px;color:var(--accent-contrast);letter-spacing:.08em;border-radius:2px;justify-content:center;align-items:center;gap:12px;margin-top:auto;font-size:1rem;font-weight:700;display:inline-flex}.mw-home-card-cta.is-secondary{background:rgb(var(--field-surface-rgb) / .78);border-color:rgb(var(--accent-2-rgb) / .2);color:rgb(var(--text-rgb) / .96)}.mw-home-card-cta .material-symbols-outlined{font-size:1.35rem}.mw-home-code-strip{align-items:center;gap:18px;margin-top:auto;display:flex}.mw-home-code-cell{border:1px solid rgb(var(--accent-4-rgb) / .2);background:linear-gradient(180deg, rgb(var(--accent-4-rgb) / .1), transparent), rgb(var(--field-surface-rgb) / .72);width:64px;height:92px;font-family:var(--font-title), serif;color:rgb(var(--text-rgb) / .9);border-radius:2px;justify-content:center;align-items:center;font-size:2rem;line-height:1;display:inline-flex}.mw-home-code-cell.is-divider{width:18px;height:auto;color:rgb(var(--text-rgb) / .48);background:0 0;border:0;font-size:1.8rem}.mw-home-footer{width:min(1280px,100vw - 48px);color:rgb(var(--text-rgb) / .56);border-top:1px solid rgb(var(--line-bright-rgb) / .08);grid-template-columns:auto 1fr auto;align-items:center;gap:20px;margin:0 auto;padding:70px 0 18px;font-size:.84rem;display:grid}.mw-home-footer-brand{font-family:var(--font-title), serif;color:rgb(var(--text-rgb) / .86);align-items:center;gap:10px;font-size:1rem;display:inline-flex}.mw-home-footer-brand .material-symbols-outlined{color:rgb(var(--accent-rgb) / .88);font-size:1.2rem}.mw-home-footer-links{justify-content:center;gap:30px;display:flex}.mw-home-footer-copy{justify-self:end}#create-room,#join-room,#game-collection,#game-guide,#role-list{scroll-margin-top:120px}.mw-game-layout{--mw-game-column-height:clamp(520px, calc(100dvh - 176px), 920px);min-height:var(--mw-game-column-height);grid-template-columns:minmax(240px,280px) minmax(0,1fr) minmax(300px,340px);align-items:stretch;gap:12px;display:grid}.mw-pane-left,.mw-pane-right,.mw-pane-table{flex-direction:column;align-self:stretch;gap:14px;height:100%;min-height:0;max-height:100%;display:flex}.mw-pane-left,.mw-pane-right{top:var(--mw-pane-top-offset,42px);position:sticky}.mw-pane-left,.mw-pane-right,.mw-pane-table{overflow:hidden}.mw-pane-right{display:flex}.mw-pane-table{min-width:0}.spectator-layout-tichu{--tichu-card-w:clamp(42px, min(6.5cqw, 7.5cqh), 72px);--tichu-card-h:calc(var(--tichu-card-w) * 1.4);--tichu-hand-card-min:clamp(42px, min(6.5cqw, 7.5cqh), 72px);grid-template-columns:minmax(0,1fr) minmax(300px,340px)}.spectator-layout-tichu .mw-pane-table{min-width:0;container:tichu-left-panel/size}.spectator-layout-tichu .mw-pane-center-scroll{align-items:stretch;padding-top:clamp(8px,1.2svh,14px);overflow-y:auto}.mw-pane-column-scroll{scrollbar-width:thin;scrollbar-color:var(--surface-bright) transparent;overscroll-behavior:contain;flex-direction:column;flex:auto;gap:14px;min-height:0;padding-right:10px;display:flex;overflow:hidden auto}.mw-pane-column-scroll>*{flex-shrink:0}.mw-pane-center-scroll{align-items:center}.mw-center-stage-shell{align-content:start;gap:14px;width:min(980px,100%);min-height:100%;display:grid}.room-wrapper:not([data-phase=lobby]) .room-main{flex-direction:column;height:calc(100dvh - 84px);min-height:0;padding:42px 0 24px;display:flex;overflow:hidden}.room-wrapper:not([data-phase=lobby]) .mw-game-layout{flex:1;height:100%;min-height:0;max-height:calc(100dvh - 140px)}.room-wrapper:not([data-phase=lobby]) .mw-pane-left,.room-wrapper:not([data-phase=lobby]) .mw-pane-right,.room-wrapper:not([data-phase=lobby]) .mw-pane-table{height:100%;min-height:0;max-height:100%}@media (max-width:1100px){.mw-home-nav-inner,.mw-home-support-strip,.mw-home-game-shelf,.mw-home-actions,.mw-home-footer{width:min(100vw - 32px,1280px)}.mw-home-game-grid,.mw-home-actions{grid-template-columns:1fr}.mw-home-card{min-height:360px}}@media (max-width:860px){.mw-home-nav-inner{flex-wrap:wrap;min-height:84px;padding:16px 0}.mw-home-nav-links{justify-content:flex-start;gap:18px;width:100%}.mw-home-hero{min-height:540px;padding:112px 20px 72px}.mw-home-hero-title{font-size:clamp(2.4rem,10vw,3.7rem)}.mw-home-hero-copy{font-size:.98rem}.mw-home-hero-actions,.mw-home-support-strip,.mw-home-footer{flex-direction:column}.mw-home-footer{grid-template-columns:1fr;justify-items:start}.mw-home-footer-links{flex-wrap:wrap;justify-content:flex-start}.mw-home-footer-copy{justify-self:start}.mw-home-section-head{flex-direction:column;align-items:start}.mw-home-game-card{grid-template-columns:1fr}}@media (max-width:640px){.mw-home-nav-links{gap:16px;font-size:.76rem}.mw-home-button{width:100%}.mw-home-card{min-height:auto;padding:30px 24px}.mw-home-game-card{padding:22px}.mw-home-card h2{margin-top:24px;font-size:2rem}.mw-home-code-strip{flex-wrap:wrap;gap:10px}.mw-home-code-cell{width:48px;height:72px;font-size:1.5rem}}.mw-marketing-nav,.mw-marketing-logo,.mw-marketing-mark,.mw-marketing-links,.mw-marketing-cta,.mw-hero,.mw-hero-eyebrow,.mw-hero-title,.mw-hero-title em,.mw-hero-sub,.mw-hero-actions,.mw-hero-facts,.mw-hero-fact,.mw-hero-visual,.mw-visual-stage,.mw-visual-card,.mw-visual-role,.mw-visual-team-chip,.mw-visual-glyph,.mw-visual-role-name,.mw-visual-role-sub,.mw-visual-table,.mw-visual-table-head,.mw-visual-chat-head,.mw-visual-mini-table,.mw-visual-mini-seat,.mw-visual-chat,.mw-visual-chat-msg,.mw-marketing-section,.mw-section-title,.mw-section-kicker,.mw-modes-grid,.mw-mode-card,.mw-mode-kicker,.mw-mode-meta,.mw-web-footer,.mw-web-footer-links{all:unset}.web-btn{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.82rem;font-weight:600;transition:transform .18s,background .2s,box-shadow .2s,border-color .2s;display:inline-flex}.web-btn.primary{background:var(--accent);color:var(--accent-contrast);box-shadow:0 4px 14px rgb(var(--accent-rgb) / .3)}.web-btn.primary:hover{transform:translateY(-1px)}.web-btn.ghost{color:var(--muted);background:0 0}.web-btn.ghost:hover{background:var(--surface-2,var(--surface-bright));color:var(--text)}.web-btn.outline{color:var(--text);border:1px solid var(--line-bright)}.web-btn.outline:hover{background:var(--surface-bright)}.web-btn.big{border-radius:12px;padding:14px 24px;font-size:.9rem}.mw-hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;padding:70px 48px 48px;display:grid;position:relative;overflow:hidden}.mw-hero:before{content:"";background:radial-gradient(circle at 40% 40%, rgb(var(--accent-rgb) / .16), transparent 65%);pointer-events:none;border-radius:999px;width:600px;height:600px;position:absolute;top:-200px;right:-250px}.mw-hero:after{content:"";background:radial-gradient(circle at 50% 50%, rgb(var(--danger-rgb) / .14), transparent 60%);pointer-events:none;border-radius:999px;width:500px;height:500px;position:absolute;bottom:-180px;left:-180px}.mw-hero-eyebrow,.mw-section-kicker{font-family:var(--font-title), serif;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:.76rem;font-style:italic;font-weight:600}.mw-hero-title{font-family:var(--font-title), serif;letter-spacing:-.03em;color:var(--title-strong);z-index:1;margin-top:18px;font-size:clamp(3.5rem,7vw,5.2rem);font-weight:700;line-height:1.02;position:relative}.mw-hero-title em{color:var(--accent);font-style:italic;font-weight:500}.mw-hero-sub{color:var(--muted);z-index:1;max-width:520px;margin-top:20px;font-size:1rem;line-height:1.7;position:relative}.mw-hero-actions{z-index:1;align-items:center;gap:10px;margin-top:28px;display:flex;position:relative}.mw-hero-facts{z-index:1;gap:36px;margin-top:40px;display:flex;position:relative}.mw-hero-fact{border-left:1px solid var(--line-bright);padding-left:14px}.mw-hero-fact:first-child{border-left:0;padding-left:0}.mw-hero-fact strong{font-family:var(--font-title), serif;color:var(--text);letter-spacing:-.02em;font-size:1.8rem;font-weight:700;line-height:1;display:block}.mw-hero-fact span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:6px;font-size:.68rem;display:block}.mw-hero-visual{z-index:1;place-items:center;height:500px;display:grid;position:relative}.mw-visual-stage{width:100%;height:100%;position:relative}.mw-visual-card{box-shadow:var(--shadow-elevated);background:var(--surface-high);border:1px solid var(--line);border-radius:20px;position:absolute;overflow:hidden}.mw-visual-role{background:linear-gradient(180deg, rgb(var(--accent-rgb) / .25), rgb(var(--accent-rgb) / .5));width:220px;height:320px;color:var(--accent-contrast);flex-direction:column;justify-content:space-between;padding:18px;display:flex;top:20px;right:20px;transform:rotate(7deg)}.mw-visual-team-chip{letter-spacing:.2em;background:rgb(var(--accent-rgb) / .38);color:rgb(var(--surface-high-rgb));text-transform:uppercase;border-radius:99px;align-self:flex-start;padding:3px 8px;font-size:.62rem;font-weight:700}.mw-visual-glyph{font-family:var(--font-title), serif;color:rgb(var(--accent-contrast) / .55);opacity:.7;text-align:center;font-size:7rem;line-height:1}.mw-visual-role-name{font-family:var(--font-title), serif;letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.mw-visual-role-sub{color:rgb(var(--accent-contrast) / .76);margin-top:4px;font-size:.74rem;line-height:1.5}.mw-visual-table{background:linear-gradient(180deg, var(--surface-high) 0%, var(--surface-bright) 100%);width:280px;height:240px;padding:16px;bottom:20px;left:10px;transform:rotate(-5deg)}.mw-visual-table-head,.mw-visual-chat-head{font-family:var(--font-title), serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:6px;font-size:.68rem;font-weight:700}.mw-visual-mini-table{background:radial-gradient(circle at 50% 50%, rgb(var(--accent-rgb) / .12), rgb(var(--scene-tint-1-rgb) / .26));width:100%;height:180px;box-shadow:inset 0 0 0 2px rgb(var(--accent-rgb) / .22);border-radius:50%;margin-top:8px;position:relative}.mw-visual-mini-seat{background:var(--surface-high);border:1px solid var(--line-bright);width:28px;height:28px;font-family:var(--font-title), serif;color:var(--muted);border-radius:10px;place-items:center;font-size:.68rem;font-weight:700;display:grid;position:absolute}.mw-visual-mini-seat:first-child{top:8%;left:50%;transform:translate(-50%,-50%)}.mw-visual-mini-seat:nth-child(2){top:30%;left:82%;transform:translate(-50%,-50%)}.mw-visual-mini-seat:nth-child(3){top:70%;left:80%;transform:translate(-50%,-50%)}.mw-visual-mini-seat:nth-child(4){top:92%;left:50%;transform:translate(-50%,-50%)}.mw-visual-mini-seat:nth-child(5){top:70%;left:20%;transform:translate(-50%,-50%)}.mw-visual-mini-seat:nth-child(6){top:30%;left:18%;transform:translate(-50%,-50%)}.mw-visual-mini-seat.is-me{background:var(--accent);color:var(--accent-contrast);border-color:#0000}.mw-visual-chat{width:240px;height:160px;padding:14px;bottom:60px;right:-10px;transform:rotate(4deg)}.mw-visual-chat-msg{color:var(--muted);margin-top:8px;font-size:.78rem;line-height:1.5}.mw-visual-chat-msg strong{color:var(--accent);letter-spacing:.06em;margin-bottom:2px;font-size:.66rem;font-weight:700;display:block}.mw-marketing-section{border-top:1px solid var(--line);background:var(--surface-high);padding:80px 48px 48px}.mw-section-title{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:36px;display:flex}.mw-section-title h2{font-family:var(--font-title), serif;letter-spacing:-.02em;color:var(--text);font-size:2.2rem;font-weight:700}.mw-modes-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.mw-mode-card{background:var(--bg);border:1px solid var(--line);cursor:pointer;border-radius:22px;flex-direction:column;gap:10px;padding:28px;transition:transform .24s,box-shadow .24s,border-color .24s;display:flex}.mw-mode-card:hover{border-color:var(--accent);box-shadow:var(--shadow-elevated);transform:translateY(-4px)}.mw-mode-kicker{font-family:var(--font-title), serif;letter-spacing:.14em;color:var(--accent);font-size:.76rem;font-style:italic}.mw-mode-card h3{font-family:var(--font-title), serif;letter-spacing:-.01em;color:var(--text);font-size:1.45rem;font-weight:700}.mw-mode-card p{color:var(--muted);font-size:.84rem;line-height:1.6}.mw-mode-meta{color:var(--muted);letter-spacing:.04em;border-top:1px solid var(--line);gap:14px;margin-top:auto;padding-top:16px;font-size:.72rem;display:flex}.mw-mode-meta strong{color:var(--text);font-family:var(--font-title), serif;font-weight:700}.mw-web-footer{background:var(--surface-low);border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:40px 48px;font-size:.76rem;display:flex}.mw-web-footer-links{gap:24px;display:flex}.mw-entry-main{background:radial-gradient(circle at 18% 18%, rgb(var(--accent-rgb) / .08), transparent 28%), radial-gradient(circle at 92% 24%, rgb(var(--accent-2-rgb) / .08), transparent 32%), radial-gradient(circle at 74% 88%, rgb(var(--accent-3-rgb) / .07), transparent 34%);padding:64px 0 96px}.mw-entry-shell{grid-template-columns:minmax(0,1.22fr) minmax(320px,.58fr);align-items:start;gap:28px;width:min(1360px,100vw - 48px);margin:0 auto;display:grid}.mw-entry-panel{background:linear-gradient(135deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--surface-low-rgb) / calc(.98 * var(--panel-alpha))));border:1px solid rgb(var(--accent-rgb) / .14);box-shadow:0 28px 80px rgb(var(--surface-shadow) / .22);border-radius:22px;gap:28px;padding:42px 48px;display:grid;position:relative;overflow:hidden}.mw-entry-panel:before{content:"";background:radial-gradient(circle at 100% 0%, rgb(var(--accent-rgb) / .1), transparent 28%), radial-gradient(circle at 0% 100%, rgb(var(--accent-2-rgb) / .08), transparent 34%), linear-gradient(135deg, transparent 55%, rgb(var(--accent-3-rgb) / .06)), linear-gradient(180deg, rgb(var(--surface-bright-rgb) / .02), transparent 22%);pointer-events:none;position:absolute;inset:0}.mw-entry-panel.is-secondary{border-color:rgb(var(--accent-2-rgb) / .18)}.mw-entry-panel>*{z-index:1;position:relative}.mw-entry-panel.is-secondary{align-content:start;min-height:100%}.mw-entry-panel-copy{gap:12px;display:grid}.mw-entry-panel-copy h1,.mw-entry-panel-copy h2{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);font-weight:700;line-height:1.06}.mw-entry-panel-copy h1{font-size:clamp(2.5rem,4vw,3.6rem)}.mw-entry-panel-copy h2{font-size:clamp(2rem,3vw,3rem)}.mw-entry-panel-copy p{max-width:42rem;color:rgb(var(--text-rgb) / .72);font-size:1rem;line-height:1.68}.mw-entry-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}.mw-entry-field,.mw-entry-settings-column,.mw-entry-recommend{gap:10px;display:grid}.mw-entry-field label{color:rgb(var(--text-rgb) / .82);font-size:.9rem;font-weight:600}.mw-entry-input{background:rgb(var(--field-surface-rgb) / .92);border:1px solid rgb(var(--line-bright-rgb) / .16);height:56px;color:rgb(var(--text-rgb) / .96);border-radius:2px;padding:0 20px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.mw-entry-input:focus{border-color:rgb(var(--accent-rgb) / .52);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .14);outline:none}.mw-entry-code{font-family:var(--font-title), serif;letter-spacing:.32em;text-transform:uppercase;text-align:center;font-size:1.12rem;font-weight:700}.mw-entry-settings-card{border-top:1px solid rgb(var(--line-bright-rgb) / .08);border-bottom:1px solid rgb(var(--line-bright-rgb) / .08);grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:32px;padding:28px 0 20px;display:grid}.mw-entry-settings-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.mw-entry-settings-head label{color:rgb(var(--text-rgb) / .84);font-size:.94rem;font-weight:600}.mw-entry-settings-head strong{font-family:var(--font-title), serif;color:rgb(var(--accent-rgb) / .94);font-size:1.2rem}.mw-entry-range{width:100%;accent-color:var(--accent);cursor:pointer}.mw-entry-range-labels{color:rgb(var(--text-rgb) / .5);justify-content:space-between;font-size:.8rem;display:flex}.mw-entry-chip-row{flex-wrap:wrap;gap:10px;display:flex}.mw-entry-time-chip{border:1px solid rgb(var(--line-bright-rgb) / .16);background:rgb(var(--field-surface-rgb) / .78);min-width:72px;min-height:40px;color:rgb(var(--text-rgb) / .78);border-radius:999px;padding:0 16px;font-size:.86rem;font-weight:700;transition:border-color .18s,background .18s,color .18s}.mw-entry-time-chip.is-active,.mw-entry-time-chip[aria-pressed=true]{border-color:rgb(var(--accent-rgb) / .36);background:var(--accent);color:var(--accent-contrast)}.mw-entry-meta{color:rgb(var(--text-rgb) / .58);font-size:.82rem;line-height:1.6}.mw-entry-inline-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.mw-entry-inline-head h2{font-family:var(--font-title), serif;color:rgb(var(--text-rgb) / .92);font-size:1.36rem}.mw-entry-inline-head p{color:rgb(var(--text-rgb) / .6);margin-top:6px;font-size:.86rem}.mw-entry-inline-head>span{color:rgb(var(--accent-rgb) / .9);font-size:.86rem;font-weight:700}.mw-role-summary{flex-wrap:wrap;gap:10px;font-size:.84rem;display:flex}.mw-role-summary.is-inline{margin-top:6px}.mw-role-summary-item{background:rgb(var(--field-surface-rgb) / .86);border:1px solid rgb(var(--line-bright-rgb) / .12);color:rgb(var(--text-rgb) / .8);border-radius:2px;align-items:center;gap:10px;padding:8px 14px;display:inline-flex}.mw-role-summary-item[data-team=werewolf] strong{color:rgb(var(--team-werewolf-rgb) / .96)}.mw-role-summary-item[data-team=village] strong{color:rgb(var(--team-village-rgb) / .96)}.mw-role-summary-item[data-team=outsider] strong{color:rgb(var(--team-outsider-rgb) / .96)}.mw-entry-action-row{justify-content:flex-end;padding-top:8px;display:flex}.mw-entry-primary-action,.mw-entry-secondary-action{border:1px solid rgb(var(--line-bright-rgb) / .14);min-height:72px;font-family:var(--font-title), serif;letter-spacing:-.02em;color:rgb(var(--text-rgb) / .96);border-radius:2px;justify-content:center;align-items:center;gap:12px;padding:0 28px;font-size:1.12rem;font-weight:700;transition:transform .18s,border-color .18s,background .18s,opacity .18s;display:inline-flex}.mw-entry-primary-action{background:var(--accent);min-width:220px;color:var(--accent-contrast)}.mw-entry-secondary-action{background:rgb(var(--field-surface-rgb) / .9);width:100%;color:rgb(var(--text-rgb) / .9);margin-top:auto}.mw-entry-primary-action:hover:not(:disabled),.mw-entry-secondary-action:hover:not(:disabled){border-color:rgb(var(--accent-rgb) / .28);transform:translateY(-1px)}.mw-entry-primary-action:disabled,.mw-entry-secondary-action:disabled{opacity:.54;cursor:not-allowed}.mw-entry-resume{border-top:1px solid rgb(var(--line-bright-rgb) / .08);gap:14px;margin-top:18px;padding-top:18px;display:grid}.mw-entry-resume-copy span{color:rgb(var(--text-rgb) / .6);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;display:block}.mw-entry-resume-copy strong{font-family:var(--font-title), serif;color:rgb(var(--text-rgb) / .92);margin-top:2px;font-size:1rem;display:block}.mw-entry-resume-copy p{color:rgb(var(--text-rgb) / .6);margin-top:2px;font-size:.74rem}.mw-entry-resume-actions{gap:8px;display:flex}.mw-entry-panel.is-secondary .mw-entry-field{margin-top:4px}.mw-entry-panel.is-secondary .mw-entry-input{height:62px}.mw-entry-panel.is-secondary .mw-entry-input.mw-entry-code{letter-spacing:.4em}.mw-center-roster-panel{border:1px solid var(--line);background:radial-gradient(circle at top right, rgb(var(--accent-rgb) / .14), transparent 38%), linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha))));box-shadow:var(--shadow);border-radius:22px;gap:14px;padding:18px 20px 20px;display:grid}.mw-center-roster-head{justify-content:space-between;align-items:center;gap:12px;min-height:32px;display:flex}.mw-center-roster-kicker,.mw-center-roster-count{letter-spacing:.16em;text-transform:uppercase;color:rgb(var(--text-rgb) / .62);font-size:.7rem;font-weight:700}.mw-deduction-note-panel{gap:8px;display:grid}.mw-deduction-note-label{letter-spacing:.12em;text-transform:uppercase;color:rgb(var(--text-rgb) / .6);font-size:.72rem;font-weight:700}.mw-deduction-note-input{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.9 * var(--panel-alpha)));width:100%;min-height:108px;color:var(--text);font:inherit;resize:vertical;border-radius:16px;padding:12px 14px;font-size:.88rem;line-height:1.55}.mw-deduction-note-input:focus{border-color:rgb(var(--accent-rgb) / .54);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .12);outline:none}.mw-deduction-role-list{gap:12px;display:grid}.mw-deduction-card{border:1px solid rgb(var(--accent-rgb) / .14);background:linear-gradient(180deg, rgb(var(--surface-bright-rgb) / calc(.9 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.88 * var(--panel-alpha))));border-radius:18px;gap:12px;padding:12px;transition:border-color .16s,box-shadow .16s,background .16s,transform .16s;display:grid}.mw-deduction-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.mw-deduction-role-main{gap:3px;min-width:0;display:grid}.mw-deduction-role-main strong{color:var(--text);font-size:.9rem;line-height:1.2}.mw-deduction-role-meta{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.mw-deduction-role-summary{justify-content:flex-end;align-items:center;display:inline-flex}.mw-deduction-summary-empty{color:var(--muted);font-size:.68rem}.mw-deduction-player-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;display:grid}.mw-deduction-player-chip{border:1px solid var(--line);background:rgb(var(--field-surface-rgb) / calc(.88 * var(--panel-alpha)));min-height:54px;color:var(--text);font:inherit;cursor:pointer;text-align:left;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:transform .12s,border-color .12s,background .12s,box-shadow .12s;display:flex}.mw-deduction-player-chip:hover{border-color:rgb(var(--accent-rgb) / .32);transform:translateY(-1px)}.mw-deduction-player-chip:focus-visible{border-color:rgb(var(--accent-rgb) / .56);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .16);outline:none}.mw-deduction-player-chip-copy{gap:3px;min-width:0;display:grid}.mw-deduction-player-chip-name{color:var(--text);font-size:.82rem;font-weight:600;line-height:1.2}.mw-deduction-player-chip-meta{color:var(--muted);font-size:.68rem;line-height:1.3}.mw-deduction-player-chip-state{border:1px solid rgb(var(--accent-rgb) / .18);background:rgb(var(--surface-bright-rgb) / .74);width:28px;height:24px;color:rgb(var(--text-rgb) / .28);letter-spacing:.02em;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.76rem;font-weight:800;display:inline-flex}.mw-deduction-player-chip[data-mark=o]{background:rgb(var(--accent-rgb) / .12);border-color:rgb(var(--accent-rgb) / .52)}.mw-deduction-player-chip[data-mark=x]{background:rgb(var(--danger-rgb) / .08);border-color:rgb(var(--danger-rgb) / .3)}.mw-deduction-player-chip-state[data-mark=empty]{color:#0000}.mw-deduction-player-chip-state[data-mark=o]{border-color:rgb(var(--accent-rgb) / .54);background:rgb(var(--accent-rgb) / .16);color:var(--accent)}.mw-deduction-player-chip-state[data-mark=x]{border-color:rgb(var(--danger-rgb) / .38);background:rgb(var(--danger-rgb) / .12);color:rgb(var(--danger-rgb) / 1)}.mw-deduction-player-chip.is-highlighted{border-color:rgb(var(--accent-rgb) / .48);box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .24)}.mw-deduction-player-chip.is-dead{opacity:.58}.mw-deduction-player-chip.is-offline{filter:grayscale(.45)}.mw-center-action-stage{align-content:start;gap:16px;display:grid}.mw-center-action-stage>*{width:100%}.mw-center-passive-copy{text-align:center;border:1px dashed rgb(var(--accent-rgb) / .18);background:rgb(var(--surface-high-rgb) / calc(.74 * var(--panel-alpha)));min-height:180px;color:rgb(var(--text-rgb) / .7);border-radius:18px;place-items:center;padding:24px;display:grid}.mw-night-cue-panel{min-width:min(720px,100vw - 48px)}.mw-role-flip{perspective:1600px;outline:none;min-height:280px;position:relative}.mw-role-flip-inner{min-height:280px;transform-style:preserve-3d;transition:transform .52s cubic-bezier(.22,1,.36,1);position:relative}.mw-role-flip:hover .mw-role-flip-inner,.mw-role-flip:focus-visible .mw-role-flip-inner,.mw-role-flip.is-flipped .mw-role-flip-inner{transform:rotateY(180deg)}.mw-role-flip{cursor:pointer}.mw-role-face{backface-visibility:hidden;box-shadow:var(--shadow-elevated);border:1px solid rgb(var(--accent-rgb) / .22);border-radius:24px;align-content:space-between;gap:18px;padding:18px 20px 20px;display:grid;position:absolute;inset:0;overflow:hidden}.mw-role-face:before{content:none}.mw-role-face-front{background:radial-gradient(circle at top, rgb(var(--accent-rgb) / .22), transparent 52%), linear-gradient(180deg, rgb(var(--surface-bright-rgb) / calc(.98 * var(--panel-alpha))), rgb(var(--surface-high-rgb) / calc(.94 * var(--panel-alpha))));text-align:center;justify-items:center}.mw-role-front-kicker{letter-spacing:.22em;text-transform:uppercase;min-height:28px;color:var(--brand);align-items:center;font-size:.7rem;font-weight:700;display:inline-flex}.mw-role-front-glyph{font-family:var(--font-title), serif;letter-spacing:.16em;color:rgb(var(--accent-rgb) / .9);align-self:center;font-size:4.4rem;line-height:1}.mw-role-front-copy{color:rgb(var(--text-rgb) / .74);font-size:.82rem;line-height:1.6}.mw-role-face-back{background:radial-gradient(circle at top left, rgb(var(--accent-rgb) / .26), transparent 44%), linear-gradient(180deg, rgb(var(--surface-bright-rgb) / calc(.98 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.95 * var(--panel-alpha))));transform:rotateY(180deg)}.mw-role-back-head{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.mw-role-back-team,.mw-role-back-badge{background:rgb(var(--accent-rgb) / .16);min-height:28px;color:var(--text);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 10px;font-size:.68rem;font-weight:700;display:inline-flex}.mw-role-back-badge{font-family:var(--font-title), serif}.mw-role-back-name{font-family:var(--font-title), serif;letter-spacing:-.04em;color:var(--title-strong);align-self:end;font-size:2rem;line-height:1.04}.mw-role-back-copy{color:rgb(var(--text-rgb) / .82);font-size:.88rem;line-height:1.7}.mw-role-flip.is-hidden .mw-role-face-back{background:radial-gradient(circle at top left, rgb(var(--accent-rgb) / .18), transparent 42%), linear-gradient(180deg, rgb(var(--surface-high-rgb) / calc(.98 * var(--panel-alpha))), rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha))))}.mw-pane-block{background:var(--surface-high);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:16px}.mw-pane-block h4{font-family:var(--font-title), serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:.68rem;font-weight:700}.mw-action-card{background:var(--surface-high);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;flex-direction:column;gap:12px;padding:18px;display:flex}.mw-action-phase-label{font-family:var(--font-title), serif;letter-spacing:.12em;color:var(--accent);text-transform:uppercase;align-items:center;gap:10px;font-size:.68rem;font-weight:700;display:flex}.mw-action-phase-label:after{content:"";background:linear-gradient(90deg, rgb(var(--accent-rgb) / .3), transparent);flex:1;height:1px}.mw-action-countdown{font-family:var(--font-title), serif;letter-spacing:-.03em;color:var(--text);font-size:2rem;font-weight:700;line-height:1}.mw-action-card p{color:var(--muted);font-size:.82rem;line-height:1.6}.mw-action-report{gap:8px;display:grid}.mw-action-report strong{font-family:var(--font-title), serif;color:var(--text);font-size:1.1rem}.mw-left-reports-panel{min-height:180px;box-shadow:none;background:0 0;border-color:#0000;padding-left:0;padding-right:0}.mw-left-reports-panel h2{margin-bottom:10px}.mw-left-reports-panel .report-list{gap:8px;margin-top:10px}.mw-left-reports-panel .report-item{border-radius:12px;gap:8px;padding:10px 12px}.mw-left-reports-panel .report-text{font-size:.8rem;line-height:1.5}.mw-left-reports-panel .report-text h3{font-size:.82rem}.mw-pane-chat{flex:auto;height:100%;min-height:0;display:flex}.mw-pane-chat .chat-panel{border-radius:18px;flex:auto;height:100%;min-height:0;max-height:none}.mw-pane-chat .chat-panel-header{min-height:60px;padding:18px 18px 14px}.mw-room-topbar{justify-content:space-between;align-items:center;gap:18px;min-height:84px;display:flex}.mw-gt-left,.mw-gt-center,.mw-gt-right{align-items:center;gap:12px;display:flex}.mw-gt-left{min-width:0}.mw-gt-brand{font-family:var(--font-title), serif;letter-spacing:.14em;color:var(--accent);font-size:.9rem;font-style:italic;font-weight:600}.mw-gt-phase,.mw-gt-code,.mw-gt-timer,.mw-gt-me{background:var(--surface-high);border:1px solid var(--line)}.mw-gt-phase,.mw-gt-code{border-radius:999px;padding:6px 12px;font-size:.74rem;font-weight:700}.mw-gt-phase{color:var(--muted);letter-spacing:.14em;text-transform:uppercase}.mw-gt-code{font-family:var(--font-title), serif;letter-spacing:.24em;color:var(--text)}.mw-gt-center{flex:1;justify-content:center}.mw-gt-timer{font-family:var(--font-title), serif;color:var(--text);letter-spacing:.08em;border-radius:999px;padding:6px 14px;font-size:.95rem;font-weight:700}.mw-gt-timer-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .25);border-radius:999px}.mw-gt-right{justify-content:flex-end}.mw-gt-me{border-radius:999px;align-items:center;gap:10px;padding:4px 14px 4px 4px;display:flex}.mw-gt-me-avatar{background:var(--accent);width:32px;height:32px;color:var(--accent-contrast);font-family:var(--font-title), serif;border-radius:999px;place-items:center;font-size:.9rem;font-weight:700;display:grid}.mw-gt-me-name{font-size:.82rem;font-weight:600}.mw-gt-me-role{color:var(--accent);font-size:.7rem;font-family:var(--font-title), serif;letter-spacing:.06em;font-weight:700}.mw-icon-btn,.mw-room-exit,.room-theme-toggle.theme-toggle-inline{background:var(--surface-high);border:1px solid var(--line);width:34px;height:34px;min-height:34px;color:var(--muted);border-radius:10px;justify-content:center;align-items:center;padding:0;transition:background .18s,color .18s,transform .18s;display:inline-flex}.mw-icon-btn:hover,.mw-room-exit:hover,.room-theme-toggle.theme-toggle-inline:hover{background:var(--surface-bright);color:var(--text);transform:translateY(-1px)}.mw-room-exit{width:auto;padding:0 14px;font-size:.8rem;font-weight:600}.room-theme-toggle .theme-toggle-label{display:none}.mw-night-modal-backdrop{z-index:340;background:rgb(var(--overlay-scrim-rgb) / var(--overlay-opacity));-webkit-backdrop-filter:blur(10px);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.mw-night-modal{width:min(760px,100vw - 48px)}.night-public-turn-overlay{z-index:300;pointer-events:none;justify-content:center;padding:0 24px;display:flex;position:fixed;inset:160px 0 auto}.night-public-turn-card{border:1px solid rgb(var(--accent-rgb) / .22);background:rgb(var(--modal-surface-rgb) / calc(.9 * var(--panel-alpha)));-webkit-backdrop-filter:blur(16px);min-width:min(520px,100vw - 48px);max-width:min(520px,100vw - 48px);box-shadow:0 22px 44px rgb(var(--surface-shadow) / .18);text-align:center;border-radius:20px;justify-items:center;gap:10px;padding:20px 24px 18px;display:grid}.night-public-turn-step{color:rgb(var(--accent-rgb) / .82);letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-weight:700}.night-public-turn-icon{background:rgb(var(--surface-bright-rgb) / calc(.8 * var(--panel-alpha)));border:1px solid var(--line);width:54px;height:54px;color:var(--brand);border-radius:999px;justify-content:center;align-items:center;font-size:1.6rem;display:inline-flex}.night-public-turn-card h2{font-family:var(--font-title), serif;letter-spacing:-.05em;color:var(--title-strong);font-size:clamp(1.8rem,4vw,2.4rem);line-height:1.04}.night-public-turn-card p{color:var(--copy-strong);margin:0;font-size:.92rem;line-height:1.65}.night-public-turn-loading{align-items:center;gap:8px;margin-top:2px;display:inline-flex}.night-public-turn-loading span{background:rgb(var(--accent-rgb) / .82);border-radius:999px;width:8px;height:8px;animation:1.2s ease-in-out infinite night-public-turn-pulse}.night-public-turn-loading span:nth-child(2){animation-delay:.16s}.night-public-turn-loading span:nth-child(3){animation-delay:.32s}@keyframes night-public-turn-pulse{0%,to{opacity:.32;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@media (max-width:1100px){.mw-marketing-nav,.mw-hero,.mw-marketing-section,.mw-web-footer{padding-left:24px;padding-right:24px}.mw-hero,.mw-entry-scene,.mw-modes-grid{grid-template-columns:1fr}.mw-hero-visual{height:380px}.mw-room-topbar{flex-wrap:wrap;padding:10px 0}.mw-gt-center{order:3;justify-content:flex-start;width:100%}.room-phase-head{flex-direction:column;align-items:stretch}.room-phase-timer{width:100%;min-width:0}.mw-deduction-player-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.night-public-turn-overlay{inset:194px 0 auto}}@media (max-width:880px){.mw-marketing-nav{flex-wrap:wrap;justify-content:flex-start}.mw-marketing-links,.mw-marketing-cta,.mw-hero-facts,.mw-web-footer,.mw-entry-panel-head{flex-wrap:wrap}.night-public-turn-overlay{padding:0 16px;inset:176px 0 auto}.night-public-turn-card{min-width:0;max-width:min(100vw - 32px,100%);padding:18px 18px 16px}.mw-entry-resume{flex-direction:column;align-items:stretch}.mw-entry-resume-actions{flex-wrap:wrap}.mw-hero-title{font-size:clamp(2.6rem,11vw,4rem)}.mw-hero-facts{gap:18px}.mw-table-surface{width:min(520px,100%)}.mw-game-layout{grid-template-columns:1fr;height:auto;min-height:auto;max-height:none}.mw-pane-left,.mw-pane-right{order:2;height:auto;max-height:none;position:static;overflow:visible}.mw-pane-table{order:1;height:auto;max-height:none;overflow:visible}.mw-pane-column-scroll{padding-right:0;overflow:visible}.mw-table-surface-stage{min-height:560px}.mw-seat-node{width:86px}.mw-seat-card{width:74px;height:96px}.mw-gt-me,.mw-pane-right{display:none}.room-wrapper:not([data-phase=lobby]) .room-main{height:auto;padding:24px 0 80px;overflow-y:auto}.room-phase-actions{flex-direction:column;align-items:stretch}.room-phase-actions>*{width:100%}.spy-mission-intel-head,.spy-mission-intel-grid,.spy-mission-comms-grid,.spy-mission-command-row{grid-template-columns:1fr}.spy-mission-intel-head{display:grid}.spy-mission-briefing-badge,.spy-mission-comms-signal{justify-items:start}.spy-mission-intel-card,.spy-mission-intel-card.is-location{min-height:92px}.spy-mission-comms-card{min-height:auto}.mw-deduction-note-input{min-height:96px}.mw-deduction-card{padding:12px}.mw-deduction-player-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.mw-deduction-player-chip{min-height:48px;padding:9px 10px}.mw-deduction-card-head{flex-direction:column;align-items:flex-start}.mw-deduction-role-summary{justify-content:flex-start}}.tichu-layout{--accent:#ffd75e;--accent-rgb:255 215 94;--accent-contrast:#241b08;--accent-grad:#ffd75e;--accent-2:#7bdff7;--accent-2-rgb:123 223 247;--accent-2-grad:#7bdff7;--tichu-card-w:clamp(42px, min(6.5cqw, 7.5cqh), 72px);--tichu-card-h:calc(var(--tichu-card-w) * 1.4);--tichu-hand-card-min:clamp(42px, min(6.5cqw, 7.5cqh), 72px);transition:background .18s,box-shadow .18s}.tichu-layout-focused{grid-template-columns:minmax(0,1fr) minmax(300px,340px);width:100%}.tichu-layout-focused .mw-pane-table{width:100%;container:tichu-left-panel/size}.tichu-layout-focused .mw-pane-center-scroll{align-items:stretch}.tichu-layout-focused .mw-center-stage-shell{flex:auto;grid-auto-rows:min-content;align-content:stretch;gap:clamp(8px,1.2svh,14px);width:100%;max-width:min(1120px,100%);height:100%;min-height:100%;display:grid}.tichu-layout-focused .tichu-stage-shell.is-play{grid-template-rows:auto minmax(0,1fr);gap:clamp(22px,3.2svh,36px)}.tichu-stage-header{gap:8px;display:grid}.tichu-layout-focused .tichu-stage-header,.tichu-layout-focused .tichu-table-panel,.tichu-layout-focused .tichu-action-panel{justify-self:center;width:100%;max-width:min(1040px,100%)}.tichu-layout-focused .tichu-table-panel{--tichu-bottom-play-reserve:clamp(118px, min(24cqw, 24cqh), 190px);--tichu-seat-table-gap:clamp(0px, min(4cqw, 4cqh), 20px);--tichu-side-seat-reserve:clamp(64px, min(14cqw, 14cqh), 138px);--tichu-top-seat-reserve:clamp(58px, min(11cqw, 12cqh), 112px);grid-template-columns:minmax(0,1fr);place-items:center;min-height:clamp(360px,58svh,680px);padding:clamp(10px,1.6svh,18px);overflow:visible;container:tichu-table-panel/size}.tichu-layout-focused .tichu-table-panel.has-play-shelf{grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:clamp(1px,.25svh,4px);height:100%;min-height:520px;margin-top:0}.tichu-layout-focused .tichu-table-center{margin-top:0}.tichu-table-panel .tichu-square-table{grid-area:1/1;align-self:center}.tichu-table-panel .tichu-play-shelf{grid-area:2/1;align-self:end}.tichu-table-panel.has-play-shelf .tichu-square-table{--tichu-table-height:clamp(280px, calc(100cqh - var(--tichu-top-seat-reserve) - 20px - var(--tichu-bottom-play-reserve)), 620px);--tichu-table-width:min(100cqw, clamp(260px, min(96cqw, calc(var(--tichu-table-height) * 1.62)), 920px));height:auto;max-height:none}.tichu-layout-focused .tichu-score-header{grid-template-columns:minmax(92px,auto) minmax(0,1fr);gap:8px;min-height:0;padding:clamp(7px,.9svh,10px)}.tichu-layout-focused .tichu-score-header .tichu-team-score{gap:3px;min-height:38px;padding:6px 8px}.tichu-layout-focused .tichu-action-panel{gap:clamp(8px,1svh,12px);padding:clamp(10px,1.2svh,14px)}.tichu-layout-focused .tichu-action-panel .room-phase-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.tichu-layout-focused .tichu-action-panel .room-phase-head h2{font-size:clamp(1.2rem,1.7vw,1.55rem)}.tichu-layout-focused .tichu-action-panel .helper-text{margin-top:4px}.tichu-layout-focused .tichu-risk-chips span,.tichu-layout-focused .tichu-combo-badge{padding:6px 8px;font-size:.78rem}.tichu-layout-focused .room-phase-actions{gap:8px}.tichu-play-shelf{justify-self:stretch;gap:clamp(3px,.45svh,6px);width:100%;min-width:0;max-width:100%;max-height:100%;display:grid;overflow:hidden}.tichu-play-command-bar{grid-template-columns:minmax(72px,auto) minmax(0,132px) minmax(0,1fr);grid-template-areas:"turn combo actions";align-items:center;gap:6px;min-width:0;display:grid}.tichu-turn-badge{background:rgb(var(--surface-high-rgb) / .78);border:1px solid rgb(var(--line-rgb) / .24);border-radius:8px;grid-area:turn;place-items:center;gap:1px;min-width:0;min-height:32px;padding:5px 8px;display:grid}.tichu-turn-badge.is-mine{background:rgb(var(--accent-rgb) / .22);border-color:rgb(var(--accent-rgb) / .62);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .14)}.tichu-turn-badge span{color:var(--muted);font-size:.58rem;font-weight:900;line-height:1}.tichu-turn-badge strong{color:var(--title-strong);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;font-weight:950;line-height:1.05;overflow:hidden}.tichu-turn-badge.is-mine strong{color:var(--accent)}.tichu-play-command-bar .tichu-combo-badge{text-overflow:ellipsis;white-space:nowrap;grid-area:combo;justify-content:center;justify-self:stretch;align-items:center;min-width:0;max-width:min(100%,132px);min-height:32px;padding:5px 8px;font-size:.7rem;display:inline-flex;overflow:hidden}.tichu-play-command-bar .tichu-play-actions{grid-area:actions;min-width:0;margin-top:0}.tichu-play-shelf .tichu-hand{margin-top:0}.tichu-grand-command{place-items:end;gap:7px;display:grid}.tichu-grand-actions{grid-template-columns:repeat(2,minmax(0,auto));justify-content:end;gap:7px;display:grid}.tichu-grand-actions>*{white-space:nowrap;min-height:38px;padding:0 12px}.tichu-layout-focused .tichu-trick-slot{min-height:148px;padding:10px}.tichu-layout-focused .tichu-hand-overview .tichu-card{max-width:min(100%, var(--tichu-card-w))}.tichu-stage-shell{gap:16px}.tichu-side-panel,.tichu-table-panel,.tichu-action-panel,.tichu-result-panel{border-color:rgb(var(--accent-rgb) / .2)}.tichu-action-panel{overflow:visible}.tichu-score-strip{background:rgb(var(--surface-high-rgb) / .72);border:1px solid rgb(var(--accent-rgb) / .18);border-radius:12px;grid-template-columns:minmax(140px,.55fr) minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;display:grid}.tichu-score-title{gap:2px;display:grid}.tichu-score-title span{color:var(--muted);font-size:.76rem;font-weight:850}.tichu-score-title strong{color:var(--title-strong);font-size:.98rem}.tichu-score-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.tichu-score-header .tichu-score-title{grid-template-columns:auto;align-items:center;gap:4px 8px}.tichu-score-header .tichu-score-title span{font-size:.68rem;line-height:1}.tichu-score-header .tichu-score-title strong{white-space:nowrap;font-size:.82rem;line-height:1.1}.tichu-score-header .tichu-score-items,.tichu-score-header .tichu-team-score-line{gap:6px}.tichu-score-header .tichu-team-score span,.tichu-score-header .tichu-result-score-card span{font-size:.68rem}.tichu-score-header .tichu-team-score strong{font-size:.9rem}.tichu-score-header .tichu-team-members{gap:6px}.tichu-score-header .tichu-team-members b{font-size:.66rem}.tichu-score-header .tichu-team-members em{font-size:.7rem}.tichu-lobby-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.tichu-lobby-option-block{background:rgb(var(--surface-low-rgb) / .68);border:1px solid rgb(var(--accent-rgb) / .16);border-radius:8px;gap:12px;padding:14px;display:grid}.tichu-team-preference-list{gap:8px;display:grid}.tichu-team-preference-row{background:rgb(var(--surface-high-rgb) / .54);border:1px solid rgb(var(--line-rgb) / .18);border-radius:8px;justify-content:space-between;align-items:center;min-height:38px;padding:8px 10px;display:flex}.tichu-team-preference-row span{color:var(--title-strong);font-weight:850}.tichu-team-preference-row strong{color:var(--accent);font-size:.82rem}.tichu-team-score{background:rgb(var(--surface-low-rgb) / .74);border:1px solid rgb(var(--accent-rgb) / .16);border-radius:8px;align-items:stretch;gap:6px;min-height:56px;padding:10px 12px;display:grid}.tichu-team-score.is-jade{border-color:rgb(var(--accent-2-rgb) / .28)}.tichu-team-score.is-indigo{border-color:rgb(var(--accent-4-rgb) / .28)}.tichu-team-score.is-viewer-team{background:rgb(var(--accent-2-rgb) / .12)}.tichu-team-score.is-opponent-team{background:rgb(var(--accent-4-rgb) / .1)}.tichu-team-score-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.tichu-team-score span,.tichu-result-score-card span{color:var(--muted);font-size:.82rem;font-weight:800}.tichu-team-score strong{color:var(--title-strong);font-size:1.05rem}.tichu-team-members{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.tichu-team-members b{color:var(--muted);flex:none;font-size:.72rem;font-weight:900}.tichu-team-members em{color:var(--copy-strong);text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;font-style:normal;font-weight:850;overflow:hidden}.tichu-announcement-stack{gap:8px;display:grid}.tichu-announcement{background:rgb(var(--surface-high-rgb) / .86);border:1px solid rgb(var(--accent-rgb) / .36);box-shadow:0 12px 28px rgb(var(--surface-shadow) / .16);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 12px;min-height:48px;padding:10px 14px;display:grid}.tichu-announcement span{background:rgb(var(--accent-rgb) / .18);border:1px solid rgb(var(--accent-rgb) / .28);color:var(--accent);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:950}.tichu-announcement strong{color:var(--title-strong);min-width:0;font-size:.94rem;font-weight:950}.tichu-announcement em{color:var(--copy-strong);text-align:right;font-size:.78rem;font-style:normal;font-weight:850}.tichu-announcement.is-dog{background:rgb(var(--accent-2-rgb) / .12);border-color:rgb(var(--accent-2-rgb) / .4)}.tichu-announcement.is-dog span{background:rgb(var(--accent-2-rgb) / .16);border-color:rgb(var(--accent-2-rgb) / .32);color:var(--accent-2)}.tichu-announcement.is-grand-tichu{background:rgb(var(--danger-rgb) / .12);border-color:rgb(var(--danger-rgb) / .42)}.tichu-announcement.is-grand-tichu span{background:rgb(var(--danger-rgb) / .16);border-color:rgb(var(--danger-rgb) / .32);color:var(--danger)}.tichu-announcement.is-tichu{background:rgb(var(--accent-4-rgb) / .12);border-color:rgb(var(--accent-4-rgb) / .42)}.tichu-announcement.is-tichu span{background:rgb(var(--accent-4-rgb) / .16);border-color:rgb(var(--accent-4-rgb) / .32);color:var(--accent-4)}.tichu-table-panel{grid-template-rows:minmax(0,1fr);gap:clamp(8px,1.2svh,14px);min-height:0;display:grid;position:relative;overflow:visible}.tichu-table-panel.has-grand-tichu-call,.tichu-table-panel.has-small-tichu-call{border-width:2px;transition:background .18s,border-color .18s,box-shadow .18s}.tichu-table-panel.is-latest-grand-tichu{background:rgb(var(--danger-rgb) / .28);border-color:rgb(var(--danger-rgb) / .92);box-shadow:0 0 0 3px rgb(var(--danger-rgb) / .24), 0 0 56px rgb(var(--danger-rgb) / .52), 0 24px 64px rgb(var(--danger-rgb) / .16)}.tichu-table-panel.is-latest-tichu{background:rgb(var(--accent-2-rgb) / .28);border-color:rgb(var(--accent-2-rgb) / .92);box-shadow:0 0 0 3px rgb(var(--accent-2-rgb) / .24), 0 0 56px rgb(var(--accent-2-rgb) / .5), 0 24px 64px rgb(var(--accent-2-rgb) / .14)}.tichu-table-panel.is-latest-grand-tichu:after,.tichu-table-panel.is-latest-tichu:after{border-radius:inherit;content:"";opacity:.34;pointer-events:none;border:2px solid;position:absolute;inset:7px}.tichu-table-panel.is-latest-grand-tichu:after{color:var(--danger)}.tichu-table-panel.is-latest-tichu:after{color:var(--accent-2)}.tichu-table-panel.is-compact{min-height:0}.tichu-player-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tichu-player-chip{background:rgb(var(--surface-low-rgb) / .76);border:1px solid rgb(var(--line-rgb) / .24);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:46px;padding:9px 11px;display:grid}.tichu-player-chip.is-jade{border-left:4px solid rgb(var(--accent-2-rgb) / .86)}.tichu-player-chip.is-indigo{border-left:4px solid rgb(var(--accent-4-rgb) / .82)}.tichu-player-chip.is-turn{border-color:rgb(var(--accent-rgb) / .62);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .14)}.tichu-player-chip.is-self,.tichu-player-chip.is-teammate{background:rgb(var(--accent-2-rgb) / .12)}.tichu-player-chip.is-partner{border-color:rgb(var(--accent-2-rgb) / .5)}.tichu-player-chip.is-called,.tichu-trick-slot.is-called{background:rgb(var(--accent-rgb) / .12);border-color:rgb(var(--accent-rgb) / .58);box-shadow:0 0 0 2px rgb(var(--accent-rgb) / .12)}.tichu-player-chip.is-opponent{background:rgb(var(--accent-4-rgb) / .1)}.tichu-player-chip-main{gap:2px;min-width:0;display:grid}.tichu-player-chip-main strong{color:var(--title-strong);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:900;overflow:hidden}.tichu-player-card-count{color:var(--accent);font-size:.86rem;font-weight:850}.tichu-player-team-badge{background:rgb(var(--surface-high-rgb) / .78);border:1px solid rgb(var(--line-rgb) / .2);white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:5px;min-height:26px;padding:5px 8px;display:inline-flex}.tichu-player-chip.is-self .tichu-player-team-badge,.tichu-player-chip.is-teammate .tichu-player-team-badge{border-color:rgb(var(--accent-2-rgb) / .38)}.tichu-player-chip.is-opponent .tichu-player-team-badge{border-color:rgb(var(--accent-4-rgb) / .34)}.tichu-player-team-badge em{color:var(--title-strong);font-size:.72rem;font-style:normal;font-weight:950}.tichu-player-team-badge span{color:var(--muted);font-size:.68rem;font-weight:850}.tichu-call-badge{background:rgb(var(--accent-rgb) / .18);border:1px solid rgb(var(--accent-rgb) / .32);color:var(--accent);white-space:nowrap;border-radius:999px;place-self:start;padding:6px 8px;font-size:.68rem;font-weight:950;line-height:1}.tichu-player-chip .tichu-call-badge{grid-column:1/-1}.tichu-call-badge.is-grand-tichu{background:rgb(var(--danger-rgb) / .16);border-color:rgb(var(--danger-rgb) / .36);color:var(--danger)}.tichu-call-badge.is-tichu{background:rgb(var(--accent-4-rgb) / .16);border-color:rgb(var(--accent-4-rgb) / .36);color:var(--accent-4)}.tichu-table-center{z-index:1;align-self:center;justify-items:center;gap:14px;min-width:min(720px,100%);display:grid;position:relative}.tichu-trick-board{align-self:stretch;width:100%}.tichu-square-table{--tichu-table-height:clamp(260px, min(72cqh, calc(100cqw * .62)), 620px);--tichu-table-width:min(100cqw, clamp(320px, min(94cqw, calc(var(--tichu-table-height) * 1.55)), 920px));justify-content:center;place-items:center;gap:clamp(8px,1.1svh,12px);width:100%;min-width:0;height:auto;max-height:none}.tichu-table-arena{height:var(--tichu-table-height);max-width:100%;min-height:0;width:var(--tichu-table-width);justify-self:center;position:relative}.tichu-table-panel.has-play-shelf .tichu-table-arena,.spectator-layout-tichu .tichu-table-arena{height:var(--tichu-table-height);max-height:none;min-height:var(--tichu-table-height)}.tichu-table-arena:before{background:rgb(var(--surface-high-rgb) / .82);border:1px solid rgb(var(--accent-rgb) / .22);box-shadow:inset 0 0 0 clamp(8px, 1.5vw, 14px) rgb(var(--surface-high-rgb) / .26), 0 18px 40px rgb(var(--surface-shadow) / .16);content:"";inset:calc(var(--tichu-top-seat-reserve) + var(--tichu-seat-table-gap)) calc(var(--tichu-side-seat-reserve) + var(--tichu-seat-table-gap));border-radius:clamp(12px,2vw,22px);position:absolute}@container tichu-table-panel (max-aspect-ratio:1){.tichu-square-table{--tichu-side-seat-reserve:clamp(36px, min(9cqw, 10cqh), 74px);--tichu-table-width:min(100cqw, clamp(220px, 96cqw, 620px))}}.tichu-trick-pile{z-index:3;grid-template-rows:minmax(0,auto) auto;place-items:center;gap:8px;min-width:min(360px,58%);min-height:clamp(112px,min(28cqw,24cqh),192px);padding:16px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.tichu-trick-pile>.tichu-trick-combo{color:var(--title-strong);overflow-wrap:anywhere;text-align:center;white-space:normal;z-index:45;grid-area:2/1;justify-self:center;max-width:min(100%,220px);min-height:0;padding-top:2px;font-size:clamp(.72rem,.95vw,.82rem);font-weight:850;line-height:1.2}.tichu-trick-layer{--tichu-trick-layer-index:0;background:rgb(var(--surface-high-rgb) / .9);border:1px solid rgb(var(--accent-rgb) / .22);box-shadow:0 14px 32px rgb(var(--surface-shadow) / .2);max-width:min(360px,70cqw);transform:translate(calc((var(--tichu-trick-layer-index) - 1) * 9px), calc((var(--tichu-trick-layer-index) - 1) * -7px)) rotate(calc((var(--tichu-trick-layer-index) - 1) * 2.4deg));z-index:calc(12 + var(--tichu-trick-layer-index));border-radius:10px;grid-area:1/1;place-items:center;gap:7px;padding:10px 12px;animation:.22s both tichu-cover-in;display:grid}.tichu-trick-layer[data-layer-state=winning]{border-color:rgb(var(--accent-rgb) / .5);box-shadow:0 18px 36px rgb(var(--surface-shadow) / .24), 0 0 0 3px rgb(var(--accent-rgb) / .14);z-index:40}@keyframes tichu-cover-in{0%{opacity:.72;transform:translate(calc((var(--tichu-trick-layer-index) - 1) * 9px), calc((var(--tichu-trick-layer-index) - 1) * -7px - 10px)) rotate(calc((var(--tichu-trick-layer-index) - 1) * 2.4deg))}}.tichu-table-seat{z-index:4;width:clamp(68px,min(11cqw,12cqh),112px);position:absolute}.tichu-table-seat[data-tichu-position=bottom]{bottom:clamp(10px,3.4%,22px);left:50%;transform:translate(-50%)}.tichu-table-seat[data-tichu-position=top]{top:clamp(6px,2.4%,16px);left:50%;transform:translate(-50%)}.tichu-table-seat[data-tichu-position=left]{top:50%;left:clamp(6px,3%,18px);transform:translateY(-50%)}.tichu-table-seat[data-tichu-position=right]{top:50%;right:clamp(6px,3%,18px);transform:translateY(-50%)}.tichu-table-seat-card{background:rgb(var(--surface-high-rgb) / .96);border:1px solid rgb(var(--line-bright-rgb) / .34);box-shadow:0 12px 26px rgb(var(--surface-shadow) / .18), inset 0 1px 0 #ffffff1f;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:clamp(50px,7.4svh,68px);padding:7px 9px;display:grid;position:relative}.tichu-table-seat.is-turn .tichu-table-seat-card{background:rgb(var(--accent-rgb) / .22);border-color:rgb(var(--accent-rgb) / .62);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .16), 0 0 28px rgb(var(--accent-rgb) / .32), 0 14px 30px rgb(var(--surface-shadow) / .22)}.tichu-seat-token{place-items:center;gap:3px;min-width:0;display:grid}.tichu-seat-relation{background:rgb(var(--accent-rgb) / .16);border:1px solid rgb(var(--accent-rgb) / .24);color:var(--accent);white-space:nowrap;border-radius:999px;padding:3px 6px;font-size:clamp(.56rem,.85vw,.64rem);font-weight:950;line-height:1}.tichu-seat-name{color:var(--title-strong);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(.86rem,1.35vw,1.05rem);font-weight:950;line-height:1.08;overflow:hidden}.tichu-seat-card-count{background:rgb(var(--surface-bright-rgb) / .72);border:1px solid rgb(var(--line-rgb) / .22);color:var(--title-strong);text-align:center;white-space:nowrap;border-radius:999px;justify-self:center;padding:4px 8px;font-size:clamp(.7rem,1.05vw,.78rem);font-weight:950;line-height:1}.tichu-seat-pass-badge{background:rgb(var(--surface-shadow) / .78);box-shadow:none;color:#fff;letter-spacing:0;white-space:nowrap;border:1px solid #ffffff38;border-radius:999px;justify-self:center;margin-top:-1px;padding:3px 6px;font-size:.64rem;font-weight:950;line-height:1;position:static;transform:none}.tichu-seat-call-badge{background:rgb(var(--surface-shadow) / .68);box-shadow:none;color:#fff;letter-spacing:0;white-space:nowrap;border:1px solid #fff3;border-radius:999px;justify-self:center;margin-top:-1px;padding:3px 6px;font-size:.62rem;font-weight:950;line-height:1}.tichu-seat-call-badge.is-tichu{background:rgb(var(--accent-2-rgb) / .18);border-color:rgb(var(--accent-2-rgb) / .42);color:var(--accent-2)}.tichu-seat-call-badge.is-grand-tichu{background:rgb(var(--danger-rgb) / .18);border-color:rgb(var(--danger-rgb) / .44);color:var(--danger)}.tichu-spectator-table{--tichu-table-size:clamp(220px, min(42cqw, 28cqh), 360px);min-width:min(900px,100%)}.spectator-layout-tichu .tichu-spectator-table-panel{--tichu-bottom-play-reserve:clamp(122px, min(22cqw, 20cqh), 176px);--tichu-seat-table-gap:clamp(6px, min(2.2cqw, 2.2cqh), 18px);--tichu-side-seat-reserve:clamp(58px, min(12cqw, 12cqh), 124px);--tichu-top-seat-reserve:clamp(58px, min(11cqw, 12cqh), 112px);align-content:stretch;place-items:center;width:100%;min-height:max(100%,620px);padding:clamp(10px,1.4svh,18px);display:grid;overflow:visible;container:tichu-table-panel/size}.spectator-layout-tichu .tichu-spectator-perspective{grid-template-rows:auto auto minmax(340px,auto) auto;align-content:center;gap:clamp(8px,1svh,14px);height:auto;min-height:100%;overflow:visible}.spectator-layout-tichu .tichu-spectator-table{--tichu-table-height:clamp(340px, calc(100cqh - var(--tichu-top-seat-reserve) - 20px - var(--tichu-bottom-play-reserve)), 760px);--tichu-table-width:min(100cqw, clamp(360px, min(96cqw, calc(var(--tichu-table-height) * 1.7)), 1120px));align-self:center;min-width:0;height:auto}.spectator-layout-tichu .tichu-spectator-focus-hand{max-width:min(1080px,100%);overflow:hidden}.tichu-spectator-perspective{justify-items:center;gap:clamp(10px,1.2svh,16px);width:100%;min-width:0;display:grid}.tichu-spectator-turn-banner{background:rgb(var(--surface-high-rgb) / .76);border:1px solid rgb(var(--line-rgb) / .28);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;max-width:min(760px,100%);min-height:44px;padding:8px 12px;display:grid}.tichu-spectator-turn-banner.has-turn{background:rgb(var(--accent-rgb) / .2);border-color:rgb(var(--accent-rgb) / .56);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .12)}.tichu-spectator-turn-banner span{color:var(--muted);white-space:nowrap;font-size:.68rem;font-weight:900;line-height:1}.tichu-spectator-turn-banner strong{color:var(--title-strong);text-align:center;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.94rem;font-weight:950;line-height:1.05;overflow:hidden}.tichu-spectator-turn-banner em{color:var(--copy-strong);white-space:nowrap;font-size:.7rem;font-style:normal;font-weight:850;line-height:1}.tichu-spectator-perspective-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;max-width:min(760px,100%);display:grid}.tichu-spectator-perspective-tab{background:rgb(var(--surface-high-rgb) / .74);border:1px solid rgb(var(--line-rgb) / .26);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:3px;min-height:48px;padding:7px 9px;display:grid}.tichu-spectator-perspective-tab.is-active{color:#202230;background:#ffffffeb;border-color:#ffffffdb;box-shadow:0 0 0 3px #ffffff29}.tichu-spectator-perspective-tab.is-turn{background:rgb(var(--accent-rgb) / .18);border-color:rgb(var(--accent-rgb) / .54)}.tichu-spectator-perspective-tab.is-active.is-turn{box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .18), 0 0 0 6px #ffffff1a;background:#ffffffeb;border-color:#ffffffdb}.tichu-spectator-perspective-tab span{color:var(--title-strong);font-size:.76rem;font-weight:950;line-height:1.1}.tichu-spectator-perspective-tab strong{color:var(--copy-strong);font-size:.7rem;font-weight:850}.tichu-spectator-perspective-tab.is-active span,.tichu-spectator-perspective-tab.is-active strong{color:#202230}.tichu-spectator-tab-meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:5px;min-width:0;display:flex}.tichu-spectator-call-badge{border:1px solid rgb(var(--accent-rgb) / .28);color:var(--accent);white-space:nowrap;border-radius:999px;padding:3px 5px;font-size:.62rem;font-style:normal;font-weight:950;line-height:1}.tichu-spectator-call-badge.is-grand-tichu{background:rgb(var(--danger-rgb) / .16);border-color:rgb(var(--danger-rgb) / .34);color:var(--danger)}.tichu-spectator-call-badge.is-tichu{background:rgb(var(--accent-2-rgb) / .16);border-color:rgb(var(--accent-2-rgb) / .34);color:var(--accent-2)}.tichu-spectator-turn-chip{background:rgb(var(--accent-rgb) / .2);border:1px solid rgb(var(--accent-rgb) / .42);color:var(--accent);white-space:nowrap;border-radius:999px;padding:3px 6px;font-size:.62rem;font-style:normal;font-weight:900;line-height:1}.tichu-spectator-focus-hand{gap:8px;width:100%;max-width:min(940px,100%);display:grid}.tichu-spectator-focus-hand .tichu-hand{margin-top:0}.tichu-spectator-hand{border-top:1px solid rgb(var(--line-rgb) / .18);gap:6px;padding-top:8px;display:grid}.tichu-spectator-hand-label{color:var(--muted);font-size:.68rem;font-weight:900}.tichu-spectator-hand-cards{align-items:center;max-width:100%;min-height:48px;padding-left:6px;display:flex;overflow:hidden}.tichu-spectator-hand-cards .tichu-card{aspect-ratio:5/7;flex:0 0 clamp(28px,3.2cqw,40px);width:clamp(28px,3.2cqw,40px);height:auto;padding:0}.tichu-spectator-hand-cards .tichu-card+.tichu-card{margin-left:clamp(-18px,-1.8cqw,-10px)}.tichu-spectator-hand-cards .tichu-card-corner,.tichu-spectator-hand-cards .tichu-card-foot{display:none}.tichu-trick-timeline{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:clamp(8px,.9vw,12px);width:100%;display:grid}.tichu-trick-slot{background:rgb(var(--surface-low-rgb) / .68);border:1px solid rgb(var(--line-rgb) / .24);border-radius:10px;grid-template-rows:auto auto auto minmax(92px,1fr) auto;gap:9px;min-height:172px;padding:12px;display:grid;position:relative}.tichu-trick-slot.is-turn{background:rgb(var(--accent-2-rgb) / .12);border-color:rgb(var(--accent-rgb) / .72);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .16), 0 14px 28px rgb(var(--surface-shadow) / .2)}.tichu-trick-slot.is-passed{opacity:.7}.tichu-trick-slot-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.tichu-trick-seat-copy{gap:3px;min-width:0;display:grid}.tichu-trick-seat-copy span{color:var(--muted);font-size:.72rem;font-weight:850}.tichu-trick-seat-copy strong{color:var(--title-strong);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:1.02rem;font-weight:950;overflow:hidden}.tichu-trick-seat-copy .tichu-player-card-count{line-height:1.1}.tichu-trick-team-badge{background:rgb(var(--surface-high-rgb) / .78);border:1px solid rgb(var(--line-rgb) / .22);color:var(--copy-strong);border-radius:999px;padding:5px 7px;font-size:.68rem;font-style:normal;font-weight:900;line-height:1}.tichu-trick-team-badge.is-self,.tichu-trick-team-badge.is-teammate{border-color:rgb(var(--accent-2-rgb) / .36);color:var(--accent-2)}.tichu-trick-team-badge.is-opponent{border-color:rgb(var(--accent-4-rgb) / .34);color:var(--accent-4)}.tichu-trick-state{background:rgb(var(--surface-high-rgb) / .72);border:1px solid rgb(var(--line-rgb) / .2);color:var(--accent);border-radius:999px;place-self:start;padding:7px 9px;font-size:.74rem;font-weight:900;line-height:1}.tichu-trick-slot.is-turn .tichu-trick-state{color:var(--accent-2)}.tichu-trick-slot-body{place-items:center;min-width:0;display:grid}.tichu-trick-card-row{--tichu-trick-card-count:1;--tichu-trick-card-overlap:clamp(20px, 2.4cqw, 32px);flex-wrap:nowrap;justify-content:center;align-items:center;gap:0;min-width:0;max-width:100%;display:flex;overflow:visible}.tichu-trick-card-row .tichu-card{aspect-ratio:5/7;flex:0 0 clamp(40px,min(5cqw,8cqh),58px);width:clamp(40px,min(5cqw,8cqh),58px);height:auto;padding:0;transform:none}.tichu-trick-card-row .tichu-card-art{border-radius:5px}.tichu-trick-card-row .tichu-card+.tichu-card{margin-left:calc(var(--tichu-trick-card-overlap) * -1)}.tichu-trick-card-row .tichu-card.is-recently-played{transform:translateY(-2px)}.tichu-trick-card-row .tichu-card-corner{display:none}.tichu-trick-card-row .tichu-card-center strong{font-size:clamp(1.35rem,2.4vw,1.95rem)}.tichu-trick-card-row .tichu-card-center.is-special strong{font-size:clamp(.86rem,1.3vw,1.04rem);line-height:1.05}.tichu-trick-card-row .tichu-card-center.is-special span{display:none}.tichu-trick-card-row .tichu-card-foot{font-size:clamp(1rem,1.6vw,1.28rem)}.tichu-trick-placeholder{border:1px dashed rgb(var(--line-rgb) / .28);color:var(--muted);text-align:center;border-radius:8px;align-items:center;width:100%;min-height:80px;padding:12px;font-size:.86rem;font-weight:850;display:grid}.tichu-trick-combo{color:var(--copy-strong);text-align:center;min-height:18px;font-size:.78rem;font-weight:850}.tichu-trick-stack{min-height:var(--tichu-card-h);justify-content:center;align-items:center;min-width:min(420px,80vw);display:flex}.tichu-trick-stack .tichu-card+.tichu-card{margin-left:calc(var(--tichu-card-w) * -.28)}.tichu-empty-trick{border:1px dashed rgb(var(--accent-rgb) / .24);color:var(--muted);border-radius:8px;padding:16px 20px;font-size:.86rem;font-weight:800}.tichu-risk-chips{flex-wrap:wrap;gap:8px;display:flex}.tichu-risk-chips span,.tichu-combo-badge{background:rgb(var(--accent-rgb) / .12);border:1px solid rgb(var(--accent-rgb) / .26);color:var(--accent);border-radius:8px;padding:8px 10px;font-size:.82rem;font-weight:900}.tichu-exchange-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0;display:grid}.tichu-exchange-slot{background:rgb(var(--surface-low-rgb) / .72);border:1px solid rgb(var(--line-rgb) / .22);color:var(--text);cursor:pointer;text-align:left;border-radius:8px;gap:6px;min-height:72px;padding:12px;display:grid}.tichu-exchange-slot.is-active{border-color:rgb(var(--accent-rgb) / .56);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .12)}.tichu-exchange-slot span{color:var(--muted);font-size:.78rem;font-weight:800}.tichu-exchange-slot strong{color:var(--title-strong);font-size:.95rem}.tichu-hand{grid-template-columns:repeat(auto-fit, minmax(var(--tichu-hand-card-min), 1fr));align-items:end;gap:clamp(3px,.6vw,8px);max-width:100%;min-height:0;margin-top:clamp(4px,1svh,10px);padding:4px 0 2px;display:grid;overflow:visible}.tichu-hand-overview{--tichu-overview-columns:14;--tichu-overview-gap:clamp(3px, .6vw, 8px);align-items:start;gap:var(--tichu-overview-gap);grid-template-columns:repeat(auto-fit, minmax(var(--tichu-hand-card-min), var(--tichu-card-w)));justify-content:center;width:100%;max-width:100%;padding-top:8px;overflow:hidden}.tichu-hand-overview .tichu-card{aspect-ratio:5/7;height:auto;max-width:min(100%, var(--tichu-card-w));flex:none;justify-self:center;width:100%;min-width:0}.tichu-layout-focused .tichu-hand-overview,.spectator-layout-tichu .tichu-hand-overview{max-width:100%;overflow:hidden}@media (min-width:901px){.tichu-layout-focused{--tichu-hand-card-min:clamp(42px, min(6.5cqw, 7.5cqh), 72px)}.tichu-layout-focused .tichu-hand-overview{grid-template-columns:repeat(auto-fit, minmax(var(--tichu-hand-card-min), var(--tichu-card-w)))}}.tichu-card{--tichu-suit:#47cfa2;--tichu-suit-rgb:71 207 162;aspect-ratio:5/7;border:2px solid rgb(var(--tichu-suit-rgb) / .82);color:#172019;flex:0 0 var(--tichu-card-w);height:var(--tichu-card-h);text-align:left;width:var(--tichu-card-w);background:#fff9ef;border-radius:8px;padding:0;transition:transform .16s,box-shadow .16s,border-color .16s,opacity .16s;display:block;position:relative;overflow:hidden;box-shadow:0 8px 18px #0f18122e}button.tichu-card{cursor:pointer}.tichu-card.suit-jade{--tichu-suit:#1f8f55;--tichu-suit-rgb:31 143 85}.tichu-card.suit-star{--tichu-suit:#d44642;--tichu-suit-rgb:212 70 66}.tichu-card.suit-lightning{--tichu-suit:#c93f55;--tichu-suit-rgb:201 63 85}.tichu-card.suit-pagoda{--tichu-suit:#304d78;--tichu-suit-rgb:48 77 120}.tichu-card.special-mahjong{--tichu-suit:#c94a38;--tichu-suit-rgb:201 74 56}.tichu-card.special-dog{--tichu-suit:#52643f;--tichu-suit-rgb:82 100 63}.tichu-card.special-phoenix{--tichu-suit:#d84b32;--tichu-suit-rgb:216 75 50}.tichu-card.special-dragon{--tichu-suit:#0f5149;--tichu-suit-rgb:15 81 73}.tichu-card.is-playable:hover,.tichu-card.is-selected{transform:translateY(-7px)}.tichu-card.is-selected,.tichu-card.is-exchange-assigned{border-color:#e4b847;box-shadow:0 10px 24px #e4b84742,0 0 0 3px #e4b8472e}.tichu-card.is-disabled{opacity:.55}.tichu-card.is-recently-played{transform:scale(1.04)}.tichu-card.is-compact{flex-basis:calc(var(--tichu-card-w) * .78);height:calc(var(--tichu-card-h) * .78);width:calc(var(--tichu-card-w) * .78)}.tichu-card-art{background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:5px;width:100%;height:100%;display:block}.tichu-card:not(.is-facedown).special-mahjong .tichu-card-art,.tichu-card:not(.is-facedown).special-dog .tichu-card-art,.tichu-card:not(.is-facedown).special-phoenix .tichu-card-art,.tichu-card:not(.is-facedown).special-dragon .tichu-card-art{background-color:#fff9ef;background-size:contain}.tichu-card-corner{justify-content:space-between;align-items:start;min-width:0;display:flex}.tichu-card-corner strong,.tichu-card-center strong{color:var(--tichu-suit);font-weight:950;line-height:1}.tichu-card-corner span,.tichu-card-center span{color:#1720199e;font-size:.64rem;font-weight:900}.tichu-card-center{text-align:center;align-self:center;justify-items:center;gap:1px;min-height:0;display:grid}.tichu-card-center strong{font-size:clamp(2.05rem,4.6vw,3.2rem)}.tichu-card-center.is-special strong{font-size:clamp(.82rem,1.55vw,1.12rem);line-height:1.05}.tichu-card-foot{color:rgb(var(--tichu-suit-rgb) / .72);justify-self:end;font-size:clamp(1.4rem,2.4vw,2.05rem);font-weight:950;line-height:.9}.tichu-card-assignment{color:#182018;z-index:1;background:#e4b847;border-radius:999px;padding:4px 6px;font-size:.62rem;font-weight:900;line-height:1;position:absolute;top:6px;left:6px}.tichu-card.is-facedown{border-color:rgb(var(--accent-rgb) / .72);color:#f7efd6;background:#235441}.tichu-card-back-count{color:#123f36;white-space:nowrap;background:#fff9eff0;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:950;line-height:1;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.tichu-wish-picker{align-items:center;gap:10px;margin:10px 0;display:inline-flex}.tichu-wish-picker span{color:var(--muted);font-weight:800}.tichu-wish-picker select{background:var(--field-surface);border:1px solid rgb(var(--accent-rgb) / .26);color:var(--text);border-radius:8px;padding:8px 10px}.tichu-wish-modal{border-color:rgb(var(--accent-rgb) / .34);gap:16px;max-width:min(430px,100vw - 28px)}.tichu-wish-rank-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.tichu-wish-rank-option{background:rgb(var(--surface-low-rgb) / .78);border:1px solid rgb(var(--line-rgb) / .24);color:var(--text);cursor:pointer;border-radius:8px;place-items:center;min-height:38px;font-size:.88rem;font-weight:950;display:inline-grid}.tichu-wish-rank-option.is-selected{background:rgb(var(--accent-rgb) / .2);border-color:rgb(var(--accent-rgb) / .56);box-shadow:0 0 0 3px rgb(var(--accent-rgb) / .14);color:var(--accent)}.tichu-play-actions{grid-template-columns:minmax(52px,.72fr) minmax(68px,.78fr) minmax(76px,1fr) minmax(84px,.92fr);justify-content:stretch;align-items:stretch;gap:7px;margin-top:2px;display:grid}.tichu-play-actions>*{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;min-height:32px;padding:0 6px;font-size:.68rem;overflow:hidden}.tichu-toast-stack{pointer-events:none;z-index:430;gap:8px;width:min(440px,100vw - 32px);display:grid;position:fixed;top:86px;left:50%;transform:translate(-50%)}.tichu-turn-toast{background:rgb(var(--modal-surface-rgb) / .94);border:1px solid rgb(var(--accent-rgb) / .42);box-shadow:var(--shadow-elevated);border-radius:999px;justify-content:center;align-items:center;gap:10px;width:100%;max-width:100%;padding:10px 14px;display:inline-flex}.tichu-call-toast{box-shadow:0 18px 42px rgb(var(--surface-shadow) / .24), 0 0 0 4px #ffffff1a;border-width:2px}.tichu-call-toast.is-grand-tichu{background:rgb(var(--danger-rgb) / .96);border-color:#ffd2d8bd}.tichu-call-toast.is-tichu{background:rgb(var(--accent-2-rgb) / .94);border-color:#e1f9ffc7}.tichu-call-toast strong,.tichu-call-toast span{color:#fff}.tichu-turn-toast strong{color:var(--title-strong);white-space:nowrap;font-size:.92rem;font-weight:950}.tichu-turn-toast span{color:var(--copy-strong);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.82rem;font-weight:800;overflow:hidden}.tichu-result-score-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.tichu-result-score-card{background:rgb(var(--surface-low-rgb) / .72);border:1px solid rgb(var(--accent-rgb) / .2);border-radius:8px;gap:6px;padding:14px;display:grid}.tichu-result-score-card strong{color:var(--title-strong);font-size:1.2rem}.tichu-result-score-card small{color:var(--muted);font-weight:700}.tichu-round-actions{align-items:center;margin-top:14px}.tichu-round-actions .helper-text{margin:0}.tichu-confirm-backdrop{background:rgb(var(--overlay-scrim-rgb) / .64);-webkit-backdrop-filter:blur(10px);z-index:420;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.tichu-confirm-modal{background:rgb(var(--modal-surface-rgb) / calc(.94 * var(--panel-alpha)));border:1px solid rgb(var(--warning-rgb) / .36);box-shadow:var(--shadow-elevated);border-radius:14px;gap:16px;width:100%;max-width:min(420px,100vw - 40px);padding:22px;display:grid}.tichu-confirm-icon{background:rgb(var(--warning-rgb) / .16);border:1px solid rgb(var(--warning-rgb) / .3);color:var(--warning);border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.tichu-confirm-copy{gap:8px;display:grid}.tichu-confirm-copy h2{color:var(--title-strong);font-size:1.18rem;line-height:1.2}.tichu-confirm-copy p{color:var(--copy-strong);font-size:.92rem;line-height:1.6}.tichu-my-turn-modal-backdrop{-webkit-backdrop-filter:none;pointer-events:none;z-index:390;background:0 0;align-items:flex-start;padding-top:clamp(108px,13svh,164px)}.tichu-my-turn-modal{border-color:rgb(var(--accent-rgb) / .62);box-shadow:0 18px 44px rgb(var(--surface-shadow) / .34), 0 0 0 4px rgb(var(--accent-rgb) / .16);gap:12px;max-width:min(360px,100vw - 36px);padding:18px}.tichu-my-turn-modal .tichu-confirm-icon{background:rgb(var(--accent-rgb) / .2);border-color:rgb(var(--accent-rgb) / .4);color:var(--accent)}@media (prefers-reduced-motion:reduce){.tichu-trick-layer{transition:none;animation:none}}@media (max-width:900px){.tichu-layout-focused{grid-template-columns:1fr}.tichu-layout-focused .mw-center-stage-shell{gap:12px;max-width:100%}.tichu-lobby-options,.tichu-exchange-slots,.tichu-result-score-grid,.tichu-score-strip{grid-template-columns:1fr}.tichu-score-header{grid-template-columns:minmax(88px,auto) minmax(0,1fr)}.tichu-player-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.tichu-table-center{min-width:100%;margin-top:0}.tichu-square-table{--tichu-table-height:clamp(240px, min(68cqh, calc(100cqw * .64)), 500px);--tichu-table-width:min(100cqw, clamp(280px, min(96cqw, calc(var(--tichu-table-height) * 1.55)), 700px))}.tichu-table-panel.has-play-shelf .tichu-square-table{--tichu-bottom-play-reserve:clamp(110px, min(24cqw, 24cqh), 176px);--tichu-table-height:clamp(260px, calc(100cqh - var(--tichu-top-seat-reserve) - 20px - var(--tichu-bottom-play-reserve)), 500px);--tichu-table-width:min(100cqw, clamp(250px, min(96cqw, calc(var(--tichu-table-height) * 1.62)), 680px))}.tichu-table-arena{height:var(--tichu-table-height);width:var(--tichu-table-width)}.tichu-table-arena:before{inset:calc(var(--tichu-top-seat-reserve) + var(--tichu-seat-table-gap)) calc(var(--tichu-side-seat-reserve) + var(--tichu-seat-table-gap))}.tichu-table-seat{width:clamp(58px,min(11cqw,10cqh),84px)}.tichu-table-seat-card{min-height:clamp(42px,6svh,56px);padding:6px 7px}.tichu-trick-timeline,.tichu-spectator-perspective-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.tichu-spectator-perspective-tab{min-height:42px}.tichu-hand-overview{--tichu-overview-columns:10}}@media (max-width:640px){.mw-room-topbar{gap:8px;min-height:auto;padding:8px 0}.mw-gt-left,.mw-gt-right{gap:8px}.mw-gt-brand{font-size:.82rem}.mw-gt-phase,.mw-gt-code{padding:5px 9px;font-size:.68rem}.mw-icon-btn,.mw-room-exit,.room-theme-toggle.theme-toggle-inline{height:32px;min-height:32px}.room-wrapper:not([data-phase=lobby]) .room-main{padding:14px 0 92px}.tichu-layout{--tichu-card-w:clamp(38px, min(8.5cqw, 6.2cqh), 54px);--tichu-card-h:calc(var(--tichu-card-w) * 1.4);--tichu-hand-card-min:clamp(38px, min(8.5cqw, 6.2cqh), 54px)}.tichu-layout-focused .mw-center-stage-shell{gap:10px;max-width:100%}.tichu-stage-shell{gap:10px}.tichu-score-strip{border-radius:10px;gap:8px;padding:10px}.tichu-score-header{grid-template-columns:1fr;padding:8px}.tichu-score-title{grid-template-columns:1fr auto;align-items:center}.tichu-score-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.tichu-team-score{min-height:52px;padding:8px 10px}.tichu-score-header .tichu-team-score{min-height:34px;padding:6px 7px}.tichu-score-header .tichu-team-members{display:none}.tichu-team-score span,.tichu-result-score-card span{font-size:.72rem}.tichu-team-score strong{font-size:.92rem}.tichu-table-panel{border-radius:10px;gap:10px;min-height:0;padding:10px}.tichu-layout-focused .tichu-table-panel{min-height:clamp(300px,46svh,420px);margin-top:0;padding:8px}.tichu-layout-focused .tichu-table-panel.has-play-shelf{gap:2px;height:100%;min-height:440px}.tichu-player-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.tichu-player-chip{grid-template-columns:minmax(0,1fr);gap:6px;min-height:38px;padding:7px 8px}.tichu-player-chip-main strong{font-size:.82rem}.tichu-player-card-count{font-size:.74rem}.tichu-player-team-badge{justify-self:start;min-height:22px;padding:4px 7px}.tichu-player-team-badge em{font-size:.66rem}.tichu-player-team-badge span{font-size:.62rem}.tichu-table-center{gap:10px;margin-top:0}.tichu-square-table{--tichu-table-height:clamp(220px, min(60cqh, calc(100cqw * .66)), 360px);--tichu-table-width:min(100cqw, clamp(220px, min(96cqw, calc(var(--tichu-table-height) * 1.58)), 430px));gap:8px}.tichu-table-panel.has-play-shelf .tichu-square-table{--tichu-bottom-play-reserve:clamp(96px, min(28cqw, 24cqh), 150px);--tichu-table-height:clamp(240px, calc(100cqh - var(--tichu-top-seat-reserve) - 20px - var(--tichu-bottom-play-reserve)), 340px);--tichu-table-width:min(100cqw, clamp(210px, min(96cqw, calc(var(--tichu-table-height) * 1.62)), 380px))}.tichu-table-arena{height:var(--tichu-table-height);width:var(--tichu-table-width)}.tichu-table-arena:before{inset:calc(var(--tichu-top-seat-reserve) + var(--tichu-seat-table-gap)) calc(var(--tichu-side-seat-reserve) + var(--tichu-seat-table-gap))}.tichu-trick-pile{min-width:min(240px,54%);min-height:112px;padding:10px}.tichu-trick-pile>.tichu-trick-combo{text-align:center;white-space:normal;justify-self:center;font-size:.66rem}.tichu-trick-layer{max-width:min(280px,74cqw);padding:8px 9px}.tichu-table-seat{width:clamp(46px,min(14cqw,8cqh),64px)}.tichu-table-seat[data-tichu-position=bottom]{bottom:clamp(6px,2.5%,12px);transform:translate(-50%)}.tichu-table-seat[data-tichu-position=top]{top:clamp(5px,2.4%,12px);transform:translate(-50%)}.tichu-table-seat[data-tichu-position=left]{left:clamp(4px,2.8%,10px);transform:translateY(-50%)}.tichu-table-seat[data-tichu-position=right]{right:clamp(4px,2.8%,10px);transform:translateY(-50%)}.tichu-table-seat-card{border-radius:8px;min-height:34px;padding:5px 6px}.tichu-trick-timeline{grid-template-columns:1fr;gap:8px}.tichu-trick-slot{grid-template:"head body""call body""state body""combo combo"/minmax(86px,.76fr) minmax(0,1.24fr);align-items:center;gap:6px 10px;min-height:92px;padding:9px 10px}.tichu-trick-slot-head{grid-area:head;justify-content:center;align-items:flex-start;gap:2px}.tichu-trick-seat-copy{gap:2px}.tichu-trick-seat-copy strong{font-size:.9rem}.tichu-trick-seat-copy .tichu-player-card-count{font-size:.72rem}.tichu-trick-team-badge{padding:4px 6px;font-size:.62rem}.tichu-trick-state{grid-area:state;padding:6px 8px;font-size:.68rem}.tichu-trick-slot>.tichu-call-badge{grid-area:call;padding:5px 7px;font-size:.62rem}.tichu-trick-slot-body{grid-area:body;justify-items:end;min-height:64px}.tichu-trick-combo{text-align:right;grid-area:combo;justify-self:end;min-height:0;font-size:.72rem}.tichu-trick-placeholder{min-height:58px;padding:8px}.tichu-trick-card-row{--tichu-trick-card-overlap:clamp(16px, 6cqw, 26px);justify-content:flex-end}.tichu-trick-card-row .tichu-card{flex-basis:clamp(36px,min(12cqw,8cqh),50px);width:clamp(36px,min(12cqw,8cqh),50px);padding:0}.tichu-hand{gap:4px;margin-top:10px;padding:4px 0}.tichu-hand-overview{--tichu-overview-columns:7;--tichu-overview-gap:5px}.tichu-hand-overview .tichu-card{max-width:min(100%, var(--tichu-card-w))}.tichu-card{border-radius:7px;padding:0}.tichu-action-panel{gap:12px;padding:14px 12px 12px}.tichu-action-panel .room-phase-head{gap:10px}.tichu-combo-badge{justify-self:start;padding:7px 9px}.tichu-play-command-bar{grid-template-columns:minmax(54px,.44fr) minmax(0,.56fr);grid-template-areas:"turn combo""actions actions";gap:5px}.tichu-turn-badge{min-height:30px;padding:5px 6px}.tichu-turn-badge span{font-size:.52rem}.tichu-turn-badge strong{font-size:.66rem}.tichu-play-command-bar .tichu-combo-badge{justify-content:center;max-width:100%;min-height:30px;padding:5px 6px;font-size:.62rem}.tichu-play-command-bar .tichu-play-actions{width:100%}.tichu-play-command-bar .tichu-play-actions>*{min-height:30px;padding:0 5px;font-size:.64rem}.tichu-action-panel .room-phase-actions{background:rgb(var(--surface-high-rgb) / .88);-webkit-backdrop-filter:blur(12px);border:1px solid rgb(var(--line-rgb) / .22);z-index:5;border-radius:12px;grid-template-columns:1fr 1fr 1.2fr;gap:8px;margin:0 -4px -2px;padding:8px;display:grid;position:sticky;bottom:10px}.tichu-grand-command{place-items:stretch stretch}.tichu-grand-command .room-phase-actions{-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;grid-template-columns:1fr 1fr;margin:0;padding:0;position:static;bottom:auto}.tichu-play-actions{grid-template-columns:.74fr .82fr 1fr .96fr}.tichu-action-panel .room-phase-actions>*{width:100%;min-height:44px;padding:0 8px}.tichu-toast-stack{top:68px}.tichu-turn-toast{text-align:center;border-radius:12px;justify-items:center;gap:2px;padding:9px 12px;display:grid}}@media (max-width:520px){.tichu-layout{--tichu-hand-card-min:clamp(38px, min(8.5cqw, 6.2cqh), 54px)}.tichu-hand-overview{--tichu-overview-columns:7}.tichu-score-items{grid-template-columns:repeat(2,minmax(0,1fr))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
