@font-face{font-family:Wortello Sans;src:url(/fonts/source-sans-3-normal.woff2) format("woff2");font-style:normal;font-weight:200 900;font-display:swap}@font-face{font-family:Wortello Sans;src:url(/fonts/source-sans-3-italic.woff2) format("woff2");font-style:italic;font-weight:200 900;font-display:swap}@font-face{font-family:"Wortello Serif";src:url(/fonts/source-serif-4-normal.woff2) format("woff2");font-style:normal;font-weight:200 900;font-display:swap}@font-face{font-family:"Wortello Serif";src:url(/fonts/source-serif-4-italic.woff2) format("woff2");font-style:italic;font-weight:200 900;font-display:swap}.admin-style-boundary{display:contents}.public-ui{--font-ui-sans:"Wortello Sans","Segoe UI",sans-serif;--font-ui-serif:"Wortello Serif",Georgia,serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-control:12px;--radius-card:20px;--radius-dialog:24px;--surface:#fffaf3;--surface-subtle:#eee5d5;--accent-soft:#fff1e4;--warning-ink:#655236;--warning-soft:#f3e7ce;--shadow-card:0 6px 20px rgba(82,57,35,.08);--shadow-dialog:0 24px 80px rgba(27,20,14,.3);--shadow:var(--shadow-card);--focus-ring:var(--teal);min-height:100dvh;color:var(--ink);background:var(--paper);font-family:var(--font-ui-sans);font-size:16px;letter-spacing:.01em;font-optical-sizing:auto}.public-ui :is(.page-shell,.legal-page,.info-page,.info2-page,.marketing-page){color:var(--ink);background:var(--paper)}.public-ui .info-page{--info-ink:var(--ink);--info-muted:var(--muted);--info-paper:var(--paper);--info-paper-deep:var(--paper-deep);--info-terracotta:var(--accent);--info-terracotta-dark:var(--accent-dark);--info-teal:var(--teal);--info-teal-soft:var(--teal-soft);--info-gold:var(--gold)}.public-ui :is(h1,h2,h3){font-family:var(--font-ui-serif);letter-spacing:-.035em}.public-ui :where(p){line-height:1.5}.public-ui :is(.new-game-intro,.auth-page-heading,.lobby-heading,.history-heading,.legal-card) h1{font-size:clamp(32px,6vw,52px);line-height:1.1}.public-ui :is(.section-title h2,.auth-card-copy h2,.profile-card-copy h2,.stats-heading h2,.history-card-heading h2,.legal-card h2){font-size:24px;line-height:1.15}.public-ui :is(.side-card h3,.public-lobby-card h2){font-size:20px;line-height:1.2}.public-ui :is(.modal h2,.push-activation-dialog h2){font-size:clamp(26px,5vw,30px);line-height:1.15}.public-ui :is(.field-label,.eyebrow,.info2-kicker,.consent-kicker,.review-kicker){font-size:12px;font-weight:700;line-height:1.4}.public-ui :is(input,textarea,select){font-family:var(--font-ui-sans)}.public-ui :is(input.text-input,select.text-input,textarea.text-input){min-height:50px;border:1px solid var(--line);border-radius:var(--radius-control);color:var(--ink);background:var(--surface);font-size:16px;line-height:1.5}.public-ui .text-input:focus{border-color:var(--teal);background:var(--surface);box-shadow:0 0 0 3px var(--teal-soft)}.public-ui .text-input.code-input{font-family:var(--font-ui-serif);font-size:25px}.public-ui :is(.primary-button,.secondary-button,.danger-button,.info-primary-button,.info2-play-button){min-height:48px;gap:var(--space-2);padding-inline:var(--space-4);border-radius:var(--radius-control);font-weight:700;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.public-ui :is(.primary-button,.info-primary-button,.info2-play-button){color:var(--surface);background:var(--accent-dark);box-shadow:var(--shadow-card)}.public-ui :is(.primary-button,.info-primary-button,.info2-play-button):hover:not(:disabled){background:#7c372a}.public-ui .secondary-button{color:var(--ink);border-color:var(--line);background:var(--surface);box-shadow:none}.public-ui .secondary-button:hover:not(:disabled){border-color:var(--muted);background:var(--paper-deep)}.public-ui .danger-button{color:var(--surface);background:var(--danger);box-shadow:none}.public-ui .danger-button:hover:not(:disabled){background:#85382f}.public-ui :is(.quiet-button,.text-button,.icon-button,.playstore-button,.pwa-guide-button){min-height:44px;border-radius:var(--radius-control);font-weight:700;text-decoration:none}.public-ui .icon-button{width:44px}.public-ui :is(.playstore-button,.acquisition-store-button){justify-content:center;border:1px solid var(--line);color:var(--ink);background:var(--surface);box-shadow:none}.public-ui :is(.playstore-button,.acquisition-store-button):hover{color:var(--ink);border-color:var(--muted);background:var(--paper-deep)}.public-ui :is(.stats-tabs button,.home-tabs button,.auth-method-tab,.review-open-button,.review-direct-choices>button){min-height:44px;border-radius:var(--radius-control)}.public-ui :is(.home-tabs button.is-active,.auth-method-tab[aria-selected=true],.language-toggle-button.is-selected){color:var(--accent-dark);background:var(--accent-soft);box-shadow:none}.public-ui :is(.stats-tabs button.selected,.rank-candidate.selected){color:var(--teal);border-color:var(--teal);background:var(--teal-soft)}.public-ui :is(.primary-button,.secondary-button,.danger-button,.quiet-button,.text-button,.icon-button):disabled{opacity:.5;transform:none;box-shadow:none}.public-ui :is(a,button,input,textarea,select,[tabindex]):focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.public-ui :is(.primary-button,.secondary-button,.danger-button,.quiet-button,.text-button,.icon-button):active:not(:disabled){transform:translateY(1px)}.public-ui :is(.legal-card,.home-wiktionary-credit,.word-info-entry,.feature-announcement-copy,.modal) p a{color:var(--teal);text-decoration:underline;text-underline-offset:3px}.public-ui :is(.active-games-section,.home-actions,.auth-card,.profile-card,.stats-panel,.rank-challenge-panel,.new-game-option,.public-lobby-card,.lobby-share-card,.invite-card,.history-card,.side-card,.legal-card,.pwa-controls){border-color:var(--line);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-card)}.public-ui :is(.auth-card,.stats-panel,.rank-challenge-panel,.lobby-share-card,.invite-card,.history-card,.legal-card){padding:var(--space-6)}.public-ui :is(.home-actions,.new-game-options,.public-browser-toolbar,.modal-actions){gap:var(--space-3)}.public-ui :is(.new-game-option,.public-lobby-card,.side-card){padding:var(--space-4)}.public-ui :is(.recent-grid,.public-browser-list,.rank-candidates,.auth-card){gap:var(--space-3)}.public-ui :is(.new-game-option.primary,.new-game-option.hotseat,.auth-guest-panel,.public-lobby-card.has-players){background:var(--surface)}.public-ui :is(.helper-note,.loading-note){color:var(--warning-ink);background:var(--warning-soft);line-height:1.5}.public-ui .error-message{color:var(--danger);background:var(--danger-soft);line-height:1.5}.public-ui :is(.modal,.word-info-dialog){padding:var(--space-6);border-radius:var(--radius-dialog);background:var(--paper);box-shadow:var(--shadow-dialog)}.public-ui .consent-banner{border-color:var(--line);background:var(--paper);box-shadow:var(--shadow-dialog)}.public-ui :is(.chat-panel,.word-review-summary){border-color:var(--line);border-radius:var(--radius-card);background:var(--surface)}@media (max-width:700px){.public-ui :is(.auth-card,.stats-panel,.rank-challenge-panel,.lobby-share-card,.invite-card,.history-card,.legal-card){padding:var(--space-4)}.public-ui .modal{padding:var(--space-4)}.public-ui :is(.home-actions,.active-games-section){border-radius:0;background:transparent;box-shadow:none}.public-ui .home-actions{gap:var(--space-2)}.public-ui .home-actions>button{padding-inline:var(--space-2)}.public-ui .home-actions>a{grid-column:1/-1}.public-ui .home-page .pwa-control-actions .primary-button{min-height:44px}.public-ui .home-page .pwa-controls{border-radius:0;background:transparent;box-shadow:none}}@media (max-width:700px),(orientation:landscape) and (max-height:560px){.public-ui .game-page .game-actions :is(.icon-button,.text-button,.quiet-button){min-height:37px;border-radius:10px}.public-ui .game-page .game-actions .icon-button{width:37px}.public-ui .game-page .rack-actions :is(.primary-button,.secondary-button){min-height:43px}.public-ui .mobile-chat-drawer .chat-panel{border-radius:0}}@media (prefers-reduced-motion:reduce){.public-ui *,.public-ui :after,.public-ui :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}