/*! 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)))){*,: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-outline-style:solid;--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;--tw-ease:initial}}}@layer theme{:root,:host{--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;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--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,-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;-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:where(:not(iframe)){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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}@font-face{font-family:Roboto Condensed Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-condensed-latin-ext-wght-normal-Db2M7toj.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Condensed Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/roboto-condensed-latin-wght-normal-Cxzi1x1i.woff2)format("woff2-variations");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}:root{color:var(--text-primary);background:var(--page-background);font-synthesis:none;--page-background:#f2f4f1;--surface:#fcfcf9;--surface-elevated:#fff;--surface-muted:#e9eeea;--text-primary:#242a28;--text-secondary:#616965;--border:#d8deda;--separator:#e3e7e4;--primary-accent:#286963;--primary-accent-strong:#174f4a;--primary-accent-soft:#dceae7;--secondary-accent:#60499b;--destructive-action:#a44f48;--focus-ring:#4f3f91;--on-accent:#fff;--danger-surface:#f9e2d9;--danger-border:#c88774;--danger-ink:#732f25;--warning-surface:#fff0c8;--warning-ink:#4a3a10;--overlay:#27322999;--daily-correct:#286963;--daily-correct-ink:#fff;--daily-present:#c28a36;--daily-present-ink:#2f210d;--daily-absent:#5f6a65;--daily-absent-ink:#fff;--daily-empty:#fff;--daily-key-surface:#d7ded9;--daily-key-ink:#242a28;--cream:var(--page-background);--paper:var(--surface);--sage:var(--primary-accent);--sage-dark:var(--primary-accent-strong);--sage-pale:var(--primary-accent-soft);--wood:#262f2c;--wood-light:#46524e;--ink:var(--text-primary);--muted:var(--text-secondary);--player-one:#60499b;--player-one-ink:#41306f;--player-one-surface:#f0ebfa;--player-one-mark:#60499b;--player-two:#006477;--player-two-ink:#004754;--player-two-surface:#e4f2f3;--player-two-mark:#006477;--player-three:#a15a2a;--player-three-ink:#5c3115;--player-three-surface:#f5e6d8;--player-three-mark:#a15a2a;--player-four:#9c3f6e;--player-four-ink:#5c2440;--player-four-surface:#f6e3ee;--player-four-mark:#9c3f6e;--premium-double-letter:#bfe0fb;--premium-double-letter-ink:#0b4a73;--premium-triple-letter:#2569a8;--premium-triple-letter-ink:#fff;--premium-double-word:#ffd0c2;--premium-double-word-ink:#7a2c14;--premium-triple-word:#c73f1d;--premium-triple-word-ink:#fff;--board-square:#eef2f3;--board-grid:#9aa8ae;--board-stage:#c9d5da;--board-stage-frame:#33424c;--board-stage-ring:var(--board-stage);--board-stage-shadow:0 6px 18px #141e2433;--game-page-bg:#f7f1e6;--page-canvas:var(--page-background);--rack-surface:#fffdf8;--rack-border:#d9cdb4;--rack-shadow:0 5px 16px #14140f24;--drop-valid-outline:#235e59;--drop-valid-glow:#8abbb4;--drop-invalid-outline:#994c46;--tile-confirmed-light:#46524e;--tile-confirmed:#262f2c;--tile-confirmed-border:#0e1412;--tile-confirmed-edge:#050807;--tile-confirmed-ink:#f2ede0;--tile-tentative-outline:#e8c98a;--tile-tentative:#eafaf3;--tile-tentative-marker-ink:#0e332f;--tile-blank-accent:#e8c98a;--tile-blank-shadow:#05080a;--last-move-outline:#232b30;--status-surface:var(--surface);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI Variable,Segoe UI,system-ui,sans-serif}@supports (color:color-mix(in lab, red, red)){:root{--status-surface:color-mix(in srgb, var(--surface) 96%, transparent)}}:root{--control-surface:var(--surface-elevated);--toolbar-surface:var(--surface-muted);--shadow:0 10px 28px #242a281f;--game-stage-bg:var(--board-stage);--board-frame:var(--board-stage-frame);--board-cell:var(--board-square);--tile-surface:var(--tile-confirmed);--tile-text:var(--tile-confirmed-ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page-background:#202522;--surface:#292f2c;--surface-elevated:#333a36;--surface-muted:#303733;--text-primary:#f1f5f3;--text-secondary:#bfc9c4;--border:#4b5550;--separator:#3c4541;--primary-accent:#8bc9c1;--primary-accent-strong:#b8e0da;--primary-accent-soft:#27443f;--secondary-accent:#b4a1ec;--destructive-action:#dc8174;--focus-ring:#c1b1f1;--on-accent:#0e2420;--danger-surface:#452721;--danger-border:#a05a4d;--danger-ink:#f6cec2;--warning-surface:#453a17;--warning-ink:#f3e3ae;--overlay:#000000a6;--daily-correct:#70b8ae;--daily-correct-ink:#102824;--daily-present:#d8a44f;--daily-present-ink:#251907;--daily-absent:#3a4440;--daily-absent-ink:#fff;--daily-empty:#1d2220;--daily-key-surface:#68766f;--daily-key-ink:#fff;--player-one:#b49cff;--player-one-ink:#eee8ff;--player-one-surface:#302650;--player-one-mark:#7456c4;--player-two:#53c6dc;--player-two-ink:#ddf8fd;--player-two-surface:#183b43;--player-two-mark:#08758a;--player-three:#e8a855;--player-three-ink:#fff0dc;--player-three-surface:#4a3018;--player-three-mark:#b5722c;--player-four:#e893c4;--player-four-ink:#ffe8f5;--player-four-surface:#452038;--player-four-mark:#a54a83;--last-move-outline:#eef3f0;--status-surface:var(--surface)}@supports (color:color-mix(in lab, red, red)){[data-theme=dark]{--status-surface:color-mix(in srgb, var(--surface) 96%, transparent)}}[data-theme=dark]{--control-surface:var(--surface-elevated);--toolbar-surface:var(--surface-muted);--premium-double-letter:#4a8fc0;--premium-double-letter-ink:#04121e;--premium-triple-letter:#2b73ac;--premium-triple-letter-ink:#fff;--premium-double-word:#a85a38;--premium-double-word-ink:#fff;--premium-triple-word:#c23f16;--premium-triple-word-ink:#fff;--board-square:#242e29;--board-grid:#5f7166;--board-stage:#333f3a;--board-stage-frame:#8fa39b;--board-stage-ring:var(--board-stage);--board-stage-shadow:0 6px 20px #00000075;--game-page-bg:#1c1a17;--rack-surface:#2a332e;--rack-border:#4a5850;--rack-shadow:0 6px 20px #00000073;--drop-valid-outline:#8bc9c1;--drop-valid-glow:#4f8c83;--drop-invalid-outline:#dc8174;--tile-confirmed-light:#f7f2e6;--tile-confirmed:#efe9da;--tile-confirmed-border:#b9c2ba;--tile-confirmed-edge:#8a9a91;--tile-confirmed-ink:#1e2624;--wood:#efe9da;--wood-light:#f7f2e6;--tile-tentative-outline:#174f4a;--tile-blank-accent:#5c6b64;--tile-blank-shadow:#7c8b84}:root[data-page-surface=game]{--game-page-bg:#eef1ed;--page-canvas:var(--game-page-bg)}:root[data-theme=dark][data-page-surface=game]{--game-page-bg:#181b19}.game-page{--match-shell:#eef1ed;--match-header:#fbfcf9;--match-activity:#e4e9e4;--match-stage:#e9ede8;--match-dock:#f8f9f6;--match-panel:#fff;--match-menu:#fff;--match-control:#edf1ec;--match-control-hover:#e1e7e1;--match-control-border:#c8d1c9;--match-control-disabled:#dde2dd;--match-control-disabled-text:#747d78;--match-primary:#2f6e66;--match-primary-hover:#245b54;--match-primary-ink:#fff;--match-action-primary:#1f61c3;--match-action-primary-hover:#1953a9;--match-action-primary-pressed:#15478f;--match-action-primary-ink:#fff;--match-avatar-ink:#fff;--match-text:#202724;--match-muted:#5f6963;--match-divider:#d1d8d2;--match-focus:#6650a4;--match-scrim:#101512a8;--match-shadow-panel:0 7px 22px #18201c1f;--match-shadow-menu:0 12px 32px #18201c30;--match-board-surface:#c7cec8;--match-board-gap:#aab5ad;--match-board-outline:#98a49b;--match-board-radius:5px;--match-cell-radius:3px;--match-cell-normal:#dce3dd;--match-cell-double-letter:#c7dfc2;--match-cell-triple-letter:#b9d7e3;--match-cell-double-word:#ead1b6;--match-cell-triple-word:#dfb5b5;--match-premium-label:#24312c;--match-tile-surface:#ece3d6;--match-tile:var(--match-tile-surface);--match-tile-highlight:#f8f3e9;--match-tile-text:#202523;--match-tile-point:#343a36;--match-tile-edge:#a99f8d;--match-tile-border:var(--match-tile-edge);--match-tile-radius:6px;--match-tile-shadow:0 1px 2px #1c170f2e;--match-tile-surface-top-gloss:#ffffff2e;--match-tile-provisional:#f2eadf;--match-tile-provisional-accent:#2f6e66;--match-tile-planning-opacity:.84;--match-tile-planning-shadow:0 1px 1px #1c170f1a;--match-tile-last-played-surface:#f3dfa3;--match-tile-last-played-edge:#b69a54;--match-tile-last-played-shadow:0 1px 2px #4f3d122e;--match-tile-selected:#6650a4;--match-tile-blank-accent:#766444;--match-tile-review-surface:#fff0c8;--match-tile-review-text:#4a3a10;--match-last-move:#46534d;--match-score-surface:#f4cf3f;--match-score-text:#302600;--match-score-border:#594b13;--match-valid:#22665d;--match-invalid:#a44943;--match-drop-glow:#8abbb4;--game-page-bg:var(--match-shell);--page-background:var(--match-shell);--surface:var(--match-header);--surface-elevated:var(--match-menu);--surface-muted:var(--match-activity);--text-primary:var(--match-text);--text-secondary:var(--match-muted);--ink:var(--match-text);--muted:var(--match-muted);--paper:var(--match-panel);--border:var(--match-control-border);--separator:var(--match-divider);--primary-accent:var(--match-primary);--primary-accent-strong:var(--match-primary-hover);--primary-accent-soft:var(--match-primary)}@supports (color:color-mix(in lab, red, red)){.game-page{--primary-accent-soft:color-mix(in srgb, var(--match-primary) 15%, var(--match-panel))}}.game-page{--on-accent:var(--match-primary-ink);--focus-ring:var(--match-focus);--overlay:var(--match-scrim);--control-surface:var(--match-control);--status-surface:var(--match-header);--rack-surface:var(--match-dock);--rack-border:var(--match-divider);--rack-shadow:var(--match-shadow-panel);--board-square:var(--match-cell-normal);--board-grid:var(--match-board-gap);--board-stage:var(--match-board-surface);--board-stage-frame:var(--match-board-outline);--drop-valid-outline:var(--match-valid);--drop-valid-glow:var(--match-drop-glow);--drop-invalid-outline:var(--match-invalid);--last-move-outline:var(--match-last-move);--tile-confirmed:var(--match-tile);--tile-confirmed-light:var(--match-tile-highlight);--tile-confirmed-border:var(--match-tile-border);--tile-confirmed-edge:var(--match-tile-edge);--tile-confirmed-ink:var(--match-tile-text);--tile-tentative-outline:var(--match-tile-provisional-accent);--tile-blank-accent:var(--match-tile-blank-accent);--tile-blank-shadow:var(--match-tile-blank-accent);--premium-double-letter:var(--match-cell-double-letter);--premium-double-letter-ink:var(--match-premium-label);--premium-triple-letter:var(--match-cell-triple-letter);--premium-triple-letter-ink:var(--match-premium-label);--premium-double-word:var(--match-cell-double-word);--premium-double-word-ink:var(--match-premium-label);--premium-triple-word:var(--match-cell-triple-word);--premium-triple-word-ink:var(--match-premium-label);--player-one:#6d58a4;--player-one-ink:#463477;--player-one-surface:#eee9f8;--player-one-mark:#6d58a4;--player-two:#267568;--player-two-ink:#15564c;--player-two-surface:#e1f0ec;--player-two-mark:#267568;--player-three:#9a612a;--player-three-ink:#704218;--player-three-surface:#f5e8d9;--player-three-mark:#9a612a;--player-four:#9b4e76;--player-four-ink:#733353;--player-four-surface:#f5e4ed;--player-four-mark:#9b4e76}:root[data-theme=dark] .game-page{--match-shell:#181b19;--match-header:#222824;--match-activity:#2a312d;--match-stage:#171a18;--match-dock:#252c28;--match-panel:#222824;--match-menu:#303733;--match-control:#303733;--match-control-hover:#3a423e;--match-control-border:#4b5650;--match-control-disabled:#2a302d;--match-control-disabled-text:#8d9791;--match-primary:#79a89d;--match-primary-hover:#a9d2c9;--match-primary-ink:#101a17;--match-action-primary:#2b68ca;--match-action-primary-hover:#3978dc;--match-action-primary-pressed:#2057ad;--match-action-primary-ink:#fff;--match-text:#edf1ee;--match-muted:#b8c1bc;--match-divider:#3c4640;--match-focus:#c1b1f1;--match-scrim:#000000b5;--match-shadow-panel:0 8px 24px #0000004d;--match-shadow-menu:0 14px 34px #00000075;--match-board-surface:#101211;--match-board-gap:#101211;--match-board-outline:#343936;--match-cell-normal:#292b2a;--match-cell-double-letter:#557548;--match-cell-triple-letter:#286987;--match-cell-double-word:#a15c20;--match-cell-triple-word:#96363b;--match-premium-label:#f7f2e8;--match-tile-surface:#e7dfd2;--match-tile-highlight:#f4eee3;--match-tile-text:#202523;--match-tile-point:#343a36;--match-tile-edge:#b9b19f;--match-tile-border:var(--match-tile-edge);--match-tile-shadow:0 1px 2px #1c170f2e;--match-tile-surface-top-gloss:#ffffff2b;--match-tile-provisional:#eee7dc;--match-tile-provisional-accent:#2f6e66;--match-tile-last-played-surface:#e5c873;--match-tile-last-played-edge:#9c7b2e;--match-tile-last-played-shadow:0 1px 2px #00000047;--match-tile-selected:#c1b1f1;--match-last-move:#edf2ef;--match-valid:#8bc9c1;--match-invalid:#e88f82;--player-one:#a992e4;--player-one-ink:#e8e0fa;--player-one-surface:#302c3b;--player-one-mark:#70569e;--player-two:#72a99e;--player-two-ink:#dcece8;--player-two-surface:#283a35;--player-two-mark:#39786c;--player-three:#c58e56;--player-three-ink:#f3dfca;--player-three-surface:#3b3025;--player-three-mark:#8f5f31;--player-four:#c27aa0;--player-four-ink:#f4dce9;--player-four-surface:#3b2933;--player-four-mark:#8f4a6e}:root[data-board-theme=classic]{--wood:#f0c477;--wood-light:#f7d99e;--premium-double-letter:#b8d5e2;--premium-double-letter-ink:#294f60;--premium-triple-letter:#75a5ae;--premium-triple-letter-ink:#173a42;--premium-double-word:#e7b8b7;--premium-double-word-ink:#683838;--premium-triple-word:#c96f66;--premium-triple-word-ink:#391110;--board-square:#e9e4d8;--board-grid:#5f665f;--board-stage:#c6bfaf;--board-stage-frame:#535a54;--board-stage-ring:transparent;--board-stage-shadow:0 4px 12px #242a2824;--drop-valid-outline:#235e59;--drop-valid-glow:#8abbb4;--drop-invalid-outline:#994c46;--tile-confirmed-light:#f7d99e;--tile-confirmed:#f0c477;--tile-confirmed-border:#c88b45;--tile-confirmed-edge:#b97935;--tile-confirmed-ink:#332411;--tile-tentative-outline:#37333f;--tile-tentative:#fff8db;--tile-tentative-marker-ink:#433b20;--tile-blank-accent:#715834;--tile-blank-shadow:#8b7654;--last-move-outline:#27232d;--game-page-bg:var(--page-background);--rack-surface:var(--surface);--rack-border:var(--separator);--rack-shadow:0 4px 12px #242a2814}:root[data-board-theme=classic] .game-page{--match-board-surface:#d8cdbb;--match-board-gap:#b9aa93;--match-board-outline:#9d8d73;--match-cell-normal:#e8dfd1;--match-cell-double-letter:#c7dbbf;--match-cell-triple-letter:#b7d2dc;--match-cell-double-word:#e6c7ae;--match-cell-triple-word:#ddb6ad;--match-premium-label:#24312c;--match-tile-surface:#e9c47f;--match-tile-highlight:#f3d9a4;--match-tile-text:#302515;--match-tile-point:#514126;--match-tile-edge:#bd965a;--match-tile-border:var(--match-tile-edge);--match-tile-surface-top-gloss:#ffffff1f;--match-tile-provisional:#f6e4bc;--match-tile-provisional-accent:#4f4432;--match-tile-last-played-surface:#f6df9d;--match-tile-last-played-edge:#ad8a44;--match-tile-last-played-shadow:0 1px 2px #4c351233;--match-tile-blank-accent:#705733;--match-score-surface:#f0c94d;--match-score-text:#392b0d;--match-score-border:#69541b}:root[data-theme=dark][data-board-theme=classic] .game-page{--match-board-surface:#12110f;--match-board-gap:#12110f;--match-board-outline:#48433b;--match-cell-normal:#2c2a26;--match-cell-double-letter:#58744c;--match-cell-triple-letter:#356a7c;--match-cell-double-word:#98583a;--match-cell-triple-word:#8e3d3e;--match-premium-label:#f6f0e5;--match-tile-last-played-surface:#f0d27d;--match-tile-last-played-edge:#a58237;--match-tile-last-played-shadow:0 1px 2px #0000004d}[data-theme=dark][data-board-theme=classic]{--board-stage:#777064;--board-stage-frame:#a8a092;--board-stage-shadow:0 5px 16px #00000057;--drop-valid-outline:#efd38e;--drop-valid-glow:#a88643;--drop-invalid-outline:#ef9d91;--last-move-outline:#fff4cf}*{box-sizing:border-box}html,body,#root{background:var(--page-canvas);min-height:100%;margin:0}html[data-page-surface=game],html[data-page-surface=game] body,html[data-page-surface=game] #root{background:var(--game-page-bg)}html{overscroll-behavior-y:none}body,#root{min-height:100dvh}body{min-width:280px;overflow-x:hidden}.app-shell{background:var(--page-canvas);min-height:100dvh}.app-shell.chess-shell{grid-template-rows:minmax(0,1fr);height:100dvh;min-height:100svh;display:grid;overflow:hidden}.chess-shell>.app-main{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}button,input{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}button,summary{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}a{color:inherit}.centered{background:var(--page-canvas);place-items:center;min-height:100dvh;display:grid}.loading-mark,.brand-tile{background:var(--wood);border:1px solid var(--tile-confirmed-border);box-shadow:inset 0 1px #ffffff7a, 0 2px 0 var(--tile-confirmed-edge);color:var(--tile-confirmed-ink);place-items:center;font-weight:850;display:grid}.loading-mark{border-radius:18px;width:72px;height:72px;animation:1.4s ease-in-out infinite alternate breathe}.loading-tile{cursor:default;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.startup-shell{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));background:var(--page-canvas);color:var(--text-primary);text-align:center;touch-action:manipulation;place-content:center;justify-items:center;gap:16px;display:grid}.startup-shell-mark{justify-items:center;gap:16px;display:grid}html[data-page-surface=game] .startup-shell{background:var(--game-page-bg)}.route-chunk-shell{background:var(--page-canvas);min-height:100dvh}.app-shell .app-loading-shell{min-height:calc(100dvh - 64px - env(safe-area-inset-top))}.startup-shell-label{color:var(--text-secondary);font-size:.875rem;font-weight:650}.top-bar{z-index:20;isolation:isolate;min-height:calc(64px + env(safe-area-inset-top));padding:calc(8px + env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 8px max(14px, env(safe-area-inset-left));border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.top-bar:before{content:"";z-index:-1;background:var(--surface);position:absolute;inset:-12px 0 0}@supports (color:color-mix(in lab, red, red)){.top-bar:before{background:color-mix(in srgb, var(--surface) 96%, transparent)}}.top-bar:before{-webkit-backdrop-filter:blur(12px)}.brand{letter-spacing:-.015em;align-items:center;gap:10px;font-weight:750;text-decoration:none;display:flex}.brand-tile{border-radius:9px;width:38px;height:38px;font-family:sans-serif}.account-chip{border-radius:999px;align-items:center;gap:7px;padding:4px 6px;font-size:.84rem;text-decoration:none;display:flex}.account-chip:hover{background:var(--surface-muted)}.account-chip button,.text-button{min-height:40px;color:var(--sage-dark);text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.primary-nav{align-items:center;gap:3px;display:flex}.primary-nav a{color:var(--muted);border-radius:9px;align-items:center;gap:6px;padding:8px 11px;font-size:.8rem;font-weight:720;text-decoration:none;display:flex}.primary-nav a:hover{background:var(--surface-muted)}.primary-nav a.active{color:var(--primary-accent-strong);background:var(--primary-accent-soft);font-weight:800}.primary-nav a>span:last-child{display:inline}.page{width:min(100% - 28px,900px);padding:32px 0 calc(72px + env(safe-area-inset-bottom));margin-inline:auto}.page-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;display:flex}.page-heading h1,.login-card h1{color:var(--text-primary);letter-spacing:-.035em;margin:2px 0 8px;font-size:clamp(2rem,8vw,3.2rem);font-weight:760;line-height:1.05}.page-heading p,.intro{color:var(--muted);max-width:35rem;margin:0}.eyebrow{color:var(--primary-accent-strong);letter-spacing:.08em;margin:0 0 5px;font-size:.75rem;font-weight:780}.primary-button,.secondary-button{border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:50px;padding:0 22px;font-weight:760;line-height:1.1;text-decoration:none;display:inline-flex}.primary-button{border:1px solid var(--primary-accent);color:var(--on-accent);background:var(--primary-accent);box-shadow:0 2px 5px var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.primary-button{box-shadow:0 2px 5px color-mix(in srgb, var(--primary-accent) 22%, transparent)}}.primary-button:hover:not(:disabled){background:var(--primary-accent-strong)}.primary-button:active:not(:disabled){box-shadow:none;translate:0 1px}.primary-button.compact,.secondary-button.compact{white-space:nowrap;min-height:46px}.secondary-button{border:1px solid var(--border);color:var(--text-primary);background:var(--surface-elevated)}.secondary-button:hover:not(:disabled){border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.secondary-button:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}.secondary-button:hover:not(:disabled){background:var(--surface-muted)}.secondary-button:active:not(:disabled){translate:0 1px}.danger-button{background:var(--destructive-action);min-height:50px;color:var(--on-accent);border:1px solid var(--destructive-action);border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-weight:760;line-height:1.1;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.danger-button{border:1px solid color-mix(in srgb, var(--destructive-action) 76%, black)}}.danger-button.compact{white-space:nowrap;min-height:46px}.danger-button:hover:not(:disabled){background:var(--destructive-action)}@supports (color:color-mix(in lab, red, red)){.danger-button:hover:not(:disabled){background:color-mix(in srgb, var(--destructive-action) 82%, black)}}.danger-button:active:not(:disabled){translate:0 1px}.danger-button:disabled{opacity:.6}.login-page{min-height:100dvh;padding:calc(24px + env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));place-items:center;display:grid}.login-card{border:1px solid var(--border);background:var(--surface);width:min(100%,430px);box-shadow:var(--shadow);border-radius:20px;padding:34px}.login-emblem{margin-bottom:28px;display:flex}.login-emblem span{border:1px solid var(--tile-confirmed-border);background:var(--wood);width:54px;height:54px;box-shadow:0 3px 0 var(--tile-confirmed-edge);color:var(--tile-confirmed-ink);border-radius:10px;place-items:center;margin-right:-8px;font-weight:850;display:grid;transform:rotate(-5deg)}.login-emblem span+span{transform:rotate(6deg)translateY(5px)}.login-card form{gap:16px;margin-top:28px;display:grid}.login-card label{gap:7px;font-size:.85rem;font-weight:800;display:grid}.login-card input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:50px;color:var(--ink);border-radius:10px;outline:none;padding:0 14px}.login-card input:focus{border-color:var(--primary-accent);box-shadow:0 0 0 3px var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.login-card input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-accent) 24%, transparent)}}.form-error{border-left:4px solid var(--destructive-action);background:var(--danger-surface);color:var(--danger-ink);border-radius:6px;padding:10px 12px;font-size:.9rem}.head-to-head{border:1px solid var(--separator);background:var(--surface);border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin-bottom:22px;padding:10px 14px;display:grid}.head-to-head h2{color:var(--text-primary);white-space:nowrap;margin:0;font-size:1rem;font-weight:750}.head-to-head dl{text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0;display:grid}.head-to-head dl div{min-width:0}.head-to-head dt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:750;overflow:hidden}.head-to-head dd{color:var(--ink);margin:1px 0 0;font-size:.92rem;font-weight:900}.game-list-section+.game-list-section{margin-top:25px}.game-list-heading{align-items:center;gap:7px;margin:0 2px 8px;display:flex}.game-list-heading h2{color:var(--ink);margin:0;font-size:1.08rem;font-weight:750}.game-list-heading>span{background:var(--surface-muted);min-width:20px;color:var(--muted);text-align:center;border-radius:999px;padding:2px 6px;font-size:.65rem;font-weight:800}.match-view-tabs{background:var(--surface-muted);border-radius:10px;grid-template-columns:repeat(2,minmax(92px,1fr));gap:3px;width:fit-content;margin:-8px 0 24px;padding:3px;display:grid}.match-view-tabs a{min-height:40px;color:var(--muted);border-radius:8px;place-items:center;padding:0 16px;font-size:.8rem;font-weight:750;text-decoration:none;display:grid}.match-view-tabs a[aria-current=page]{background:var(--surface-elevated);color:var(--primary-accent-strong);box-shadow:0 1px 4px #242a281a}.home-sections>*+*{margin-top:25px}.section-footer-action{border:1px solid var(--separator);background:var(--surface);width:100%;min-height:44px;color:var(--sage-dark);border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding:10px 14px;font-size:.84rem;font-weight:750;text-decoration:none;transition:border-color .18s,transform .18s;display:flex}.section-footer-action:hover{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.section-footer-action:hover{border-color:color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}.section-footer-action:hover{transform:translateY(-1px)}.section-footer-action>span:last-child{color:var(--text-secondary);font-size:1.1rem}.empty-card-action{margin-top:14px}.game-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:10px;display:grid}.game-list-section button:not(.primary-button):not(.danger-button){border:1px solid var(--border);background:var(--control-surface);min-height:44px;color:var(--text-primary);border-radius:8px;padding:0 14px;font-size:.78rem;font-weight:750}.game-list-section button:not(.primary-button):not(.danger-button):disabled{border-color:var(--separator)}.game-card{border:1px solid var(--separator);background:var(--surface);min-width:0;min-height:84px;color:var(--ink);border-radius:10px;align-content:center;gap:10px;padding:12px 13px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;box-shadow:0 2px 7px #242a2812}.game-card:hover{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.game-card:hover{border-color:color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}.game-card:hover{transform:translateY(-1px);box-shadow:0 5px 14px #242a281a}.game-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.game-card.active-yours{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.game-card.active-yours{border-color:color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.game-card.active-yours{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.game-card.active-yours{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.game-card.won{border-left:3px solid var(--primary-accent)}.game-card.lost,.game-card.draw{border-left:3px solid var(--text-secondary)}.game-card-primary{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.game-card-title-group{align-items:center;gap:7px;min-width:0;display:flex}.game-card-primary strong{min-width:0;color:var(--ink);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:1.03rem;font-weight:750;overflow:hidden}.game-card.active-yours .game-card-primary strong,.game-card.won .game-card-primary strong{color:var(--sage-dark)}.game-card-primary time{color:var(--muted);white-space:nowrap;flex:none;font-size:.68rem}.game-card-summary{grid-template-columns:minmax(0,1fr) auto 12px;align-items:center;gap:8px;min-width:0;display:grid}.game-card-score-line{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;display:block;overflow:hidden}.game-card-score-line b{color:var(--ink)}.game-card-score-line>span{color:var(--text-secondary);margin-inline:5px}.opponent-name{font-weight:800}.game-status-chip{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.02em;border-radius:999px;padding:3px 7px;font-size:.58rem;font-weight:780}.game-status-chip.active-yours{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.game-status-chip.active-yours{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.game-status-chip.active-yours{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.game-status-chip.won{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.game-status-chip.won{border-color:color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.game-status-chip.won{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.game-card.lost .game-status-chip{color:var(--text-secondary)}.game-status-chip.draw{border-color:var(--border);background:var(--surface-muted);color:var(--text-secondary)}.game-card-chevron{color:var(--text-secondary);font-size:1.3rem;font-weight:800;line-height:1}.empty-card{text-align:center;border:1px dashed var(--border);background:var(--surface);border-radius:14px;padding:54px 20px}.empty-card>span{color:var(--sage);font-size:2rem}.empty-card h2{font-weight:750}.game-card-participants{margin-top:-3px}.participant-stack{align-items:center;gap:6px;min-width:0;max-width:100%;display:flex}.participant-stack-avatars{flex:none;display:flex}.participant-avatar{border:2px solid var(--surface);background:var(--player-one-surface);width:20px;height:20px;color:var(--player-one-ink);border-radius:50%;place-items:center;margin-left:-6px;font-size:.58rem;font-weight:800;display:grid}.participant-avatar-image{object-fit:cover;display:block}.participant-avatar:first-child{margin-left:0}.participant-avatar.seat-2{background:var(--player-two-surface);color:var(--player-two-ink)}.participant-avatar.seat-3{background:var(--player-three-surface);color:var(--player-three-ink)}.participant-avatar.seat-4{background:var(--player-four-surface);color:var(--player-four-ink)}.participant-stack-names{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;gap:3px;font-size:.7rem;display:flex;overflow:hidden}.participant-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.participant-name.emphasized{color:var(--sage-dark);font-weight:800}.participant-name+.participant-name:before{content:", "}.score-row{flex-wrap:wrap;gap:6px;display:flex}.score-row-item{border:1px solid var(--separator);background:var(--surface);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:.72rem;display:flex}.score-row-item.current-turn{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.score-row-item.current-turn{border-color:color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.score-row-item.current-turn{background:var(--primary-accent-soft)}.score-row-name{max-width:12ch;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.score-row-item b{color:var(--ink)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;margin:6px 0 0;display:grid}.stat-grid div{border:1px solid var(--separator);background:var(--surface);text-align:center;border-radius:9px;padding:10px}.stat-grid dt{color:var(--muted);font-size:.64rem;font-weight:700}.stat-grid dd{color:var(--ink);margin:3px 0 0;font-size:1.1rem;font-weight:850}.recent-form{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 0;font-size:.72rem;display:flex}.form-pill{background:var(--surface-muted);width:22px;height:22px;color:var(--text-secondary);border-radius:50%;place-items:center;font-size:.68rem;display:grid}.form-pill.win{background:var(--primary-accent);color:var(--on-accent)}.form-pill.shared_win{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.form-pill.loss{background:var(--surface-muted);color:var(--text-secondary)}.form-note{color:var(--muted);margin:8px 0 0;font-size:.74rem}.identity-header{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:32px;display:flex}.identity-header-avatar{background:var(--surface-muted);border-radius:50%;place-items:center;width:96px;height:96px;margin-bottom:8px;font-size:2.8rem;display:grid}.identity-header h1{text-overflow:ellipsis;letter-spacing:-.02em;max-width:100%;margin:0;font-size:1.75rem;overflow:hidden}.identity-header-username{color:var(--muted);margin:0;font-size:1.25rem;font-weight:650}.identity-header-badge{background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;margin-top:6px;padding:4px 12px;font-size:.75rem;font-weight:780}.mode-badge{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:.64rem;font-weight:780;display:inline-flex}.mode-badge.hard-mode{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.mode-badge.hard-mode{border-color:color-mix(in srgb, var(--primary-accent) 55%, var(--border))}}.mode-badge.hard-mode{background:var(--primary-accent);color:var(--on-accent)}.friends-summary-avatars{margin:10px 0 4px;display:flex}.friends-summary-avatars .friend-picker-avatar{border:2px solid var(--surface);width:34px;height:34px;margin-left:-8px;font-size:1rem}.friends-summary-avatars .friend-picker-avatar:first-child{margin-left:0}.friends-summary-card .secondary-button{margin-top:12px}.friends-summary-pending{color:var(--primary-accent-strong);margin:2px 0 0;font-size:.78rem;font-weight:750}.friends-page-outgoing{border-top:1px dashed var(--separator);margin-top:14px;padding-top:10px}.profile-page .field-label{margin-top:10px}.profile-page input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:44px;color:var(--ink);border-radius:9px;margin-bottom:8px;padding:0 12px}.profile-subheading{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin:16px 0 6px;font-size:.78rem;font-weight:780}.friend-request-actions{gap:6px;display:flex}.daily-statistics-distribution{gap:3px;margin:8px 0 0;padding:0;list-style:none;display:grid}.daily-statistics-distribution li{grid-template-columns:16px 1fr;align-items:center;gap:5px;font-size:.68rem;display:grid}.daily-statistics-distribution li i{background:var(--primary-accent);min-width:22px;color:var(--on-accent);text-align:right;padding:2px 4px;font-style:normal}.leaderboard-toggles{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.segmented-control{background:var(--surface-muted);border-radius:10px;padding:3px;display:inline-flex}.segmented-control button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 13px;font-size:.78rem;font-weight:750}.segmented-control button[aria-checked=true]{background:var(--surface-elevated);color:var(--primary-accent-strong);box-shadow:0 1px 4px #242a281a}.switch-row{border:1px solid var(--separator);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:56px;padding:10px 14px;display:flex}.switch-row:disabled{opacity:.55;cursor:not-allowed}.switch-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.switch-label{color:var(--ink);font-size:.92rem;font-weight:780}.switch-description{color:var(--muted);font-size:.78rem;line-height:1.35}.switch-track{border:1px solid var(--border);background:var(--surface-muted);border-radius:999px;flex:none;width:46px;height:28px;transition:background-color .15s,border-color .15s;position:relative}.switch-thumb{background:var(--surface-elevated);border-radius:50%;width:22px;height:22px;transition:translate .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #242a2838}.switch-row[aria-checked=true] .switch-track{border-color:var(--primary-accent);background:var(--primary-accent)}.switch-row[aria-checked=true] .switch-thumb{background:var(--on-accent);translate:18px}@media (prefers-reduced-motion:reduce){.switch-track,.switch-thumb{transition:none}}.leaderboard-rows{grid-template-columns:1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-row{border:1px solid var(--separator);background:var(--surface);border-radius:10px}.leaderboard-row.current-user{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.current-user{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.leaderboard-row.current-user{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.current-user{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.leaderboard-row>summary{cursor:pointer;align-items:center;gap:10px;min-height:52px;padding:8px 12px;list-style:none;display:flex}.leaderboard-row>summary::-webkit-details-marker{display:none}.leaderboard-rank{width:30px;color:var(--muted);flex:none;font-size:.78rem;font-weight:800}.leaderboard-row.podium{border-width:1px}.leaderboard-row.podium-1{border-color:#d4a72c}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-1{border-color:color-mix(in srgb, #d4a72c 55%, var(--border))}}.leaderboard-row.podium-1{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-1{background:color-mix(in srgb, var(--surface) 92%, #d4a72c 14%)}}.leaderboard-row.podium-2{border-color:#9aa5b1}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-2{border-color:color-mix(in srgb, #9aa5b1 55%, var(--border))}}.leaderboard-row.podium-2{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-2{background:color-mix(in srgb, var(--surface) 94%, #9aa5b1 12%)}}.leaderboard-row.podium-3{border-color:var(--separator)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-3{border-color:color-mix(in srgb, var(--separator) 80%, #9c7a52 40%)}}.leaderboard-row.podium-3{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.leaderboard-row.podium-3{background:color-mix(in srgb, var(--surface) 96%, #9c7a52 8%)}}.leaderboard-podium-mark{text-align:center;width:auto;font-size:1.15rem}.leaderboard-see-more{margin:10px auto 0;display:block}.leaderboard-name{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-weight:750;overflow:hidden}.provisional-badge{background:var(--surface-muted);color:var(--muted);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.58rem;font-style:normal;font-weight:750}.leaderboard-primary-metric{color:var(--muted);white-space:nowrap;flex:none;font-size:.74rem}.leaderboard-primary-metric b{color:var(--ink)}.leaderboard-row>dl.stat-grid{margin:0;padding:0 12px 12px}.leaderboard-desktop-only{display:none}.home-page .compact-list .game-card{min-height:0}.daily-dashboard-card{border:1px solid var(--primary-accent);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:82px;padding:11px 13px;display:grid}@supports (color:color-mix(in lab, red, red)){.daily-dashboard-card{border:1px solid color-mix(in srgb, var(--primary-accent) 30%, var(--border))}}.daily-dashboard-card{background:var(--surface);border-radius:11px}@supports (color:color-mix(in lab, red, red)){.daily-dashboard-card{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.daily-dashboard-card{text-decoration:none;box-shadow:0 3px 10px #242a2812}.daily-dashboard-card:focus-visible{outline-color:var(--focus-ring)}.daily-dashboard-card.not-started,.daily-dashboard-card.playing{border-left:3px solid var(--primary-accent)}.daily-dashboard-icon{background:var(--primary-accent);width:46px;height:46px;color:var(--on-accent);border-radius:9px;place-items:center;font-size:1.35rem;font-weight:850;display:grid}.daily-dashboard-card>span:nth-child(2){min-width:0;display:grid}.daily-dashboard-card small{color:var(--muted);font-size:.67rem}.daily-dashboard-card strong{font-size:1.05rem}.daily-dashboard-card b{color:var(--primary-accent-strong);font-size:.75rem}.daily-dashboard-friend{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.72rem;display:flex}.daily-dashboard-friend i{color:var(--primary-accent);font-size:1.4rem;font-style:normal}.daily-dashboard-action{background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.02em;border-radius:999px;padding:3px 8px;font-size:.62rem;font-weight:800}.daily-dashboard-action.not-started,.daily-dashboard-action.playing{background:var(--primary-accent);color:var(--on-accent)}.daily-dashboard-action.solved{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.game-page{width:min(100%,1120px);min-width:0;min-height:100dvh;padding:0 0 calc(14px + env(safe-area-inset-bottom));background:var(--game-page-bg);margin-inline:auto}.game-page.match-state-page{width:100%;max-width:none;min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:var(--match-shell);color:var(--match-text)}.match-hydration-shell{min-height:100dvh}.match-error-shell{place-items:center;display:grid}.match-error-shell>section{border:1px solid var(--match-divider);background:var(--match-panel);width:min(100%,430px);box-shadow:var(--match-shadow-panel);border-radius:14px;padding:24px}.match-error-shell a{min-height:44px;color:var(--match-primary-hover);align-items:center;font-size:.82rem;font-weight:760;text-decoration:none;display:inline-flex}.match-error-shell h1{margin:12px 0 8px;font-size:clamp(1.5rem,6vw,2rem);line-height:1.1}.match-error-shell p{margin:0}.game-header-shell{z-index:20;position:sticky;top:0}.compact-game-status{padding:calc(2px + env(safe-area-inset-top)) max(4px, env(safe-area-inset-right)) 5px max(4px, env(safe-area-inset-left));border-bottom:1px solid var(--match-divider);background:var(--match-header);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);gap:3px;margin:0;display:grid;box-shadow:0 2px 7px #18201c12}.match-status-row{grid-template-columns:44px minmax(0,1fr) auto 44px;align-items:center;gap:4px;min-height:44px;display:grid}.match-bag-count{border:1px solid var(--match-divider);background:var(--match-control);color:var(--match-muted);white-space:nowrap;border-radius:999px;margin:0;padding:4px 9px;font-size:.66rem;font-weight:780;line-height:1.1}.compact-players{gap:4px;min-width:0;display:flex}.status-icon-button{width:44px;height:44px;color:var(--match-primary-hover);background:0 0;border:0;border-radius:11px;place-items:center;padding:0;font-size:1.35rem;font-weight:900;text-decoration:none;display:grid}.status-icon-button:hover{background:var(--match-control)}.information-button>span{border:2px solid;border-radius:50%;place-items:center;width:21px;height:21px;font:italic 800 .78rem/1 Georgia,serif;display:grid}.compact-player,.compact-turn,.history-move{--player-accent:var(--player-one);--player-ink:var(--player-one-ink);--player-surface:var(--player-one-surface);--player-mark:var(--player-one-mark)}.compact-player.player-2,.compact-turn.player-2,.history-move.player-2{--player-accent:var(--player-two);--player-ink:var(--player-two-ink);--player-surface:var(--player-two-surface);--player-mark:var(--player-two-mark)}.compact-player.player-3,.compact-turn.player-3,.history-move.player-3{--player-accent:var(--player-three);--player-ink:var(--player-three-ink);--player-surface:var(--player-three-surface);--player-mark:var(--player-three-mark)}.compact-player.player-4,.compact-turn.player-4,.history-move.player-4{--player-accent:var(--player-four);--player-ink:var(--player-four-ink);--player-surface:var(--player-four-surface);--player-mark:var(--player-four-mark)}.compact-player{border:0;border-bottom:2px solid var(--player-accent);flex:1 1 0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;padding:3px 6px 4px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.compact-player{border-bottom:2px solid color-mix(in srgb, var(--player-accent) 24%, transparent)}}.compact-player{background:var(--player-surface);border-radius:9px 9px 3px 3px}@supports (color:color-mix(in lab, red, red)){.compact-player{background:color-mix(in srgb, var(--player-surface) 24%, transparent)}}.compact-player.active-player{border-bottom-color:var(--player-accent);background:var(--player-surface)}@supports (color:color-mix(in lab, red, red)){.compact-player.active-player{background:color-mix(in srgb, var(--player-surface) 72%, transparent)}}.compact-player>.participant-avatar{border:1px solid var(--player-accent);flex:none;width:28px;height:28px;margin:0}@supports (color:color-mix(in lab, red, red)){.compact-player>.participant-avatar{border:1px solid color-mix(in srgb, var(--player-accent) 68%, var(--separator))}}.compact-player>.participant-avatar{font-size:.78rem}.compact-player p{min-width:0;margin:0}.compact-player small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-weight:700;line-height:1.25;display:block;overflow:hidden}.compact-player strong{color:var(--player-ink);font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:850;line-height:1.1;display:block}.compact-players[data-player-count="4"] .compact-player{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center;gap:0;padding:3px 3px 4px}.compact-players[data-player-count="4"] .compact-player>.participant-avatar{width:23px;height:23px;font-size:.64rem}.compact-players[data-player-count="4"] .compact-player p{width:100%}.compact-players[data-player-count="4"] .compact-player strong{font-size:.95rem}.compact-turn{justify-content:center;align-items:center;gap:6px;min-width:0;margin:0;line-height:1.15;display:flex}.compact-turn strong{min-width:0;color:var(--player-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;font-weight:790;overflow:hidden}.turn-accent{border:1px solid var(--player-ink);background:var(--player-accent);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.latest-activity{width:100%;min-height:25px;padding:3px max(10px, env(safe-area-inset-right)) 3px max(10px, env(safe-area-inset-left));border:0;border-bottom:1px solid var(--match-divider);background:var(--match-activity);color:var(--match-text);text-align:left;grid-template-columns:auto minmax(0,1fr) auto auto auto minmax(0,auto);align-items:center;gap:5px;margin:0;font-size:.67rem;line-height:1.1;display:grid}.latest-activity:hover{background:var(--match-control-hover)}.latest-activity:focus-visible{outline:3px solid var(--match-focus);outline-offset:-3px}.activity-icon{width:18px;color:var(--match-primary-hover);text-align:center;font-size:.76rem;font-weight:850}.activity-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.latest-activity strong{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--match-muted);font-size:.64rem;overflow:hidden}.activity-separator{color:var(--match-muted)}.latest-activity-strip{align-items:stretch;min-width:0;display:flex}.latest-activity-strip>.latest-activity{flex:auto;min-width:0}.latest-activity-blank{display:block}.match-sync-status{max-width:60%;padding:3px max(10px, env(safe-area-inset-right)) 3px 9px;border-bottom:1px solid var(--match-divider);background:var(--match-activity);color:var(--match-muted);white-space:nowrap;flex:none;align-items:center;gap:5px;font-size:.62rem;font-weight:750;line-height:1.1;display:inline-flex}.match-sync-text{text-overflow:ellipsis;overflow:hidden}.match-sync-status[data-tone=updated]{color:var(--match-primary-hover)}.match-sync-spinner{border:2px solid;flex:none;width:9px;height:9px}@supports (color:color-mix(in lab, red, red)){.match-sync-spinner{border:2px solid color-mix(in srgb, currentColor 28%, transparent)}}.match-sync-spinner{border-top-color:currentColor;border-radius:50%;animation:.7s linear infinite match-sync-spin}@keyframes match-sync-spin{to{transform:rotate(360deg)}}.match-subview-header{min-height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(8px, env(safe-area-inset-right)) 0 max(8px, env(safe-area-inset-left));border-bottom:1px solid var(--match-divider);background:var(--match-header);grid-template-columns:minmax(92px,1fr) auto minmax(92px,1fr);align-items:center;margin:0;display:grid}.match-subview-header h1{letter-spacing:-.01em;text-align:center;margin:0;font-size:1rem;font-weight:720}.back-to-board{min-width:92px;min-height:48px;color:var(--match-text);justify-self:start;align-items:center;gap:5px;font-size:.82rem;font-weight:760;text-decoration:none;display:inline-flex}.back-to-board>span{font-size:1.6rem;font-weight:500;line-height:1}.subview-more-actions{justify-self:end;width:48px}.subview-more-actions>.more-trigger{background:0 0;border:0;min-height:48px}.subview-more-actions>div{top:calc(100% + 5px);bottom:auto}.game-content{min-width:0;padding-inline:8px}.game-panel{min-width:0;display:none}.game-panel.active{display:block}.match-play-area{display:contents}.offline-banner{background:var(--warning-surface);color:var(--warning-ink);border-radius:10px;padding:9px 12px;font-size:.8rem}.update-notice{background:var(--primary-accent-soft);color:var(--primary-accent-strong);border-radius:10px;margin:8px 0 0;padding:9px 12px;font-size:.82rem}.activity-toast{z-index:70;top:calc(88px + env(safe-area-inset-top));pointer-events:none;justify-content:center;display:flex;position:fixed;left:10px;right:10px}.activity-toast button{border:1px solid var(--match-control-border);background:var(--match-panel);border-radius:12px;align-items:center;gap:8px;width:min(100%,430px);min-height:44px;padding:8px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.activity-toast button{background:color-mix(in srgb, var(--match-panel) 96%, transparent)}}.activity-toast button{box-shadow:var(--match-shadow-menu);color:var(--match-text);text-align:left;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.76rem;font-weight:750}.activity-toast button>span{color:var(--match-primary-hover);font-weight:950}.challenge-result-toast{border:1px solid var(--match-control-border);background:var(--match-panel);border-radius:12px;width:min(100%,430px);margin:0 auto;padding:10px 14px}@supports (color:color-mix(in lab, red, red)){.challenge-result-toast{background:color-mix(in srgb, var(--match-panel) 96%, transparent)}}.challenge-result-toast{box-shadow:var(--match-shadow-menu);color:var(--match-text);text-align:left;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.challenge-result-toast strong{margin-bottom:2px;font-size:.84rem;font-weight:850;display:block}.challenge-result-toast p{color:var(--muted);margin:0;font-size:.76rem}.challenge-result-toast.success strong{color:var(--sage-dark)}.board-section{margin-top:0;padding:0;position:relative}.board-stage-shell{width:min(100%,614px);margin-inline:auto}.board-viewport{aspect-ratio:1;contain:layout paint;border:1px solid var(--match-board-outline);border-radius:var(--match-board-radius);background:var(--match-board-surface);width:100%;height:auto;box-shadow:none;cursor:grab;overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;margin-inline:auto;position:relative;overflow:hidden}.board-viewport.is-manipulating{cursor:grabbing}.board-transform-layer{transform-origin:0 0;width:614px;height:614px;position:absolute;top:0;left:0}.board-transform-layer.is-manipulating,.board-transform-layer.animate-transform{will-change:transform}.board-transform-layer.animate-transform{transition:transform .2s ease-out}.board-grid{background:var(--match-board-gap);grid-template-rows:repeat(15,minmax(0,1fr));grid-template-columns:repeat(15,minmax(0,1fr));gap:3px;width:614px;height:614px;display:grid}.provisional-score-badge{z-index:12;border:2px solid var(--match-score-border);background:var(--match-score-surface);min-width:40px;height:36px;box-shadow:0 4px 9px var(--match-score-text);border-radius:999px;place-items:center;padding:0 10px;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.provisional-score-badge{box-shadow:0 4px 9px color-mix(in srgb, var(--match-score-text) 28%, transparent)}}.provisional-score-badge{color:var(--match-score-text);font-variant-numeric:tabular-nums;pointer-events:none;font-size:1.12rem;font-weight:900;line-height:1}.provisional-score-badge.planning-score{box-shadow:0 2px 5px var(--match-score-text)}@supports (color:color-mix(in lab, red, red)){.provisional-score-badge.planning-score{box-shadow:0 2px 5px color-mix(in srgb, var(--match-score-text) 18%, transparent)}}.provisional-score-badge.flip-horizontal{transform:translate(-100%)}.provisional-score-badge.flip-vertical{transform:translateY(-100%)}.provisional-score-badge.flip-horizontal.flip-vertical{transform:translate(-100%,-100%)}.board-cell{border-radius:var(--match-cell-radius);background:var(--match-cell-normal);min-width:0;min-height:0;color:var(--match-muted);border:0;place-items:center;width:100%;height:100%;padding:0;line-height:1;display:grid;position:relative}.board-view-toolbar{justify-content:flex-end;align-items:center;width:100%;height:50px;padding-bottom:6px;display:flex;position:relative}.board-view-inline button{border:1px solid var(--border);background:var(--surface-elevated);min-width:44px;height:44px;color:var(--text-primary);border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-size:.7rem;font-weight:750;transition:background .14s,border-color .14s,transform .14s;display:inline-flex;box-shadow:0 2px 5px #242a2817}.board-view-inline button:hover:not(:disabled){border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.board-view-inline button:hover:not(:disabled){border-color:color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.board-view-inline button:hover:not(:disabled){background:var(--surface-elevated)}@supports (color:color-mix(in lab, red, red)){.board-view-inline button:hover:not(:disabled){background:color-mix(in srgb, var(--surface-elevated) 88%, var(--primary-accent))}}.board-view-inline button:active:not(:disabled){transform:translateY(1px)}.board-view-inline svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.board-view-inline{align-items:center;gap:4px;display:flex}.board-view-inline button:last-child{min-width:58px}.board-cell:focus-visible{z-index:5;outline:3px solid var(--match-focus);outline-offset:-3px}.board-cell.premium.double_letter:not(.has-tile){background:var(--match-cell-double-letter);color:var(--match-premium-label)}.board-cell.premium.triple_letter:not(.has-tile){background:var(--match-cell-triple-letter);color:var(--match-premium-label)}.board-cell.premium.double_word:not(.has-tile){background:var(--match-cell-double-word);color:var(--match-premium-label)}.board-cell.premium.triple_word:not(.has-tile){background:var(--match-cell-triple-word);color:var(--match-premium-label)}.premium-label{color:var(--match-premium-label);letter-spacing:.01em;text-align:center;text-shadow:none;white-space:nowrap;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI Variable,Segoe UI,system-ui,sans-serif;font-size:.82rem;font-weight:820;line-height:1}.start-marker{color:var(--match-premium-label);place-items:center;gap:1px;font-size:.74rem;font-weight:820;line-height:.7;display:grid}.start-marker>span{font-size:1.25em}.start-marker b{font-size:.82rem}.tile-shell{--tile-shell-surface:var(--match-tile);--tile-shell-edge:var(--match-tile-edge);--tile-shell-shadow:var(--match-tile-shadow);border:1px solid var(--tile-shell-edge);border-radius:var(--match-tile-radius);background:var(--tile-shell-surface);box-shadow:var(--tile-shell-shadow);color:var(--match-tile-text);filter:none;font-optical-sizing:auto;text-rendering:geometricprecision;font-family:Roboto Condensed Variable,Arial Narrow,ui-sans-serif,sans-serif;font-weight:560;position:relative;overflow:hidden;transform:none}.tile-shell:before{content:none}.tile-shell:after{content:"";z-index:1;background:var(--match-tile-surface-top-gloss);pointer-events:none;border-radius:0 0 50% 50%/0 0 16% 16%;width:128%;height:54%;position:absolute;top:0;left:-14%}.board-cell.tentative.player-1{--tile-player-accent:var(--player-one)}.board-cell.tentative.player-2{--tile-player-accent:var(--player-two)}.board-cell.tentative.player-3{--tile-player-accent:var(--player-three)}.board-cell.tentative.player-4{--tile-player-accent:var(--player-four)}.board-cell.tentative{--tile-shell-surface:var(--match-tile-provisional);z-index:2}.board-cell.tentative.planning{--tile-shell-shadow:var(--match-tile-planning-shadow);opacity:var(--match-tile-planning-opacity)}.board-cell.selected{z-index:2;outline:3px solid var(--match-tile-selected);outline-offset:1px}.board-cell.provisional-play{--tile-shell-surface:var(--match-tile-review-surface)}@supports (color:color-mix(in lab, red, red)){.board-cell.provisional-play{--tile-shell-surface:color-mix(in srgb, var(--match-tile-review-surface) 28%, var(--match-tile))}}.board-cell.provisional-play:before{content:"REVIEW";z-index:2;background:var(--match-tile-review-surface);color:var(--match-tile-review-text);letter-spacing:.01em;border-radius:2px;padding:1px 2px;font-family:ui-sans-serif,sans-serif;font-size:.3rem;font-weight:900;line-height:1;position:absolute;bottom:2px;left:2px}.board-cell.latest-move:not(.provisional-play){--tile-shell-surface:var(--match-tile-last-played-surface);--tile-shell-edge:var(--match-tile-last-played-edge);--tile-shell-shadow:var(--match-tile-last-played-shadow);z-index:1}.board-cell.tile-settling{animation:.26s ease-out both board-tile-settle}@keyframes board-tile-settle{0%{opacity:.3;transform:translateY(-3px)scale(.94)}to{opacity:1;transform:none}}.board-cell.selected-history-move.player-1{--move-player-accent:var(--player-one)}.board-cell.selected-history-move.player-2{--move-player-accent:var(--player-two)}.board-cell.selected-history-move.player-3{--move-player-accent:var(--player-three)}.board-cell.selected-history-move.player-4{--move-player-accent:var(--player-four)}.board-cell.selected-history-move{z-index:3;outline:3px solid var(--move-player-accent);outline-offset:-3px}.board-cell.drop-target-valid{z-index:4;outline:3px solid var(--drop-valid-outline);outline-offset:-4px}.board-cell.drop-target-invalid{z-index:4;outline:3px dashed var(--drop-invalid-outline);outline-offset:-4px}.tile-letter{z-index:2;line-height:.82;position:relative}.board-cell .tile-letter{font-size:1.9rem}.tile-points{z-index:2;color:var(--match-tile-point);text-align:right;font-family:Roboto Condensed Variable,Arial Narrow,ui-sans-serif,sans-serif;font-weight:680;line-height:1;position:absolute}.board-cell .tile-points{min-width:8px;font-size:.68rem;top:3px;right:3px}.turn-tray{width:min(100%,624px);padding:9px 8px calc(9px + env(safe-area-inset-bottom));border:1px solid var(--rack-border);background:var(--rack-surface);box-shadow:var(--rack-shadow);border-radius:12px;margin:6px auto 0}.rack{outline-offset:3px;border-radius:10px;outline:2px solid #0000;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:560px;margin-inline:auto;display:grid;position:relative}.rack.drop-hovered{outline-color:var(--primary-accent);background:var(--primary-accent-soft)}@supports (color:color-mix(in lab, red, red)){.rack.drop-hovered{background:color-mix(in srgb, var(--primary-accent-soft) 58%, transparent)}}.rack-insertion-marker{z-index:8;background:var(--tile-tentative-outline);width:4px;box-shadow:0 0 0 2px var(--paper), 0 2px 7px #242a2859;pointer-events:none;border-radius:99px;position:absolute;top:-4px;bottom:-5px;translate:-50%}.rack-tile{touch-action:pinch-zoom;min-width:0;height:54px;padding:0;font-size:2.15rem;line-height:.82;transition:opacity .12s,background-color .12s}.rack-tile .tile-points,.tile-drag-preview .tile-points{min-width:9px;font-size:.7rem;top:4px;right:5px}.rack-tile:hover:not(:disabled,.placed),.rack-tile:active:not(:disabled,.placed){--tile-shell-surface:var(--match-tile-highlight)}.rack-tile:focus-visible,.rack-tile.selected{z-index:2;outline:3px solid var(--match-tile-selected);outline-offset:1px}.rack-tile.placed,.rack-tile.drag-source{opacity:.38}.rack-tile.shift-left{transform:translate(-6px)}.rack-tile.shift-right{transform:translate(6px)}.recall-source-hidden,.recall-destination-hidden{visibility:hidden}.tile-recall-overlay{z-index:120;isolation:isolate;pointer-events:none;position:fixed;inset:0;overflow:visible}.tile-recall-clone{z-index:1;transform-origin:0 0;will-change:transform;pointer-events:none;margin:0;position:fixed;overflow:hidden;animation:none!important;translate:none!important}.blank-assignment-control{min-height:34px;color:var(--muted);justify-content:center;align-items:center;gap:9px;margin:5px auto 0;font-size:.7rem;display:flex}.blank-assignment-control button{border:1px solid var(--border);background:var(--control-surface);min-height:32px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:.68rem;font-weight:800}.board-cell.tentative{touch-action:pinch-zoom}@media (prefers-reduced-motion:reduce){.board-transform-layer.animate-transform{transition:none}}.move-attribution{width:min(100%,624px);min-height:30px;color:var(--muted);margin:5px auto 0;font-size:.7rem}.move-attribution strong{color:var(--ink)}.last-move-attribution{padding:3px 5px}.selected-attribution{border-left:3px solid var(--last-move-outline);background:var(--control-surface);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:4px 6px 4px 9px;display:flex}.selected-attribution button{border:1px solid var(--border);background:var(--paper);min-width:48px;min-height:32px;color:var(--ink);border-radius:8px;padding:0 8px;font-size:.68rem;font-weight:850}.primary-move-controls{grid-template-columns:repeat(3,minmax(0,1fr)) 44px;gap:5px;max-width:560px;min-height:44px;margin:9px auto 0;display:grid;position:relative}.move-action-slot{min-width:0;min-height:44px}.move-action-slot>button{border:1px solid var(--match-control-border);background:var(--match-control);width:100%;min-width:0;height:100%;min-height:44px;color:var(--match-text);white-space:nowrap;border-radius:8px;place-items:center;padding:0 7px;font-size:.72rem;font-weight:760;display:grid}.move-action-slot>button:hover:not(:disabled){background:var(--match-control-hover)}.move-action-slot>button:disabled,.more-actions button:disabled{border-color:var(--match-divider);background:var(--match-control-disabled);color:var(--match-control-disabled-text);opacity:1}.primary-move-controls .submit-move,.primary-move-controls .pass-move{border-color:var(--match-action-primary);min-height:44px;color:var(--match-action-primary-ink);background:var(--match-action-primary);box-shadow:0 2px 5px var(--match-action-primary)}@supports (color:color-mix(in lab, red, red)){.primary-move-controls .submit-move,.primary-move-controls .pass-move{box-shadow:0 2px 5px color-mix(in srgb, var(--match-action-primary) 34%, transparent)}}.primary-move-controls .submit-move,.primary-move-controls .pass-move{filter:none;opacity:1}.primary-move-controls .submit-move:hover:not(:disabled),.primary-move-controls .pass-move:hover:not(:disabled){border-color:var(--match-action-primary-hover);background:var(--match-action-primary-hover)}.primary-move-controls .submit-move:active:not(:disabled),.primary-move-controls .pass-move:active:not(:disabled){border-color:var(--match-action-primary-pressed);background:var(--match-action-primary-pressed);box-shadow:0 1px 2px var(--match-action-primary)}@supports (color:color-mix(in lab, red, red)){.primary-move-controls .submit-move:active:not(:disabled),.primary-move-controls .pass-move:active:not(:disabled){box-shadow:0 1px 2px color-mix(in srgb, var(--match-action-primary) 30%, transparent)}}.primary-move-controls .submit-move:focus-visible,.primary-move-controls .pass-move:focus-visible{outline-color:var(--match-focus)}.primary-move-controls .submit-move:disabled:not([aria-busy=true]),.primary-move-controls .pass-move:disabled:not([aria-busy=true]){border-color:var(--match-divider);background:var(--match-control-disabled);color:var(--match-control-disabled-text);box-shadow:none;filter:none;opacity:1}.primary-move-controls .submit-move[aria-busy=true]{border-color:var(--match-action-primary-pressed);background:var(--match-action-primary);color:var(--match-action-primary-ink);filter:none;opacity:1;cursor:progress;box-shadow:inset 0 0 0 1px #ffffff2e}.more-actions{min-width:0;position:relative}.more-actions>.more-trigger{cursor:pointer;width:100%;font-size:1.35rem;line-height:1}.more-actions>div{z-index:30;border:1px solid var(--match-control-border);background:var(--match-menu);width:190px;box-shadow:var(--match-shadow-menu);border-radius:9px;gap:5px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 7px);right:0}.more-actions>div button{border:1px solid var(--match-divider);background:var(--match-control);min-height:44px;color:var(--match-text);text-align:left;border-radius:7px;padding:0 10px;font-size:.75rem}.more-actions>div button:hover:not(:disabled){background:var(--match-control-hover)}.more-actions .resign-action{border-color:var(--destructive-action);color:var(--destructive-action);border-top-width:1px;margin-top:6px;font-weight:800}.tray-error{max-width:560px;margin:6px auto 0;padding-block:7px}.history-panel,.info-panel,.messages-panel{border:1px solid var(--match-divider);background:var(--match-panel);box-shadow:var(--match-shadow-panel);border-radius:11px;margin-top:5px;padding:16px}.history-panel h2,.info-panel h2{letter-spacing:-.015em;margin:0 0 10px;font-size:1.2rem;font-weight:760}.panel-empty{color:var(--match-muted);font-size:.85rem}.messages-panel.active{flex-direction:column;height:min(65dvh,560px);padding-bottom:10px;display:flex}.messages-body{flex-direction:column;flex:1;min-height:0;display:flex}.messages-list{overscroll-behavior:contain;flex-direction:column;flex:1;gap:10px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.messages-empty{text-align:center;margin:auto}.messages-load-older{align-self:center;margin-bottom:4px}.messages-error{justify-items:start;gap:10px;display:grid}.message-row{align-items:flex-end;gap:8px;max-width:min(100%,480px);display:flex}.message-row.mine{flex-direction:row-reverse;align-self:flex-end}.message-bubble{background:var(--surface-muted);overflow-wrap:anywhere;border-radius:13px;min-width:0;padding:8px 11px}.message-row.mine .message-bubble{background:var(--primary-accent-soft)}.message-author{color:var(--sage-dark);margin-bottom:2px;font-size:.72rem;font-weight:750;display:block}.message-text{color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:.86rem;line-height:1.4}.message-time{color:var(--muted);margin-top:3px;font-size:.64rem;display:block}.messages-new-pill{border:1px solid var(--primary-accent);background:var(--surface-elevated);min-height:32px;color:var(--primary-accent-strong);box-shadow:var(--shadow);border-radius:999px;align-self:center;margin:6px 0;padding:0 14px;font-size:.74rem;font-weight:750}.messages-composer{flex:none;margin-top:8px}.messages-composer-form{align-items:flex-end;gap:8px;display:flex}.messages-composer-form textarea{border:1px solid var(--border);background:var(--control-surface);min-height:52px;max-height:120px;color:var(--ink);font:inherit;resize:none;border-radius:10px;flex:1;padding:9px 12px}.messages-composer-form button{flex:none;min-height:42px}.messages-offline-note{color:var(--muted);margin:0;font-size:.78rem}.history-move{border:0;border-top:1px solid var(--match-divider);border-left:3px solid var(--player-accent);width:100%;color:var(--match-text);text-align:left;background:0 0;border-radius:0 7px 7px 0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 0 11px 8px;display:grid}.history-move:hover,.history-move.selected{background:var(--player-surface)}.history-move:focus-visible{outline:3px solid var(--match-focus);outline-offset:2px}.history-player-mark{border:2px solid var(--player-accent);background:var(--player-mark);width:34px;height:34px;color:var(--match-avatar-ink);border-radius:50%;place-items:center;font-weight:850;display:grid}.history-move-details{min-width:0;display:grid}.history-move-details>strong{color:var(--player-ink);font-size:.78rem}.history-words{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.history-move time{color:var(--match-muted);font-size:.68rem}.history-move>b{color:var(--player-ink);font-size:1rem}.history-review-line{color:var(--muted);margin:0 0 4px 27px;padding-left:8px;font-size:.72rem}.info-panel dl{margin:0}.info-panel dl>div{border-top:1px solid var(--separator);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.info-panel dt{color:var(--muted);font-size:.75rem}.info-panel dd{text-align:right;margin:0;font-size:.8rem;font-weight:760}.info-games-link{color:var(--sage-dark);margin-top:14px;font-weight:750;display:inline-block}.build-identifier{color:var(--text-secondary);letter-spacing:.015em;margin:14px 0 0;font-size:.66rem}.build-identifier span{color:var(--text-primary);font-weight:700}.install-app-action{border:1px solid var(--separator);background:var(--surface-muted);border-radius:9px;margin-top:16px;padding:12px}.install-app-action h3{color:var(--sage-dark);margin:0 0 5px;font-size:1rem;font-weight:750}.install-app-action p{color:var(--muted);margin:0 0 10px;font-size:.76rem;line-height:1.4}.install-app-action button{border:1px solid var(--primary-accent);background:var(--sage);min-height:42px;color:var(--on-accent);border-radius:8px;padding:0 13px;font-weight:780}.install-app-action .text-button{color:var(--sage-dark);background:0 0;border:0;padding-inline:0}.completed-standings{border:1px solid var(--primary-accent);width:min(100%,624px);margin:9px auto;padding:15px}@supports (color:color-mix(in lab, red, red)){.completed-standings{border:1px solid color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}.completed-standings{background:var(--surface);border-radius:12px;box-shadow:0 3px 11px #242a2814}.completed-standings header{margin-bottom:11px}.completed-standings h2{letter-spacing:-.015em;margin:0;font-size:1.25rem;font-weight:760}.completed-standings header p:not(.eyebrow){color:var(--muted);margin:4px 0 0;font-size:.8rem}.standings-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.standings-row{--player-accent:var(--player-one);--player-ink:var(--player-one-ink);--player-surface:var(--player-one-surface);border:1px solid var(--separator);background:var(--surface-elevated);border-radius:10px;align-items:center;gap:10px;min-width:0;min-height:52px;padding:7px 10px;display:flex}.standings-row.player-2{--player-accent:var(--player-two);--player-ink:var(--player-two-ink);--player-surface:var(--player-two-surface)}.standings-row.player-3{--player-accent:var(--player-three);--player-ink:var(--player-three-ink);--player-surface:var(--player-three-surface)}.standings-row.player-4{--player-accent:var(--player-four);--player-ink:var(--player-four-ink);--player-surface:var(--player-four-surface)}.standings-row.winner{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.standings-row.winner{border-color:color-mix(in srgb, var(--primary-accent) 55%, var(--border))}}.standings-row.winner{background:var(--surface-elevated)}@supports (color:color-mix(in lab, red, red)){.standings-row.winner{background:color-mix(in srgb, var(--surface-elevated) 90%, var(--primary-accent-soft))}}.standings-place{min-width:38px;color:var(--muted);flex:none;font-size:.72rem;font-weight:850}.standings-row.winner .standings-place{color:var(--primary-accent-strong)}.standings-row .participant-avatar{width:30px;height:30px;margin-left:0;font-size:.85rem}.standings-name{flex-wrap:wrap;flex:auto;align-items:center;gap:6px;min-width:0;display:flex}.standings-name strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:780;overflow:hidden}.standings-flag{background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.02em;border-radius:999px;flex:none;padding:1px 7px;font-size:.58rem;font-style:normal;font-weight:800}.standings-flag.winner-flag{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.standings-score{color:var(--ink);flex:none;font-size:1.05rem;font-weight:900}.standings-actions{justify-content:center;margin-top:12px;display:flex}.offline-shell{min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));text-align:center;align-content:center;place-items:center;gap:13px;display:grid}.offline-shell h1{color:var(--sage-dark);margin:8px 0 0;font-size:1.8rem;font-weight:760}.offline-shell p{max-width:28rem;color:var(--muted);margin:0;line-height:1.5}.offline-shell button{border:1px solid var(--primary-accent);background:var(--sage);min-height:44px;color:var(--on-accent);border-radius:9px;padding:0 16px;font-weight:780}.pwa-update-notice{z-index:100;right:max(10px, env(safe-area-inset-right));bottom:calc(10px + env(safe-area-inset-bottom));left:max(10px, env(safe-area-inset-left));border:1px solid var(--border);background:var(--paper);width:min(100% - 20px,460px);box-shadow:var(--shadow);color:var(--ink);border-radius:13px;justify-content:space-between;align-items:center;gap:10px;margin-inline:auto;padding:10px 11px;font-size:.78rem;font-weight:750;display:flex;position:fixed}.pwa-update-notice button{border:1px solid var(--primary-accent);background:var(--sage);min-height:40px;color:var(--on-accent);border-radius:9px;flex:none;padding:0 11px;font-weight:850}.daily-five-page{width:min(100%,720px);padding:16px 14px calc(18px + env(safe-area-inset-bottom));margin-inline:auto}.daily-header{border-bottom:1px solid var(--separator);flex:none;grid-template-columns:44px 1fr 44px;align-items:center;min-height:54px;display:grid}.daily-header>a{width:44px;height:44px;color:var(--primary-accent-strong);place-items:center;font-size:1.8rem;font-weight:800;text-decoration:none;display:grid}.daily-header>div{text-align:center;min-width:0}.daily-header strong,.daily-header small{display:block}.daily-header strong{letter-spacing:-.02em;font-size:1.22rem}.daily-header small{color:var(--muted);margin-top:1px;font-size:.68rem}.daily-header>span{place-items:center;width:44px;height:44px;font-size:1.25rem;display:grid;position:relative}.friend-state{border:2px solid var(--surface);background:var(--text-secondary);border-radius:50%;width:10px;height:10px;position:absolute;bottom:3px;right:2px}.friend-state.playing{background:var(--daily-present)}.friend-state.finished{background:var(--daily-correct)}.daily-tabs{background:var(--surface-muted);border-radius:10px;flex:none;grid-template-columns:repeat(4,1fr);gap:4px;height:48px;margin:5px auto 7px;padding:4px;display:grid}.daily-tabs button{white-space:nowrap;min-height:40px;color:var(--muted);text-align:center;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;font-size:.8rem;font-weight:750;display:flex;position:relative}.daily-tabs button.active{background:var(--surface-elevated);color:var(--primary-accent-strong);font-weight:800;box-shadow:0 1px 3px #242a281a}.daily-tabs button.active:after{content:"";background:var(--primary-accent);border-radius:99px;height:2px;position:absolute;bottom:4px;left:22%;right:22%}.daily-tabs .tab-lock{margin-left:4px;font-size:.7rem}.daily-discussion-panel,.discussion-panel{flex-direction:column;flex:1;min-height:0;display:flex}.discussion-list{flex:1}.discussion-row{max-width:100%}.discussion-bubble{background:var(--surface-muted);flex:1}.discussion-meta{align-items:center;gap:10px;margin-top:3px;display:flex}.discussion-delete{color:var(--destructive-action);background:0 0;border:0;padding:0;font-size:.68rem;font-weight:750}.discussion-locked{text-align:center;justify-items:center;gap:8px;max-width:360px;margin:auto;padding:28px 16px;display:grid}.discussion-locked span{font-size:1.6rem}.discussion-locked h2{margin:0;font-size:1.05rem}.discussion-locked p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.4}.daily-panel-shell{flex-direction:column;min-height:0;display:flex}.daily-play-panel{justify-items:center;width:100%;min-height:0;display:grid}.daily-board-stage{place-items:center;width:100%;min-width:0;display:grid}.daily-grid{--daily-cell-gap:7px;--daily-cell-size:62px;grid-template-columns:repeat(5, var(--daily-cell-size));grid-template-rows:repeat(6, var(--daily-cell-size));gap:var(--daily-cell-gap);display:grid}.daily-cell{border:1px solid var(--border);border-radius:calc(var(--daily-cell-size) * .14);background:var(--daily-empty);color:var(--text-primary);font-size:calc(var(--daily-cell-size) * .52);text-transform:uppercase;place-items:center;font-weight:820;line-height:1;display:grid;position:relative}.daily-cell:has(b:not(:empty)):not(.revealed){border:2px solid var(--primary-accent);box-shadow:0 2px 5px #242a281a}.daily-cell.revealed{animation:.32s both daily-reveal}.daily-cell.correct{background:var(--daily-correct);color:var(--daily-correct-ink);border:0}.daily-cell.present{border:2px dashed var(--daily-present)}@supports (color:color-mix(in lab, red, red)){.daily-cell.present{border:2px dashed color-mix(in srgb, var(--daily-present) 72%, black)}}.daily-cell.present{background:var(--daily-present);color:var(--daily-present-ink)}.daily-cell.absent{background:var(--daily-absent);color:var(--daily-absent-ink);border:0}.daily-grid.shake{animation:.3s daily-shake}.daily-answer-reveal{text-align:center;flex-direction:column;align-items:center;gap:2px;margin:4px 0 0;display:flex}.daily-answer-reveal span{color:var(--muted);font-size:.78rem;font-weight:650}.daily-answer-reveal b{color:var(--primary-accent-strong);letter-spacing:.16em;text-transform:uppercase;font-size:1.8rem;font-weight:900}.daily-results{gap:10px;width:min(100%,480px);margin-top:4px;display:grid}.daily-results-waiting{border:1px solid var(--separator);background:var(--surface);color:var(--muted);text-align:center;border-radius:10px;margin:0;padding:12px 14px;font-size:.8rem}.daily-competition-banner{border:1px solid var(--primary-accent);margin:0;padding:10px 14px}@supports (color:color-mix(in lab, red, red)){.daily-competition-banner{border:1px solid color-mix(in srgb, var(--primary-accent) 30%, var(--separator))}}.daily-competition-banner{background:var(--primary-accent-soft);color:var(--primary-accent-strong);text-align:center;border-radius:10px;font-size:.82rem;font-weight:700}.daily-results-actions{justify-items:center;gap:4px;display:grid}.daily-results-actions .primary-button.compact{width:min(100%,280px);min-height:46px}.daily-copy-feedback{min-height:18px;color:var(--muted);font-size:.72rem}.daily-feedback{min-height:26px;color:var(--text-secondary);text-align:center;place-items:center;padding:2px 8px;font-size:.78rem;font-weight:700;display:grid}.daily-keyboard{--daily-key-height:56px;--daily-key-gap:6px;gap:var(--daily-key-gap);width:min(100%,560px);padding:0;display:grid}.daily-keyboard>div{justify-content:center;gap:var(--daily-key-gap);display:flex}.daily-keyboard button{min-width:0;height:var(--daily-key-height);background:var(--daily-key-surface);color:var(--daily-key-ink);touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:0;border-radius:7px;flex:1 1 0;padding:0;font-size:1.05rem;font-weight:800;line-height:1;transition:transform 80ms,background-color .1s;position:relative}.daily-keyboard button.wide{letter-spacing:.02em;flex:1.4 1 0;font-size:.72rem}.daily-keyboard button:active{background:var(--daily-key-surface);transform:scale(.93)}@supports (color:color-mix(in lab, red, red)){.daily-keyboard button:active{background:color-mix(in srgb, var(--daily-key-surface) 62%, var(--primary-accent))}}.daily-keyboard button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px;z-index:1}.daily-keyboard button:disabled:active{transform:none}.daily-keyboard button.correct{background:var(--daily-correct);color:var(--daily-correct-ink)}.daily-keyboard button.correct:active{background:var(--daily-correct)}@supports (color:color-mix(in lab, red, red)){.daily-keyboard button.correct:active{background:color-mix(in srgb, var(--daily-correct) 75%, black)}}.daily-keyboard button.present{border:2px dashed var(--daily-present)}@supports (color:color-mix(in lab, red, red)){.daily-keyboard button.present{border:2px dashed color-mix(in srgb, var(--daily-present) 72%, black)}}.daily-keyboard button.present{background:var(--daily-present);color:var(--daily-present-ink)}.daily-keyboard button.absent{background:var(--daily-absent);color:var(--daily-absent-ink);opacity:.82}@media (prefers-reduced-motion:reduce){.daily-keyboard button{transition:none}.daily-keyboard button:active{transform:none}}.daily-comparison{border:1px solid var(--separator);background:var(--surface);text-align:center;border-radius:11px;width:min(100%,560px);padding:13px}.daily-comparison h2{margin:0;font-size:1.05rem}.daily-comparison>p:not(.eyebrow){color:var(--muted);margin:4px 0 9px;font-size:.75rem}.daily-comparison-answer-word{color:var(--primary-accent-strong);letter-spacing:.14em;text-transform:uppercase;margin-top:2px;font-size:1.4rem;font-weight:900;display:inline-block}.daily-comparison-players{grid-template-columns:1fr 1fr;gap:8px;display:grid}.daily-comparison article{border:1px solid var(--separator);border-radius:8px;min-width:0;padding:8px}.daily-comparison article header{text-align:left;grid-template-columns:auto 1fr auto;align-items:center;gap:4px;margin-bottom:6px;font-size:.67rem;display:grid}.daily-comparison article header b{color:var(--primary-accent-strong)}.daily-mini-grid{grid-template-columns:repeat(5,12px);justify-content:center;gap:2px;display:grid}.daily-mini-cell{border:1px solid var(--border);border-radius:2px;width:12px;height:12px}.daily-mini-cell.correct{background:var(--daily-correct)}.daily-mini-cell.present{background:var(--daily-present);border-style:dashed}.daily-mini-cell.absent{background:var(--daily-absent)}.daily-statistics-panel{overscroll-behavior:contain}.daily-statistics{gap:10px;display:grid}.daily-statistics>section{border:1px solid var(--separator);background:var(--surface);border-radius:10px;padding:15px}.daily-statistics h2{margin:0 0 10px;font-size:1.05rem}.daily-statistics h3{margin:14px 0 6px;font-size:.78rem}.daily-statistics dl{grid-template-columns:repeat(3,1fr);gap:12px 8px;margin:0;display:grid}.daily-statistics dl div{text-align:center}.daily-statistics dt{color:var(--muted);font-size:.62rem}.daily-statistics dd{margin:3px 0 0;font-size:1.05rem;font-weight:800}.daily-statistics ol{gap:3px;margin:0;padding:0;list-style:none;display:grid}.daily-statistics li{grid-template-columns:16px 1fr;align-items:center;gap:5px;font-size:.65rem;display:grid}.daily-statistics li i{background:var(--primary-accent);min-width:22px;color:var(--on-accent);text-align:right;padding:2px 4px;font-style:normal}.daily-statistics-comparing{border:1px solid var(--separator);background:var(--surface-muted);border-radius:9px;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.78rem;font-weight:750;display:flex}.daily-friend-results{gap:10px;display:grid}.daily-comparison-hint{color:var(--muted);margin:0;font-size:.74rem}.friend-picker-name-line{align-items:center;min-width:0;display:flex}.comparison-chip{background:var(--primary-accent-soft);color:var(--primary-accent-strong);letter-spacing:.02em;border-radius:999px;flex:none;margin-left:7px;padding:1px 7px;font-size:.58rem;font-style:normal;font-weight:800;display:inline-block}.daily-friend-result-row.comparison-selected{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.daily-friend-result-row.comparison-selected{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.daily-friend-result-row.comparison-selected{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.daily-friend-result-row.comparison-selected{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.daily-friend-result-actions .text-button[aria-pressed=true]{border:1px solid var(--primary-accent);padding:0 9px}@supports (color:color-mix(in lab, red, red)){.daily-friend-result-actions .text-button[aria-pressed=true]{border:1px solid color-mix(in srgb, var(--primary-accent) 55%, var(--border))}}.daily-friend-result-actions .text-button[aria-pressed=true]{background:var(--primary-accent-soft);color:var(--primary-accent-strong);border-radius:999px;text-decoration:none}.daily-friend-results>input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:44px;color:var(--ink);border-radius:9px;padding:0 12px}.daily-friend-result-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.daily-friend-result-row{border:1px solid var(--separator);background:var(--surface);border-radius:10px;padding:10px}.daily-friend-result-summary{align-items:center;gap:10px;display:flex}.daily-friend-result-actions{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.daily-friend-result-actions .text-button{min-height:32px;font-size:.72rem}.daily-friend-result-row .daily-comparison{width:100%;margin-top:10px}.daily-dev-header-badge{background:var(--primary-accent);color:var(--on-accent);letter-spacing:.04em;vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:.55rem;font-weight:800;display:inline-block}.daily-dev-toggle{z-index:46;right:8px;top:max(28dvh, calc(130px + env(safe-area-inset-top)));border:1px solid var(--separator);background:var(--surface-elevated);width:36px;height:36px;color:var(--text-primary);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:50%;place-items:center;padding:0;font-size:1rem;display:grid;position:fixed;box-shadow:0 3px 10px #0000002e}.daily-dev-toggle .daily-dev-badge{padding:1px 4px;font-size:.48rem;position:absolute;top:-6px;right:-6px}.daily-dev-badge{background:var(--primary-accent);color:var(--on-accent);letter-spacing:.04em;border-radius:999px;padding:1px 6px;font-size:.55rem;font-weight:800}.daily-dev-backdrop{z-index:44;background:var(--overlay);place-items:end center;display:grid;position:fixed;inset:0}.daily-dev-panel{z-index:45;overscroll-behavior:contain;width:min(100%,460px);max-height:min(70dvh,520px);margin:0 8px calc(8px + env(safe-area-inset-bottom));border:1px solid var(--separator);background:var(--surface-elevated);border-radius:12px;font-size:.72rem;overflow-y:auto;box-shadow:0 8px 24px #00000038}.daily-dev-header{border-bottom:1px solid var(--separator);background:var(--surface-elevated);align-items:center;gap:8px;padding:10px 12px;font-size:.8rem;display:flex;position:sticky;top:0}.daily-dev-close{width:36px;height:36px;color:var(--text-secondary);background:0 0;border:0;border-radius:8px;place-items:center;margin-left:auto;padding:0;font-size:1.3rem;display:grid}.daily-dev-body{gap:8px;padding:10px 12px 12px;display:grid}.daily-dev-date{color:var(--muted);margin:0;font-size:.68rem}.daily-dev-hint{color:var(--muted);margin:0;font-size:.62rem}.daily-dev-row{flex-wrap:wrap;gap:6px;display:flex}.daily-dev-row button,.daily-dev-row input{border:1px solid var(--border);background:var(--surface-muted);min-height:44px;color:var(--text-primary);touch-action:manipulation;-webkit-tap-highlight-color:transparent;border-radius:8px;padding:0 10px;font-size:.68rem;font-weight:700}.daily-dev-row button:disabled{opacity:.5}.daily-dev-answers button{flex:72px}.daily-dev-error{color:var(--destructive-action);margin:0;font-size:.65rem}body.tile-dragging{touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}.tile-dragging .board-viewport,.tile-dragging .rack-tile{touch-action:none}.tile-drag-preview{--tile-shell-surface:var(--match-tile-highlight);--tile-shell-shadow:0 9px 20px #10141257;z-index:100;pointer-events:none;place-items:center;width:48px;height:54px;font-size:2.15rem;line-height:.82;display:grid;position:fixed;transform:translate(-50%,-65%)rotate(3deg)scale(1.04)}.dialog-backdrop{z-index:50;background:var(--overlay);place-items:end center;padding:16px;display:grid;position:fixed;inset:0}.blank-dialog{background:var(--match-panel);width:min(100%,430px);box-shadow:var(--match-shadow-menu);border-radius:14px;padding:22px}.blank-dialog h2{margin-top:0;font-size:1.4rem;font-weight:760}.letter-picker{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.letter-picker button{border:1px solid var(--match-tile-border);background:var(--match-tile-highlight);min-height:44px;color:var(--match-tile-text);border-radius:7px;font-weight:850}.match-dialog-backdrop{z-index:80}.match-action-dialog,.exchange-sheet{background:var(--match-panel);width:min(100%,440px);max-height:calc(100dvh - 32px);box-shadow:var(--match-shadow-menu);border-radius:12px;padding:21px;overflow-y:auto}.match-action-dialog h2,.exchange-sheet h2{margin:0 0 8px;font-size:1.35rem;font-weight:760}.match-action-dialog>p,.exchange-sheet>p{color:var(--match-muted);margin:0 0 15px;font-size:.86rem}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:17px;display:flex}.dialog-actions button{border:1px solid var(--match-control-border);background:var(--match-control);min-height:44px;color:var(--match-text);border-radius:8px;padding:0 14px;font-weight:780}.dialog-actions .primary-button{color:var(--match-primary-ink);background:var(--match-primary)}.dialog-actions .destructive-button{border-color:var(--destructive-action)}@supports (color:color-mix(in lab, red, red)){.dialog-actions .destructive-button{border-color:color-mix(in srgb, var(--destructive-action) 76%, black)}}.dialog-actions .destructive-button{background:var(--destructive-action);color:var(--match-primary-ink)}.exchange-rack{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;margin:18px 0 12px;display:grid}.exchange-rack .rack-tile{height:48px}.exchange-rack .exchange-selected{outline:3px solid var(--match-tile-selected);outline-offset:2px}.selection-count{color:var(--match-text);font-weight:800}@media (width<=700px){html,body{touch-action:pan-x pan-y}.app-shell{grid-template-rows:auto minmax(0,1fr) auto;height:100dvh;min-height:100svh;display:grid;overflow:hidden}.app-main{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.app-shell .app-loading-shell{min-height:100%}.open-game-shell>.top-bar,.daily-five-shell>.top-bar{display:none}.daily-five-page{height:100dvh;padding:env(safe-area-inset-top) max(6px, env(safe-area-inset-right)) env(safe-area-inset-bottom) max(6px, env(safe-area-inset-left));background:var(--page-background);flex-direction:column;display:flex;overflow:hidden}.daily-panel-shell{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.daily-header{min-height:44px}.daily-header>a,.daily-header>span{height:44px}.daily-header strong{font-size:1.1rem}.daily-header small{font-size:.64rem}.daily-tabs{height:40px;margin:3px auto 4px;padding:3px}.daily-tabs button{white-space:nowrap;min-height:34px;font-size:.74rem}.daily-tabs .tab-lock{vertical-align:1px;margin-left:3px;font-size:.58rem}.daily-play-panel{flex:1 0 auto;grid-template-rows:minmax(0,1fr) auto auto}.daily-board-stage{width:min(87%,500px);min-height:0;padding:3px 0;container-type:size}.daily-grid{--daily-cell-gap:6px;--daily-cell-size:min(calc((100cqw - 4 * var(--daily-cell-gap)) / 5), calc((100cqh - 5 * var(--daily-cell-gap)) / 6), 96px)}.daily-play-panel.complete{grid-template-rows:none;align-content:start;gap:6px;padding-bottom:10px}.daily-play-panel.complete .daily-board-stage{width:min(87%,480px);padding-bottom:2px;container-type:inline-size}.daily-play-panel.complete .daily-grid{--daily-cell-size:min(calc((100cqw - 4 * var(--daily-cell-gap)) / 5), 96px)}.daily-keyboard{--daily-key-height:clamp(48px, 7.7dvh, 68px);--daily-key-gap:5px;padding-bottom:6px}.daily-keyboard button{border-radius:8px}.game-page.board-active{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);width:100%;height:100dvh;min-height:100dvh;padding:0;display:grid;overflow:hidden}.board-active .game-header-shell,.board-active .game-content{min-width:0}.game-page.match-subview-active{width:100%;min-height:100dvh;padding:0 0 env(safe-area-inset-bottom)}.game-page.messages-active{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.board-active .compact-game-status{margin-inline:0}.board-active .latest-activity{width:100%;margin-inline:0}.board-active .game-header-shell{grid-row:1}.match-subview-active .compact-game-status,.match-subview-active .latest-activity-strip{display:none}.match-subview-active .game-header-shell{flex:none;margin-inline:0}.match-subview-active .game-content{padding-inline:max(8px, env(safe-area-inset-left)) max(8px, env(safe-area-inset-right))}.messages-active .game-content{flex:1;min-height:0;padding-inline:0}.messages-active .messages-panel.active{height:100%;min-height:0;box-shadow:none;border-inline:0;border-bottom:0;border-radius:0;margin-top:0}.board-active .game-content{grid-row:2;min-height:0;padding-inline:0}.board-active .board-panel.active{flex-direction:column;height:100%;min-height:0;display:flex}.board-active .match-play-area{flex:1;grid-template-rows:minmax(0,1fr) auto;width:100%;min-width:0;min-height:0;padding:0;display:grid;overflow:hidden}.board-active .board-section{width:100%;min-width:0;min-height:0;padding:3px max(3px, env(safe-area-inset-right)) 3px max(3px, env(safe-area-inset-left));place-items:center;display:grid;position:relative;overflow:hidden;container-type:size}.board-active .move-attribution{z-index:8;width:auto;margin:0;position:absolute;bottom:5px;left:5px;right:5px;box-shadow:0 2px 8px #242a2838}.board-active .board-stage-shell{width:min(100cqw,100cqh);max-width:100%;height:min(100cqw,100cqh);max-height:100%;margin:0;position:relative}.board-active .board-viewport{width:100%;height:100%}.board-active .turn-tray{z-index:10;width:100%;max-width:none;padding:7px max(6px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));border-inline:0;border-bottom:0;border-radius:0;margin:0;position:relative;box-shadow:0 -4px 14px #00000038}.account-chip>span:nth-child(2),.brand>span:last-child{display:none}.page-heading{flex-direction:column;align-items:stretch}.matches-root-page .page-heading{flex-direction:row;align-items:flex-start;gap:12px}.matches-root-page .page-heading>div{flex:1;min-width:0}.matches-root-page .page-heading .compact{flex:none;min-height:42px;padding-inline:15px}.matches-root-page .match-view-tabs{width:100%;margin-top:-5px}.games-page{padding-top:22px}.games-page .page-heading{gap:15px;margin-bottom:19px}.games-page .page-heading h1{font-size:2rem}.games-page .page-heading>div>p:last-child{font-size:.82rem}.head-to-head{grid-template-columns:1fr;gap:7px;margin-bottom:18px;padding:9px 11px}.head-to-head h2{font-size:.9rem}.game-list{grid-template-columns:1fr}.daily-dashboard-card{grid-template-columns:44px minmax(0,1fr)}.daily-dashboard-icon{width:42px;height:42px}.daily-dashboard-friend{white-space:normal;grid-column:2;margin-top:-7px}.top-bar{flex-wrap:wrap}.app-shell>.primary-nav{z-index:5;padding:5px max(4px, env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-left));background:var(--surface);grid-template-columns:repeat(5,1fr);gap:2px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.app-shell>.primary-nav{background:color-mix(in srgb, var(--surface) 97%, transparent)}}.app-shell>.primary-nav{border-top:1px solid var(--separator);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.primary-nav a{text-align:center;border-radius:9px;flex-direction:column;gap:1px;padding:5px 2px;font-size:.56rem}.primary-nav a>span:first-child{font-size:1.1rem}.page{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}@media (width>=701px) and (width<=899px){.top-bar{padding-inline:max(10px, env(safe-area-inset-left)) max(10px, env(safe-area-inset-right));gap:7px}.brand>span:last-child,.account-chip>span:nth-child(2),.primary-nav a>span:last-child{display:none}.primary-nav a{justify-content:center;min-width:42px;min-height:42px;padding:7px;font-size:1.05rem}}@media (width<=700px) and (height<=700px){.compact-game-status{gap:2px;padding-bottom:4px}.match-status-row{min-height:40px}.status-icon-button{height:40px}.compact-player{padding:2px 6px 3px}.compact-player>.participant-avatar{width:25px;height:25px;font-size:.7rem}.compact-player strong{font-size:1rem}.compact-players[data-player-count="4"] .compact-player{text-align:left;grid-template-columns:auto minmax(0,1fr);justify-items:stretch;gap:4px;padding:2px 4px 3px}.compact-players[data-player-count="4"] .compact-player>.participant-avatar{width:22px;height:22px;font-size:.62rem}.compact-players[data-player-count="4"] .compact-player strong{font-size:.95rem}}@media (height<=620px) and (width<=700px){.daily-header{min-height:40px}.daily-header>a,.daily-header>span{height:40px}.daily-header strong{font-size:1rem}.daily-tabs{height:36px;margin-block:2px;padding:3px}.daily-tabs button{min-height:30px;font-size:.68rem}.daily-grid{--daily-cell-gap:5px}.daily-feedback{min-height:18px;padding-block:0;font-size:.66rem}.daily-answer-reveal b{font-size:1.3rem}.daily-keyboard{--daily-key-height:50px;--daily-key-gap:4px}.daily-keyboard button{border-radius:6px;font-size:.9rem}.daily-keyboard button.wide{font-size:.64rem}}@media (width<=380px){.compact-game-status,.match-status-row{gap:2px}.compact-players{gap:3px}.compact-player{gap:5px;padding-inline:4px}.compact-player>.participant-avatar{width:25px;height:25px;font-size:.7rem}.compact-turn strong{font-size:.78rem}.match-bag-count{padding-inline:7px;font-size:.62rem}.rack{gap:4px}.primary-move-controls{grid-template-columns:repeat(3,minmax(0,1fr)) 44px;gap:3px}.move-action-slot>button{padding-inline:4px;font-size:.68rem}.daily-keyboard{--daily-key-gap:4px}.daily-keyboard button{font-size:.95rem}.daily-keyboard button.wide{font-size:.62rem}.daily-tabs button{font-size:.68rem}}@media (width>=900px){.leaderboard-desktop-only{display:inline}.game-page{padding:16px 20px 40px}.game-header-shell{margin-bottom:12px;position:static}.match-subview-header{display:none}.compact-game-status{padding:calc(8px + env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 10px max(12px, env(safe-area-inset-left));border:1px solid var(--separator);border-radius:11px 11px 0 0;gap:6px;margin:0}.match-status-row{grid-template-columns:44px minmax(0,1fr) auto 44px;gap:8px}.compact-players{gap:8px}.compact-player{gap:9px;padding:6px 11px 7px}.match-bag-count{font-size:.74rem}.game-header-shell .compact-game-status:only-child{border-radius:11px}.latest-activity-strip{border:1px solid var(--separator);background:var(--match-activity);border-radius:0 0 9px 9px;margin:-1px 0 0;overflow:hidden}.latest-activity{border:0;width:100%;min-height:30px;padding-inline:13px;font-size:.72rem}.match-sync-status{border-bottom:0;font-size:.68rem}.activity-toast{top:20px}.status-icon-button{width:44px}.compact-player>.participant-avatar{width:34px;height:34px;font-size:.95rem}.compact-players[data-player-count="4"] .compact-player>.participant-avatar{width:30px;height:30px;font-size:.85rem}.compact-player small{font-size:.74rem}.compact-player strong{font-size:1.3rem}.compact-players[data-player-count="4"] .compact-player strong{font-size:1.2rem}.compact-turn strong{font-size:.95rem}.game-content{grid-template-rows:auto auto auto;grid-template-columns:minmax(590px,1fr) 310px;align-items:start;gap:14px;padding-inline:0;display:grid}.game-panel{display:block}.board-panel{grid-row:1/span 3}.history-panel{grid-area:1/2;margin-top:0}.messages-panel{grid-area:2/2;margin-top:0}.info-panel{grid-area:3/2;margin-top:0}.messages-panel{flex-direction:column;height:380px;display:flex}.turn-tray{margin-top:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}.back-button{min-height:40px;color:var(--sage-dark);align-items:center;gap:4px;margin-bottom:4px;padding:6px 4px 6px 0;font-size:.86rem;font-weight:750;text-decoration:none;display:inline-flex}.back-button:hover{text-underline-offset:3px;text-decoration:underline}.back-button-icon{font-size:1.35rem;line-height:1}.field-label{color:var(--text-primary);margin:0 0 6px;font-size:.78rem;font-weight:750;display:block}.new-match-page .game-list-section input,.add-friend-page .game-list-section input,.games-page .game-list-section input,.friends-page .game-list-section input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:48px;color:var(--ink);border-radius:10px;outline:none;margin-bottom:14px;padding:0 14px}.new-match-page .game-list-section input:focus,.add-friend-page .game-list-section input:focus,.games-page .game-list-section input:focus,.friends-page .game-list-section input:focus{border-color:var(--primary-accent);box-shadow:0 0 0 3px var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.new-match-page .game-list-section input:focus,.add-friend-page .game-list-section input:focus,.games-page .game-list-section input:focus,.friends-page .game-list-section input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-accent) 24%, transparent)}}.selected-friend-chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.selected-friend-chips button{border:1px solid var(--primary-accent);align-items:center;gap:6px;min-height:40px;padding:4px 10px 4px 8px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.selected-friend-chips button{border:1px solid color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.selected-friend-chips button{background:var(--primary-accent-soft);color:var(--primary-accent-strong);border-radius:999px;font-size:.82rem;font-weight:750}.chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:22ch;overflow:hidden}.chip-remove{font-size:1rem;font-weight:800}.friend-picker-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.friend-picker-row,.friend-search-row{border:1px solid var(--separator);background:var(--surface);cursor:pointer;border-radius:10px;align-items:center;gap:10px;min-height:56px;padding:8px 12px;display:flex}.friend-search-row-content{min-width:0;color:inherit;flex:auto;align-items:center;gap:10px;text-decoration:none;display:flex}.friend-search-row-content:hover .friend-picker-name strong{text-decoration:underline}.friend-search-row{cursor:default}.friend-picker-row{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:border-color .15s,background-color .15s;position:relative}.friend-picker-row input[type=checkbox]{opacity:0;cursor:pointer;appearance:none;width:100%;height:100%;margin:0;position:absolute;inset:0}.friend-picker-row input[type=checkbox]:disabled{cursor:not-allowed}.friend-picker-row:active:has(input:not(:disabled)){background:var(--surface-muted)}.friend-picker-row.selected{border-color:var(--primary-accent)}.friend-picker-row:has(input:checked){border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.friend-picker-row.selected{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}.friend-picker-row:has(input:checked){border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.friend-picker-row.selected{background:var(--surface)}.friend-picker-row:has(input:checked){background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.friend-picker-row.selected{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}.friend-picker-row:has(input:checked){background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.friend-picker-row:has(input:focus-visible){outline:3px solid var(--focus-ring);outline-offset:2px}.friend-picker-row:has(input:disabled){opacity:.55}.friend-picker-check{border:2px solid var(--border);background:var(--surface-elevated);color:#0000;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;margin-left:auto;transition:border-color .15s,background-color .15s,color .15s;display:grid}.friend-picker-check svg{fill:none;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.friend-picker-row:has(input:checked) .friend-picker-check{border-color:var(--primary-accent);background:var(--primary-accent);color:var(--on-accent)}.friend-picker-avatar{background:var(--surface-muted);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:1.1rem;display:grid}.friend-picker-name{flex:auto;min-width:0;display:grid}.friend-picker-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friend-picker-name small{color:var(--muted)}.game-list-section .game-list>label{border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:6px 4px;display:flex}.game-list-section .game-list>label:has(input[type=checkbox]) input[type=checkbox]{flex:none;width:20px;height:20px}.game-list-section .game-list>label.field-label{min-height:0;padding:0;display:block}.lobby-roster-section{margin-bottom:25px}.lobby-roster{flex-wrap:wrap;justify-content:center;gap:10px;margin:0;padding:0;list-style:none;display:flex}.lobby-roster-card{border:1px solid var(--separator);background:var(--surface);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:6px;min-width:108px;padding:14px 12px;display:flex}.lobby-roster-card .participant-avatar{width:40px;height:40px;margin-left:0;font-size:.95rem}.lobby-roster-name{max-width:16ch;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:750;overflow:hidden}.lobby-roster-state{letter-spacing:.015em;border-radius:999px;padding:2px 8px;font-size:.62rem;font-weight:780}.lobby-roster-state.pending{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.lobby-roster-state.resolved{background:var(--surface-muted);color:var(--muted)}.new-match-action{bottom:calc(8px + env(safe-area-inset-bottom));margin-top:16px;position:sticky}.new-match-action .primary-button{width:100%}.friend-status-chip{background:var(--surface-muted);color:var(--muted);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:.76rem;font-weight:750}.friend-status-chip.friends{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}@media (width<=700px){.new-match-page .page-heading,.add-friend-page .page-heading,.friends-page .page-heading{margin-bottom:18px}.friend-picker-row,.friend-search-row{min-height:60px}}@keyframes breathe{to{box-shadow:inset 0 1px #ffffff7a, 0 3px 0 var(--tile-confirmed-edge), 0 6px 18px #00000024}}@keyframes daily-reveal{0%{transform:rotateX(0)}48%{transform:rotateX(84deg)}to{transform:rotateX(0)}}@keyframes daily-shake{25%{transform:translate(-4px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}.auth-links{color:var(--muted);text-align:center;margin-top:20px;font-size:.85rem}.auth-links a{color:var(--primary-accent-strong);font-weight:760}.auth-forgot{text-align:center;margin:4px 0 0;font-size:.82rem}.auth-forgot a{color:var(--primary-accent-strong);font-weight:700}.form-notice{border-left:4px solid var(--primary-accent);background:var(--surface-muted);color:var(--text-primary);border-radius:6px;padding:10px 12px;font-size:.88rem}.turnstile-field{width:100%;min-height:65px}.turnstile-field .form-error{margin-top:8px}.field-block{gap:7px;display:grid}.field-block>label{font-size:.85rem;font-weight:800}.password-field{display:block;position:relative}.password-field input{padding-right:68px!important}.password-toggle{z-index:1;border:1px solid var(--border);background:var(--surface-muted);min-width:56px;min-height:36px;color:var(--sage-dark);border-radius:8px;padding:0 12px;font-size:.74rem;font-weight:750;position:absolute;top:50%;right:6px;translate:0 -50%}.password-toggle:hover{background:var(--surface-elevated)}.password-toggle:focus-visible{outline:2px solid var(--primary-accent);outline-offset:1px}.code-input{letter-spacing:.5em;text-align:center;text-indent:.5em;font-size:1.5rem;font-weight:800}.login-card .link-button,.account-form .link-button{min-height:44px;color:var(--primary-accent-strong);background:0 0;border:none;font-size:.86rem;font-weight:760}.login-card .link-button:disabled{color:var(--muted)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.avatar{background:var(--surface-muted);border-radius:50%;place-items:center;display:inline-grid;overflow:hidden}.avatar-image{object-fit:cover}.avatar-sm{width:28px;height:28px;font-size:1rem}.avatar-md{width:44px;height:44px;font-size:1.4rem}.avatar-lg{width:96px;height:96px;font-size:2.6rem}.identity-header-avatar-image{object-fit:cover}.account-chip .avatar-image{width:28px;height:28px}.friend-picker-avatar-image{object-fit:cover;border-radius:50%}.account-security .account-identity-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px;padding:4px 0;display:flex}.account-identity-label{font-size:.85rem;font-weight:800}.account-identity-value{color:var(--text-primary);word-break:break-all;align-items:center;gap:8px;display:inline-flex}.account-badge{letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:2px 9px;font-size:.68rem;font-weight:820}.account-badge.verified{background:var(--daily-correct,#d5efd8);color:#14532d}.account-badge.unverified{background:var(--danger-surface);color:var(--danger-ink)}@media (prefers-color-scheme:dark){.account-badge.verified{color:#bbf7d0;background:#16a34a57}}:root[data-theme=dark] .account-badge.verified{color:#bbf7d0;background:#16a34a57}:root[data-theme=light] .account-badge.verified{color:#14532d;background:#d5efd8}.account-form{border-top:1px solid var(--separator);gap:14px;margin-top:18px;padding-top:16px;display:grid}.account-form label{gap:7px;font-size:.85rem;font-weight:800;display:grid}.account-form input{border:1px solid var(--border);background:var(--surface-elevated);width:100%;min-height:48px;color:var(--ink);border-radius:10px;padding:0 14px}.account-form input:focus{border-color:var(--primary-accent);box-shadow:0 0 0 3px var(--primary-accent);outline:none}@supports (color:color-mix(in lab, red, red)){.account-form input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-accent) 22%, transparent)}}.account-form .primary-button{justify-self:start}.avatar-editor{gap:12px;margin:10px 0 4px;display:grid}.avatar-editor-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.avatar-upload-label{cursor:pointer}.avatar-upload-label:focus-within{outline:2px solid var(--primary-accent);outline-offset:2px}.avatar-editor-preview .avatar-lg{box-shadow:var(--shadow)}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important}}.avatar-cropper-dialog{z-index:100;background:#000000d9;border:none;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:none;height:100%;max-height:none;padding:0;display:flex;position:fixed;inset:0}.avatar-cropper-container{width:100%;max-width:500px;height:60vh;min-height:300px;position:relative}.avatar-cropper-actions{gap:1rem;margin-top:1.5rem;display:flex}.avatar-cropper-actions button{color:#000;background:#fff;border:none;border-radius:8px;padding:.5rem 1rem;font-weight:700}.avatar-button{cursor:pointer;background:0 0;border:none;padding:0;transition:transform .2s;display:inline-block}.avatar-button:hover{transform:scale(1.05)}.avatar-lightbox-dialog{z-index:200;cursor:zoom-out;background:#000000e6;border:none;justify-content:center;align-items:center;width:100%;max-width:none;height:100%;max-height:none;padding:0;display:flex;position:fixed;inset:0}.avatar-lightbox-content{cursor:default;position:relative}.avatar-lightbox-content img{object-fit:contain;border-radius:12px;max-width:90vw;max-height:90vh;box-shadow:0 10px 30px #00000080}.avatar-lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:2rem;position:absolute;top:-40px;right:-40px}@media (width<=768px){.avatar-lightbox-close{top:-40px;right:0}}.avatar-lightbox-emoji{background-color:var(--surface);border-radius:50%;justify-content:center;align-items:center;width:200px;height:200px;font-size:8rem;line-height:1;display:flex;box-shadow:0 8px 32px #0006}.notification-bell{border-radius:999px;place-items:center;width:40px;height:40px;font-size:1.1rem;text-decoration:none;display:grid;position:relative}.notification-bell:hover{background:var(--surface-muted)}.notification-bell-badge{background:var(--primary-accent);min-width:16px;height:16px;color:var(--on-accent);border-radius:999px;place-items:center;padding:0 4px;font-size:.6rem;font-weight:800;line-height:1;display:grid;position:absolute;top:2px;right:2px}.notification-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.notification-row{border:1px solid var(--separator);background:var(--surface);border-radius:12px;align-items:stretch;gap:4px;display:flex;overflow:hidden}.notification-row.unread{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.notification-row.unread{border-color:color-mix(in srgb, var(--primary-accent) 40%, var(--border))}}.notification-row.unread{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.notification-row.unread{background:color-mix(in srgb, var(--surface) 94%, var(--primary-accent-soft))}}.notification-row-main{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;min-width:0;min-height:64px;padding:10px 12px;display:flex}.notification-category-icon{background:var(--surface-muted);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:1rem;display:grid}.notification-row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notification-row-title{color:var(--ink);font-size:.88rem;font-weight:780}.notification-row-body{color:var(--text-secondary);overflow-wrap:anywhere;font-size:.82rem;line-height:1.35}.notification-row-time{color:var(--muted);font-size:.68rem}.notification-unread-dot{background:var(--primary-accent);border-radius:50%;flex:none;width:9px;height:9px}.notification-row-dismiss{border:0;border-left:1px solid var(--separator);width:40px;color:var(--muted);cursor:pointer;background:0 0;flex:none;font-size:1.1rem}.notification-row-dismiss:hover{background:var(--surface-muted);color:var(--text-secondary)}.push-control{flex-direction:column;gap:8px;display:flex}.push-explainer{border:1px solid var(--separator);background:var(--surface-muted);border-radius:12px;padding:12px 14px}.push-explainer p{color:var(--text-secondary);margin:0 0 10px;font-size:.82rem;line-height:1.45}.push-explainer-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.preference-rows{flex-direction:column;gap:4px;display:flex}.preference-row{border:0;border-top:1px solid var(--separator);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:48px;margin:0;padding:10px 4px;display:flex}.preference-row:first-child{border-top:0}.preference-row legend{color:var(--ink);padding:0;font-size:.86rem;font-weight:720}.preference-channels{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.preference-channel-checkbox{color:var(--text-secondary);align-items:center;gap:6px;font-size:.78rem;display:flex}.preference-channel-checkbox input{width:17px;height:17px;accent-color:var(--primary-accent)}.daily-reminder-schedule{font-weight:720}.timezone-picker{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.timezone-picker select{border:1px solid var(--border);background:var(--surface-elevated);min-height:40px;color:var(--ink);border-radius:9px;padding:0 10px}.pause-options{flex-wrap:wrap;gap:8px;display:flex}.pause-active{border:1px solid var(--separator);background:var(--surface-muted);color:var(--text-primary);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:.84rem;display:flex}.match-mute-toggle{margin-top:14px}.ios-note{margin-top:4px}@media (width<=600px){.notification-row-title,.notification-row-body{font-size:.8rem}.preference-row{flex-direction:column;align-items:flex-start}}.more-tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.more-tile{border:1px solid var(--separator);background:var(--surface);min-width:0;min-height:84px;color:var(--ink);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;box-shadow:0 2px 7px #242a2812}.more-tile:hover{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.more-tile:hover{border-color:color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}.more-tile:hover{transform:translateY(-1px);box-shadow:0 5px 14px #242a281a}.more-tile:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.more-tile:active{box-shadow:none;background:var(--surface-muted);transform:translateY(1px)}.more-tile-icon{background:var(--primary-accent-soft);width:46px;height:46px;color:var(--primary-accent-strong);border-radius:11px;place-items:center;font-size:1.5rem;line-height:1;display:grid}.more-tile-text{gap:3px;min-width:0;display:grid}.more-tile-title{color:var(--ink);letter-spacing:-.01em;font-size:1.05rem;font-weight:760}.more-tile-description{color:var(--muted);font-size:.82rem;line-height:1.35}.more-tile-chevron{color:var(--text-secondary);font-size:1.4rem;font-weight:800;line-height:1}:root{--chess-square-light:#e9e3d4;--chess-square-dark:#7f9a76;--chess-square-selected:#d3c14e;--chess-square-legal:#2a5f36;--chess-square-capture:#a8412f;--chess-square-last-move:#cbcb63;--chess-square-check:#c0392b;--chess-square-correct:#2f8f4e;--chess-square-incorrect:#b8392c;--chess-square-highlight:#3d7fbf;--chess-piece-light:#fdfdfb;--chess-piece-light-edge:#2b2b28;--chess-piece-dark:#2f322e;--chess-piece-dark-edge:#f2f2ee;--chess-board-frame:#4d5a4a;--chess-coordinate-ink:var(--text-secondary)}[data-theme=dark]{--chess-square-light:#b3ab97;--chess-square-dark:#55694f;--chess-square-selected:#b39a2f;--chess-square-legal:#8fd7a2;--chess-square-capture:#e2705c;--chess-square-last-move:#8d8a3c;--chess-square-check:#e2564a;--chess-square-correct:#6ed08d;--chess-square-incorrect:#e2705c;--chess-square-highlight:#6fa8dc;--chess-piece-light:#f6f5f0;--chess-piece-light-edge:#1b1e1c;--chess-piece-dark:#24272a;--chess-piece-dark-edge:#cfd6d1;--chess-board-frame:#7e8c7c}.chess-shell .page{width:min(100% - 20px,900px);padding:0 0 calc(18px + env(safe-area-inset-bottom))}.chess-route-header{z-index:15;min-height:calc(48px + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(10px, env(safe-area-inset-right)) 4px max(10px, env(safe-area-inset-left));border-bottom:1px solid var(--separator);background:var(--surface);grid-template-columns:minmax(84px,1fr) minmax(0,auto) minmax(84px,1fr);align-items:end;gap:6px;margin:0 -10px 10px;display:grid;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.chess-route-header{background:color-mix(in srgb, var(--surface) 96%, transparent)}}.chess-route-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.chess-route-header h1{min-width:0;color:var(--ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;padding-bottom:9px;font-size:1rem;font-weight:800;line-height:1.1;overflow:hidden}.chess-back-button{min-width:0;min-height:44px;color:var(--primary-accent-strong);background:0 0;border:0;justify-self:start;align-items:center;gap:3px;padding:0 6px 0 0;font-size:.78rem;font-weight:780;display:inline-flex}.chess-back-button>span:first-child{font-size:1.45rem;line-height:1}.chess-back-button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:1px}.chess-header-action{justify-content:flex-end;align-items:center;min-width:0;min-height:44px;display:flex}.chess-page>.page-heading{gap:8px;margin:4px 0 14px}.chess-page>.page-heading h1{margin-bottom:4px;font-size:clamp(1.6rem,7vw,2.35rem)}.chess-page>.page-heading .eyebrow{display:none}.chess-page>.page-heading p{font-size:.85rem;line-height:1.4}.chess-home-intro{color:var(--muted);margin:2px 2px 10px;font-size:.84rem;line-height:1.4}.chess-header-button{border:1px solid var(--border);background:var(--control-surface);min-height:36px;color:var(--ink);border-radius:8px;padding:0 9px;font-size:.72rem;font-weight:780}.chess-page .game-list-section{margin-top:16px}.chess-card-list{gap:8px;display:grid}.chess-card{border:1px solid var(--separator);background:var(--surface);min-width:0;min-height:68px;color:var(--ink);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 14px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid}a.chess-card:hover{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){a.chess-card:hover{border-color:color-mix(in srgb, var(--primary-accent) 35%, var(--border))}}a.chess-card:hover{transform:translateY(-1px);box-shadow:0 5px 14px #242a281a}a.chess-card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}a.chess-card:active{box-shadow:none;background:var(--surface-muted);transform:translateY(1px)}.chess-card[data-tone=primary]{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.chess-card[data-tone=primary]{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.chess-card[data-tone=primary]{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.chess-card[data-tone=primary]{background:color-mix(in srgb, var(--surface) 92%, var(--primary-accent-soft))}}.chess-card[data-inert]{opacity:.78}.chess-card-icon{background:var(--primary-accent-soft);width:40px;height:40px;color:var(--primary-accent-strong);border-radius:10px;place-items:center;font-size:1.2rem;line-height:1;display:grid}.chess-card[data-tone=muted] .chess-card-icon{background:var(--surface-muted);color:var(--text-secondary)}.chess-card-text{gap:2px;min-width:0;display:grid}.chess-card-title{color:var(--ink);flex-wrap:wrap;align-items:center;gap:8px;font-size:.98rem;font-weight:750;display:flex}.chess-card-badge{border:1px solid var(--border);background:var(--surface-muted);color:var(--text-secondary);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:.6rem;font-weight:780}.chess-card-description{color:var(--muted);font-size:.8rem;line-height:1.35}.chess-card-meta{color:var(--text-secondary);font-size:.72rem}.chess-card-chevron{color:var(--text-secondary);font-size:1.3rem;font-weight:800;line-height:1}.chess-soon-card{border:1px dashed var(--border);background:var(--surface);border-radius:14px;padding:20px}.chess-soon-badge{margin:0 0 10px;display:inline-block}.chess-soon-card h2{margin:0 0 10px;font-size:1.05rem;font-weight:750}.chess-soon-list{color:var(--muted);margin:0;padding-left:20px;font-size:.85rem;line-height:1.6}.chess-board-stage{justify-items:center;gap:8px;display:grid}.chess-board-frame{--chess-board-size:min(100%, calc(100dvh - 190px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 560px);width:var(--chess-board-size);padding:0 0 14px 14px;position:relative}.chess-board{aspect-ratio:1;border:2px solid var(--chess-board-frame);border-radius:4px;grid-template-columns:repeat(8,1fr);width:100%;display:grid;overflow:hidden}.chess-board-row{display:contents}.chess-square{aspect-ratio:1;background:var(--chess-square-light);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.chess-square[data-shade=dark]{background:var(--chess-square-dark)}.chess-square:disabled{cursor:default}.chess-square:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px;z-index:3}.chess-square[data-last-move]:before{content:"";background:var(--chess-square-last-move);opacity:.55;position:absolute;inset:0}.chess-square[data-highlighted]:before{content:"";background:var(--chess-square-highlight);opacity:.4;position:absolute;inset:0}.chess-square[data-selected]{box-shadow:inset 0 0 0 4px var(--chess-square-selected)}.chess-square[data-check]{background-image:radial-gradient(circle at center, var(--chess-square-check) 12%, transparent 72%)}.chess-square[data-correct]{box-shadow:inset 0 0 0 5px var(--chess-square-correct)}.chess-square[data-incorrect]{box-shadow:inset 0 0 0 5px var(--chess-square-incorrect)}.chess-move-dot{background:var(--chess-square-legal);opacity:.78;border-radius:50%;width:30%;height:30%;position:absolute}.chess-capture-ring{border:4px solid var(--chess-square-capture);opacity:.85;border-radius:50%;position:absolute;inset:6%}.chess-piece{width:88%;height:88%;position:relative}.chess-piece[data-piece-color=white]{fill:var(--chess-piece-light);stroke:var(--chess-piece-light-edge);stroke-width:1.1px;stroke-linejoin:round}.chess-piece[data-piece-color=black]{fill:var(--chess-piece-dark);stroke:var(--chess-piece-dark-edge);stroke-width:1.1px;stroke-linejoin:round}.chess-piece[data-piece-color=white] .chess-piece-detail{fill:var(--chess-piece-light-edge)}.chess-piece[data-piece-color=black] .chess-piece-detail{fill:var(--chess-piece-dark-edge)}.chess-coordinates{color:var(--chess-coordinate-ink);font-size:.58rem;font-weight:750;display:grid;position:absolute}.chess-coordinates-files{grid-template-columns:repeat(8,1fr);place-items:center;height:14px;bottom:0;left:14px;right:0}.chess-coordinates-ranks{grid-template-rows:repeat(8,1fr);place-items:center;width:14px;top:0;bottom:14px;left:0}.chess-board-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chess-game-page{align-content:start;gap:10px;display:grid}.chess-game-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.chess-game-title{color:var(--ink);margin:0;font-size:1.05rem;font-weight:760}.chess-status-line{border:1px solid var(--separator);background:var(--surface);color:var(--ink);text-align:center;border-radius:10px;margin:0;padding:9px 12px;font-size:.9rem;font-weight:750}.chess-status-line[data-check]{border-color:var(--destructive-action)}@supports (color:color-mix(in lab, red, red)){.chess-status-line[data-check]{border-color:color-mix(in srgb, var(--destructive-action) 55%, var(--border))}}.chess-status-line[data-check]{background:var(--danger-surface);color:var(--danger-ink)}.chess-status-line-final{border-color:var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.chess-status-line-final{border-color:color-mix(in srgb, var(--primary-accent) 50%, var(--border))}}.chess-status-line-final{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.chess-controls{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chess-controls button:not(.primary-button):not(.danger-button):not(.secondary-button){border:1px solid var(--border);background:var(--control-surface);min-width:76px;min-height:46px;color:var(--text-primary);border-radius:9px;padding:0 16px;font-size:.82rem;font-weight:750}.chess-controls button:disabled{opacity:.5}.chess-controls button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.chess-captured{align-items:center;gap:2px;min-height:22px;display:flex}.chess-captured-pieces{align-items:center;display:flex}.chess-captured-pieces .chess-piece{width:20px;height:20px;margin-right:-4px}.chess-captured-advantage{color:var(--muted);margin-left:8px;font-size:.74rem;font-weight:800}.chess-history{border:1px solid var(--separator);background:var(--surface);border-radius:11px;overflow:hidden}.chess-history-toggle{width:100%;min-height:46px;color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:0 14px;font-size:.85rem;font-weight:750;display:flex}.chess-history-toggle>span:first-child{flex:1}.chess-history-count{background:var(--surface-muted);color:var(--muted);border-radius:999px;padding:2px 7px;font-size:.65rem;font-weight:800}.chess-move-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,130px),1fr));gap:2px 10px;margin:0;padding:0 14px 14px;list-style:none;display:grid}.chess-move-list li{font-variant-numeric:tabular-nums;grid-template-columns:2.1rem minmax(0,1fr) minmax(0,1fr);gap:6px;font-size:.82rem;display:grid}.chess-move-number{color:var(--text-secondary)}.chess-move-san{color:var(--ink);font-weight:720}.chess-history .panel-empty{padding:0 14px 14px}.chess-review-heading{justify-content:space-between;align-items:center;gap:8px;margin:4px 2px 12px;display:flex}.chess-review-heading p{color:var(--muted);margin:0;font-size:.84rem}.chess-review-heading span{background:var(--surface-muted);color:var(--text-secondary);border-radius:999px;flex:none;padding:4px 7px;font-size:.62rem;font-weight:780}.chess-empty-state{border:1px dashed var(--border);background:var(--surface);text-align:center;border-radius:13px;justify-items:center;gap:7px;padding:34px 18px;display:grid}.chess-empty-state>span{color:var(--primary-accent-strong);font-size:2rem}.chess-empty-state h2,.chess-empty-state p{margin:0}.chess-empty-state h2{font-size:1.05rem}.chess-empty-state p{max-width:25rem;color:var(--muted);font-size:.82rem;line-height:1.45}.chess-archive-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.chess-archive-card{border:1px solid var(--separator);background:var(--surface);border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.chess-archive-card>div:first-child{grid-template-columns:auto minmax(0,1fr);gap:2px 8px;min-width:0;display:grid}.chess-archive-card strong{color:var(--primary-accent-strong);grid-row:1/4;align-self:center;font-size:1.05rem}.chess-archive-card span{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;font-weight:750;overflow:hidden}.chess-archive-card small{color:var(--muted);font-size:.68rem}.chess-archive-actions{gap:5px;display:flex}.chess-archive-actions .compact{min-height:40px;padding-inline:11px;font-size:.76rem}.chess-replay-summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1px 8px;min-width:0;display:grid}.chess-replay-summary strong{color:var(--primary-accent-strong);grid-row:1/3;font-size:1.15rem}.chess-replay-summary span{color:var(--ink);font-size:.8rem;font-weight:760}.chess-replay-summary small{color:var(--muted);font-size:.66rem}.chess-replay-controls{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.chess-replay-controls button{border:1px solid var(--border);background:var(--control-surface);min-height:42px;color:var(--ink);border-radius:8px;font-size:1.25rem;font-weight:800}.chess-replay-history summary{min-height:44px;color:var(--ink);justify-content:space-between;align-items:center;padding:0 12px;font-size:.82rem;font-weight:760;list-style:none;display:flex}.chess-replay-history ol{grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:3px;margin:0;padding:0 10px 10px;list-style:none;display:grid}.chess-replay-history button{width:100%;min-height:36px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;padding:0 7px;font-size:.76rem}.chess-replay-history button[data-current]{border-color:var(--primary-accent);background:var(--primary-accent-soft);font-weight:800}.chess-replay-history button span{color:var(--text-secondary)}.chess-lesson-progress{color:var(--primary-accent-strong);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:780}.chess-lesson-instruction{color:var(--ink);margin:0;font-size:.95rem;line-height:1.45}.chess-training-prompt{color:var(--ink);text-align:center;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin:0;font-size:2.6rem;font-weight:800}.chess-feedback{border-radius:10px;align-items:start;gap:8px;margin:0;padding:11px 13px;font-size:.86rem;line-height:1.45;display:flex}.chess-feedback-success{border:1px solid var(--primary-accent)}@supports (color:color-mix(in lab, red, red)){.chess-feedback-success{border:1px solid color-mix(in srgb, var(--primary-accent) 45%, var(--border))}}.chess-feedback-success{background:var(--primary-accent-soft);color:var(--primary-accent-strong)}.chess-feedback-retry{border:1px solid var(--danger-border);background:var(--danger-surface);color:var(--danger-ink)}.chess-hint{border:1px solid var(--border);background:var(--warning-surface);color:var(--warning-ink);pointer-events:none;border-radius:10px;margin:0;padding:10px 12px;font-size:.82rem;line-height:1.4;box-shadow:0 5px 16px #14181629}.chess-hint>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.chess-hint strong{letter-spacing:.04em;text-transform:uppercase;font-size:.68rem}.chess-hint>div button{width:32px;height:32px;color:inherit;pointer-events:auto;background:0 0;border:0;padding:0;font-size:1.2rem}.chess-hint p{margin:4px 0}.chess-hint-next{min-height:36px;color:inherit;pointer-events:auto;background:0 0;border:1px solid;border-radius:7px;padding:0 10px;font-size:.72rem;font-weight:780}.chess-promotion-backdrop,.chess-confirm-backdrop{z-index:40;background:var(--overlay);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.chess-promotion,.chess-confirm{border:1px solid var(--border);background:var(--surface-elevated);width:min(100%,340px);box-shadow:var(--shadow);border-radius:14px;padding:18px}.chess-promotion-title{color:var(--ink);text-align:center;margin:0 0 12px;font-size:.95rem;font-weight:760}.chess-promotion-choices{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.chess-promotion-choice{border:1px solid var(--border);background:var(--control-surface);min-height:74px;color:var(--text-primary);border-radius:10px;justify-items:center;gap:3px;padding:7px 2px;font-size:.62rem;font-weight:750;display:grid}.chess-promotion-choice .chess-piece{width:38px;height:38px}.chess-promotion-choice:hover{border-color:var(--primary-accent);background:var(--surface-muted)}.chess-promotion-choice:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.chess-promotion-cancel{border:1px solid var(--border);width:100%;min-height:44px;color:var(--muted);background:0 0;border-radius:9px;margin-top:10px;font-size:.82rem;font-weight:750}.chess-confirm p{color:var(--ink);margin:0 0 16px;font-size:.9rem;line-height:1.5}.chess-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}@media (width<=700px){.chess-game-page{gap:6px}.chess-study-page{position:relative}.chess-study-page>.chess-hint{z-index:12;top:calc(52px + env(safe-area-inset-top));position:absolute;left:0;right:0}.chess-board-frame{--chess-board-size:min(100%, calc(100dvh - 190px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 460px)}.chess-study-page .chess-board-frame{--chess-board-size:min(100%, calc(100dvh - 245px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 460px)}.chess-status-line{padding:7px 10px;font-size:.82rem}.chess-controls{gap:5px}.chess-controls button:not(.primary-button):not(.danger-button):not(.secondary-button),.chess-controls .primary-button.compact,.chess-controls .secondary-button.compact{min-height:42px}.chess-game-title{font-size:.95rem}.chess-training-prompt{font-size:2.1rem}.chess-controls button:not(.primary-button):not(.danger-button):not(.secondary-button){flex:68px;min-width:0;padding:0 10px}.chess-archive-card{grid-template-columns:1fr}.chess-archive-actions .primary-button{flex:1}.chess-review-heading{flex-direction:column;align-items:flex-start}}@media (orientation:landscape) and (height<=500px){.chess-game-page{grid-template-columns:minmax(0,calc(100dvh - 80px)) minmax(240px,1fr);grid-auto-rows:max-content;gap:4px 10px}.chess-game-page>.chess-route-header{grid-column:1/-1}.chess-game-page>.chess-board-stage{grid-area:2/1/span 10}.chess-game-page>:not(.chess-route-header):not(.chess-board-stage){grid-column:2}.chess-game-page .chess-board-frame{--chess-board-size:min(100%, calc(100dvh - 80px - env(safe-area-inset-top) - env(safe-area-inset-bottom)), 460px)}.chess-game-page .chess-route-header{margin-bottom:2px}.chess-game-page .chess-status-line{padding:5px 8px;font-size:.78rem}.chess-game-page .chess-controls{gap:4px}.chess-game-page .chess-controls button:not(.primary-button):not(.danger-button):not(.secondary-button){flex:68px;min-width:0;min-height:40px;padding-inline:8px}.chess-game-page .chess-history-toggle{min-height:40px}.chess-study-page>.chess-hint{position:static}}@media (width<=380px){.more-tile{gap:11px;padding:13px}.more-tile-icon{width:40px;height:40px;font-size:1.3rem}.more-tile-title{font-size:.98rem}.chess-card{gap:10px;padding:11px}.chess-card-icon{width:34px;height:34px;font-size:1.05rem}.chess-board-frame{padding-bottom:12px;padding-left:12px}.chess-coordinates-files{height:12px;left:12px}.chess-coordinates-ranks{width:12px;bottom:12px}}@media (width<=900px) and (orientation:landscape) and (height<=500px){.chess-board-frame{--chess-board-size:min(100%, 74vh, 420px)}.chess-training-prompt{font-size:1.6rem}}@media (prefers-reduced-motion:reduce){.more-tile,.chess-card{transition:none}.more-tile:hover,a.chess-card:hover{transform:none}}.score-reaction-overlay{z-index:9;background:radial-gradient(circle at center, var(--surface) 0%, transparent 72%);place-items:center;padding:8px;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.score-reaction-overlay{background:radial-gradient(circle at center, color-mix(in srgb, var(--surface) 62%, transparent) 0%, transparent 72%)}}.score-reaction-overlay{pointer-events:none}.score-reaction-card{border:1px solid var(--match-control-border,var(--surface-muted));background:var(--surface-elevated);border-radius:16px;flex-direction:column;align-items:center;gap:4px;width:max-content;max-width:min(86%,340px);padding:12px 16px 10px;display:flex}@supports (color:color-mix(in lab, red, red)){.score-reaction-card{background:color-mix(in srgb, var(--surface-elevated) 94%, transparent)}}.score-reaction-card{color:var(--text-primary);text-align:center;pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 26px #14181642}.score-reaction-tier-label{color:var(--text-secondary);letter-spacing:.07em;text-transform:uppercase;margin:0;font-size:.66rem;font-weight:800}.score-reaction-score{margin:0;font-size:1.16rem;font-weight:900;line-height:1.1}.score-reaction-media{object-fit:contain;border-radius:12px;width:min(56vw,240px);height:auto;max-height:min(42vh,240px)}.score-reaction-glyph{margin:2px 0;font-size:2.6rem;line-height:1}.score-reaction-caption{max-width:26ch;color:var(--text-primary);margin:0;font-size:.84rem;font-weight:700}.score-reaction-dismiss{border:1px solid var(--match-control-border,var(--surface-muted));background:var(--surface);min-height:32px;color:var(--text-primary);border-radius:999px;margin-top:4px;padding:4px 14px;font-size:.74rem;font-weight:750}@keyframes score-reaction-sad-in{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:none}}@keyframes score-reaction-happy-in{0%{opacity:0;transform:scale(.82)}62%{opacity:1;transform:scale(1.05)}to{transform:scale(1)}}@keyframes score-reaction-wild-in{0%{opacity:0;transform:scale(.6)rotate(-7deg)}55%{opacity:1;transform:scale(1.1)rotate(3deg)}to{transform:scale(1)rotate(0)}}.score-reaction-overlay.tier-sad .score-reaction-card{animation:.22s ease-out both score-reaction-sad-in}.score-reaction-overlay.tier-happy .score-reaction-card{animation:.3s cubic-bezier(.2,1.3,.5,1) both score-reaction-happy-in}.score-reaction-overlay.tier-wild .score-reaction-card{max-width:min(92%,380px);animation:.38s cubic-bezier(.2,1.4,.45,1) both score-reaction-wild-in}.score-reaction-overlay.tier-wild .score-reaction-media{width:min(66vw,300px);max-height:min(48vh,300px)}.score-reaction-overlay.tier-wild .score-reaction-score{font-size:1.34rem}@media (orientation:landscape) and (height<=500px){.score-reaction-card{gap:2px;max-width:min(70%,300px);padding:8px 14px}.score-reaction-overlay .score-reaction-media,.score-reaction-overlay.tier-wild .score-reaction-media{width:min(28vw,150px);max-height:38vh}.score-reaction-glyph{font-size:2rem}}@media (prefers-reduced-motion:reduce){.score-reaction-overlay .score-reaction-card{animation:none}}.match-settings{margin-top:14px}.match-settings h3{letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);margin:0 0 6px;font-size:.78rem;font-weight:850}.match-settings-row{align-items:center;gap:8px;display:flex}.match-settings-icon{flex:none;font-size:1.3rem;line-height:1}.match-settings-note{color:var(--text-secondary);margin:4px 0 0;font-size:.74rem}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-ease{syntax:"*";inherits:false}
