.game-board{--tile-size: clamp(44px, (100vw - 64px) / 5, 62px);display:flex;flex-direction:column;align-items:center;gap:var(--tile-gap);padding:var(--tile-gap)}.game-board-row{display:flex;gap:var(--tile-gap)}.game-tile-wrapper{width:var(--tile-size);height:var(--tile-size)}.game-tile{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-system);font-weight:700;font-size:calc(var(--tile-size) / 1.5);padding:2px;text-transform:uppercase;color:var(--text);border:1px solid var(--tile-empty-border)}.game-tile--filled{border-color:var(--tile-filled-border)}.game-tile--wrongLetter{background-color:var(--wrong-letter);border:2px solid var(--wrong-letter-stroke);color:#fff}.game-tile--wrongPlace{background-color:var(--wrong-place);border:2px solid var(--wrong-place-stroke);color:#fff}.game-tile--rightPlace{background-color:var(--right-place);border:2px solid var(--right-place-stroke);color:#fff}.game-tile--invalid{color:var(--unknown-word-text)}.game-tile--cursor{font-weight:700;color:var(--tile-filled-border);animation:cursor-blink .5s ease-in-out infinite}.game-board-row--shake{animation:row-shake .25s linear}.game-tile-wrapper--flip-down{animation:tile-flip-down var(--flip-duration) ease-in both}.game-tile-wrapper--flip-up{animation:tile-flip-up var(--flip-duration) ease-out both}.game-tile-wrapper--jump{animation:tile-jump .15s ease-out}.kb{display:flex;flex-direction:column;gap:3px;width:100%}.kb-row{display:flex;gap:3px;justify-content:center}.kb-key{flex:1;max-width:var(--key-max);aspect-ratio:1;position:relative;border-radius:var(--key-radius);overflow:hidden;cursor:pointer;border:none;padding:0;background:transparent;-webkit-tap-highlight-color:transparent;transition:transform .1s ease-out}.kb-key:active,.kb-key--active{transform:scale(.9)}.kb-key--wide{flex:1.5;aspect-ratio:auto}.kb-key-shadow{position:absolute;inset:0;border-radius:var(--key-radius);background:color-mix(in srgb,var(--key-default),black 20%)}.kb-key-face{position:absolute;inset:0 0 1px;border-radius:var(--key-radius);background:var(--key-default)}.kb-key-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-system);font-weight:700;font-size:12px;text-transform:uppercase;color:var(--key-text);z-index:1;pointer-events:none}.kb-key--wrongLetter .kb-key-shadow{background:var(--key-wrong-letter-bg)}.kb-key--wrongLetter .kb-key-face{display:none}.kb-key--wrongLetter .kb-key-label{color:var(--key-wrong-letter-text)}.kb-key--wrongPlace .kb-key-shadow{background:color-mix(in srgb,var(--wrong-place),black 20%)}.kb-key--wrongPlace .kb-key-face{background:var(--wrong-place)}.kb-key--wrongPlace .kb-key-label{color:#fff}.kb-key--rightPlace .kb-key-shadow{background:color-mix(in srgb,var(--right-place),black 20%)}.kb-key--rightPlace .kb-key-face{background:var(--right-place)}.kb-key--rightPlace .kb-key-label{color:#fff}.kb-key--submit .kb-key-shadow{background:color-mix(in srgb,#007aff,black 20%)}.kb-key--submit .kb-key-face{background:#007aff}.kb-key--submit .kb-key-label{color:#fff}.row-context-menu{position:fixed;z-index:950;background:var(--toast-bg);color:var(--toast-text);border-radius:8px;padding:4px 0;min-width:180px;box-shadow:0 4px 16px #0000004d}.row-context-word{padding:8px 16px;font-weight:700;font-size:.85rem;text-transform:uppercase;opacity:.6;border-bottom:1px solid rgba(128,128,128,.2)}.row-context-link{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:.95rem;cursor:pointer;text-decoration:none;color:inherit}.row-context-link:hover{background:#80808026}.row-context-link img{width:16px;height:16px}.modal-backdrop{position:fixed;inset:0;z-index:900;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px}.modal-backdrop--enter{animation:modal-fade-in .2s ease-out both}.modal-backdrop--enter .modal-panel{animation:modal-slide-in .2s ease-out both}.modal-backdrop--exit{animation:modal-fade-out .2s ease-in both}.modal-backdrop--exit .modal-panel{animation:modal-slide-out .2s ease-in both}.modal-panel{background:var(--bg);color:var(--text);border:1px solid var(--tile-empty-border);width:100%;max-width:32rem;max-height:80vh;overflow-y:auto;padding:24px;position:relative}.modal-header{display:flex;align-items:center;justify-content:center;margin-bottom:16px;position:relative}.modal-title{font-family:var(--font-system);font-size:1.1rem;font-weight:700;text-transform:none}.modal-close{position:absolute;right:0;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text);font-size:1.5rem;cursor:pointer;padding:4px 8px;line-height:1}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-fade-out{0%{opacity:1}to{opacity:0}}@keyframes modal-slide-in{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes modal-slide-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(24px);opacity:0}}.help-content p{margin-bottom:12px;line-height:1.5}.help-divider{border:none;border-top:1px solid var(--tile-empty-border);margin:16px 0}.help-examples-title{font-weight:700;text-transform:uppercase;font-size:.85rem;margin-bottom:12px}.help-example{margin-bottom:16px}.help-example-tiles{display:flex;gap:var(--tile-gap);margin-bottom:6px}.help-example-tile{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem;text-transform:uppercase;color:var(--text);border:1px solid var(--tile-empty-border)}.help-example-tile--rightPlace{background:var(--right-place);border-color:var(--right-place);color:#fff}.help-example-tile--wrongPlace{background:var(--wrong-place);border-color:var(--wrong-place);color:#fff}.help-example-tile--wrongLetter{background:var(--wrong-letter);border-color:var(--wrong-letter);color:#fff}.help-example p{font-size:.9rem;line-height:1.4}.toggle-switch{position:relative;width:48px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-track{position:absolute;inset:0;border-radius:14px;background:var(--tile-empty-border);cursor:pointer;transition:background .2s}.toggle-switch input:checked+.toggle-track{background:var(--right-place)}.toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform .2s}.toggle-switch input:checked+.toggle-track:after{transform:translate(20px)}.toggle-switch input:disabled+.toggle-track{opacity:.5;cursor:not-allowed}.settings-content{display:flex;flex-direction:column;gap:0}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.settings-label{flex:1;min-width:0}.settings-label-title{font-weight:600;font-size:.95rem}.settings-label-desc{font-size:.8rem;color:var(--text-secondary);margin-top:2px}.settings-select{appearance:none;background-color:var(--tile-empty-border);color:var(--text);border:1px solid var(--tile-filled-border);border-radius:4px;padding:6px 28px 6px 10px;font-size:.9rem;font-family:inherit;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}.settings-button{appearance:none;background-color:var(--tile-empty-border);color:var(--text);border:1px solid var(--tile-filled-border);border-radius:4px;padding:6px 14px;font-size:.9rem;font-family:inherit;cursor:pointer;white-space:nowrap;flex-shrink:0}.settings-button:hover{background-color:var(--tile-filled-border)}.settings-divider{border:none;border-top:1px solid var(--tile-empty-border);margin:4px 0}.settings-link-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.settings-link-row a{color:var(--text);text-decoration:underline;font-size:.9rem}.settings-copied{font-size:.9rem;color:var(--text-secondary)}.settings-link-email{word-break:break-all}.settings-link-label{font-weight:600;font-size:.95rem}.settings-link-desc{font-size:.8rem;color:var(--text-secondary)}.app-store-badge{height:32px;width:auto}.cache-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.cache-status-dot--ready{background-color:var(--right-place)}.cache-status-dot--loading{background-color:var(--wrong-place)}.cache-status-dot--unavailable{background-color:var(--wrong-letter)}.confetti-container{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:10}.confetti-particle{position:absolute;top:-10px;width:8px;height:8px;border-radius:1px;animation:confetti-fall var(--fall-duration) ease-out forwards;opacity:0}@keyframes confetti-fall{0%{transform:translate(0) rotate(0);opacity:1}80%{opacity:.8}to{transform:translate(var(--drift-x),var(--drift-y)) rotate(var(--spin));opacity:0}}.stats-content{display:flex;flex-direction:column;gap:24px}.stats-header{display:flex;justify-content:center;gap:16px}.stats-metric{display:flex;flex-direction:column;align-items:center;min-width:56px}.stats-metric-value{font-size:2rem;font-weight:700;line-height:1}.stats-metric-label{font-size:.7rem;color:var(--text);text-align:center;margin-top:4px}.stats-answer{text-align:center}.stats-answer-label{font-size:1.25rem;font-weight:700;text-transform:uppercase;color:var(--text);margin-bottom:8px}.stats-answer-row{display:flex;align-items:center;justify-content:center;gap:12px}.stats-answer-tiles{display:flex;justify-content:center;gap:4px}.stats-answer-tile{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:24px;text-transform:uppercase;background:var(--right-place);border:2px solid var(--right-place-stroke);color:#fff}.stats-definition-link{color:var(--right-place);font-size:1.25rem;font-weight:500;text-decoration:none;white-space:nowrap}.stats-definition-link:hover{text-decoration:underline}.stats-distribution-title{font-size:1.25rem;font-weight:700;text-transform:uppercase;margin-bottom:8px}.stats-dist-row{display:flex;align-items:center;gap:6px;margin-bottom:4px}.stats-dist-label{font-size:.85rem;font-weight:700;width:12px;text-align:right}.stats-dist-bar{height:22px;display:flex;align-items:center;justify-content:flex-end;padding:0 6px;font-size:.8rem;font-weight:700;color:#fff;min-width:22px;background:var(--wrong-letter)}.stats-dist-bar--highlight{background:var(--right-place)}.stats-bottom{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:24px;border-top:1px solid var(--tile-empty-border)}.stats-countdown{text-align:center}.stats-countdown-label{font-size:.85rem;text-transform:uppercase;color:var(--text)}.stats-countdown-time{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.stats-share-btn{display:flex;align-items:center;gap:8px;background:var(--right-place);color:#fff;border:none;padding:12px 24px;font-size:1rem;font-weight:700;cursor:pointer;border-radius:4px;text-transform:uppercase}.stats-share-icon{width:16px;height:16px;flex-shrink:0}.language-selector{width:100%;max-width:24rem}.language-row{display:flex;align-items:center;width:100%;padding:6px 0;background:none;border:none;color:var(--text);cursor:pointer;text-align:left;font-family:inherit}.language-row:hover{opacity:.8}.language-flag{width:50px;height:32px;margin-right:16px;object-fit:cover;flex-shrink:0;outline:1px solid var(--tile-empty-border)}.language-text{flex:1;display:flex;flex-direction:column;gap:2px}.language-name{font-weight:700;font-size:1rem}.language-status{font-size:.875rem;color:var(--text)}.language-status--completed{color:var(--right-place)}.language-status--inProgress{color:var(--wrong-place)}.language-status--unsuccessful{color:var(--text-secondary)}.language-stats{display:flex;gap:8px;align-items:center;margin-left:auto;flex-shrink:0}.language-stat{display:flex;flex-direction:column;align-items:center;min-width:30px}.language-stat-value{font-size:.875rem;font-weight:400}.language-stat-label{font-size:.75rem;color:var(--text-secondary)}.language-chevron{font-size:1.5rem;color:var(--text-secondary);margin-left:8px}.tile-logo{display:flex;flex-direction:column;align-items:flex-start;gap:var(--logo-tile-gap, 8px);width:100%}.tile-logo-row{display:flex;gap:var(--logo-tile-gap, 8px);perspective:600px;width:100%}.logo-tile-wrapper{cursor:pointer;flex:1;min-width:24px;max-width:75px;aspect-ratio:1;container-type:inline-size}.logo-tile{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:var(--font-system);font-weight:700;font-size:60cqi;padding:4cqi;text-transform:uppercase;color:var(--text);border:1px solid var(--tile-empty-border)}.logo-tile-spacer{flex:1;min-width:24px;max-width:75px;aspect-ratio:1;visibility:hidden}.logo-tile-narrow-spacer{max-width:8px;flex:1;visibility:hidden}.logo-dash-text-invisible{font-weight:700;font-size:1.5rem;visibility:hidden}.logo-dash{display:flex;align-items:center;justify-content:center}.logo-dash-bar{display:block;width:14px;height:6px;border-radius:2px;background-color:#fff;border:1px solid var(--wrong-letter)}.logo-tile--filled{border-color:var(--tile-filled-border)}.logo-tile--wrongLetter{background-color:var(--wrong-letter);border-color:var(--wrong-letter);color:#fff;box-shadow:0 2px color-mix(in srgb,var(--wrong-letter),black 20%)}.logo-tile--wrongPlace{background-color:var(--wrong-place);border-color:var(--wrong-place);color:#fff;box-shadow:0 2px color-mix(in srgb,var(--wrong-place),black 20%)}.logo-tile--rightPlace{background-color:var(--right-place);border-color:var(--right-place);color:#fff;box-shadow:0 2px color-mix(in srgb,var(--right-place),black 20%)}@keyframes flip-first-half{0%{transform:rotateX(0)}to{transform:rotateX(90deg)}}@keyframes flip-second-half{0%{transform:rotateX(90deg)}to{transform:rotateX(0)}}.logo-tile--flip-first{animation:flip-first-half .15s ease-in forwards}.logo-tile--flip-second{animation:flip-second-half .15s ease-out forwards}@keyframes logo-jump{0%{transform:translateY(0)}50%{transform:translateY(-16px)}to{transform:translateY(0)}}.logo-tile--jump{animation:logo-jump .15s ease-out}.toast-overlay{position:fixed;top:var(--toast-top-margin);left:0;right:0;display:flex;justify-content:center;z-index:1000;pointer-events:none}.toast{background-color:var(--toast-bg);color:var(--toast-text);padding:var(--toast-padding);border-radius:var(--toast-radius);font-family:var(--font-system);font-weight:700;font-size:14px;animation:toast-fade 2s ease-in-out forwards;pointer-events:auto}.app{display:flex;flex-direction:column;height:100dvh;max-width:32rem;margin:0 auto;width:100%}.app-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 8px;height:50px;flex-shrink:0}.header-left{display:flex;align-items:center}.header-right{display:flex;align-items:center;justify-content:flex-end}.header-title{font-size:1.0625rem;font-weight:700;letter-spacing:.02em;text-align:center}.header-btn{background:none;border:none;color:var(--accent);font-size:1.5rem;cursor:pointer;width:44px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.header-btn--back{width:auto;gap:6px;font-size:1.0625rem;font-weight:400}.header-btn--back svg{flex-shrink:0}.header-icon{width:22px;height:22px;display:block;background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.header-icon--help{-webkit-mask-image:url(/icons/help.svg);mask-image:url(/icons/help.svg)}.header-icon--stats{-webkit-mask-image:url(/icons/chart-bar.svg);mask-image:url(/icons/chart-bar.svg)}.header-icon--gear{width:33px;height:33px;-webkit-mask-image:url(/icons/gear.svg);mask-image:url(/icons/gear.svg)}.header-btn--default{color:var(--text)}.header-spacer{width:44px;flex-shrink:0}.home-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px}.home-logo-area{margin-bottom:48px;width:100%;max-width:24rem}.game-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto}.board-area{display:flex;align-items:center;justify-content:center;width:100%;padding:0 16px}.keyboard-area{flex-shrink:0;padding:10px 18px;width:100%}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #1a1a1a;--text: #ffffff;--tile-empty-border: #5b5b5b;--tile-filled-border: #9e9e9e;--wrong-letter: #49494b;--wrong-place: #a3831a;--right-place: #217f39;--wrong-letter-stroke: #69696c;--wrong-place-stroke: #eabc25;--right-place-stroke: #2fb652;--key-default: #49494b;--key-text: #ffffff;--key-wrong-letter-bg: #000000;--key-wrong-letter-text: #86868b;--toast-bg: #ffffff;--toast-text: #1a1a1a;--text-secondary: #858585;--accent: #30d158;--unknown-word-text: #ff453a;color-scheme:dark}[data-theme=light]{--bg: #ffffff;--text: #000000;--tile-empty-border: #8e8e93;--tile-filled-border: #000000;--wrong-letter: #cccccc;--wrong-place: #ffcc00;--right-place: #34c759;--wrong-letter-stroke: #000000;--wrong-place-stroke: #cca300;--right-place-stroke: #299f47;--key-default: #efefef;--key-text: #000000;--key-wrong-letter-bg: #ffffff;--key-wrong-letter-text: #cccccc;--toast-bg: #121213;--toast-text: #ffffff;--text-secondary: #8e8e93;--accent: #34c759;--unknown-word-text: #d70015;color-scheme:light}[data-theme=dark-hc]{--bg: #121213;--text: #ffffff;--tile-empty-border: #3a3a3c;--tile-filled-border: #565758;--wrong-letter: #3a3a3c;--wrong-place: #85c0f9;--right-place: #f5793a;--wrong-letter-stroke: #69696c;--wrong-place-stroke: #bfffff;--right-place-stroke: #ffae53;--key-default: #828385;--key-text: #ffffff;--key-wrong-letter-bg: #000000;--key-wrong-letter-text: #86868b;--toast-bg: #ffffff;--toast-text: #121213;--text-secondary: #858585;--accent: #30d158;--unknown-word-text: #ff453a;color-scheme:dark}[data-theme=light-hc]{--bg: #ffffff;--text: #121213;--tile-empty-border: #d3d6da;--tile-filled-border: #878a8c;--wrong-letter: #787c7e;--wrong-place: #85c0f9;--right-place: #f5793a;--wrong-letter-stroke: #000000;--wrong-place-stroke: #6a99c7;--right-place-stroke: #c4602e;--key-default: #d4d5d9;--key-text: #121213;--key-wrong-letter-bg: #ffffff;--key-wrong-letter-text: #cccccc;--toast-bg: #121213;--toast-text: #ffffff;--text-secondary: #878a8c;--accent: #34c759;--unknown-word-text: #d70015;color-scheme:light}:root{--tile-gap: 5px;--tile-min: 44px;--tile-max: 75px;--key-max: 50px;--key-radius: 4px;--toast-radius: 4px;--toast-padding: 16px;--toast-top-margin: 24px;--min-touch: 44px}:root{--font-system: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif}html{font-family:var(--font-system);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg);color:var(--text);min-height:100dvh}@keyframes toast-fade{0%{opacity:0}10%{opacity:1}90%{opacity:1}to{opacity:0}}@keyframes tile-flip-down{0%{transform:rotateX(0)}to{transform:rotateX(90deg)}}@keyframes tile-flip-up{0%{transform:rotateX(-90deg)}to{transform:rotateX(0)}}@keyframes tile-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes row-shake{0%{transform:translate(0)}8.3%{transform:translate(-4px)}16.7%{transform:translate(0)}25%{transform:translate(4px)}33.3%{transform:translate(0)}41.7%{transform:translate(-4px)}50%{transform:translate(0)}58.3%{transform:translate(4px)}66.7%{transform:translate(0)}75%{transform:translate(-4px)}83.3%{transform:translate(0)}91.7%{transform:translate(4px)}to{transform:translate(0)}}@keyframes tile-jump{0%,to{transform:translateY(0)}20%{transform:translateY(-16px)}}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.animate-flip{animation:tile-flip .25s ease-in-out}.animate-pulse{animation:tile-pulse .125s ease-in-out}.animate-shake{animation:row-shake .6s ease-in-out}.animate-jump{animation:tile-jump .15s ease-in-out}.animate-blink{animation:cursor-blink .5s ease-in-out infinite}
