/*! 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-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:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--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%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.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}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.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{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{color:var(--tg-theme-text-color,#eee9dd);background:var(--tg-theme-bg-color,#11120f);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:var(--tg-theme-bg-color,#11120f);--panel:var(--tg-theme-secondary-bg-color,#191a16);--text:var(--tg-theme-text-color,#eee9dd);--muted:var(--tg-theme-hint-color,#828278);--accent:#d1f36a;--line:#ebebd71b;--tile:#24251f;--tg-theme-button-color:#d1f36a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:var(--bg);min-width:0;min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{min-height:100vh;position:relative;overflow:hidden}.screen-wrap{z-index:1;position:relative}.ambient{pointer-events:none;filter:blur(105px);opacity:.09;border-radius:50%;position:absolute}.ambient-one{background:#bded3d;width:460px;height:460px;top:-310px;left:calc(50% - 490px)}.ambient-two{opacity:.06;background:#66837c;width:400px;height:400px;top:400px;right:-220px}.page-width{width:min(100% - 48px,970px);margin-inline:auto}.lobby{padding:28px 0 22px}.topbar,.game-topbar{justify-content:space-between;align-items:center;height:38px;display:flex}.topbar-actions,.game-topbar-actions{align-items:center;gap:8px;display:flex}.sound-toggle{border:1px solid var(--line);min-height:34px;color:var(--muted);white-space:nowrap;cursor:pointer;background:#ffffff09;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:10px;font-weight:650;display:inline-flex}.sound-toggle:hover{color:var(--text);border-color:#d1f36a66}.brand,.game-brand{color:var(--text);letter-spacing:.14em;align-items:center;gap:10px;font-size:13px;font-weight:850;text-decoration:none;display:flex}.brand-mark{color:#171910;background:var(--accent);letter-spacing:0;border-radius:9px;place-items:center;width:30px;height:30px;font-size:18px;font-weight:900;display:inline-grid;transform:rotate(-5deg)}.connection-pill{color:var(--muted);border:1px solid var(--line);background:#ffffff05;border-radius:50px;align-items:center;gap:8px;padding:8px 11px;font-size:11px;font-weight:600;display:flex}.connection-dot,.availability-dot{background:#7e8178;border-radius:50%;width:7px;height:7px;display:inline-block}.connection-dot.connected,.availability-dot{background:#b4de55;box-shadow:0 0 10px #b4de556b}.connection-dot.connecting{background:#e7b961;animation:1s infinite pulse}.hero{border-bottom:1px solid var(--line);align-items:center;min-height:330px;margin-top:35px;display:flex;position:relative}.hero-copy{z-index:1;max-width:480px;padding:0 0 31px 3.3%;position:relative}.eyebrow,.section-kicker,.card-label,.move-step{color:#a6c94e;letter-spacing:.16em;align-items:center;gap:7px;font-size:9px;font-weight:800;line-height:1.3;display:inline-flex}.hero h1{letter-spacing:-.075em;margin:17px 0 13px;font-size:clamp(54px,7vw,78px);font-weight:790;line-height:.99}.hero h1 span{color:var(--accent)}.hero-copy>p{color:var(--muted);max-width:370px;margin:0;font-size:13px;line-height:1.75}.hero-meta{color:#b1b0a5;align-items:center;gap:13px;margin-top:25px;font-size:10px;display:flex}.hero-meta span{align-items:center;gap:6px;display:inline-flex}.hero-meta i{background:#606158;border-radius:50%;width:3px;height:3px;display:block}.hero-art{width:310px;height:275px;position:absolute;top:20px;right:5%;transform:rotate(-7deg)}.orbit{border:1px solid #d1f36a26;border-radius:50%;position:absolute;transform:rotate(-23deg)}.orbit-a{width:300px;height:145px;top:55px;left:4px}.orbit-b{border-color:#ffffff12;width:250px;height:220px;top:20px;left:30px;transform:rotate(55deg)}.tile{z-index:1;color:#e4e4d4;background:linear-gradient(145deg,#303229,#20211c);border:1px solid #f0f2d726;border-radius:16px;place-items:center;width:69px;height:72px;font-size:30px;font-weight:700;display:grid;position:absolute;box-shadow:0 18px 38px #0007,inset 0 1px #ffffff0a}.tile-a{color:var(--accent);top:95px;left:35px;transform:rotate(-14deg)}.tile-b{top:45px;left:105px;transform:rotate(8deg)}.tile-c{background:var(--accent);color:#1a1d10;top:125px;left:111px;transform:rotate(-3deg);box-shadow:0 13px 34px #a5ca4955}.tile-d{top:80px;left:185px;transform:rotate(11deg)}.tile-e{color:var(--accent);top:158px;left:188px;transform:rotate(-11deg)}.art-spark{color:var(--accent);font-size:21px;position:absolute}.spark-a{top:32px;right:15px}.spark-b{opacity:.65;font-size:13px;bottom:20px;left:35px}.create-section{padding-top:28px}.section-heading{justify-content:space-between;align-items:end;margin-bottom:16px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:6px 0 0;font-size:19px;font-weight:650}.heading-number{color:#67685f;letter-spacing:.12em;padding-bottom:3px;font-size:10px}.create-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.create-card{text-align:left;border:1px solid var(--line);cursor:pointer;background:linear-gradient(125deg,#ffffff0b,#ffffff03);border-radius:13px;min-height:159px;padding:16px 18px 13px;transition:border-color .2s,transform .2s,background .2s;position:relative;overflow:hidden}.create-card:hover:not(:disabled){background-color:#ffffff06;border-color:#d1f36a61;transform:translateY(-2px)}.private-card{background:linear-gradient(130deg,#5d684029,#ffffff04)}.card-icon{border:1px solid var(--line);width:33px;height:33px;color:var(--accent);background:#ffffff08;border-radius:9px;place-items:center;display:grid}.card-arrow{color:#7b7c72;position:absolute;top:16px;right:16px}.card-content{flex-direction:column;gap:5px;margin-top:15px;display:flex}.card-content strong{letter-spacing:-.03em;font-size:16px;font-weight:670}.card-content>span:last-child{color:var(--muted);font-size:10px}.card-bottom{border-top:1px solid var(--line);color:#9c9c90;align-items:center;gap:7px;margin-top:15px;padding-top:10px;font-size:9px;display:flex}.private-lock{color:var(--accent);font-size:11px}.card-loading{color:var(--accent);background:#10110ed9;justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.spin{animation:1s linear infinite spin}.invite-banner{background:#d1f36a0e;border:1px solid #d1f36a40;border-radius:11px;align-items:center;gap:11px;margin-top:12px;padding:11px 12px;display:flex}.invite-symbol{color:var(--accent)}.invite-text{flex-direction:column;flex:1;gap:3px;display:flex}.invite-text strong{font-size:11px}.invite-text span{color:var(--muted);font-size:10px}.rooms-section{padding-top:35px}.room-heading{margin-bottom:14px}.refresh-button,.icon-button{border:1px solid var(--line);color:#a3a398;cursor:pointer;background:0 0;border-radius:9px;place-items:center;width:32px;height:32px;transition:color .2s,border-color .2s;display:grid}.refresh-button:hover,.icon-button:hover{color:var(--accent);border-color:#d1f36a66}.empty-state{border:1px solid var(--line);background:#ffffff05;border-radius:11px;align-items:center;gap:13px;min-height:82px;padding:15px 16px;display:flex}.empty-icon{color:#a7c657;background:#d1f36a13;border-radius:10px;flex:0 0 35px;place-items:center;width:35px;height:35px;display:grid}.empty-state>div{flex:1}.empty-state strong{font-size:11px;font-weight:650;display:block}.empty-state p{color:var(--muted);margin:5px 0 0;font-size:10px}.text-button{color:var(--accent);cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:3px;font-size:10px;font-weight:650;display:inline-flex}.room-list{border:1px solid var(--line);border-radius:11px;overflow:hidden}.room-row{border-bottom:1px solid var(--line);background:#ffffff05;align-items:center;gap:11px;min-height:72px;padding:10px 14px;display:flex}.room-row:last-child{border:0}.player-avatar,.score-avatar,.tiny-avatar{color:var(--accent);background:#343a2a;border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.player-avatar{width:34px;height:34px}.player-avatar img,.score-avatar img{object-fit:cover;width:100%;height:100%}.room-player{flex-direction:column;flex:1;gap:5px;min-width:120px;display:flex}.room-player strong{font-size:11px}.room-player>span{color:var(--muted);align-items:center;gap:6px;font-size:9px;display:flex}.room-player .availability-dot{width:5px;height:5px}.room-word{flex-direction:column;gap:4px;min-width:125px;display:flex}.room-word span{color:#73746c;letter-spacing:.12em;font-size:8px}.room-word strong{letter-spacing:.18em;color:#d2d3c5;font-size:12px}.button{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:34px;padding:0 12px;font-size:10px;font-weight:700;transition:all .2s;display:inline-flex}.button-join{color:#1b1e12;background:var(--accent);min-width:75px}.button-join:hover,.button-accent:hover:not(:disabled){background:#e0ff83;transform:translateY(-1px)}.button-accent{color:#1b1e12;background:var(--accent)}.button-muted{color:#c5c5b8;border:1px solid var(--line);background:#fff1}.invite-share{min-height:32px}.error-banner{color:#ffc0af;background:#ff765912;border:1px solid #ff765938;border-radius:9px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:10px;display:flex}.error-banner span{flex:1}.error-banner button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:10px}.lobby-footer{color:#66675e;letter-spacing:.12em;justify-content:space-between;align-items:center;padding:24px 2px 0;font-size:8px;display:flex}.footer-player{color:#898a7f;letter-spacing:0;align-items:center;gap:7px;font-size:9px;display:flex}.footer-player>svg{margin-left:2px}.tiny-avatar{width:19px;height:19px;font-size:8px}.game-page{max-width:690px;padding:25px 0 30px}.game-brand{gap:7px;font-size:10px}.brand-mark.small{border-radius:7px;width:24px;height:24px;font-size:14px}.back-button{color:#a3a398;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:7px 0;font-size:10px;display:inline-flex}.back-button:hover{color:var(--text)}.quit-button{color:#a89a8d;width:30px;height:30px}.game-title-row{justify-content:space-between;align-items:end;margin:25px 0 15px;display:flex}.game-title-row h1{letter-spacing:-.055em;margin:6px 0 0;font-size:27px}.game-title-row h1 span{color:var(--accent)}.live-mark{background:#b9e85b;border-radius:50%;width:6px;height:6px;display:inline-block;box-shadow:0 0 10px #b9e85b}.turn-clock{color:#c2c3b4;border:1px solid var(--line);font-variant-numeric:tabular-nums;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:11px;display:flex}.turn-clock svg{color:#a3b95f}.score-strip{border:1px solid var(--line);background:#ffffff05;border-radius:11px;align-items:center;gap:12px;padding:10px 14px;display:flex}.score-player{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.score-avatar{background:#33372c;width:33px;height:33px}.score-avatar.theirs{color:#d4b7f0;background:#34303a}.score-player>div:nth-child(2){flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.score-player strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.score-player span{color:var(--muted);font-size:8px}.score-player b{color:#cccdbd;font-variant-numeric:tabular-nums;font-size:17px}.active-player .score-avatar{box-shadow:0 0 0 2px var(--accent)}.active-player span{color:var(--accent)}.score-divider{border:1px solid var(--line);color:#74756b;border-radius:50%;place-items:center;width:27px;height:27px;font-size:8px;font-weight:750;display:grid}.board-heading{justify-content:space-between;align-items:end;margin:22px 0 10px;display:flex}.board-heading>div{flex-direction:column;gap:5px;display:flex}.board-heading strong{color:#a3a398;font-size:11px;font-weight:550}.board-heading strong span{color:var(--accent);letter-spacing:.13em;font-size:10px}.board-counter{color:var(--muted);padding-bottom:2px;font-size:9px}.board-frame{background:linear-gradient(140deg,#d1f36a09,#ffffff03);border:1px solid #d1f36a29;border-radius:13px;padding:clamp(9px,2.5vw,16px);box-shadow:0 15px 50px #0002}.board-grid{aspect-ratio:1;grid-template-rows:repeat(5,1fr);grid-template-columns:repeat(5,1fr);gap:clamp(5px,1.5vw,9px);width:min(100%,445px);margin-inline:auto;display:grid;container-type:inline-size}.board-cell{min-width:0;color:var(--text);cursor:pointer;background:#ffffff06;border:1px solid #e6e7cd16;border-radius:8px;place-items:center;padding:0;transition:background .16s,border-color .16s,transform .16s;display:grid;position:relative}.board-cell.empty:hover{background:#d1f36a12;border-color:#d1f36a54}.board-cell.filled{background:linear-gradient(145deg,#292a24,#20211c);border-color:#e6e7cd24;box-shadow:inset 0 1px #ffffff09}.board-cell.center-cell{background:#d1f36a24;border-color:#d1f36a5c}.board-cell.pending-cell{border:1px dashed var(--accent);background:#d1f36a1a}.board-cell.word-path{box-shadow:inset 0 0 0 1px #97cd476b}.cell-letter{font-size:clamp(21px,7vw,34px);font-weight:670;line-height:1}.pending-letter{color:var(--accent)}.cell-plus{color:#77786e;opacity:.5;font-size:17px}.path-index{color:var(--accent);font-size:8px;font-weight:800;position:absolute;top:4px;right:5px}.board-legend{color:#77786f;justify-content:center;gap:18px;width:min(100%,445px);margin:10px auto 0;font-size:8px;display:flex}.board-legend span{align-items:center;gap:5px;display:inline-flex}.legend-dot{background:#a0cd50;border-radius:2px;width:6px;height:6px;display:inline-block}.legend-opponent{background:#987cb1}.legend-start{background:#d1f36a}.move-panel{border:1px solid var(--line);background:#ffffff05;border-radius:11px;margin-top:18px;padding:13px 14px}.my-turn-panel{border-color:#d1f36a36}.move-instruction{flex-direction:column;gap:4px;display:flex}.move-step{color:#a8ca54;font-size:8px}.move-instruction strong{font-size:12px}.move-instruction>span:last-child{color:var(--muted);font-size:9px}.move-controls{align-items:end;gap:9px;margin-top:12px;display:flex}.letter-input-wrap{flex-direction:column;flex:0 0 66px;gap:5px;width:66px;display:flex}.letter-input-wrap>span,.word-preview>span{color:#75766c;letter-spacing:.13em;font-size:7px;font-weight:800}.letter-input-wrap input{width:100%;height:39px;color:var(--accent);border:1px solid var(--line);text-align:center;text-transform:uppercase;outline-offset:1px;background:#ffffff0a;border-radius:7px;font-size:20px;font-weight:750}.letter-input-wrap input:disabled{opacity:.38}.word-preview{border:1px solid var(--line);background:#ffffff06;border-radius:7px;flex:1;align-items:center;gap:5px;min-width:0;height:39px;padding:0 9px;display:flex;overflow-x:auto}.word-preview .word-tile{width:22px;height:26px;color:var(--accent);letter-spacing:0;background:#df976a14;border:1px solid #df976a8c;border-radius:5px;flex:none;place-items:center;font-size:15px;font-weight:750;display:grid}.word-preview strong{color:#d4d5c7;white-space:nowrap;text-overflow:ellipsis;letter-spacing:.12em;font-size:11px;overflow:hidden}.move-buttons{gap:6px;display:flex}.move-buttons .button{height:39px;padding-inline:9px;font-size:9px}.submit-move{min-width:66px}.word-length-hint{color:var(--muted);margin-top:11px;font-size:9px}.game-footnote{color:#77786d;text-align:center;justify-content:center;align-items:center;gap:7px;margin-top:12px;font-size:8px;display:flex}.game-footnote svg{color:#a2c34d;flex:none}.waiting-overlay{z-index:4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b0c0ac2;place-items:center;padding:20px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.waiting-card{text-align:center;background:#1a1b17;border:1px solid #d1f36a33;border-radius:15px;width:min(100%,340px);padding:27px 24px;box-shadow:0 25px 90px #0008}.waiting-icon{width:46px;height:46px;color:var(--accent);background:#d1f36a14;border:1px solid #d1f36a3d;border-radius:13px;place-items:center;margin:0 auto 16px;display:grid}.waiting-card h2{letter-spacing:-.04em;margin:7px 0;font-size:21px}.waiting-card p{max-width:250px;color:var(--muted);margin:0 auto 18px;font-size:11px;line-height:1.6}.waiting-card .button{margin:0 auto}@keyframes pulse{50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.page-width{width:min(100% - 32px,500px)}.lobby{padding-top:19px}.hero{align-items:start;min-height:300px;margin-top:18px}.hero-copy{max-width:330px;padding:32px 0 24px 2px}.hero h1{font-size:clamp(53px,13vw,69px)}.hero-copy>p{max-width:285px;font-size:12px}.hero-art{opacity:.55;transform-origin:100% 0;width:200px;height:200px;top:79px;right:-40px;transform:scale(.74)rotate(-7deg)}.create-section{padding-top:23px}.create-grid{gap:9px}.create-card{min-height:157px;padding:12px 12px 11px}.card-content strong{font-size:14px}.card-content>span:last-child{max-width:160px;line-height:1.45}.card-bottom{font-size:8px}.section-heading h2{font-size:17px}.rooms-section{padding-top:29px}.empty-state{gap:9px;padding:12px}.empty-state p{line-height:1.4}.empty-state .text-button{display:none}.room-word{min-width:75px}.room-player{min-width:70px}.room-row{gap:8px;padding-inline:10px}.room-word span{font-size:7px}.button-join{min-width:62px;padding-inline:8px}.lobby-footer{padding-top:20px}.invite-banner{flex-wrap:wrap}.invite-text{min-width:150px}.invite-share{margin-left:auto}.game-page{padding-top:18px}.game-title-row{margin-top:21px}.board-legend{gap:10px;font-size:7px}.move-controls{flex-wrap:wrap}.word-preview{flex:1}.move-buttons{width:100%}.move-buttons .button{flex:1}.score-strip{gap:7px;padding-inline:10px}.score-player{gap:7px}.score-avatar{width:29px;height:29px}.score-player strong{font-size:9px}.score-player b{font-size:15px}}@media(max-width:380px){.page-width{width:calc(100% - 24px)}.hero-art{opacity:.42;right:-54px}.hero h1{font-size:52px}.hero-meta{gap:8px;font-size:9px}.room-word{display:none}.create-card{min-height:166px}.card-content strong{font-size:13px}.card-bottom{line-height:1.3}.game-topbar-actions{gap:5px}.game-topbar-actions .sound-toggle[data-ready=true] span,.game-topbar-actions .sound-toggle[data-enabled=false] span{display:none}.sound-toggle{gap:4px;padding-inline:7px;font-size:9px}.topbar-actions{gap:5px}}.board-cell.mine-letter .cell-letter{color:#d1f36a}.board-cell.opponent-letter .cell-letter{color:#c2a7de}.waiting-invite{justify-content:center;align-items:center;gap:8px;margin:0 0 10px;display:flex}.waiting-invite .button{margin:0}.my-rooms{flex-direction:column;gap:9px;margin-bottom:22px;display:flex}.delete-room-button{color:#ad5b48}.delete-room-button:hover{color:#914532;border-color:#c4775b61}.letter-keyboard{touch-action:none;-webkit-user-select:none;user-select:none;background:#00000030;border:1px solid #ffffff12;border-radius:10px;flex-direction:column;gap:6px;margin-top:11px;padding:9px;display:flex}.letter-key-row{justify-content:center;gap:clamp(3px,.65vw,6px);display:flex}.letter-key{color:#34372e;min-width:0;height:35px;font:inherit;cursor:grab;touch-action:none;background:linear-gradient(#fbfcf5,#e9ebdf);border:1px solid #ffffffad;border-radius:6px;flex:1;padding:0 2px;font-size:clamp(10px,2vw,14px);font-weight:650;transition:transform .12s,color .12s,background .12s;box-shadow:0 2px #00000040,inset 0 1px #ffffffe6}.letter-key:active{cursor:grabbing;transform:translateY(1px)}.letter-key-selected{color:#253019;background:linear-gradient(#e2f5b1,#c8e68a);border-color:#c8e68a}.letter-key-row:nth-child(2){padding-inline:4%}.letter-key-row:nth-child(3){padding-inline:10%}@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-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}:root{color-scheme:light;--bg: #faf8ef;--panel: #fffefa;--text: #344638;--muted: #858b7c;--accent: #ed8767;--line: rgba(69, 86, 63, .14);--tile: #fffefa;--tg-theme-bg-color: #faf8ef;--tg-theme-secondary-bg-color: #fffefa;--tg-theme-text-color: #344638;--tg-theme-hint-color: #858b7c;--tg-theme-button-color: #ed8767;color:var(--text);background:var(--bg)}body{background:#faf8ef}.app-shell{background:radial-gradient(ellipse at 8% 8%,rgba(255,217,149,.34),transparent 30%),radial-gradient(ellipse at 92% 31%,rgba(194,221,179,.33),transparent 28%),#faf8ef}.ambient{opacity:.18;filter:blur(110px)}.ambient-one{background:#ffba90}.ambient-two{background:#8fc6a3;opacity:.13}.page-width{width:min(100% - 52px,1120px)}.lobby{padding-top:24px}.topbar,.game-topbar{height:42px}.brand,.game-brand{color:var(--text)}.brand-mark{color:#fffdf6;background:#86a96e;box-shadow:0 5px 12px #5e7e4b2b}.brand-period{color:var(--accent)}.connection-pill{color:#71806d;background:#ffffffab;border-color:#55684a21;box-shadow:0 3px 12px #4e5c4309}.connection-dot{background:#c3c6b9}.connection-dot.connected,.availability-dot{background:#76a66e;box-shadow:0 0 0 3px #76a66e1f}.connection-dot.connecting{background:#e8a45a}.sound-toggle{color:#73826e;border-color:#4b614329;background:#ffffff9e}.sound-toggle:hover{color:#5d8551;border-color:#769e5766}.hero{min-height:310px;margin-top:22px;border-color:#4c604424}.hero h1{color:#35483a}.hero h1 span{color:#df775a}.eyebrow,.section-kicker,.card-label,.move-step{color:#819d5d}.hero-copy>p{color:#798275}.hero-meta{color:#737d70}.hero-meta i{background:#c2c4b6}.orbit{border-color:#7ea05b36}.orbit-b{border-color:#6f836021}.tile{color:#466044;border:1px solid rgba(103,126,80,.13);border-radius:18px;background:linear-gradient(145deg,#fffef8,#f0f3e6);box-shadow:0 17px 32px #424c3521,inset 0 1px #fff}.tile-a,.tile-e{color:#e07a5d}.tile-c{background:#e6efc9;color:#4c6944;box-shadow:0 13px 30px #85a15838}.art-spark{color:#e69b63}.section-heading h2{color:#3a4a3d}.heading-number{color:#a0a194}.time-setting{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:12px 14px;border:1px solid rgba(83,103,70,.12);border-radius:12px;background:#fffffcc7}.time-setting-copy{display:flex;flex-direction:column;gap:6px}.time-setting-copy>span{display:inline-flex;align-items:center;gap:6px;color:#849172;font-size:8px;font-weight:850;letter-spacing:.12em}.time-setting-copy strong{color:#455744;font-size:12px}.time-setting-copy small{color:#999b8e;font-size:9px;font-weight:450}.time-options{display:flex;gap:5px;padding:4px;border:1px solid rgba(90,109,73,.1);border-radius:10px;background:#f6f6ed}.time-option{min-height:29px;padding:0 10px;border:0;border-radius:7px;color:#788173;background:transparent;font-size:9px;font-weight:650;cursor:pointer}.time-option:hover{color:#566b4b;background:#ffffffb8}.time-option.selected{color:#fffefa;background:#839e65;box-shadow:0 2px 6px #53743f33}.create-card{border-color:#53674621;background:#fffffcdb;box-shadow:0 8px 26px #434c350a}.create-card:hover:not(:disabled){border-color:#7e9d577a;background:#fffefa;box-shadow:0 12px 30px #434c3514}.private-card{background:linear-gradient(128deg,#f1f4e4,#fffefa 82%)}.card-icon{color:#6d945b;border-color:#5c7d4726;background:#f4f6ea}.card-arrow{color:#9c9f91}.card-content strong{color:#3a493d}.card-content>span:last-child{color:#828879}.card-bottom{color:#7e8377;border-color:#4c60441c}.invite-banner{border-color:#769e573d;background:#f2f6e8}.invite-symbol{color:#77985c}.invite-text span{color:#798275}.refresh-button,.icon-button{color:#73826e;border-color:#4b614329;background:#ffffff9e}.refresh-button:hover,.icon-button:hover{color:#5d8551;border-color:#769e5766}.empty-state,.room-row{background:#fffffcc4;border-color:#4c604421}.empty-icon{color:#728f58;background:#eff4e2}.empty-state strong,.room-player strong{color:#3a493d}.empty-state p,.room-player>span{color:#848a7d}.text-button{color:#6e9559}.player-avatar{color:#62804f;background:#edf2dd}.room-word span,.room-time{color:#888c7d}.room-time{padding:5px 7px;border-radius:50px;background:#f0f2e7;font-size:8px;white-space:nowrap}.room-word strong{color:#4b6149}.button-join,.button-accent{color:#fff;background:#e78163;box-shadow:0 4px 12px #d5755726}.button-join:hover,.button-accent:hover:not(:disabled){background:#dc7457}.delete-room-button{color:#ad5b48;border-color:#c4775b33;background:#ffffffa8}.delete-room-button:hover{color:#914532;border-color:#c4775b61;background:#fff8f3}.button-muted{color:#687566;background:#f5f5eb;border-color:#4e614321}.error-banner{color:#b94e3b;border-color:#dc6d5333;background:#fff0e9}.lobby-footer{color:#999b8f}.footer-player{color:#7e8778}.tiny-avatar{color:#fff;background:#86a96e}.game-page{max-width:1270px;padding-top:21px}.game-brand{color:#52654d}.brand-mark.small{color:#fff;background:#86a96e}.back-button{color:#7d8779}.back-button:hover{color:#435745}.give-up-button{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(196,119,91,.2);border-radius:10px;color:#b2765f;background:#ffffffa8;font-size:10px;cursor:pointer}.game-title-row{margin:20px 0 19px}.game-title-row h1{color:#35483a;font-size:clamp(24px,3vw,34px)}.game-title-row h1 span{color:#df775a}.turn-clock{color:#4f644e;background:#fffffcd9;border-color:#586e4b26;box-shadow:0 4px 14px #46573b0b}.turn-clock svg{color:#769358}.turn-clock small{color:#909486;font-size:8px}.match-layout{display:grid;grid-template-columns:minmax(190px,230px) minmax(320px,1fr) minmax(190px,230px);grid-template-areas:"left board right";align-items:start;gap:clamp(13px,2vw,25px)}.player-column-1{grid-area:left}.player-column-2{grid-area:right}.board-stage{grid-area:board;min-width:0}.board-stage .turn-timer{margin:0 0 10px}.player-card{overflow:hidden;position:relative;min-height:420px;border:1px solid rgba(90,109,73,.14);border-radius:17px;padding:15px 14px 13px;background:#fffffce0;box-shadow:0 10px 28px #47523c0e}.player-column-1 .player-card{background:linear-gradient(150deg,#fffffff7,#fff5ebed)}.player-column-2 .player-card{background:linear-gradient(150deg,#fffffff7,#f1f7ebf0)}.player-is-active .player-card{border-color:#82a45d80;box-shadow:0 11px 30px #7392531f}.player-card-top{display:flex;justify-content:space-between;align-items:center;gap:6px}.player-number{color:#949888;font-size:8px;font-weight:800;letter-spacing:.13em}.your-turn-tag{padding:4px 7px;border-radius:50px;color:#66854f;background:#eaf1dc;font-size:7px;font-weight:850;letter-spacing:.1em}.player-identity{display:flex;align-items:center;gap:9px;margin-top:15px}.score-avatar{width:37px;height:37px;color:#62804f;background:#e9efdc}.avatar-2{color:#7681a9;background:#ececf7}.player-name{display:flex;flex-direction:column;gap:4px;min-width:0}.player-name strong{overflow:hidden;color:#405242;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.player-name span{color:#899082;font-size:8px}.player-score{display:flex;align-items:end;justify-content:space-between;margin:16px 0 15px;padding-bottom:13px;border-bottom:1px solid rgba(75,94,67,.12)}.player-score strong{color:#496a47;font-size:35px;line-height:1;letter-spacing:-.07em;font-variant-numeric:tabular-nums}.player-column-2 .player-score strong{color:#7783af}.player-score span{color:#96988b;font-size:7px;font-weight:800;letter-spacing:.15em}.words-heading{display:flex;align-items:center;gap:6px;color:#77856b;font-size:8px;font-weight:800;letter-spacing:.1em}.words-heading i{margin-left:auto;display:grid;min-width:19px;height:19px;place-items:center;border-radius:50%;color:#71875f;background:#eef2e4;font-size:8px;font-style:normal}.played-words{display:flex;flex-direction:column;gap:5px;margin-top:10px}.played-word{width:100%;display:flex;align-items:center;gap:8px;padding:8px 7px;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;cursor:pointer;transition:.18s}.played-word:hover{border-color:#7091532b;background:#f1f5e6d9;transform:translate(2px)}.played-word-number{color:#a0a291;font-size:8px;font-variant-numeric:tabular-nums}.played-word-text{flex:1;overflow:hidden;color:#405443;font-size:12px;font-weight:720;letter-spacing:.1em;text-overflow:ellipsis}.played-word-score{color:#7d9a61;font-size:9px;font-weight:750}.no-words{display:flex;align-items:center;gap:8px;padding:11px 5px;color:#999b8e;font-size:9px}.no-words span{color:#d28c6b}.word-hint{display:flex;align-items:center;gap:5px;margin-top:15px;color:#929588;font-size:8px}.word-hint svg{color:#9eb273}.board-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:10px 13px;border:1px solid rgba(94,115,75,.13);border-radius:13px;background:#fffffcc7}.turn-note{display:flex;align-items:center;gap:10px;min-width:0}.turn-spark{display:grid;width:31px;height:31px;flex:0 0 31px;place-items:center;border-radius:10px;color:#8a9c68;background:#f0f3e5;font-size:17px}.turn-note-mine .turn-spark{color:#dd795b;background:#fff0e8;animation:gentle-pop 1.5s ease-in-out infinite}.turn-note>div{display:flex;min-width:0;flex-direction:column;gap:4px}.turn-note strong{overflow:hidden;color:#455744;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.turn-note>div>span{color:#909385;font-size:8px}.turn-count{color:#809267;font-size:15px;font-weight:750;font-variant-numeric:tabular-nums}.turn-count small{color:#a1a394;font-size:9px;font-weight:500}.board-heading{margin:0 2px 9px}.board-heading strong{color:#778071}.board-heading strong span{color:#dd7c5e}.board-frame{padding:clamp(8px,1.4vw,13px);border:1px solid rgba(92,116,75,.17);border-radius:17px;background:linear-gradient(142deg,#fffffdf5,#f5f5e6f0);box-shadow:0 14px 32px #47533812,inset 0 1px #fff}.board-your-turn{border-color:#de89634d}.board-grid{width:min(100%,540px);gap:clamp(5px,1vw,9px)}.board-cell{border:1px solid rgba(100,119,83,.12);border-radius:clamp(7px,1.3vw,12px);background:#faf9efe6;touch-action:none;user-select:none;-webkit-user-select:none}.board-cell.filled{border-color:#65795221;background:linear-gradient(145deg,#fffefa,#f5f5e9);box-shadow:0 3px 7px #4c583c0e,inset 0 1px #fff}.board-cell.empty:hover{border-color:#d98a6457;background:#fff8ef}.board-cell.mine-letter .cell-letter{color:#698752}.board-cell.opponent-letter .cell-letter{color:#818ab4}.board-cell.pending-cell{border:2px dashed #e58364;background:#fff0e6;box-shadow:0 0 0 3px #e5836414}.board-cell.word-path{box-shadow:inset 0 0 0 2px #df976a7a}.board-cell.available-cell{border-style:dashed;border-color:#7b9f5d61;background:#edf3de85}.board-cell.available-cell:hover{background:#e8f2d3e6}.cell-letter{color:#3e5742;font-size:clamp(22px,4vw,38px)}.pending-letter{color:#db785a}.path-index{top:3px;right:5px;color:#ce7559;font-size:8px}.board-legend{gap:13px;color:#85897d;font-size:8px}.legend-dot{border-radius:50%}.legend-mine{background:#7e9b61}.legend-opponent{background:#929bc2}.legend-start{background:#d7a875}.move-panel{margin-top:15px;padding:12px 13px;border:1px solid rgba(83,105,69,.13);border-radius:13px;background:#fffffcde}.my-turn-panel{border-color:#de896338;background:linear-gradient(112deg,#fff8eff2,#fffffaf0)}.move-step{color:#d27b5f}.move-instruction strong{color:#435544;font-size:11px}.move-instruction>span:last-child{color:#82897c;font-size:9px;line-height:1.5}.move-controls{align-items:end;gap:8px;margin-top:10px}.letter-input-wrap>span,.word-preview>span{color:#888d7e}.letter-input-wrap input{color:#d77859;background:#fffefa;border-color:#62774f29}.letter-input-wrap input:focus-visible{outline-color:#df8767}.word-preview{background:#fffefa;border-color:#62774f24}.word-preview .word-tile{border-color:#d98a6480;background:#df976a17;color:#d77859}.word-preview strong{color:#476149}.move-buttons .button{font-size:9px}.submit-move{min-width:83px}.match-estimate{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:9px;color:#8c9183;font-size:8px}.match-estimate svg{color:#829965}.match-estimate span{color:#bdc0b1}.game-error{margin-top:9px}.game-footer{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding:11px 3px;border-top:1px solid rgba(80,100,68,.12);color:#858b7e;font-size:8px}.game-footer span{display:inline-flex;align-items:center;gap:6px}.game-footer svg{color:#a5b276}.game-footer i{width:3px;height:3px;border-radius:50%;background:#c5c6b8}.game-brand-spacer{width:60px}.waiting-overlay{background:#ebebdaa8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.waiting-card{border:1px solid rgba(95,119,76,.18);background:#fffef9;box-shadow:0 23px 70px #48513c2b}.waiting-icon{border-color:#7f9f5d33;color:#79965b;background:#f0f4e4}.waiting-card h2{color:#3e5141}.waiting-card p{color:#858b7e}.waiting-invite{margin-top:-4px}.waiting-invite .button{padding-inline:16px}.result-icon{color:#d17e5d;background:#fff0e5;border-color:#dc8b6440}.result-card{overflow:hidden;position:relative}.result-card:before,.result-card:after{position:absolute;top:36px;color:#e2ae68;content:"✳";font-size:20px}.result-card:before{left:35px}.result-card:after{right:35px}.result-card h2{max-width:300px;margin-inline:auto}.result-card p span{color:#c4bca9}.result-countdown{display:flex;align-items:center;justify-content:center;gap:6px;color:#929688;font-size:9px}.result-countdown strong{color:#da8062;font-size:18px;font-variant-numeric:tabular-nums}.definition-backdrop{position:fixed;z-index:10;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#424d3940;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.definition-card{position:relative;width:min(100%,390px);padding:26px 25px 23px;border:1px solid rgba(108,131,83,.19);border-radius:19px;background:#fffef9;box-shadow:0 24px 75px #36452f33}.definition-close{position:absolute;top:13px;right:13px;display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:50%;color:#84907d;background:#f1f2e8;cursor:pointer}.definition-kicker{display:inline-flex;align-items:center;gap:7px;color:#829668;font-size:8px;font-weight:850;letter-spacing:.14em}.definition-card h2{margin:12px 0;color:#3c5540;font-size:32px;letter-spacing:.045em}.definition-rule{width:45px;height:3px;border-radius:10px;background:#e68b68}.definition-card p{margin:16px 0;color:#566653;font-size:13px;line-height:1.75;white-space:pre-line}.definition-source{color:#9a9d91;font-size:8px}.live-mark{background:#80aa66;box-shadow:0 0 0 3px #80aa6626}@keyframes gentle-pop{50%{transform:scale(1.045)}}:root{--accent: #f0714a;--prime: #4ea06b;--prime-deep: #2f9e6e}.brand{font-size:16px;letter-spacing:.1em}.brand-mark{width:36px;height:36px;font-size:22px;color:#fff;background:linear-gradient(135deg,#8fd86b,#2f9e6e);box-shadow:0 6px 16px #2f9e6e47}.brand-period{color:var(--accent);font-weight:850}.eyebrow,.section-kicker,.card-label,.move-step{color:var(--prime);font-size:11px}.hero h1{font-size:clamp(60px,8.5vw,94px)}.hero h1 span{color:#ff7a45}.hero-copy>p{font-size:16px;line-height:1.8;color:#6f7b6c}.hero-meta{font-size:12px;color:#6b7a66}.tile{width:72px;height:75px;font-size:36px;border-radius:19px}.art-spark{font-size:23px}.section-heading h2{font-size:23px;color:#2f4633}.heading-number{font-size:12px}.time-setting-copy>span{font-size:10px}.time-setting-copy strong{font-size:15px}.time-setting-copy small{font-size:11px}.time-option{font-size:11px;min-height:32px}.card-icon{width:37px;height:37px}.card-content strong{font-size:19px}.card-content>span:last-child{font-size:12px}.card-bottom{font-size:11px}.private-lock,.invite-text strong{font-size:13px}.invite-text span{font-size:12px}.refresh-button,.icon-button{width:36px;height:36px}.empty-state strong{font-size:14px}.empty-state p,.text-button{font-size:12px}.room-player strong{font-size:13px}.room-player>span{font-size:11px}.room-word strong{font-size:14px}.room-word span,.room-time{font-size:10px}.player-avatar{width:38px;height:38px;font-size:14px}.tiny-avatar{width:22px;height:22px;font-size:9px}.connection-pill{font-size:13px}.lobby-footer{font-size:10px}.footer-player{font-size:11px}.button{font-size:12px;min-height:38px}.button-join,.button-accent{color:#fff;background:linear-gradient(135deg,#ff8d5c,#e26f4e);box-shadow:0 4px 14px #e26f4e38}.button-join:hover,.button-accent:hover:not(:disabled){background:linear-gradient(135deg,#ff7a45,#d85f3a);transform:translateY(-1px)}.button-muted,.error-banner{font-size:12px}.delete-room-button{font-size:11px}.game-brand{font-size:14px;letter-spacing:.1em}.brand-mark.small{width:30px;height:30px;font-size:18px;color:#fff;background:linear-gradient(135deg,#8fd86b,#2f9e6e);box-shadow:0 4px 12px #2f9e6e40}.back-button{font-size:12px}.give-up-button{font-size:12px;padding:9px 12px}.game-title-row{margin:14px 0 12px}.game-title-row h1{font-size:clamp(30px,4vw,46px)}.turn-clock{font-size:14px;padding:9px 12px}.turn-clock small{font-size:10px}.score-strip{padding:9px 14px}.score-avatar{width:42px;height:42px}.score-player strong{font-size:12px}.score-player span{font-size:10px}.score-player b{font-size:22px}.board-status{padding:8px 13px;margin-bottom:8px;border-radius:13px}.turn-note strong{font-size:13px}.turn-note>div>span{font-size:10.5px}.turn-count{font-size:18px}.turn-count small{font-size:10.5px}.board-heading strong{font-size:13px}.board-heading strong span{font-size:12px}.board-counter{font-size:11px}.board-frame{position:relative;padding:clamp(9px,1.4vw,12px)}.board-grid-wrap{position:relative;width:min(100%,400px);margin-inline:auto;padding-bottom:100%}.board-grid{position:absolute;top:0;right:0;bottom:0;left:0;container-type:inline-size;gap:clamp(5px,.9vw,7px);align-items:stretch;justify-items:stretch}.board-cell{aspect-ratio:1 / 1;overflow:hidden}.board-cell.pending-cell{border:1px dashed #e58364;box-shadow:0 0 0 3px #e5836424}.cell-letter{display:grid;place-items:center;width:100%;height:100%;line-height:1;font-size:clamp(18px,6vw,30px);font-size:clamp(18px,7.5cqw,30px)}.path-index{font-size:9px}.board-legend{font-size:11px;gap:15px}.legend-dot{width:8px;height:8px}.legend-start{background:#e8a84b}.move-panel{margin-top:10px;padding:9px 12px}.move-instruction strong{font-size:14px}.move-instruction>span:last-child{font-size:11px;line-height:1.55}.move-step{font-size:11px;color:var(--prime)}.letter-input-wrap input{height:42px;font-size:24px}.letter-input-wrap>span,.word-preview>span{font-size:9px}.word-preview{height:42px}.word-preview strong{font-size:15px}.move-buttons .button{height:42px;font-size:12px}.submit-move{min-width:88px}.letter-key{height:38px;font-size:clamp(13px,2.4vw,17px)}.word-length-hint{font-size:11px}.match-estimate,.game-footer{font-size:10.5px}.player-card{padding:16px 15px 14px}.player-number{font-size:10px}.your-turn-tag{font-size:9px;padding:5px 8px}.player-name strong{font-size:13px}.player-name span{font-size:10px}.player-score strong{font-size:44px}.player-score span{font-size:9px}.words-heading{font-size:10px}.words-heading i{min-width:22px;height:22px;font-size:10px}.played-word-text{font-size:15px}.played-word-number{font-size:10px}.played-word-score,.no-words{font-size:11px}.word-hint{font-size:10px}.turn-timer{display:flex;align-items:center;justify-content:center;gap:11px;margin:0 0 8px;padding:8px 16px;border:1px solid rgba(94,115,75,.16);border-radius:13px;background:#fffffcde;box-shadow:0 4px 14px #46573b0d;color:#54634c}.turn-timer svg{color:#7d9760}.turn-timer strong{font-size:clamp(28px,5.5vw,44px);font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.04em}.turn-timer span{font-size:11px;font-weight:750;letter-spacing:.09em}.turn-timer-mine{border-color:#de896352;background:linear-gradient(132deg,#fff6ea,#ffe9d2)}.turn-timer-mine svg{color:#d97f5b}.turn-timer-mine strong,.turn-timer-mine span{color:#d97f5b}.turn-timer-theirs{border-color:#818ab44d;background:linear-gradient(132deg,#f7f8fd,#e9ebf7)}.turn-timer-theirs svg{color:#818ab4}.turn-timer-theirs strong,.turn-timer-theirs span{color:#818ab4}.turn-timer-alert{animation:timer-pulse 1s ease-in-out infinite}.turn-timer-alert svg{color:#c24f33}.turn-timer-alert strong{color:#c24f33}@keyframes timer-pulse{50%{border-color:#c24f338c;box-shadow:0 0 0 4px #c24f3324}}.waiting-card h2{font-size:26px}.waiting-card p{font-size:13px;line-height:1.65}.result-card h2{font-size:26px}.result-countdown{font-size:11px}.result-countdown strong{font-size:22px}.definition-card h2{font-size:38px}.definition-card p{font-size:15px;line-height:1.75}.definition-kicker,.definition-source{font-size:10px}.definition-close{width:34px;height:34px}.turn-toast{position:absolute;z-index:8;top:-24px;left:0;right:0;margin-inline:auto;width:fit-content;max-width:calc(100% - 24px);padding:12px 24px;border:2px solid rgba(222,137,99,.55);border-radius:16px;color:#7a4a1f;background:linear-gradient(135deg,#fff7ec,#ffe6cc);box-shadow:0 12px 30px #c8784640;text-align:center;font-size:17px;font-weight:800}.toast-error{position:absolute;z-index:9;top:-24px;left:0;right:0;margin-inline:auto;width:fit-content;max-width:calc(100% - 24px);padding:12px 24px;border:2px solid rgba(217,113,86,.6);border-radius:16px;color:#8a2f1d;background:linear-gradient(135deg,#fff4ec,#ffe0d1);box-shadow:0 12px 30px #c8503247;text-align:center;font-size:17px;font-weight:800}@media(max-width:930px){.page-width{width:min(100% - 40px,760px)}.match-layout{grid-template-columns:minmax(155px,205px) minmax(300px,1fr) minmax(155px,205px);gap:11px}.player-card{padding-inline:11px}.player-name strong{font-size:10px}.word-hint{line-height:1.35}.played-word{gap:6px;padding-inline:4px}.played-word-text{font-size:11px}}@media(max-width:740px){.page-width{width:min(100% - 32px,560px)}.lobby{padding-top:16px}.hero{min-height:285px;margin-top:10px}.hero-copy{padding-top:28px}.hero-art{right:-20px;top:74px;opacity:.68}.time-setting{align-items:flex-start;flex-direction:column;gap:10px}.time-options{width:100%}.time-option{flex:1}.match-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"board board" "left right";gap:12px}.board-cell{padding-top:2px}.player-card{min-height:260px}.played-words{max-height:245px;overflow-y:auto}.player-score{margin:12px 0}.player-identity{margin-top:12px}.board-grid-wrap{width:min(100%,500px)}.board-status{margin-bottom:13px}.game-footer{flex-direction:column;align-items:center;text-align:center}.letter-keyboard{position:fixed;left:0;right:0;bottom:0;z-index:9;margin:0;padding:7px 5px calc(9px + env(safe-area-inset-bottom,0px));border:0;border-radius:0;background:#1a1b18f2;box-shadow:0 12px 30px #2e362833}.letter-key{height:40px;font-size:clamp(13px,2.3vw,17px)}.letter-key-row{gap:clamp(2px,.5vw,4px)}.letter-key-row:nth-child(2){padding-inline:3%}.letter-key-row:nth-child(3){padding-inline:9%}.move-instruction>span:last-child{display:none}.move-instruction strong{font-size:12.5px;line-height:1.35}.game-page{padding-bottom:22px}.game-page.keyboard-open{padding-bottom:calc(152px + env(safe-area-inset-bottom,0px))}.turn-timer{padding:7px 13px}.turn-timer strong{font-size:clamp(26px,6.5vw,36px)}}@media(max-width:480px){.page-width{width:calc(100% - 24px)}.lobby{padding-top:12px}.connection-pill{font-size:9px}.hero{min-height:270px}.hero-copy{padding-left:0}.hero h1{font-size:53px}.hero-copy>p{max-width:248px;font-size:11px}.hero-art{right:-48px;top:93px;transform:scale(.65) rotate(-7deg);transform-origin:top right;opacity:.59}.hero-meta{gap:7px;font-size:8px}.hero-meta span{gap:4px}.section-heading h2{font-size:16px}.heading-number{font-size:8px}.time-setting{padding:12px}.time-setting-copy strong{font-size:11px}.time-setting-copy small{font-size:8px}.create-grid{gap:8px}.create-card{min-height:161px;padding:11px}.card-icon{width:30px;height:30px}.card-content{margin-top:12px}.card-content strong{font-size:13px}.card-content>span:last-child{font-size:9px}.card-bottom{margin-top:12px;font-size:7px}.room-word{display:none}.room-row{padding:9px;gap:7px}.room-player{min-width:0}.room-player strong{font-size:9px}.room-time{font-size:8px;white-space:nowrap}.button-join{min-width:57px;padding-inline:7px}.game-page{padding-top:13px}.game-topbar{height:36px}.game-title-row{align-items:center;margin:17px 0 12px}.game-title-row h1{max-width:260px;font-size:23px}.turn-clock{gap:5px;padding:7px;font-size:10px}.turn-clock small{display:none}.match-layout{gap:8px}.board-status{padding:8px}.turn-note{gap:7px}.turn-note strong{font-size:9px}.turn-note>div>span{font-size:7px}.turn-spark{width:27px;height:27px;flex-basis:27px}.board-frame{padding:7px;border-radius:13px}.board-grid{gap:4px}.board-cell{border-radius:7px}.path-index{top:2px;right:3px;font-size:7px}.board-legend{gap:8px;font-size:7px}.move-panel{padding:10px}.move-controls{display:flex;flex-wrap:wrap;gap:7px}.word-preview{min-width:0;flex:1 1 100%}.move-buttons{width:100%}.move-buttons .button{flex:1}.match-estimate{flex-wrap:wrap;font-size:7px}.player-card{min-height:235px;padding:10px 8px;border-radius:13px}.player-number{font-size:7px}.your-turn-tag{padding:3px 5px;font-size:6px}.score-avatar{width:30px;height:30px}.player-identity{gap:6px}.player-name strong{max-width:95px;font-size:9px}.player-name span{font-size:7px}.player-score strong{font-size:29px}.player-score span{font-size:6px}.words-heading{gap:4px;font-size:7px}.played-word{gap:4px;padding:7px 3px}.played-word-text{font-size:9px}.played-word-number,.played-word-score{font-size:7px}.no-words{font-size:8px;line-height:1.4}.word-hint,.game-footer{font-size:7px}.result-card h2{font-size:19px}.result-card:before{left:14px}.result-card:after{right:14px}.turn-timer{padding:6px 10px}.turn-timer strong{font-size:clamp(24px,9vw,32px)}.turn-timer span{font-size:9px}.board-cell{padding-top:4px}}@media(max-width:380px){.hero h1{font-size:46px}.turn-note strong{font-size:8px}}
