/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{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}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{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:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,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,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-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,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}@font-face{font-family:Golos Text;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/golos-text-cyrillic.woff2)format("woff2");unicode-range:u+301,u+400-45f,u+490-491,u+4b0-4b1,u+2116}@font-face{font-family:Golos Text;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/golos-text-latin.woff2)format("woff2");unicode-range:u+??,u+131,u+152-153,u+2bb-2bc,u+2c6,u+2da,u+2dc,u+304,u+308,u+329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Unbounded;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/unbounded-latin-700.woff2)format("woff2")}:root{color-scheme:light;--canvas:#f3efe4;--surface:#fffcf5;--sunken:#eae4d7;--elevated:#fffefb;--ink:#26251f;--muted:#6b6357;--line:#d7cdbc;--outline:#38342b;--accent:#b4472b;--accent-hover:#963821;--accent-soft:#f6e2d7;--green:#2b654c;--green-hover:#23543f;--green-soft:#e0ecdf;--on-green:#fff;--on-accent:#fff;--warning:#895909;--shadow:3px 4px 0 #38342b;--layer-controls:10;--layer-header:15;--layer-notice:20}[data-theme=dark]{color-scheme:dark;--canvas:#171612;--surface:#24221c;--sunken:#2d2a22;--elevated:#302c24;--ink:#f6f0e5;--muted:#c0b6a5;--line:#484236;--outline:#736956;--accent:#ffa386;--accent-hover:#ffb79e;--accent-soft:#422b22;--green:#b3dab8;--green-hover:#c6e7ca;--green-soft:#29372b;--on-green:#18321f;--on-accent:#3c1d13;--warning:#efc47f;--shadow:3px 4px 0 #090908}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{background:var(--canvas)}body{color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0;font-family:Golos Text,system-ui,sans-serif;font-size:16px;line-height:1.5}main{min-height:100svh}button,input,select,textarea{font:inherit}button,select,summary{cursor:pointer}button{touch-action:manipulation}a{color:inherit;text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}a,button,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent-soft);color:var(--ink)}h1,h2,h3,p{margin:0}.app-header,a svg,button svg{flex-shrink:0}.app-header{z-index:var(--layer-header);background:var(--canvas);justify-content:space-between;align-items:center;gap:16px;min-height:88px;display:flex;position:sticky;top:0}.hero-brand,.wordmark{letter-spacing:-.06em;font-family:Unbounded,sans-serif;font-weight:700;line-height:1.1}.wordmark{padding:10px 0;font-size:23px}.hero-brand span,.wordmark span{color:var(--accent)}.preferences{align-items:center;gap:4px;display:flex}.icon-button{color:var(--muted);background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.icon-button:hover{background:var(--sunken);color:var(--ink)}.language-picker{position:relative}.language-trigger{min-width:64px;min-height:44px;color:var(--muted);border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px 8px;font-size:14px;font-weight:600;list-style:none;display:flex}.language-trigger::-webkit-details-marker{display:none}.language-picker[open] .language-trigger,.language-trigger:hover{color:var(--ink);background:var(--sunken)}.language-picker[open] .language-trigger>svg{transform:rotate(180deg)}.language-options{border:1px solid var(--line);background:var(--elevated);border-radius:14px;min-width:172px;padding:6px;position:absolute;top:calc(100% + 8px);right:0}.language-option{cursor:pointer;display:block;position:relative}.language-option>input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.language-option>span{min-height:44px;color:var(--muted);pointer-events:none;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;font-size:15px;display:flex}.language-option>span>svg{visibility:hidden;color:var(--green)}.language-option:hover>span{background:var(--sunken);color:var(--ink)}.language-option>input:checked+span{color:var(--ink);background:var(--green-soft);font-weight:500}.language-option>input:checked+span>svg{visibility:visible}.language-option>input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.home-shell{max-width:600px;padding:0 28px max(28px,env(safe-area-inset-bottom));min-height:100svh;margin:0 auto}.home-content,.home-shell{flex-direction:column;display:flex}.home-content{flex:1;justify-content:center;padding:32px 0}.home-hero{text-align:center}.hero-brand{font-size:clamp(52px,10vw,78px)}.tagline{color:var(--muted);margin:16px 0 34px;font-size:17px}.card-stack{width:min(280px,80%);height:178px;margin:14px auto 38px;position:relative}.stack-card{border:1.5px solid var(--outline);border-radius:12px;position:absolute;inset:0}.stack-back{background:var(--green-soft);transform:rotate(-8deg)translate(-8px,-5px)}.stack-middle{background:var(--accent-soft);transform:rotate(6deg)translate(9px,-4px)}.stack-front{background:var(--surface);box-shadow:var(--shadow);flex-direction:column;justify-content:space-between;align-items:center;padding:16px;display:flex;transform:rotate(-2deg)}.stack-mark{color:var(--accent);align-self:flex-start;font-family:Unbounded,sans-serif;font-size:17px}.stack-front>svg{color:var(--green);align-self:flex-end}.sample-word{letter-spacing:-.04em;font-size:25px;font-weight:700}.home-actions{gap:12px;display:grid}.resume-game{text-align:left}.resume-game-label{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.resume-game-label small{font-size:12px;font-weight:400}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:14px 20px;font-size:16px;font-weight:600;line-height:1.4;transition:background-color .15s,transform .1s;display:inline-flex}.button:active:not(:disabled){transform:translateY(2px)}.button-primary{color:var(--on-accent);background:var(--accent)}.button-primary:hover:not(:disabled){background:var(--accent-hover)}.button-secondary{color:var(--ink);background:var(--surface);border-color:var(--line)}.button-secondary:hover:not(:disabled){background:var(--sunken)}.button-green{background:var(--green);color:var(--on-green)}.button-green:hover:not(:disabled){background:var(--green-hover)}.button-wide{width:100%}.action-arrow{margin-left:auto}.text-button{min-height:44px;color:var(--muted);background:0 0;border:0;align-items:center;gap:7px;padding:8px 0;font-size:15px;font-weight:500;display:inline-flex}.text-button:hover{color:var(--ink)}.rules{width:100%;color:var(--muted);margin:22px auto 0;font-size:14px}summary{justify-content:space-between;align-items:center;gap:10px;min-height:44px;font-weight:500;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary svg{flex-shrink:0;transition:transform .15s}details[open]>summary>svg{transform:rotate(180deg)}.rules summary{justify-content:center}.rules-content{height:0;overflow:hidden}.rules-content ol{opacity:0;transform:translateY(-10px)}.rules ol{text-align:center;max-width:60ch;margin:18px auto 0;padding:0;list-style:none}.rules li+li{margin-top:14px}.setup-content{width:100%;margin:auto 0;padding:20px 0 40px}.back-button{margin-bottom:14px}.page-title{letter-spacing:-.045em;margin-bottom:28px;font-size:clamp(28px,5vw,36px);font-weight:700;line-height:1.15}.form-stack{gap:22px}.field,.form-stack{flex-direction:column;display:flex}.field{gap:8px;min-width:0;font-size:15px;font-weight:500}input.input,select.input,textarea.input{background:var(--surface);border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);border-radius:10px;padding:12px 14px;font-size:16px;font-weight:400}.input::placeholder{color:var(--muted);opacity:.9}.input:focus{border-color:var(--accent)}textarea.input{resize:vertical}.code-input{text-transform:uppercase;letter-spacing:.2em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:600}.settings-disclosure{background:var(--sunken);border-radius:14px;padding:6px 18px}.settings-disclosure>summary{min-height:48px;font-size:16px;font-weight:600}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;padding:20px 0;display:grid}.settings-grid input.input,.settings-grid select.input{min-width:0;height:52px;min-height:52px;line-height:24px}.field-full{grid-column:1/-1}.settings-hint{color:var(--muted);font-size:14px;font-weight:400}.participation-notice{background:var(--sunken);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:14px;display:flex}.participation-notice .button{flex-shrink:0;min-height:44px;padding:10px 14px;font-size:14px}.participation-warning{color:var(--warning)}.participation-notice>.participation-warning{flex:220px}.participation-notice .error-notice{flex-basis:100%}.team-participation{color:var(--muted);flex-direction:column;gap:4px;margin:-6px 0 16px;font-size:13px;display:flex}.lobby-controls+.participation-notice{margin-top:16px}.error-notice{color:var(--accent);background:var(--accent-soft);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex}.error-notice>svg{flex-shrink:0}.error-notice>span{overflow-wrap:anywhere;flex:1}.error-notice .icon-button{color:inherit;margin:-6px}.connection-notice{inset-inline-start:max(12px,env(safe-area-inset-left));bottom:max(6px,env(safe-area-inset-bottom));pointer-events:none;max-width:calc(100vw - 24px);z-index:var(--layer-notice);margin:0;position:fixed}.server-connected,.server-connecting{background:var(--canvas);color:var(--green);border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:13px;display:flex}.server-connected{animation:connection-fade-out .4s 1.6s forwards}@keyframes connection-fade-out{to{opacity:0;visibility:hidden}}.server-connecting{color:var(--muted)}.server-status{background:var(--canvas);border-radius:8px;align-items:center;gap:8px;padding:4px 8px;display:flex}.server-status-message{align-items:center;gap:6px;min-width:0;display:flex}.server-status-message>svg{width:16px;height:16px;color:var(--accent);flex-shrink:0}.server-status-title{font-size:13px;font-weight:500}.server-status-footer{flex-shrink:0;align-items:center;gap:8px;display:flex}.server-status-timing{color:var(--muted);font-size:13px}.server-status-time{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.server-status-footer .text-button{pointer-events:auto;font-size:13px}.room-shell{flex-direction:column;max-width:760px;min-height:100svh;margin:0 auto;padding:0 28px;display:flex}.header-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.round-label{background:var(--sunken);min-height:40px;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:12px;align-items:center;padding:8px 14px;font-size:15px;font-weight:600;display:inline-flex}.room-content{flex-direction:column;flex:1;gap:24px;padding-top:28px;display:flex}.invitation-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.eyebrow{color:var(--muted);margin-bottom:4px;font-size:13px;font-weight:500}.room-code-button{min-height:44px;color:var(--ink);background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.room-code{letter-spacing:.14em;font-variant-numeric:tabular-nums;-webkit-user-select:text;user-select:text;font-size:clamp(28px,6vw,38px);font-weight:700}.invite-fallback,.room-code-button svg{color:var(--muted)}.invite-fallback{flex-direction:column;gap:8px;font-size:13px;display:flex}.teams-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.team-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;min-width:0;padding:18px;display:flex}.team-heading{align-items:center;gap:8px;min-height:28px;margin-bottom:18px;display:flex}.team-dot{background:var(--team-color,var(--accent));border-radius:3px;flex-shrink:0;width:10px;height:10px}.team-heading h2{overflow-wrap:anywhere;font-size:17px;font-weight:600}.team-rename{flex-shrink:0;margin:-8px 0}.team-color-field{border:0;min-width:0;margin:20px 0 0;padding:0}.team-color-field legend{margin-bottom:8px;padding:0;font-size:15px;font-weight:500}.team-color-options{grid-template-columns:repeat(auto-fit,44px);gap:8px;max-width:252px;display:grid}.team-color-option{cursor:pointer;position:relative}.team-color-option input{opacity:0;width:1px;height:1px;position:absolute}.team-color-swatch{border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:relative}.team-color-dot{background:var(--team-color);border-radius:50%;width:26px;height:26px}.team-color-swatch svg{color:var(--ink);background:var(--surface);stroke-width:3px;border-radius:50%;position:absolute;bottom:2px;right:2px}.team-color-option:hover .team-color-swatch{background:var(--sunken)}.team-color-option input:checked+.team-color-swatch{border-color:var(--ink)}.team-color-option input:focus-visible+.team-color-swatch{outline:2px solid var(--accent);outline-offset:3px}.team-color-field:disabled{opacity:.5}.team-color-field:disabled .team-color-option{cursor:not-allowed}.history .result-toggle{color:var(--green);flex-shrink:0}.history .is-skipped .result-toggle,.team-size{color:var(--muted)}.team-size{white-space:nowrap;margin-left:auto;font-size:13px}.players{flex-direction:column;gap:14px;margin:0 0 14px;padding:0;list-style:none;display:flex}.player-row{justify-content:space-between;gap:10px;font-size:14px}.player-name,.player-row{align-items:center;display:flex}.player-name{gap:6px;min-width:0}.player-name>span{overflow-wrap:anywhere}.player-name small{color:var(--muted);white-space:nowrap;font-size:12px}.player-name svg{color:var(--green);flex-shrink:0}.player-status{color:var(--muted);flex-shrink:0}.player-status.is-ready{color:var(--green)}.player-tools{flex-shrink:0;align-items:center;gap:4px;display:flex}.player-tools .icon-button{color:var(--muted)}.room-menu-actions{gap:8px;display:grid}.room-menu-actions .utility-button{border:1px solid var(--line);text-align:left;background:0 0;justify-content:flex-start;gap:12px;width:100%;min-height:48px;padding:10px 14px;font-size:15px;font-weight:500}.room-access-row,.room-menu-actions .utility-button:hover:not(:disabled){background:var(--sunken)}.room-access-row{border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.room-access-status{color:var(--green);align-items:center;gap:8px;font-size:14px;font-weight:500;display:inline-flex}.room-access-status.is-locked{color:var(--muted)}.room-member-list{margin:16px 0 0;padding:0;list-style:none}.room-member-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:64px;padding:10px 0;display:flex}.room-member-list li:last-child{border-bottom:0}.room-member-name{flex:1;min-width:0;font-size:15px;font-weight:500}.room-member-name>span{overflow-wrap:anywhere}.room-member-meta{color:var(--muted);flex-wrap:wrap;gap:8px;margin-top:2px;font-size:13px;font-weight:400;display:flex}.room-member-meta:empty{display:none}.room-member-list .icon-button{flex-shrink:0}.player-empty{color:var(--muted);padding:10px 0 18px;font-size:14px}.team-action,.your-team{margin-top:auto}.team-action{width:100%;min-height:44px;padding:10px 12px;font-size:14px}.your-team{min-height:44px;color:var(--green);justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.bottom-dock{padding:20px 0 calc(max(6px, env(safe-area-inset-bottom)) + 36px);background:var(--canvas);z-index:var(--layer-controls);margin-top:auto;position:sticky;bottom:0}.lobby-dock{flex-direction:column;gap:12px;display:flex}.status-line{color:var(--muted);text-align:center;overflow-wrap:anywhere;font-size:14px}.ready-controls{gap:12px;display:flex}.ready-controls>.button{flex:1;min-width:0}.play-content{--history-height:160px;flex-direction:column;gap:22px;width:100%;max-width:680px;margin:0 auto;padding:20px 0 32px;display:flex}.score-strip{scrollbar-width:thin;overscroll-behavior-x:contain;flex-wrap:nowrap;gap:10px;padding:3px 0 7px;display:flex;position:relative;overflow-x:auto}.score-chip{background:var(--surface);min-height:44px;color:var(--muted);border-radius:12px;flex-shrink:0;align-items:center;gap:9px;padding:10px 14px;font-size:15px;display:flex}.score-chip>span:not(.team-dot){white-space:nowrap}.score-chip.is-active{color:var(--ink);background:var(--sunken);font-weight:600}.score-chip strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-left:10px;font-size:20px;font-weight:700}.turn-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.role-title{letter-spacing:-.035em;font-size:clamp(22px,4.5vw,28px);font-weight:700;line-height:1.15}.role-subtitle{color:var(--muted);overflow-wrap:anywhere;margin-top:6px;font-size:16px}.turn-guessers{overflow-wrap:anywhere;margin-top:10px;font-size:14px;line-height:1.5}.turn-guessers>span{color:var(--muted)}.turn-guessers{scrollbar-width:thin;overscroll-behavior-y:contain}.timer{width:80px;height:80px;color:var(--green);flex-shrink:0;position:relative}.timer small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:500;line-height:1;display:block}.timer.is-urgent{color:var(--accent)}.word-card{background:var(--surface);border:1px solid var(--outline);width:100%;min-height:210px;box-shadow:2px 3px 0 var(--outline);text-align:center;border-radius:18px;justify-content:center;align-items:center;padding:28px 24px;display:flex;container-type:inline-size}.word{letter-spacing:-.045em;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:100%;font-size:clamp(32px,7vw,56px);font-weight:700;line-height:1.15}@supports (font-size:1cqw){.word{font-size:clamp(24px,calc(150cqw / var(--word-length,8)),56px)}}.word-placeholder{color:var(--muted);font-size:16px}.turn-stats{color:var(--muted);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:20px;margin-bottom:12px;font-size:14px;display:flex}.turn-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.play-actions{grid-template-columns:1fr 1.35fr;gap:12px;display:grid}.play-actions>.button{min-height:64px;padding:14px 10px;font-size:18px}.countdown-content{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;padding:48px 0;display:flex}.countdown-number{letter-spacing:-.06em;font-variant-numeric:tabular-nums;color:var(--accent);font-size:clamp(100px,24vw,156px);font-weight:700;line-height:1}.summary-content{flex-direction:column;flex:1;gap:24px;padding-top:32px;display:flex}.summary-hero{text-align:center}.summary-hero .page-title{overflow-wrap:anywhere;margin:8px 0}.summary-score{letter-spacing:-.05em;color:var(--green);font-variant-numeric:tabular-nums;margin:12px 0;font-size:76px;font-weight:600;line-height:1.15}.summary-person{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.readiness-dock{flex-direction:column;gap:12px;display:flex}.standings{margin:0;padding:0;list-style:none}.standing-row{background:var(--surface);border-radius:12px;align-items:center;gap:12px;margin-bottom:10px;padding:16px 18px;display:flex}.standing-row.is-winner{color:var(--green)}.standing-rank{color:var(--muted);font-variant-numeric:tabular-nums;min-width:22px;font-size:14px}.standing-name{flex:1;align-items:center;gap:8px;min-width:0;font-weight:500;display:flex}.standing-name>span:last-child{overflow-wrap:anywhere}.standing-score{font-variant-numeric:tabular-nums;font-size:26px;font-weight:600}.next-player{text-align:center;overflow-wrap:anywhere;font-weight:500}.next-player small{color:var(--muted);margin-top:4px;font-size:13px;font-weight:400;display:block}.history{background:var(--surface);border-radius:14px;padding:8px 18px}.history summary{font-size:16px;font-weight:600}.history-words{overscroll-behavior-y:contain;scrollbar-width:thin;max-height:min(40svh,320px);overflow-y:auto}.history ul{margin:0;padding:8px 0;list-style:none}.history li{justify-content:space-between;align-items:center;gap:16px;padding:9px 0;font-size:15px;display:flex}.history li>span{overflow-wrap:anywhere}.history li>svg{color:var(--green);flex-shrink:0}.history li.is-skipped>svg{color:var(--muted)}.victory-icon{color:var(--accent);margin:0 auto 20px}.game-result{min-width:0}.game-result-highlights{background:var(--surface);border-radius:14px;gap:20px;padding:20px;display:grid}.game-result-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;display:grid}.game-result-totals div{flex-direction:column-reverse;gap:4px;display:flex}.game-result-totals dt{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.game-result-totals dd{font-variant-numeric:tabular-nums;margin:0;font-size:32px;font-weight:600;line-height:1.2}.game-result h2{letter-spacing:-.02em;font-size:18px;font-weight:600}.game-result-best ul{gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.game-result-more-best{margin-top:8px}.game-result-more-best>summary{color:var(--muted);font-size:14px}.game-result-best li{justify-content:space-between;align-items:center;gap:16px;display:flex}.game-result-best li>div{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.game-result-best li strong{font-size:16px;font-weight:500}.game-result-best li span,.game-result-hint{color:var(--muted);font-size:14px}.game-result-best .game-result-points{color:var(--green);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:24px;font-weight:600}.game-result-section{gap:8px;min-width:0;display:grid}.game-result-table-scroll{border:1px solid var(--line);overscroll-behavior-x:contain;scrollbar-width:thin;border-radius:12px;max-width:100%;overflow-x:auto}.game-result-table{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.game-result-table td,.game-result-table th{text-align:center;border-bottom:1px solid var(--line);min-width:80px;padding:12px}.game-result-table thead th{color:var(--muted);background:var(--sunken);white-space:nowrap;font-weight:500}.game-result-table th:first-child{text-align:left;overflow-wrap:anywhere;border-right:1px solid var(--line);min-width:128px;max-width:160px;position:sticky;left:0}.game-result-table tbody th{background:var(--surface);font-weight:500}.game-result-table tbody th .team-dot{margin-right:8px;display:inline-block}.game-result-table td{background:var(--surface)}.game-result-table td:last-child{color:var(--green);font-weight:600}.game-result-table tbody tr:last-child>*{border-bottom:0}.game-result-history{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-width:0;padding:8px 18px}.game-result-history>summary{font-weight:600}.game-result-turns{padding:4px 0 8px}.game-result-turn+.game-result-turn{margin-top:12px}.game-result-turn>summary{background:var(--sunken);border-radius:10px;gap:12px;padding:12px}.game-result-turn-heading{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.game-result-turn-heading strong{font-size:16px;font-weight:500}.game-result-turn-heading>span{color:var(--muted);font-size:13px;font-weight:400}.game-result-words{margin:0;padding:8px 12px;list-style:none}.game-result-words li{justify-content:space-between;align-items:center;gap:16px;padding:10px 0;font-size:15px;display:flex}.game-result-words li>span{overflow-wrap:anywhere;min-width:0}.game-result-words li svg{color:var(--green);flex-shrink:0}.game-result-words li.is-skipped svg{color:var(--muted)}.game-result-history>.status-line,.game-result-turn>.status-line{padding:16px 0}.game-result-export{gap:8px;display:grid}.loading-view{min-height:50svh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:28px;height:28px;animation:spin 1s linear infinite}.guest-code{color:var(--muted);letter-spacing:.15em;margin:-12px 0 28px;font-size:24px}@keyframes spin{to{transform:rotate(1turn)}}.home-content{align-self:center;width:100%;max-width:544px}.setup-content,.summary-content{align-self:center;max-width:680px}.summary-content{width:100%}.lobby-toolbar{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.lobby-toolbar .utility-button{white-space:nowrap;flex-shrink:0;gap:8px;padding:10px 12px;font-weight:500}.lobby-toolbar .lobby-more-action{display:none}.panel-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;margin-top:28px;display:flex}.utility-button{background:var(--sunken);min-height:46px;color:var(--ink);border:0;border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:11px 16px;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.utility-button svg{color:var(--muted);flex-shrink:0}.utility-button:hover:not(:disabled){background:var(--surface)}.game-toolbar{display:flex}.dialog{border:1px solid var(--line);background:var(--surface);width:min(520px,100% - 32px);max-height:calc(100svh - 32px);color:var(--ink);border-radius:18px;margin:auto;padding:24px;position:fixed;inset:0;overflow-y:auto;box-shadow:0 24px 80px #0003}.dialog-wide{width:min(720px,100% - 32px)}.dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#17161266}.dialog-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:20px;display:flex}.dialog-heading h2{letter-spacing:-.025em;overflow-wrap:anywhere;flex:1;min-width:0;font-size:22px;font-weight:600;line-height:1.25}.dialog-heading h2:focus{outline:none}.dialog-heading .icon-button{margin:-6px -6px -6px 0}.dialog-heading .dialog-back{margin-left:-6px;margin-right:0}.dialog .button{min-height:44px;padding:10px 14px;font-size:15px;font-weight:500}.dialog .panel-actions{gap:10px;margin-top:24px}.dialog-fields{border:0;min-width:0;margin:0;padding:0}.dialog-fields .settings-grid{padding-top:0;padding-bottom:0}.dialog-description{color:var(--muted);overflow-wrap:anywhere;font-size:15px}.dialog .error-notice{margin-bottom:20px}.share-room{gap:20px;display:grid}.share-room-qr{background:#fff;border-radius:8px;justify-self:center;width:min(240px,100%);height:auto;display:block}.share-room-actions{flex-wrap:wrap;gap:12px;display:flex}.share-room-actions .button{flex:180px}@media (max-height:650px){.share-room{gap:12px}.share-room-qr{width:min(160px,100%)}.share-room-actions{gap:8px}}.timer svg{fill:none;stroke-width:4px;width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.timer-track{stroke:var(--sunken)}.timer-progress{stroke:currentColor;stroke-linecap:round;transition:stroke-dashoffset .2s linear}.timer>div{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.timer strong{color:var(--ink);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1}.timer.is-urgent strong{color:var(--accent)}.play-board{gap:24px;display:grid}.word-feed{height:var(--history-height);scrollbar-width:thin;overscroll-behavior:contain;flex-direction:column;gap:8px;margin:0;padding:0 4px 0 0;list-style:none;display:flex;overflow-y:auto}.word-feed li{background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;font-size:20px;font-weight:500;line-height:1.3;display:flex}.word-feed li>span{overflow-wrap:anywhere}.word-feed li>svg{color:var(--green);flex-shrink:0}.word-feed li.is-skipped>svg{color:var(--muted)}.feed-placeholder{height:var(--history-height)}.play-content .bottom-dock{margin-top:0;padding-top:0}.play-content.is-observer .turn-heading{border:1px solid var(--line);background:var(--surface);border-radius:18px;align-items:flex-start;padding:24px}.play-content.is-observer .role-subtitle{font-size:15px}.play-content.is-observer .turn-guessers{margin-top:16px;font-size:15px}.play-content.is-observer .live-history{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:24px}.live-history-title{margin-bottom:16px;font-size:17px;font-weight:600;line-height:1.4}.play-content.is-observer .turn-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px;font-size:14px;display:grid}.play-content.is-observer .turn-stats>span{background:var(--sunken);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;display:flex}.play-content.is-observer .turn-stats strong{font-size:20px}.play-content.is-observer .word-feed{height:auto;max-height:min(52svh,520px)}.play-content.is-observer .word-feed li{background:var(--sunken);padding:12px 14px;font-size:18px}@media (min-width:900px){.home-shell,.room-shell{width:100%;max-width:1440px;padding-left:48px;padding-right:48px}.app-header{min-height:100px}.home-content{padding-bottom:64px}.setup-content{margin-top:48px}.lobby-controls,.room-content{align-self:center;width:100%;max-width:1120px}.teams-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.lobby-dock{align-items:flex-end}.lobby-dock .ready-controls{width:480px}}@media (max-width:899px){.lobby-toolbar{flex-wrap:wrap}.lobby-toolbar .utility-button{white-space:normal;max-width:100%}.lobby-toolbar .lobby-secondary-action{display:none}.lobby-toolbar .lobby-more-action{display:inline-flex}}@media (max-width:540px){.dialog{padding:20px}.dialog-heading h2{font-size:20px}.panel-actions>.button{flex:1}.home-shell,.room-shell{padding-left:20px;padding-right:20px}.app-header{min-height:76px}.room-header .wordmark{font-size:19px}.header-meta{gap:4px}.room-header .preferences{gap:0}.round-label{padding:8px 10px;font-size:13px}.game-tools .restart-button{min-width:44px;padding:10px}.game-tools .restart-button span{display:none}.game-tools .leave-button{min-width:44px;padding:10px}.game-tools .leave-button span{display:none}.game-tools .game-menu{min-width:44px;padding:10px}.game-tools .game-menu span{display:none}.teams-grid{grid-template-columns:minmax(0,1fr)}.team-card{padding:16px}.team-heading{margin-bottom:14px}.home-content{padding-top:22px}.card-stack{width:248px;height:154px;margin-bottom:32px}.tagline{margin-bottom:28px;font-size:15px}.room-content{gap:20px;padding-top:22px}.play-content{padding-top:20px}.word-card{min-height:168px;padding:22px 16px}.play-content{--history-height:120px;gap:18px}.play-content.is-observer .live-history,.play-content.is-observer .turn-heading{border-radius:14px;padding:18px}.play-content.is-observer .turn-stats{gap:8px}.play-content.is-observer .turn-stats>span{flex-direction:column;align-items:flex-start;gap:4px;padding:10px}.utility-button{padding:10px;font-size:14px}.play-actions>.button{font-size:16px}.score-chip{gap:6px;padding:10px;font-size:14px}.score-chip strong{margin-left:4px;font-size:18px}.invitation-row{gap:12px}}@media (max-width:359px){.home-shell,.room-shell{padding-left:16px;padding-right:16px}.room-header{flex-wrap:wrap;gap:0;padding:12px 0}.header-meta{margin-left:auto}.round-label{padding:8px;font-size:12px}.settings-grid{column-gap:12px}.play-actions{gap:8px}.play-actions>.button{gap:6px;font-size:15px}}@media (max-height:720px){.home-content{padding-top:12px;padding-bottom:12px}.card-stack{height:120px;margin-top:8px;margin-bottom:24px}.hero-brand{font-size:52px}.play-content{--history-height:100px;gap:16px;padding-top:14px}.word-card{min-height:150px;padding-top:22px;padding-bottom:22px}.bottom-dock{padding-top:14px}}@media (max-width:540px) and (max-height:720px){.play-content{gap:12px;padding-top:10px}.play-content .score-strip{order:0}.play-content .turn-heading{order:1}.play-content .play-board{display:contents}.play-content .word-card{order:2;min-height:140px;padding:16px}.play-content .bottom-dock{padding-bottom:calc(max(6px, env(safe-area-inset-bottom)) + 36px);order:3}.play-content .live-history{order:4}.play-content .turn-stats{justify-content:flex-end;gap:12px;padding-inline-start:calc(120px + env(safe-area-inset-left));font-size:13px}.play-content .turn-stats>span{white-space:nowrap}.play-content .timer{width:68px;height:68px}.play-content .role-title{font-size:22px}.play-content .turn-guessers{max-height:44px;overflow-y:auto}.play-content.is-observer .turn-stats{padding-inline-start:0;font-size:14px}.play-content.is-observer .turn-stats>span{white-space:normal}.play-content.is-observer .turn-guessers{margin-top:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.server-connected{animation-delay:2s}}.play-actions .button:disabled[data-saving=true],.result-toggle:disabled[data-saving=true],.summary-next:disabled[data-saving=true]{opacity:1;cursor:pointer}.turn-heading>div:first-child{min-width:0}.turn-heading .role-title{overflow-wrap:anywhere}.room-skeleton{text-align:center;width:100%;max-width:720px}.skeleton-heading,.skeleton-line{background:var(--line);border-radius:6px}.skeleton-heading{width:160px;height:44px;margin:24px auto}.skeleton-line{height:18px;margin:18px 0}.skeleton-line:last-child{width:65%}@media (prefers-reduced-motion:no-preference){.skeleton-heading,.skeleton-line{animation:skeleton-pulse 1.8s ease-in-out infinite alternate}@keyframes skeleton-pulse{to{opacity:.4}}}@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}