:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.3;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--color-bg-primary: #f2ebe1;--color-bg-surface: #F2EFE7;--color-bg-card: #f2ebe1;--color-bg-report: #eeecea;--color-bg-input: #ececf0;--color-bg-key: #e8e0d4;--color-bg-key-mobile: #ede5d9;--color-bg-overlay-dark: rgba(10, 8, 6, .92);--color-bg-tutorial: rgba(0, 0, 0, .04);--color-bg-landing: #f2ebe1;--color-bg-welcome: rgba(255, 255, 255, .97);--color-bg-overlay: rgba(255, 255, 255, .85);--color-bg-confirm: #fff;--color-bg-auth: #fff;--color-bg-toast: #2a2f3a;--color-bg-kb-header: #2a2f3a;--color-bg-kb-panel: #fff;--color-bg-modal-header: #f8f8f8;--color-bg-popup: #f2ebe1;--color-bg-btn-cancel: #e4e6eb;--color-btn-primary-bg: #2a2f3a;--color-text-primary: #312929;--color-text-heading: #2a2f3a;--color-text-body: #444;--color-text-secondary: #555;--color-text-muted: #666;--color-text-faint: #777;--color-text-placeholder: #888;--color-text-disabled: #999;--color-text-key: #221a1a;--color-text-key-mobile: #333;--color-text-input: #201717;--color-text-unfulfilled: #000;--color-border-main: #dddfe4;--color-border-dark: #2a2f3a;--color-border-input: #1d222e;--color-border-key: #cec4b4;--color-border-report: #c5c8ce;--color-border-badge: #2a2f3a;--color-border-glyph: #ccc;--color-border-help: #888;--color-border-subscribe: #888;--color-border-modal-close: #e1e3e7;--color-tile-bg: #f4ecd6;--color-tile-text: #3A2F1A;--color-tile-border: #2a2f3a;--color-tile-vowel-border: #3d4b63;--color-tile-consonant-border: #5c6b86;--color-tile-flash-new: #c9e8b2;--color-tile-hidden-bg: #dddfe4;--color-tile-hidden-border: #aaa;--color-tile-hidden-color: #888;--color-tile-revealed-bg: #c9e8b2;--color-success: #5FAF6B;--color-success-dark: #4a9a56;--color-error: #D96A5E;--color-error-bright: #D96A5E;--color-warning: #c80;--color-glyph-active-border: #c80;--color-glyph-active-bg: rgba(200, 130, 0, .1);--color-glyph-counter-bg: #c80;--color-slice-accent: #36a;--color-slice-bg: rgba(50, 100, 180, .08);--color-slice-border: rgba(50, 100, 180, .25);--color-stacked-bg: rgba(255, 0, 0, .12);--color-stacked-border: rgba(255, 0, 0, .35);--color-submit-bg: #d4edda;--color-submit-border: #5FAF6B;--color-submit-text: #3a7a42;--color-btn-bg: #e8e0d4;--color-btn-border: #ddd5c8;--color-btn-text: #3a2e22;--color-btn-active-bg: #d8cfc0;--color-key-shadow: #c0b5a5;--color-landing-dot: #ccc;--color-landing-dot-active: #2a2f3a;--color-landing-start-bg: #5FAF6B;--color-coach-bg: rgba(42, 47, 58, .92);--color-cursor: #000;--color-cursor-red: #e53935;--color-auth-divider: #aaa;--color-auth-divider-line: #ddd;--color-auth-input-border: #ccc;--color-auth-input-bg: #fafafa;--color-link-green: #5FAF6B;--color-key-corner-green: #5FAF6B;--color-container-border: #2a2f3a;--color-local-date: #999;--color-req-label: #666;--color-transmission-bg: #eae4da;--color-transmission-header: #e2dbd0;--color-transmission-border: #c8c0b4;--color-transmission-overlay: rgba(10, 8, 6, .65);--color-transmission-glow: rgba(95, 175, 107, .08);--color-transmission-rule: rgba(42, 47, 58, .12);--color-transmission-frame: linear-gradient(165deg, #c2a96e 0%, #a08040 25%, #b89c5c 50%, #8c7030 75%, #c2a96e 100%);--color-transmission-frame-inner: linear-gradient(180deg, #b89c5c, #a08040);--color-transmission-screw: radial-gradient(circle at 35% 35%, #d4c090, #8c7030 60%, #6a5520);--color-transmission-screen: linear-gradient(180deg, #e8e0d0 0%, #ddd4c4 100%);--color-transmission-screen-border: #9a8a6a;--color-transmission-banner-bg: linear-gradient(180deg, #8c7030, #6a5520);--color-transmission-banner-text: #f0e8d0;--color-transmission-light-off: #4a4030;--color-transmission-light-green: #5FAF6B;--color-transmission-light-yellow: #e8b830;--color-transmission-light-red: #d44040}html[data-theme=dark]{--color-bg-primary: #1a1d24;--color-bg-surface: #24272f;--color-bg-card: #24272f;--color-bg-report: #2a2d36;--color-bg-input: #2e323c;--color-bg-key: #2a2418;--color-bg-key-mobile: #2a2418;--color-bg-overlay-dark: rgba(10, 8, 6, .95);--color-bg-tutorial: rgba(255, 255, 255, .06);--color-bg-landing: #1a1d24;--color-bg-welcome: rgba(26, 29, 36, .97);--color-bg-overlay: rgba(30, 33, 40, .88);--color-bg-confirm: #24272f;--color-bg-auth: #24272f;--color-bg-toast: #041939;--color-bg-kb-header: #1a1d24;--color-bg-kb-panel: #24272f;--color-bg-modal-header: #2a2d36;--color-bg-popup: #24272f;--color-bg-btn-cancel: #041939;--color-btn-primary-bg: #041939;--color-text-primary: #e0dcd6;--color-text-heading: #e8e4de;--color-text-body: #c8c4be;--color-text-secondary: #b8b4ae;--color-text-muted: #a0a0a0;--color-text-faint: #909090;--color-text-placeholder: #808080;--color-text-disabled: #707070;--color-text-key: #e0dcd6;--color-text-key-mobile: #e0dcd6;--color-text-input: #e0dcd6;--color-text-unfulfilled: #e0dcd6;--color-border-main: #3a3e48;--color-border-dark: #505868;--color-border-input: #4a5060;--color-border-key: #5a5040;--color-border-report: #4a4e58;--color-border-badge: #606878;--color-border-glyph: #505868;--color-border-help: #707880;--color-border-subscribe: #707880;--color-border-modal-close: #4a4e58;--color-tile-bg: #f4ecd6;--color-tile-text: #3A2F1A;--color-tile-border: #606878;--color-tile-vowel-border: #5a6a82;--color-tile-consonant-border: #6a7a96;--color-tile-flash-new: #c9e8b2;--color-tile-hidden-bg: #0a2a52;--color-tile-hidden-border: #505868;--color-tile-hidden-color: #808080;--color-tile-revealed-bg: #0a596c;--color-success: #6BBF77;--color-success-dark: #6BBF77;--color-error: #E07A6E;--color-error-bright: #E07A6E;--color-warning: #d4a020;--color-glyph-active-border: #d4a020;--color-glyph-active-bg: rgba(212, 160, 32, .15);--color-glyph-counter-bg: #d4a020;--color-slice-accent: #5b8dd9;--color-slice-bg: rgba(91, 141, 217, .12);--color-slice-border: rgba(91, 141, 217, .3);--color-stacked-bg: rgba(255, 80, 80, .15);--color-stacked-border: rgba(255, 80, 80, .4);--color-submit-bg: rgba(95, 175, 107, .15);--color-submit-border: #6BBF77;--color-submit-text: #6BBF77;--color-btn-bg: #2a2418;--color-btn-border: #3a3226;--color-btn-text: #e0dcd6;--color-btn-active-bg: #3a3226;--color-key-shadow: #1a1610;--color-landing-dot: #505868;--color-landing-dot-active: #e8e4de;--color-landing-start-bg: #6BBF77;--color-coach-bg: rgba(50, 56, 70, .95);--color-cursor: #e0dcd6;--color-cursor-red: #E07A6E;--color-auth-divider: #606878;--color-auth-divider-line: #4a4e58;--color-auth-input-border: #505868;--color-auth-input-bg: #2a2d36;--color-link-green: #6BBF77;--color-key-corner-green: #6BBF77;--color-container-border: #505868;--color-local-date: #707070;--color-req-label: #a0a0a0;--color-transmission-bg: #1e2128;--color-transmission-header: #252830;--color-transmission-border: #3a3e4a;--color-transmission-overlay: rgba(4, 4, 8, .75);--color-transmission-glow: rgba(107, 191, 119, .06);--color-transmission-rule: rgba(255, 255, 255, .06);--color-transmission-frame: linear-gradient(165deg, #B89A58 0%, #AA8A45 25%, #9E7E3A 50%, #886A30 75%, #B89A58 100%);--color-transmission-frame-inner: linear-gradient(180deg, #B89A58, #AA8A45);--color-transmission-screw: radial-gradient(circle at 35% 35%, #C4A458, #886A30 60%, #725824);--color-transmission-screen: linear-gradient(180deg, #1e2128 0%, #1a1d22 100%);--color-transmission-screen-border: #886A30;--color-transmission-banner-bg: linear-gradient(180deg, #9E7E3A, #886A30);--color-transmission-banner-text: #d4c898;--color-transmission-light-off: #2a2520;--color-transmission-light-green: #5FAF6B;--color-transmission-light-yellow: #e8b830;--color-transmission-light-red: #d44040}.storeBadgeLink{display:none}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:var(--color-bg-primary, #f2ebe1);color:var(--color-text-primary, #213547)}html{height:100dvh;height:100vh}body{height:100dvh;height:100vh;display:flex;flex-direction:column;min-width:320px}#root{width:100%;height:100%;display:flex;flex-direction:column}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}html,body{margin:0;height:100vh;height:100dvh;overflow:hidden}#root{width:100%;height:100%;overflow:hidden}@media (max-width: 768px){html,body,#root{overflow:visible}}body{background:var(--color-bg-primary);color:var(--color-text-primary)}.container{max-width:980px;margin:0 auto;padding:16px;display:grid;gap:12px}.card{border:1px solid var(--color-border-main);background:var(--color-bg-card);border-radius:12px;padding:14px;transition:opacity .4s ease}.card.gridLockedCard{opacity:.45;pointer-events:none}.vowelPlate{position:relative;overflow:visible;background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(245,225,194,.3) 0%,transparent 55%),linear-gradient(225deg,#f5e1c2,#e0c58f 25%,#d2ae77,#c6a069 65%,#c19862);border:1px solid #c19862;border-top-color:#e0c58f;border-right-color:#e8d4a1;box-shadow:-2px 2px 6px #00000024,-3px 4px 12px #00000012,inset -1px 1px #f5e1c273,inset 1px -1px #00000014;border-radius:14px;padding:12px 14px 6px;display:flex;flex-direction:column}.vowelPlateHeader{font-size:13px;font-weight:600;letter-spacing:.3px;color:#6a5428;text-shadow:-1px 1px 0 rgba(224,197,143,.45);margin-bottom:2px}.vowelPlate .gridWrap{position:relative}.vowelPlate .gridWrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:7px;background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(255,248,225,.16) 0%,transparent 50%),linear-gradient(225deg,rgba(255,250,230,.12) 0%,transparent 35%,rgba(60,35,0,.08) 100%);pointer-events:none;z-index:1}.vowelPlate .tile{background:linear-gradient(180deg,#f5d898,#f0d08a 40%,#ebc880 75%,#e8c47a);border-radius:7px;border:1px solid #9C8250;box-shadow:0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926}.vowelPlate .tile.vowel,.vowelPlate .tile.consonant{border-color:#9c8250}.vowelPlate .tile.flash-new{animation:plateFlashNew 3s ease-out forwards}.vowelPlate .tile.flash-complete{animation:plateFlashComplete 3s ease-out forwards}@keyframes plateFlashNew{0%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926}50%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926}to{box-shadow:inset 0 0 0 50px #c9e8b200,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926}}@keyframes plateFlashComplete{0%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926;color:var(--color-tile-text, inherit)}50%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926;color:var(--color-tile-text, inherit)}to{box-shadow:inset 0 0 0 50px #c9e8b200,0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926;color:transparent}}.vowelPlate .containerLetters{background:linear-gradient(180deg,#b89850,#c4a45c 30%,#c9aa62);border:none;border-radius:8px;padding:4px 0;margin:8px auto 0;box-shadow:inset 0 2px 4px #3c280559,inset 0 1px 1px #3c280533,0 1px #f5e1c24d;transition:box-shadow .3s}.containerLetters--glow{animation:reservePulse 1.5s ease-in-out infinite}@keyframes reservePulse{0%,to{box-shadow:0 0 6px 2px #4caf5059}50%{box-shadow:0 0 18px 7px #4caf50bf}}.vowelPlate .well{color:#4a341838;font-size:16px;font-weight:700;text-transform:none;text-shadow:0 1px 0 rgba(200,180,120,.15);transition:color .4s ease,text-shadow .4s ease;line-height:1;cursor:default}.vowelPlate .well.wellLit{color:#6b4a2f;text-shadow:0 1px 0 rgba(220,195,140,.2)}.vowelPlate .engravedReqRow{display:flex;justify-content:center;align-items:flex-start;gap:10px;padding:4px 6px 6px;margin:6px auto 0}.vowelPlate .engravedCol{display:flex;flex-direction:column;align-items:center;gap:1px}.vowelPlate .engravedLabel{font-size:12px;font-weight:700;line-height:1;color:#5a4418;text-shadow:0 1px 0 rgba(245,225,194,.6);letter-spacing:.5px}.vowelPlate .engravedBox{display:inline-flex;align-items:center;justify-content:center;min-width:28px;background:linear-gradient(180deg,#0e0b06,#1a1510 40%,#161208);border-radius:3px;padding:2px 4px;border:1px solid #0a0804;border-top-color:#060402;border-bottom-color:#2a2218;font-size:10px;line-height:1;box-shadow:inset 0 2px 3px #0009,inset 0 -1px 1px #0003,inset 1px 0 2px #0000004d,inset -1px 0 2px #0000004d,0 1px #f5e1c24d,0 .5px #c8b47826}.vowelPlate .engravedColDgs{margin-left:14px;align-self:center}.vowelPlate .dgsCircle{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#1a1510,#0e0b06 70%);border:1.5px solid #2a2218;line-height:1;gap:1px;box-shadow:inset 0 0 8px #c9a84c4d,inset 0 2px 3px #0009,0 1px #f5e1c24d,0 0 4px #c9a84c26;transition:box-shadow .3s,border-color .3s}.vowelPlate .dgsCircleLabel{font-size:7px;font-weight:700;letter-spacing:.5px;color:#c9a84c;opacity:.7;transition:color .3s}.vowelPlate .dgsCircleValue{font-size:13px;color:#c9a84c;font-weight:700;transition:color .3s}.vowelPlate .dgsMet{border-color:#5cb85c;border-width:2px;box-shadow:inset 0 0 6px #5faf6b33,0 0 4px #5faf6b26}.vowelPlate .dgsUnmet{border-color:#d9534f;border-width:2px;box-shadow:inset 0 0 6px #d96a5e33,0 0 4px #d96a5e26}@keyframes dgsFlash{0%{box-shadow:inset 0 0 14px #fffff0e6,0 0 12px #ffffc8cc}to{box-shadow:inset 0 0 14px #fffff0e6,0 0 12px #ffffc8cc}}.vowelPlate .dgsFlash{animation:dgsFlash .3s ease-out}.vowelPlate .dgsFlash .dgsCircleLabel,.vowelPlate .dgsFlash .dgsCircleValue{color:#fff}.vowelPlate .engravedValue{color:#c9a84c;font-weight:600}.vowelPlate .engravedLamp{width:7px;height:7px;border-radius:50%;margin-top:2px;background:radial-gradient(circle at 35% 30%,#6a5a3a,#3a2e1a 70%);border:1px solid #2a2010;box-shadow:inset 0 1px 2px #00000080,inset 0 -.5px 1px #ffffff14,0 .5px #f5e1c24d;transition:background .3s,box-shadow .3s,border-color .3s}@keyframes ledPulse{0%,to{opacity:1}50%{opacity:.6}}.vowelPlate .lampMet{background:radial-gradient(circle at 35% 30%,#a0e8a8,#5faf6b 50%,#3a8a44);border-color:#2d6e34;box-shadow:inset 0 1px 2px #ffffff4d,inset 0 -1px 2px #0050004d,0 0 6px #5faf6bb3,0 0 2px #5faf6be6;animation:ledPulse 2s ease-in-out infinite}.vowelPlate .lampUnmet{background:radial-gradient(circle at 35% 30%,#f0a8a0,#d96a5e 50%,#b04a40);border-color:#8a3028;box-shadow:inset 0 1px 2px #ffffff4d,inset 0 -1px 2px #6400004d,0 0 6px #d96a5eb3,0 0 2px #d96a5ee6;animation:ledPulse 2s ease-in-out infinite}@keyframes ledFlash{0%{background:radial-gradient(circle at 35% 30%,#fff,#fffbe0 60%);box-shadow:0 0 12px #fffff0e6,0 0 4px #ffffc8}to{background:radial-gradient(circle at 35% 30%,#fff,#fffbe0 60%);box-shadow:0 0 12px #fffff0e6,0 0 4px #ffffc8}}.vowelPlate .lampFlash{animation:ledFlash .3s ease-out}.vowelParticle{position:absolute;left:var(--start-x);top:var(--start-y);font-size:14px;font-weight:700;color:#5faf6b;text-shadow:0 0 6px rgba(95,175,107,.6);pointer-events:none;z-index:10;animation:vowelCollect .7s ease-in-out forwards;transform:translate(-50%,-50%)}@keyframes vowelCollect{0%{transform:translate(-50%,-50%) scale(1.3);opacity:1}70%{transform:translate(calc(var(--end-x) - var(--start-x) - 50%),calc(var(--end-y) - var(--start-y) - 50%)) scale(1);opacity:1}to{transform:translate(calc(var(--end-x) - var(--start-x) - 50%),calc(var(--end-y) - var(--start-y) - 50%)) scale(.5);opacity:0}}.celebrationParticle{position:fixed;left:var(--start-x);top:var(--start-y);font-size:16px;font-weight:700;color:#d4a843;text-shadow:0 0 8px rgba(212,168,67,.7);pointer-events:none;z-index:9000;opacity:0;animation:celebrationFly .8s ease-in-out forwards}@keyframes celebrationFly{0%{transform:translate(0) scale(1.4);opacity:1}60%{transform:translate(calc((var(--end-x) - var(--start-x)) * .75),calc((var(--end-y) - var(--start-y)) * .6 - 30px)) scale(1.1);opacity:1}to{transform:translate(calc(var(--end-x) - var(--start-x)),calc(var(--end-y) - var(--start-y))) scale(.3);opacity:0}}html[data-theme=dark] .celebrationParticle{color:#e8c060;text-shadow:0 0 10px rgba(232,192,96,.8)}@media (prefers-reduced-motion: reduce){.celebrationParticle{animation:none;display:none}}html[data-theme=dark] .vowelPlate{background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(210,180,106,.2) 0%,transparent 55%),linear-gradient(225deg,#d2b46a,#c4a458 25%,#b8964a,#a08040 65%,#8a6a2f);border-color:#8a6a2f;border-top-color:#c4a458;border-right-color:#d2b46a;box-shadow:-2px 2px 6px #0000004d,-3px 4px 12px #0000002e,inset -1px 1px #d2b46a38,inset 1px -1px #0000002e}html[data-theme=dark] .vowelPlateHeader{color:#5a4420;text-shadow:-1px 1px 0 rgba(210,180,106,.3)}html[data-theme=dark] .vowelPlate .gridWrap:after{background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(210,180,106,.12) 0%,transparent 50%),linear-gradient(225deg,rgba(210,180,106,.08) 0%,transparent 35%,rgba(0,0,0,.1) 100%)}html[data-theme=dark] .vowelPlate .tile{background:linear-gradient(180deg,#d2b46a,#c8aa5e 40%,#bea054 75%,#b8964a);border-radius:7px;border:1px solid #8A6A2F;box-shadow:0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38}html[data-theme=dark] .vowelPlate .tile.vowel,html[data-theme=dark] .vowelPlate .tile.consonant{border-color:#8a6a2f}html[data-theme=dark] .vowelPlate .tile.flash-new{animation:plateFlashNewDark 3s ease-out forwards}html[data-theme=dark] .vowelPlate .tile.flash-complete{animation:plateFlashCompleteDark 3s ease-out forwards}@keyframes plateFlashNewDark{0%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38}50%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38}to{box-shadow:inset 0 0 0 50px #c9e8b200,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38}}@keyframes plateFlashCompleteDark{0%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38;color:var(--color-tile-text, inherit)}50%{box-shadow:inset 0 0 0 50px #c9e8b2,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38;color:var(--color-tile-text, inherit)}to{box-shadow:inset 0 0 0 50px #c9e8b200,0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38;color:transparent}}html[data-theme=dark] .vowelPlate .containerLetters{background:linear-gradient(180deg,#8a6a2f,#977538 30%,#9e7c3e);box-shadow:inset 0 2px 4px #0a080273,inset 0 1px 1px #0a080238,0 1px #d2b46a2e}html[data-theme=dark] .vowelPlate .well{color:#8a6a2fbf;text-shadow:0 1px 0 rgba(210,180,106,.12)}html[data-theme=dark] .vowelPlate .well.wellLit{color:#6b4a2f;text-shadow:0 1px 0 rgba(220,195,140,.2)}html[data-theme=dark] .vowelPlate .engravedLabel{color:#4a3818;text-shadow:0 1px 0 rgba(210,180,106,.35)}html[data-theme=dark] .vowelPlate .engravedBox{background:#0e0c08;border-color:#00000080}html[data-theme=dark] .vowelPlate .engravedValue{color:#b8964a}html[data-theme=dark] .vowelPlate .engravedLamp{background:radial-gradient(circle at 35% 30%,#4a3c22,#1e1808 70%);border-color:#0e0a04}html[data-theme=dark] .vowelPlate .lampMet{background:radial-gradient(circle at 35% 30%,#d0ffd4,#70e07a 40%,#3ab844);border-color:#4adc54;box-shadow:inset 0 1px 2px #ffffff80,0 0 8px #46e050cc,0 0 3px #46e050}html[data-theme=dark] .vowelPlate .lampUnmet{background:radial-gradient(circle at 35% 30%,#ffc8c0,#f07060 40%,#d04838);border-color:#e05848;box-shadow:inset 0 1px 2px #ffffff80,0 0 8px #f0503ccc,0 0 3px #f0503c}html[data-theme=dark] .vowelPlate .dgsCircle{background:radial-gradient(circle at 40% 35%,#141008,#0a0804 70%);border-color:#1a1510;box-shadow:inset 0 0 8px #b8964a40,inset 0 2px 3px #000000b3,0 0 4px #b8964a1f}html[data-theme=dark] .vowelPlate .dgsCircleLabel,html[data-theme=dark] .vowelPlate .dgsCircleValue{color:#b8964a}html[data-theme=dark] .vowelPlate .dgsMet{border-color:#5cb85c;box-shadow:inset 0 0 6px #46e05026,0 0 4px #46e0501f}html[data-theme=dark] .vowelPlate .dgsUnmet{border-color:#d9534f;box-shadow:inset 0 0 6px #f0503c26,0 0 4px #f0503c1f}html[data-theme=dark] .vowelParticle{color:#7dd88a;text-shadow:0 0 8px rgba(125,216,138,.7)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.row{display:flex;align-items:center;gap:10px}.small{font-size:12px;opacity:.85}.badge{padding:1px 5px;border:1px solid var(--color-border-badge);border-radius:999px;font-size:11px;opacity:.9;flex-shrink:0}.systemMsg{margin-top:10px;opacity:.9}.emptyState{padding:30px 0;text-align:center;opacity:.5}.muted{opacity:.5}.dimSeparator{opacity:.3}.progressRing{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.progressRingLabel{position:absolute;font-size:9px;font-weight:700;letter-spacing:.5px}.notifBadge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#e53935;color:#fff;font-size:11px;font-weight:700;line-height:1;flex-shrink:0}.msgWordSolved{font-weight:700;color:var(--color-link-green)}.msgWordFailed{font-weight:700;color:var(--color-error)}.reportCard{margin-top:10px;padding:16px 18px;border:1px solid var(--color-border-report);border-radius:10px;background:var(--color-bg-report)}.reportHeader{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:16px;font-weight:700;letter-spacing:.5px;margin-bottom:10px}.reportSuccess{color:var(--color-success-dark)}.reportFailed{color:var(--color-error)}.reportBody{font-size:13px;line-height:1.5;opacity:.9}.shareBtn{margin-top:12px;padding:8px 24px;font-size:12px;font-weight:700;letter-spacing:1px;color:#fff;background:var(--color-btn-primary-bg);border:none;border-radius:6px;cursor:pointer;touch-action:manipulation}.trPanel{margin-top:8px;padding:10px 12px;border-radius:8px;border:1px solid var(--color-border-report);background:#e8e5df;box-shadow:inset 0 1px #ffffff73,0 1px 4px #0000000f}.trCompact{margin-bottom:8px}.trHeadline{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.5px;color:var(--color-text-primary);margin-bottom:4px}.trLed{width:6px;height:6px;border-radius:50%;flex-shrink:0}.trLedGreen{background:#4a9a56;box-shadow:0 0 5px #4a9a5680}.trLedRed{background:#d96a5e;box-shadow:0 0 5px #d96a5e66}.trDiffLamps{display:inline-flex;gap:3px;align-items:center;margin-left:2px}.trDiffLamp{width:6px;height:6px;border-radius:50%;background:#00000026;border:.5px solid rgba(0,0,0,.2)}.trDiffLamp--on-1{background:var(--color-transmission-light-green);box-shadow:0 0 4px #5faf6b80;border-color:transparent}.trDiffLamp--on-2{background:var(--color-transmission-light-yellow);box-shadow:0 0 4px #e8b83080;border-color:transparent}.trDiffLamp--on-3{background:var(--color-transmission-light-red);box-shadow:0 0 4px #d4404080;border-color:transparent}.trDiffLamp--on-4{background:#e040fb;box-shadow:0 0 4px #e040fb80;border-color:transparent}.trTierLine{font-size:13px;font-weight:700;letter-spacing:.6px;margin-bottom:2px}.trTierGold{color:#9a7b2e}.trTierNeutral{color:var(--color-text-secondary)}.trTierMuted{color:var(--color-text-muted);opacity:.8}.trTierDim{color:#b85450;opacity:.85}.trStatLine{font-size:11px;letter-spacing:.3px;line-height:1.6;color:var(--color-text-body)}.trFooter{display:flex;gap:8px;padding-top:6px;border-top:1px solid rgba(0,0,0,.06)}.trShareBtn{flex:1;padding:6px 0;font-size:10px;font-weight:700;letter-spacing:1.5px;color:#fff;background:#2a2f3a;border:1px solid #2a2f3a;border-radius:5px;cursor:pointer;touch-action:manipulation}.trCloseBtn{flex:0 0 auto;padding:6px 10px;font-size:14px;color:var(--color-text-secondary);background:transparent;border:1px solid var(--color-border-report);border-radius:5px;cursor:pointer;touch-action:manipulation;line-height:1}.trSolved{background:#ede8df}.trSolved .trShareBtn{background:#6a5a2e;border-color:#6a5a2e}.trFailed{background:#eae5e0}.trFailed .trTierLine{color:#b85450}.trFailed .trShareBtn{background:#555;border-color:#555}html[data-theme=dark] .trPanel{background:#1e2028;border-color:var(--color-border-report);box-shadow:inset 0 1px #ffffff0a,0 1px 4px #00000040}html[data-theme=dark] .trLedGreen{background:#6bbf77;box-shadow:0 0 6px #6bbf778c}html[data-theme=dark] .trLedRed{background:#e07a6e;box-shadow:0 0 6px #e07a6e73}html[data-theme=dark] .trTierGold{color:#d4a63a}html[data-theme=dark] .trTierDim{color:#cc6660}html[data-theme=dark] .trFooter{border-top-color:#ffffff0f}html[data-theme=dark] .trSolved{background:#1e2028}html[data-theme=dark] .trSolved .trShareBtn{background:#2a2418;border-color:#8a7a4e;color:#d4a63a}html[data-theme=dark] .trFailed{background:#1e2028}html[data-theme=dark] .trFailed .trTierLine{color:#cc6660}html[data-theme=dark] .trFailed .trShareBtn{background:#2a2d36;border-color:#4a4e58;color:#b0aaa4}html[data-theme=dark] .trCloseBtn{border-color:#4a4e58;color:#a0a0a0}.trCloseBtn--desktopOnly{display:none}.desktopOnly .trCloseBtn--desktopOnly{display:inline-flex}.modalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-transmission-overlay);display:none;align-items:flex-end;justify-content:center;z-index:330;animation:transmissionFadeIn .5s ease-out both;pointer-events:auto;padding-bottom:60px}@media (max-width: 768px){.modalOverlay{display:flex}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes transmissionFadeIn{0%{opacity:0;background:#000000e6}60%{opacity:1;background:#000000e6}to{opacity:1;background:var(--color-transmission-overlay)}}.modalContent{background:var(--color-transmission-frame);width:100%;max-height:85vh;border-radius:14px 14px 0 0;overflow:hidden;display:flex;flex-direction:column;animation:transmissionTuneIn .45s cubic-bezier(.22,1,.36,1) both;pointer-events:auto;position:relative;z-index:345;border-top:2px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(0,0,0,.2);box-shadow:0 -4px 20px #0006,inset 0 1px #ffffff1f;padding:5px 5px 0}@keyframes transmissionTuneIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.modalContent--shake{animation:modalShake .4s ease-out}@keyframes modalShake{0%{transform:translate(0)}20%{transform:translate(-12px)}40%{transform:translate(10px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}to{transform:translate(0)}}.transmissionScrews{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:10}.transmissionScrew{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--color-transmission-screw);border:1px solid rgba(0,0,0,.3);box-shadow:inset 0 1px #fff3,0 1px 2px #0000004d}.transmissionScrew:after{content:"";position:absolute;top:50%;left:25%;right:25%;height:1px;background:#00000059;transform:rotate(-45deg)}.transmissionScrew--tl{top:10px;left:12px}.transmissionScrew--tr{top:10px;right:12px}.transmissionIndicators{display:flex;justify-content:space-between;align-items:center;padding:6px 36px 4px}.transmissionLights{display:flex;gap:8px;align-items:center}.transmissionLight{width:8px;height:8px;border-radius:50%;background:var(--color-transmission-light-off);border:1px solid rgba(0,0,0,.3);box-shadow:inset 0 1px #ffffff1a;transition:background .3s,box-shadow .3s}.transmissionLight--on-1{background:var(--color-transmission-light-green);box-shadow:0 0 6px var(--color-transmission-light-green),inset 0 1px #ffffff4d}.transmissionLight--on-2{background:var(--color-transmission-light-yellow);box-shadow:0 0 6px var(--color-transmission-light-yellow),inset 0 1px #ffffff4d}.transmissionLight--on-3{background:var(--color-transmission-light-red);box-shadow:0 0 6px var(--color-transmission-light-red),inset 0 1px #ffffff4d}.transmissionLight--on-4{background:#e040fb;box-shadow:0 0 6px #e040fbb3,inset 0 1px #ffffff4d}.transmissionBars{display:flex;gap:2px;align-items:flex-end;height:14px}.transmissionBar{width:3px;border-radius:1px;background:#00000026}.transmissionBar--h1{height:4px}.transmissionBar--h2{height:6px}.transmissionBar--h3{height:8px}.transmissionBar--h4{height:10px}.transmissionBar--h5{height:14px}.transmissionBar--on{background:var(--color-transmission-light-green)}html[data-theme=dark] .transmissionBar{background:#ffffff26}html[data-theme=dark] .transmissionBar--on{background:var(--color-transmission-light-green)}.modalHeader{background:linear-gradient(180deg,#b89c5c,#a08040,#8c7030);padding:5px 20px;text-align:center;border-radius:4px;border:2px solid #6a5520;box-shadow:inset 0 2px #ffffff26,inset 0 -2px #0003,inset 2px 0 #ffffff14,inset -2px 0 #0000001f,0 2px 4px #0003;flex-shrink:0;letter-spacing:.14em;position:relative;margin:0 2px}html[data-theme=dark] .modalHeader{background:linear-gradient(180deg,#9e7e3a,#886a30,#785a28);border-color:#6a5520}.modalHeaderTitle{color:var(--color-transmission-banner-text);font-size:15px;font-weight:700;text-transform:uppercase;text-shadow:0 -1px 0 rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.1)}.modalClose{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#0003;color:var(--color-transmission-banner-text);font-size:13px;cursor:pointer;display:grid;place-items:center;touch-action:manipulation;transition:opacity .15s}.modalClose:hover{opacity:.7}.modalControls{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;min-height:28px}.modalScreen{background:var(--color-transmission-screen);border:2px solid var(--color-transmission-screen-border);border-top-color:#7a6a4a;border-left-color:#8a7a5a;border-right-color:#b0a080;border-bottom-color:#c0b090;border-radius:4px;box-shadow:inset 0 4px 10px #0003,inset 0 1px 3px #00000026,inset 0 -1px #ffffff14,0 1px #fff0c840;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;margin-bottom:0}.modalScreen:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.012) 3px,rgba(0,0,0,.012) 4px);z-index:1;border-radius:inherit}html[data-theme=dark] .modalScreen{border-top-color:#1a1e28;border-left-color:#222630;border-right-color:#3a3e4a;border-bottom-color:#444858;box-shadow:inset 0 4px 10px #0006,inset 0 1px 3px #0000004d,inset 0 -1px #ffffff0a,0 1px #ffffff0f}html[data-theme=dark] .modalScreen:after{background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(255,255,255,.008) 3px,rgba(255,255,255,.008) 4px)}.transmissionRule{height:1px;background:var(--color-transmission-rule);margin:10px 0;border:none}.modalBody{padding:12px 16px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.transmissionFooter{display:flex;gap:10px;padding:4px 5px 6px;flex-shrink:0}.transmissionBtn{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;outline:none;cursor:pointer;position:relative;flex:1;height:34px;min-width:0;padding:0 16px;border-radius:10px;font-size:13px;font-weight:700;line-height:1;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.transmissionBtn:active{transform:translateY(1px) scale(.995)}.transmissionBtn>span{position:relative;z-index:1}.transmissionBtn--dismiss{color:#3e2c14;background:linear-gradient(180deg,#d4b878,#c8aa68 15%,#bfa05e 50%,#a88a48);box-shadow:inset 0 1px #fff0c88c,inset 0 -1px 3px #50321240,0 0 0 1px #6e522699,0 2px 4px #311d0a38}.transmissionBtn--dismiss:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:8px;background:linear-gradient(180deg,rgba(255,245,210,.3) 0%,rgba(255,230,170,.08) 40%,transparent 100%);pointer-events:none}.transmissionBtn--dismiss:active{background:linear-gradient(180deg,#b89850,#a88a48 15%,#9a7e40 50%,#8a6e35);box-shadow:inset 0 2px 4px #3c260a59,0 0 0 1px #6e522699,0 1px 2px #311d0a26}.transmissionBtn--decrypt{color:#2f1f0d;background:linear-gradient(180deg,#f6dd8b,#edcd6d 18%,#dfb44f 52%,#c8912b);box-shadow:inset 0 1px #fff6bcf2,inset 0 -2px 4px #78460a4d,inset 0 0 0 1px #a5711ce6,0 0 0 2px #7b5217d9,0 3px 8px #4a2b0a57}.transmissionBtn--decrypt:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:8px;background:linear-gradient(180deg,#fff9d1f2,#ffe88f8c 18%,#ffd3612e 52%,#a0681514);box-shadow:inset 0 1px #fffce9f2,inset 0 -1px 2px #794a121f;pointer-events:none}.transmissionBtn--locked{color:#c8beaf73;background:linear-gradient(180deg,#8a7e6a,#7a6e5a 18%,#706452 52%,#605848);box-shadow:inset 0 1px #fff3d21f,inset 0 -2px 4px #321e0a4d,inset 0 0 0 2px #503c2380,0 1px 2px #311d0a26;cursor:not-allowed}.transmissionBtn--locked:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:8px;background:linear-gradient(180deg,#b4aa9614,#7864460a 45%,#321e0a1a);box-shadow:inset 0 1px #fff7e10f;pointer-events:none}@media (hover: hover) and (pointer: fine){.transmissionBtn--decrypt:hover{filter:brightness(1.03);box-shadow:inset 0 1px #fff6bcf2,inset 0 -2px 4px #78460a4d,inset 0 0 0 1px #a5711ce6,0 0 0 2px #7b5217d9,0 4px 12px #4a2b0a61}.transmissionBtn--dismiss:hover{filter:brightness(1.06);box-shadow:inset 0 1px #fff0c899,inset 0 -1px 3px #50321233,0 0 0 1px #6e5226a6,0 3px 6px #311d0a40}}html[data-theme=dark] .transmissionBtn--dismiss{color:#e0d8c8;background:linear-gradient(180deg,#9e7e3a,#8a6e32 15%,#7e642c 50%,#6e5624);box-shadow:inset 0 1px #ffe6b438,inset 0 -1px 3px #0000004d,0 0 0 1px #8c6e3299,0 2px 4px #0000004d}html[data-theme=dark] .transmissionBtn--dismiss:before{background:linear-gradient(180deg,rgba(255,230,180,.12) 0%,transparent 40%,transparent 100%)}html[data-theme=dark] .transmissionBtn--dismiss:active{background:linear-gradient(180deg,#7e642c,#725a28 15%,#685224 50%,#5e4a20);box-shadow:inset 0 2px 4px #0006,0 0 0 1px #8c6e3299,0 1px 2px #0003}html[data-theme=dark] .transmissionBtn--decrypt{color:#2f1f0d;background:linear-gradient(180deg,#b89028,#a88020 18%,#906818 52%,#785010);box-shadow:inset 0 1px #ffe69699,inset 0 -2px 4px #50320a59,inset 0 0 0 1px #785514b3,0 0 0 2px #503a0fb3,0 3px 8px #0006}html[data-theme=dark] .transmissionBtn--decrypt:before{background:linear-gradient(180deg,#fff0b466,#ffd76426 18%,#b482280a 52%,#64460f0f)}html[data-theme=dark] .transmissionBtn--locked{color:#c8b48c40;background:linear-gradient(180deg,#3e3420,#36301c 18%,#302a18 52%,#282214);box-shadow:inset 0 1px #ffe6b40d,inset 0 -2px 4px #00000059,inset 0 0 0 2px #463a1e80,0 1px 2px #0000004d}html[data-theme=dark] .transmissionBtn--locked:before{background:linear-gradient(180deg,rgba(255,230,180,.02) 0%,transparent 45%,rgba(0,0,0,.08) 100%)}.celebrationFace{position:fixed;left:50%;top:59%;transform:translate(-50%);z-index:350;pointer-events:none;animation:celebPopIn .4s cubic-bezier(.34,1.56,.64,1) both}.celebrationFace img{width:88px;height:88px;position:relative;z-index:2;animation:gillWiggle .6s .35s cubic-bezier(.36,.07,.19,.97) both;transform-origin:center bottom}@keyframes gillWiggle{0%{transform:rotate(0) scaleX(1)}20%{transform:rotate(-6deg) scaleX(1.04)}40%{transform:rotate(5deg) scaleX(.97)}60%{transform:rotate(-3deg) scaleX(1.02)}80%{transform:rotate(2deg) scaleX(.99)}to{transform:rotate(0) scaleX(1)}}@keyframes celebPopIn{0%{opacity:0;transform:translate(-50%) scale(0)}60%{opacity:1;transform:translate(-50%) scale(1.12)}80%{transform:translate(-50%) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}.digitalFizzContainer{position:fixed;left:0;right:0;bottom:0;top:0;z-index:340;pointer-events:none;overflow:hidden}.digitalFizzBit{position:absolute;font-family:Courier New,monospace;font-size:14px;font-weight:700;opacity:0;animation:fizzUp var(--dur) var(--delay) ease-out both}@keyframes fizzUp{0%{opacity:.7;transform:translateY(0) scale(1)}40%{opacity:.5}to{opacity:0;transform:translateY(-40vh) scale(.4)}}.msgText{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.msgText::-webkit-scrollbar{display:none}.modalKeyboardArea{margin-top:12px;padding-top:8px;border-top:1px solid var(--color-border-main)}.modalKeyboardArea .card{margin:0;padding:8px}.modalKeyboardArea .keycap{width:36px;height:36px;font-size:14px}.modalKeyboardArea .keyWide{width:64px}.modalKeyboardArea .keyGrid{gap:6px;margin-top:6px}.modalKeyboardArea .keyRow{gap:6px}.updateToast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;background:var(--color-bg-toast);color:#fff;padding:10px 16px;border-radius:10px;box-shadow:0 4px 16px #0000004d;z-index:9999;animation:toastSlideUp .3s ease-out}.updateToastText{font-size:13px}.updateToastBtn{background:var(--color-success);color:#fff;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer}.updateToastBtn:active{opacity:.8}.updateToastDismiss{background:none;border:none;color:#ffffff80;font-size:16px;cursor:pointer;padding:0 4px}@keyframes toastSlideUp{0%{transform:translate(-50%) translateY(30px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.signalLostOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay-dark);z-index:9999;display:flex;align-items:center;justify-content:center;animation:fadeIn .5s ease-out}.signalLostCard{text-align:center;padding:32px 40px;max-width:320px}.signalLostIcon{font-size:48px;margin-bottom:12px;opacity:.9}.signalLostTitle{font-size:24px;font-weight:700;color:var(--color-error);letter-spacing:2px;margin-bottom:12px}.signalLostSub{font-size:13px;color:var(--color-text-disabled);line-height:1.5;margin-bottom:24px}.signalLostCountdownLabel{font-size:11px;color:var(--color-text-faint);letter-spacing:1px;margin-bottom:6px}.signalLostCountdown{font-size:36px;font-weight:700;color:#e8e0d6;letter-spacing:3px}.glyphRow{display:flex;justify-content:center;gap:12px;margin-top:8px;margin-bottom:4px}.glyphIcon{position:relative;width:62px;height:62px;border-radius:50%;border:1.5px solid var(--color-border-glyph);background:#fff9;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;touch-action:manipulation;transition:border-color .15s,background .15s;padding:0;line-height:1}.glyphIcon:hover:not(:disabled){border-color:#999;background:#ffffffd9}.glyphIcon:disabled{opacity:.35;cursor:not-allowed}.glyphIcon.glyphIconActive{border-color:var(--color-glyph-active-border);background:var(--color-glyph-active-bg)}.glyphIconSmall{width:30px;height:30px;font-size:15px;border:none;background:transparent;padding:0}.sliceBtnTransmission{width:auto;height:26px;padding:0 8px;border-radius:6px;border:1.5px solid rgba(140,112,48,.45);background:linear-gradient(180deg,#c8b07840,#aa905a2e);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.sliceBtnTransmission .glyphIconImg{width:22px;height:22px;opacity:.7;transition:opacity .15s}.sliceBtnTransmission:hover .glyphIconImg,.sliceBtnTransmission:active .glyphIconImg{opacity:1}@media (hover: hover) and (pointer: fine){.sliceBtnTransmission:hover{border-color:#c8820099;background:linear-gradient(180deg,#d2aa5a59,#be964640);box-shadow:0 1px 4px #c8820026}}.sliceBtnTransmission:active{border-color:#c88200b3;background:linear-gradient(180deg,#c88c3266,#b478284d)}.sliceBtnTransmission.glyphIconActive{border-color:var(--color-glyph-active-border);background:var(--color-glyph-active-bg)}.sliceBtnTransmission.glyphIconActive .glyphIconImg{opacity:1}html[data-theme=dark] .sliceBtnTransmission{border-color:#786e5566;background:linear-gradient(180deg,#645a4140,#5046322e)}html[data-theme=dark] .sliceBtnTransmission:hover{border-color:#c8a03c80;background:linear-gradient(180deg,#826e3c59,#6e5a2d40)}.checkPopoverTitle{font-size:22px;font-weight:700;letter-spacing:1px;margin-bottom:10px;color:var(--color-slice-accent)}.checkBtnInlineLabel{font-size:11px;font-weight:700;letter-spacing:.5px}.sliceBtnTransmission.checkBtnDisabled{opacity:.35;pointer-events:none}.glyphIcon.glyphIconTopBar,.glyphIcon.glyphIconTopBar:hover:not(:disabled),.glyphIcon.glyphIconTopBar:disabled,.glyphIcon.glyphIconTopBar.glyphIconActive{width:60px;height:60px;font-size:16px;margin-left:6px;border:none!important;background:none!important;box-shadow:none!important;outline:none!important;padding:0;border-radius:0}.glyphIconImg{width:100%;height:100%;object-fit:contain;pointer-events:none}.glyphCounter{position:absolute;top:-6px;right:-8px;min-width:20px;height:20px;border-radius:10px;background:var(--color-glyph-counter-bg);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;box-shadow:0 1px 3px #0003}.glyphPopupOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#00000059;display:flex;align-items:center;justify-content:center}.glyphPopupBox{background:var(--color-bg-popup);border:1px solid var(--color-border-glyph);border-radius:14px;padding:24px 28px;text-align:center;min-width:200px;max-width:280px;box-shadow:0 6px 24px #0000002e}.glyphPopupIcon{font-size:36px;margin-bottom:10px}.glyphPopupIconImg{width:96px;height:96px;object-fit:contain;margin-bottom:10px}.glyphPopupText{font-size:13px;line-height:1.4;margin-bottom:6px;color:var(--color-text-key-mobile)}.glyphPopupDesc{font-size:11px;line-height:1.4;margin-bottom:16px;color:var(--color-text-muted)}.glyphPopupBtn{padding:8px 24px;font-size:13px;font-weight:700;color:#fff;background:var(--color-slice-accent);border:none;border-radius:8px;cursor:pointer;touch-action:manipulation}.glyphPopupBtn:hover:not(:disabled){background:var(--color-slice-accent);filter:brightness(.85)}.glyphPopupBtn:disabled{opacity:.4;cursor:not-allowed}.sliceActiveHint{margin:4px 0;padding:5px 12px;font-size:11px;color:var(--color-slice-accent);background:var(--color-slice-bg);border:1px solid var(--color-slice-border);border-radius:6px;text-align:center}.blobSliceable{cursor:pointer;border:1px dashed var(--color-slice-border);border-radius:3px;padding:2px 0}.slicedWord{color:var(--color-slice-accent);background:var(--color-slice-bg);border-radius:3px;padding:1px 3px}.gridWrap{display:grid;gap:10px}.gridRowWrap{display:flex;justify-content:center}.gridRow{display:grid;grid-template-columns:repeat(10,34px);gap:6px;align-items:center}.tile{width:34px;height:34px;border:1px solid var(--color-tile-border);border-radius:8px;display:grid;place-items:center;background:var(--color-tile-bg);color:var(--color-tile-text, inherit);box-shadow:0 1px 2px #0000001a,0 2px 4px #0000000f,inset 0 1px #ffffff59;touch-action:manipulation}.tile.vowel{border-color:var(--color-tile-vowel-border)}.tile.consonant{border-color:var(--color-tile-consonant-border)}.tile.flash-new{animation:flashNew 3s ease-out}.tile.flash-complete{animation:flashComplete 3s ease-out forwards}@keyframes flashNew{0%{background-color:var(--color-tile-flash-new)}50%{background-color:var(--color-tile-flash-new)}to{background-color:var(--color-tile-bg)}}@keyframes flashComplete{0%{background-color:var(--color-tile-flash-new);color:var(--color-tile-text, inherit)}50%{background-color:var(--color-tile-flash-new);color:var(--color-tile-text, inherit)}to{background-color:var(--color-tile-bg);color:transparent}}.containerLetters{display:flex;width:0;min-width:100%;overflow:hidden;flex-shrink:0;margin-top:8px}.reserveBadges{display:flex;justify-content:center;gap:0;width:100%;letter-spacing:3px}.input{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--color-border-input);background:var(--color-bg-input);color:var(--color-text-input);font-size:16px;caret-color:var(--color-text-input)}.input:focus{outline:none;border-color:var(--color-tile-vowel-border)}.btn{padding:10px 12px;border-radius:10px;border:1px solid var(--color-btn-border);background:var(--color-btn-bg);color:var(--color-btn-text);cursor:pointer;touch-action:manipulation}.btn:disabled{opacity:.45;cursor:not-allowed}@keyframes unlockPulse{0%,to{box-shadow:0 0 #00a00066}50%{box-shadow:0 0 0 8px #00a00000}}.unlockReady{animation:unlockPulse 2s ease-in-out infinite}.reqStatus{text-align:center;margin-top:8px;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600}.reqStatusLocked{background:#ff000014;color:var(--color-error)}.reqStatusReady{background:#00a0001f;color:var(--color-success)}.keyGrid{display:grid;gap:6px;margin-top:8px;-webkit-tap-highlight-color:transparent}.keyRow{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;-webkit-tap-highlight-color:transparent}.keycap{width:48px;height:48px;border-radius:12px;border:1px solid var(--color-border-key);background:var(--color-bg-key);color:var(--color-text-key);position:relative;cursor:pointer;display:grid;place-items:center;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:none}.keycap:focus,.spaceBar:focus,.kbActionBtn:focus{outline:none}.keycap *{-webkit-user-select:none;user-select:none}.keycapLabel{font-size:16px;line-height:1}.keycap.stacked,.keycap.stacked:hover{background:var(--color-stacked-bg);border-color:var(--color-stacked-border)}.keycap:disabled{opacity:.35;cursor:not-allowed}.keyCornerBL{position:absolute;right:8px;top:6px;font-size:11px;opacity:.85}.keyCornerUR{position:absolute;left:8px;bottom:6px;font-size:11px;opacity:.85;color:var(--color-key-corner-green)}.keyWide{width:80px}.spaceRow{justify-content:center;align-items:center;gap:8px;-webkit-tap-highlight-color:transparent}.spaceRow--hidden{visibility:hidden;pointer-events:none}.spaceBar{width:200px;height:40px;border-radius:8px;border:1px solid var(--color-border-key);background:var(--color-bg-key);color:var(--color-text-key);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:none}.spaceBar:disabled,.spaceBar--disabled{opacity:.35;pointer-events:none}.spaceBar:not(:disabled):not(.spaceBar--disabled):active{background:var(--color-btn-active-bg)}.kbActionBtn{height:40px;padding:0 12px;border-radius:8px;border:1px solid var(--color-border-key);background:var(--color-bg-key);color:var(--color-text-key);font-size:11px;font-weight:600;font-family:Courier New,monospace;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:none}.kbActionBtn:disabled,.kbActionBtn--disabled{opacity:.35;pointer-events:none}.kbActionBtn:not(:disabled):not(.kbActionBtn--disabled):active{background:var(--color-btn-active-bg)}.kbSubmitBtn:not(:disabled):not(.kbActionBtn--disabled){background:var(--color-submit-bg);border-color:var(--color-submit-border);color:var(--color-submit-text)}.topBar{display:none;align-items:center;justify-content:space-between;position:relative;gap:12px;padding:12px 16px;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-main);box-shadow:0 2px 4px #0000001a}.topBarLeft{display:flex;align-items:center;gap:10px}.topBarCenter{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px}.lexLevelBadge{font-size:13px;letter-spacing:.1em;color:var(--color-text-primary);opacity:.85;cursor:pointer}.lexLevelPopup{min-width:220px;max-width:280px}.lexPopupTag{font-size:22px;font-weight:700;letter-spacing:.12em;margin-bottom:14px;color:var(--color-text-primary)}.lexPopupBarTrack{width:100%;height:10px;background:var(--color-border-glyph);border-radius:5px;overflow:hidden;margin-bottom:8px}.lexPopupBarFill{height:100%;background:#d4a63a;border-radius:5px;transition:width .4s ease}.lexPopupStats{font-size:12px;color:var(--color-text-primary);opacity:.8;margin-bottom:12px}.lexPopupDesc{font-size:11px;line-height:1.5;color:var(--color-text-muted)}.lexatisticsOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;background:#00000080;display:flex;align-items:center;justify-content:center;padding:24px}.lexatisticsPanel{background:var(--color-bg-popup);border:1px solid var(--color-border-glyph);border-radius:16px;width:100%;max-width:380px;max-height:85vh;overflow-y:auto;display:flex;flex-direction:column}.lexatisticsHeader{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--color-border-glyph)}.lexatisticsClose{background:none;border:none;font-size:18px;color:var(--color-text-primary);cursor:pointer;opacity:.6;padding:4px 8px}.lexatisticsClose:hover{opacity:1}.lexatisticsBody{padding:16px 20px 20px}.lexStatSection{margin-bottom:20px}.lexStatSection:last-child{margin-bottom:0}.lexStatSectionTitle{font-size:11px;letter-spacing:.15em;color:#d4a63a;margin-bottom:10px;font-weight:700}.lexProgressRow{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}.lexProgressTag{font-size:20px;font-weight:700;letter-spacing:.1em;color:var(--color-text-primary)}.lexProgressDgs{font-size:12px;color:var(--color-text-primary);opacity:.6}.lexStatGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.lexStatGrid:has(.lexStatItem:nth-child(3):last-child),.lexStatGrid:has(.lexStatItem:nth-child(2):last-child){grid-template-columns:repeat(2,1fr)}.lexStatItem{text-align:center;padding:8px 4px;background:var(--color-border-glyph);border-radius:8px}.lexStatValue{font-size:22px;font-weight:700;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--color-text-primary)}.lexStatLabel{font-size:10px;letter-spacing:.08em;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--color-text-primary);opacity:.5;margin-top:2px}.lexTierRow{display:flex;align-items:center;gap:8px;margin-bottom:6px}.lexTierLabel{font-size:10px;width:120px;flex-shrink:0;color:var(--color-text-primary);opacity:.7}.lexTierBarTrack{flex:1;height:8px;background:var(--color-border-glyph);border-radius:4px;overflow:hidden}.lexTierBarFill{height:100%;border-radius:4px;min-width:0;transition:width .3s ease}.lexTierBar--6,.lexTierBar--5,.lexTierBar--4{background:#d4a63a}.lexTierBar--3{background:#b8b4ae}.lexTierBar--2{background:#a0a0a0}.lexTierBar--1{background:#cc6660}.lexTierCount{font-size:11px;width:24px;text-align:right;color:var(--color-text-primary);opacity:.7}.lexMilestoneList{display:flex;flex-direction:column;gap:6px}.lexMilestoneRow{display:flex;align-items:center;gap:8px;font-size:12px;padding:5px 8px;border-radius:6px;background:var(--color-border-glyph);color:var(--color-text-primary)}.lexMilestoneRow--next{opacity:.45}.lexMilestoneEmoji{font-size:14px;flex-shrink:0}.lexMilestoneLabel{flex:1}.lexMilestoneCheck{color:#5faf6b;font-weight:700;flex-shrink:0}.lexMilestoneProgress{font-size:10px;opacity:.7;flex-shrink:0}.messageIcon{width:44px;height:44px;border-radius:10px;border:none;background:transparent;cursor:pointer;display:grid;place-items:center;touch-action:manipulation;position:relative;padding:0;overflow:visible}.messageIconImg{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}.messageNotif{position:absolute;top:-2px;right:-2px;font-size:10px}.dimOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:180;pointer-events:none}.topBar--highlight{z-index:190}.messageIcon--highlight{animation:iconSpotlight 1s ease-in-out infinite;border-radius:10px}@keyframes iconSpotlight{0%,to{box-shadow:0 0 16px 6px #00dc6499,0 0 40px 14px #00dc6440;transform:scale(1)}50%{box-shadow:0 0 28px 12px #00dc64e6,0 0 60px 24px #00dc6459;transform:scale(1.15)}}@media (min-width: 769px){.mockUnlockOverlay,.dimOverlay{display:none!important}}.unlockArrow{position:fixed;top:calc(54px + var(--safe-top, 0px));left:calc(22px + var(--safe-left, 0px));z-index:195;font-size:38px;color:#5faf6b;text-shadow:0 0 14px rgba(0,220,100,.9),0 0 28px rgba(0,220,100,.5);pointer-events:none;animation:arrowBounce .7s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(0,220,100,.7))}@keyframes arrowBounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-14px) scale(1.15)}}.axolotlPeek{position:absolute;width:26px;height:26px;right:-1px;top:50%;transform:translateY(-50%);border-radius:50%;object-fit:cover;pointer-events:none;animation:peekBounce .4s ease-out forwards,peekBreathe 3s ease-in-out .4s infinite}@keyframes peekBounce{0%{transform:translateY(-50%) scale(0);opacity:0}60%{transform:translateY(-50%) scale(1.1);opacity:1}to{transform:translateY(-50%) scale(1);opacity:1}}@keyframes peekBreathe{0%,to{transform:translateY(-50%) scale(1)}50%{transform:translateY(-50%) scale(1.06)}}.messageHistory{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px 0}.desktopOnly .messageHistory{max-height:none;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.messageHistoryList{margin:0;padding:0 12px 0 28px;list-style-type:"–  "}.messageHistoryList li{padding:6px 0}.archiveUnplayed{background:none;border:1px dashed var(--color-text-muted);color:var(--color-text-muted);font:inherit;font-size:13px;padding:2px 10px;border-radius:6px;cursor:pointer}.archiveSolvedEntry{display:flex;align-items:flex-start;gap:8px}.archiveSolvedEntry>div{flex:1;min-width:0}.archiveShareBtn{flex-shrink:0;background:none;border:none;cursor:pointer;padding:2px;color:var(--color-text-muted);opacity:.6;touch-action:manipulation}.archiveShareBtn:hover{opacity:1}.archiveMonthHeader{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;border:none;border-bottom:1px solid var(--color-border-help);background:none;color:var(--color-text-secondary);font-size:13px;cursor:pointer}.archiveMonthHeader:hover{color:var(--color-text-primary)}.archiveMonthHeaderCurrent{cursor:default}.archiveChevron{transition:transform .2s;display:inline-block;font-size:11px}.archiveChevronOpen{transform:rotate(90deg)}.topBarItem{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.topBarLabel{font-size:10px;opacity:.7;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.topBarValue{font-size:16px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.topBarDifficulty{font-size:13px;letter-spacing:.5px;text-transform:uppercase}.topBarRight{display:flex;align-items:center;gap:8px}.menuWrapper{position:relative}.menuBtn{width:28px;height:28px;border-radius:6px;border:2px solid var(--color-border-help);background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer;touch-action:manipulation;padding:0;transition:border-color .15s}.menuBtnBar{display:block;width:14px;height:2px;border-radius:1px;background:var(--color-text-placeholder);transition:background .15s}.menuBtn:active{border-color:#fff}.menuBtn:active .menuBtnBar{background:#fff}.menuDropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:140px;background:var(--color-bg-card, #2a2f3a);border:1.5px solid var(--color-border-help);border-radius:8px;padding:4px 0;z-index:9000;box-shadow:0 4px 16px #0006}.menuDropdownItem{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;background:transparent;border:none;color:var(--color-text-primary, #e0e0e0);font-size:11px;text-align:left;cursor:pointer;touch-action:manipulation;transition:background .12s}.menuDropdownItem:active{background:#ffffff1a}.darkModeAnchor{position:relative}.darkModeRow{display:flex;justify-content:space-between;align-items:center;width:100%}.darkModeValue{font-size:.7rem;opacity:.55;margin-left:auto}.darkModePopover{position:absolute;right:100%;top:0;margin-right:4px;background:var(--color-bg-surface);border:1px solid var(--color-border-main);border-radius:8px;box-shadow:0 4px 16px #0000002e;padding:4px 0;min-width:80px;z-index:110}.darkModePopoverItem{display:block;width:100%;padding:8px 14px;text-align:left;background:none;border:none;color:var(--color-text-body);font-size:.82rem;cursor:pointer;opacity:.7;transition:opacity .12s,background .12s}.darkModePopoverItem:hover{background:#8080801a;opacity:1}.darkModePopoverItem--active{opacity:1;font-weight:600}.subscribeBtn{padding:4px 10px;border-radius:6px;border:1.5px solid var(--color-border-subscribe);background:transparent;color:var(--color-text-placeholder);font-size:10px;font-weight:700;letter-spacing:.5px;cursor:pointer;touch-action:manipulation;line-height:1}.subscribeBtn:active{border-color:#fff}.helpBtn{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--color-border-subscribe);background:transparent;color:var(--color-text-placeholder);font-size:13px;font-weight:700;cursor:pointer;touch-action:manipulation;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.helpBtn:active{border-color:#fff}.gameArea{flex-direction:column;justify-content:flex-start;padding:16px;overflow:hidden;align-items:center}.keyboardToggle{position:fixed;bottom:16px;left:50%;transform:translate(-50%);padding:8px 20px;font-size:13px;border-radius:16px;border:1px solid var(--color-border-input);background:var(--color-btn-primary-bg);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #0000004d;z-index:100;display:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;visibility:visible;pointer-events:auto}.keyboardToggle--pulse{animation:kbPulse 1.4s ease-in-out infinite}@keyframes kbPulse{0%,to{box-shadow:0 0 10px 3px #daa52066,0 4px 12px #0000004d}50%{box-shadow:0 0 30px 12px #daa520cc,0 0 60px 20px #daa5204d,0 4px 12px #0000004d}}.gridToast{position:fixed;top:55%;left:50%;transform:translate(-50%);padding:10px 20px;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border-input);border-radius:12px;font-size:13px;font-weight:500;z-index:200;opacity:0;animation:toastIn .3s ease forwards,toastOut .3s ease 2.7s forwards;pointer-events:none;white-space:nowrap;box-shadow:0 4px 16px #0000004d}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastOut{0%{opacity:1}to{opacity:0}}.keyboardOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:transparent;z-index:340}.keyboardOverlayPassthrough{pointer-events:none;background:transparent}.keyboardPanel{position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-kb-panel);border-top:1px solid var(--color-border-main);box-shadow:0 -4px 12px #0000001a;max-height:60vh;overflow-y:auto;z-index:350;display:none;visibility:visible;animation:slideUp .3s ease-out;pointer-events:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.keyboardPanelHeader{padding:6px 8px;background:var(--color-bg-kb-header);border-bottom:1px solid var(--color-border-input);position:sticky;top:0;z-index:1}.keyboardPanelHeader .small{color:#fff}.keyboardPanel .keycap{width:42px;height:58px;font-size:18px;font-weight:600;background:#6a5e4e;border:none;border-radius:4px;color:#fff}.keyboardPanel .keycap:disabled{background:#4a4036;color:#7a7268}.keyboardPanel .keycap.stacked{background:#ff64644d;border:1px solid rgba(255,100,100,.5)}.keyboardPanel .keyWide{width:72px;font-size:14px}.keyboardPanel .keyGrid{gap:6px;margin-top:0}.keyboardPanel .keyRow{gap:6px;justify-content:center}.keyboardPanel .card{background:transparent;border:none;padding:0}.keyboardPanel .btn{background:#3a4050;color:#fff;border:none}.magLens{position:fixed;border-radius:50%;border:2px solid var(--color-border-input);background:radial-gradient(ellipse at center,var(--color-bg-surface) 60%,var(--color-border-main) 100%);box-shadow:0 4px 16px #00000059,inset 0 2px 8px #fff9,inset 0 -2px 6px #00000014;overflow:hidden;pointer-events:none;z-index:99999;display:flex;align-items:center;justify-content:center}.magLens:after{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%);width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:7px solid var(--color-border-input)}.magLensText{font-family:Courier New,monospace;font-size:24px;line-height:1;white-space:nowrap;color:var(--color-text-input);text-align:center}.magLensCursor{color:var(--color-cursor-red);font-weight:700;animation:blink 1s step-end infinite}.mobileContainer{width:100%;max-width:980px;margin:0 auto;padding:8px;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;gap:8px;background:var(--color-bg-primary);height:100vh;height:100dvh;box-sizing:border-box;overflow:hidden}@media (min-width: 769px){.topBar,.keyboardToggle,.keyboardPanel,.keyboardOverlay,.modalOverlay,.bottomToggles,.glyphToggle,.glyphPanelDrawer,.mobileRequirements,.mobileText{display:none}.desktopText{display:inline}}.desktopOnly{display:flex;flex-direction:column;gap:4px;min-height:0;flex:1;width:100%;overflow:visible}.desktopOnly>.card{flex-shrink:0}.desktopOnly>*{min-height:0}.desktopOnly>.card.decompressorCard{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;width:fit-content;min-width:420px;align-self:center}.desktopOnly .decompressorCard .mono{font-size:15px}.desktopOnly .decompressorCard .input{min-height:36px!important}.desktopOnly .decompressorCard .reqBadge{font-size:13px;font-weight:600}.desktopOnly .decompressorCard .reqStatus{font-size:13px}.desktopOnly .decompressorCard .progressRingLabel{font-size:9px}.desktopOnly .decompressorCard .progressRing,.desktopOnly .decompressorCard .dismissedVowels{display:none}.desktopOnly>.messageStatus{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:700;padding:4px 0;color:var(--color-text-unfulfilled);letter-spacing:.06em;text-shadow:0 1px 0 rgba(255,255,255,.35),0 -.5px 0 rgba(0,0,0,.12)}html[data-theme=dark] .desktopOnly>.messageStatus{text-shadow:0 1px 0 rgba(255,255,255,.06),0 -1px 0 rgba(0,0,0,.5)}.desktopOnly .decompressorCard .reportCard{margin:auto}.desktopOnly .trPanel{width:fit-content}.desktopOnly .decompressorCard .lockedReqs{display:flex;flex-wrap:nowrap;align-items:center;gap:8px}.desktopOnly .decompressorCard .lockedReqs>div:nth-child(1){margin-top:0!important;order:1}.desktopOnly .decompressorCard .lockedReqs>div:nth-child(2){margin-top:0!important;order:2}.desktopOnly .decompressorCard .lockedReqs>div:nth-child(3){margin-top:0!important;margin-left:auto;order:3}.desktopOnly>.card{padding:8px 12px}.desktopOnly .keycap{width:38px;height:34px;font-size:13px;border-radius:6px}.desktopOnly .keyGrid{gap:3px;margin-top:3px}.desktopOnly .keyRow{gap:3px}.desktopOnly .keyWide{width:64px}.desktopOnly .keyCornerBL{font-size:8px;right:3px;top:2px}.desktopOnly .keyCornerUR{font-size:8px;left:3px;bottom:2px}.desktopOnly .spaceBar{height:30px}.desktopOnly .kbActionBtn{height:30px;font-size:9px}.desktopOnly .keyboardHeader{display:none}.desktopOnly .gridRow{grid-template-columns:repeat(10,28px);gap:3px}.desktopOnly .tile{width:28px;height:28px;font-size:12px}.desktopOnly .containerLetters{margin-top:6px}.desktopOnly .reserveBadges{gap:3px}.desktopOnly .well{font-size:14px}.desktopOnly .dgsCircleLabel,.desktopOnly .dgsCircleValue{color:#c9a84c!important}.desktopOnly .vowelPlate{width:fit-content;margin:0 auto;background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(245,225,194,.3) 0%,transparent 55%),linear-gradient(225deg,#f5e1c2,#e0c58f 25%,#d2ae77,#c6a069 65%,#c19862);border:1px solid #c19862;border-top-color:#e0c58f;border-right-color:#e8d4a1;box-shadow:-2px 2px 6px #00000024,-3px 4px 12px #00000012,inset -1px 1px #f5e1c273,inset 1px -1px #00000014;border-radius:14px;padding:10px 14px}.desktopOnly .gridWrap{margin-top:2px;background:transparent;border:none;box-shadow:none;border-radius:0;padding:0}.desktopOnly .npcContainer{height:34px;flex-shrink:0;margin:-2px auto;max-width:400px}.desktopOnly .npcEmergeWrap{width:160px;height:160px}.desktopOnly .slotPlate{width:133px;height:26px}.desktopOnly .axolotlSlot{max-width:102px;height:15px}.desktopOnly>.desktopTopBar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;flex-shrink:0;padding:2px 0 4px}.desktopLogo{height:40px;width:auto;object-fit:contain}html[data-theme=dark] .desktopLogo{border-radius:8px}html[data-theme=dark] .desktopOnly .vowelPlate{background:radial-gradient(ellipse 130% 130% at 100% 0%,rgba(210,180,106,.2) 0%,transparent 55%),linear-gradient(225deg,#d2b46a,#c4a458 25%,#b8964a,#a08040 65%,#8a6a2f);border-color:#8a6a2f;border-top-color:#c4a458;border-right-color:#d2b46a;box-shadow:-2px 2px 6px #0000004d,-3px 4px 12px #0000002e,inset -1px 1px #d2b46a38,inset 1px -1px #0000002e}@media (min-width: 769px){.gameArea{display:none}}.slotPlate{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:156px;height:30px;border-radius:6px;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 3px),linear-gradient(225deg,#f5e1c2,#e0c58f 40%,#c19862);border:1px solid #c19862;border-top-color:#e0c58f;border-right-color:#e8d4a1;box-shadow:inset -1px 1px #fffae673,inset 1px -1px #00000014,-1px 1px 3px #0000001a,0 0 0 .5px #64501e0f;z-index:0;pointer-events:none}.slotPlate:before,.slotPlate:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;top:50%;transform:translateY(-50%);background:linear-gradient(90deg,transparent 36%,rgba(80,65,20,.15) 36%,rgba(80,65,20,.15) 64%,transparent 64%),linear-gradient(0deg,transparent 36%,rgba(80,65,20,.15) 36%,rgba(80,65,20,.15) 64%,transparent 64%),radial-gradient(circle at 64% 36%,#f5e1c2,#c19862);box-shadow:inset -.5px .5px 1px #fffae673,.5px .5px 1px #0000001a}.slotPlate:before{left:9px}.slotPlate:after{right:9px}html[data-theme=dark] .slotPlate{background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.015) 2px,rgba(255,255,255,.015) 3px),linear-gradient(225deg,#d2b46a,#b8964a 40%,#8a6a2f);border-color:#8a6a2f;border-top-color:#c4a458;border-right-color:#d2b46a;box-shadow:inset -1px 1px #d2b46a2e,inset 1px -1px #00000029,-1px 1px 3px #00000047,0 0 0 .5px #00000029}html[data-theme=dark] .slotPlate:before,html[data-theme=dark] .slotPlate:after{background:linear-gradient(90deg,transparent 36%,rgba(60,45,15,.25) 36%,rgba(60,45,15,.25) 64%,transparent 64%),linear-gradient(0deg,transparent 36%,rgba(60,45,15,.25) 36%,rgba(60,45,15,.25) 64%,transparent 64%),radial-gradient(circle at 64% 36%,#b8964a,#8a6a2f);box-shadow:inset -.5px .5px 1px #d2b46a1a,.5px .5px 1px #00000040}.axolotlSlot{width:100%;max-width:120px;height:18px;margin:4px auto 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E"),radial-gradient(ellipse 70% 80% at 50% 50%,#161d30,#0f1220 60%,#0a0d18);border-radius:4px;border:1px solid rgba(40,50,75,.5);box-shadow:inset 0 0 10px 3px #0009,inset 0 2px 4px #00000080,inset 0 -1px #ffffff0a,0 1px 2px #00000040,0 0 0 .5px #0000001a;position:relative;z-index:1;overflow:hidden;display:flex;align-items:center;justify-content:center}html[data-theme=dark] .axolotlSlot{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100' height='100' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E"),radial-gradient(ellipse 70% 80% at 50% 50%,#121828,#0b0f1a 60%,#060810);border-color:#37415a80;box-shadow:inset 0 0 12px 4px #000000b3,inset 0 2px 5px #0009,inset 0 -1px #ffffff08,0 1px 2px #00000059,0 0 0 .5px #0003}.slotEyes{display:flex;gap:10px;opacity:0;transition:opacity .8s ease-out}.slotEyes--visible{opacity:1}.slotEyes--blink .slotEye{transform:scaleY(.1);transition:transform .08s ease-in}.slotEye{width:6px;height:6px;background:#fff;border-radius:50%;position:relative;transition:transform .15s ease-out}.slotEye:after{content:"";position:absolute;width:3px;height:3px;background:#111;border-radius:50%;top:1.5px;transition:left .4s ease-out,right .4s ease-out}.slotEye--center:after{right:1.5px;left:auto}.slotEye--right:after{right:.5px;left:auto}.slotEye--left:after{left:.5px;right:auto}.slotGlow{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:3px;background:radial-gradient(ellipse at center,rgba(255,180,100,.06),transparent 70%);opacity:0;animation:slotGlowPulse 1.5s ease-in-out forwards;pointer-events:none}@keyframes slotGlowPulse{0%{opacity:0}50%{opacity:1}to{opacity:0}}.npcContainer{position:relative;overflow:visible;z-index:2;width:100%}.npcEmergeWrap{position:absolute;bottom:calc(100% - 20px);left:50%;width:160px;height:160px;transform:translate(-50%);overflow:hidden;pointer-events:none;z-index:1}.npcSlider{position:absolute;bottom:0;left:0;width:100%;height:100%;transition:transform .7s ease-in-out}.npcSprite{width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;image-rendering:auto;transition:rotate .5s ease-out;filter:saturate(1.08) contrast(1.04) brightness(1)}.npcSprite--bob{animation:npcBob 3s ease-in-out infinite}@keyframes npcBob{0%,to{translate:0 0}50%{translate:0 -3px}}.npcSprite--walk{background-size:800% 100%;background-position:0 0;animation:npcWalkCycle 2.4s steps(8) infinite}@keyframes npcWalkCycle{0%{background-position:0 0}to{background-position:-1280px 0}}.npcSprite--flip{scale:-1 1}.slotEyes--widen .slotEye{transform:scale(1.3);transition:transform .15s ease-out}.slotEyes--happy .slotEye{height:2px;width:7px;border-radius:4px 4px 0 0;background:var(--color-text, #222);transition:all .15s ease-out}.slotEyes--happy .slotEye:after{display:none}.slotEyes--sad .slotEye{transform:translateY(1px);opacity:.7;transition:all .15s ease-out}.npcSprite--reaction{transform:scale(.6);transform-origin:center bottom;transition:transform .15s ease-out}.npcSprite--bounce{animation:npcBounce .6s ease-out}@keyframes npcBounce{0%{translate:0 0}30%{translate:0 -8px}60%{translate:0 -2px}to{translate:0 0}}@media (prefers-reduced-motion: reduce){.npcSprite--bob,.npcSprite--walk,.npcSprite--bounce{animation:none}.npcSlider{transition-duration:.2s}.slotEyes{transition-duration:.1s}}.landingOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:var(--color-bg-landing);display:flex;flex-direction:column;align-items:center;padding:16px;overflow:hidden}.landingClose{position:absolute;top:calc(12px + env(safe-area-inset-top,0px));right:12px;z-index:10001;background:none;border:none;color:var(--color-text-primary);font-size:22px;cursor:pointer;padding:4px 8px;opacity:.7}.landingClose:hover{opacity:1}.landingSpacer{height:calc(12px + env(safe-area-inset-top,0px))}@media (min-height: 700px){.landingSpacer{height:calc(40px + env(safe-area-inset-top,0px))}}.landingFixed{flex-shrink:0;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:420px;padding-top:0}.landingCard{flex:1;min-height:0;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:4px 20px 0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;-ms-overflow-style:none}.landingCard::-webkit-scrollbar{display:none}.landingCardRow{display:flex;align-items:flex-start;flex:1;min-height:0;width:100%;max-width:540px;gap:8px;padding-top:8px}.landingArrow{flex-shrink:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border-badge);background:var(--color-btn-bg);color:var(--color-fg);font-size:22px;line-height:1;cursor:pointer;display:none;align-items:center;justify-content:center;opacity:.7;transition:opacity .15s}@media (min-width: 700px){.landingArrow{display:flex}}.landingArrow:hover{opacity:1}.landingArrow:disabled{opacity:.2;cursor:default}.landingArrowSpacer{flex-shrink:0;width:36px;height:36px;display:none}@media (min-width: 700px){.landingArrowSpacer{display:block}}.landingFooter{flex-shrink:0;width:100%;max-width:420px;display:flex;justify-content:center;padding:8px 20px calc(12px + env(safe-area-inset-bottom,0px))}.landingLogo{margin-bottom:12px}.landingLogoImg{max-width:200px;height:auto;border-radius:18px;box-shadow:0 4px 16px #0000001f}.landingTitle{font-size:22px;letter-spacing:3px;color:var(--color-text-heading);margin:0 0 16px}.landingStepIndicator{display:flex;gap:8px;margin-bottom:20px}.landingDot{width:8px;height:8px;border-radius:50%;background:var(--color-landing-dot);transition:background .2s}.landingDot.landingDotActive{background:var(--color-landing-dot-active)}.landingStepTitle{font-size:18px;font-weight:700;color:var(--color-text-heading);margin:0 0 12px}.landingBody{font-size:14px;line-height:1.6;color:var(--color-text-body);text-align:center;width:100%}.landingBody p{margin:0 0 10px}.landingBody p:last-child{margin-bottom:0}.tutorialExample{display:flex;flex-direction:column;align-items:center;gap:4px;margin:12px 0;padding:12px;background:var(--color-bg-tutorial);border-radius:10px}.tutorialTarget{font-size:16px;color:var(--color-success-dark);letter-spacing:1px}.tutorialArrow{font-size:18px;color:var(--color-text-disabled)}.tutorialBlob{font-size:18px;font-weight:700;color:var(--color-text-heading);letter-spacing:2px}.tutorialGrid{display:flex;flex-direction:column;align-items:center;gap:8px;margin:12px 0;padding:12px;background:var(--color-bg-tutorial);border-radius:10px}.tutorialTileRow{display:flex;gap:6px}.tutorialTile{width:36px;height:36px;border-radius:7px;display:grid;place-items:center;font-size:16px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.tutorialTile.vowelTile{background:linear-gradient(180deg,#f5d898,#f0d08a 40%,#ebc880 75%,#e8c47a);border:1px solid #9C8250;box-shadow:0 1px 2px #5a3c141f,inset 0 1px #fff6,inset 0 -2px 3px #6e4b1926;color:var(--color-tile-text, #3A2F1A)}.tutorialTile.hiddenTile{background:var(--color-tile-hidden-bg);border:1px solid var(--color-tile-hidden-border);color:var(--color-tile-hidden-color)}html[data-theme=dark] .tutorialTile.vowelTile{background:linear-gradient(180deg,#d2b46a,#c8aa5e 40%,#bea054 75%,#b8964a);border:1px solid #8A6A2F;box-shadow:0 1px 2px #00000038,inset 0 1px #ffffff2e,inset 0 -2px 3px #50320f38}.tutorialCaption{font-size:11px;color:var(--color-text-faint);letter-spacing:.3px}.tutorialKeysRow{display:flex;gap:24px;justify-content:center;align-items:flex-start;margin:14px 0}.tutorialKey{display:flex;flex-direction:column;align-items:center;gap:6px}.tutorialKeyBox{width:52px;height:52px;border-radius:12px;border:1px solid var(--color-border-key);background:var(--color-bg-key);color:var(--color-text-key);position:relative;display:grid;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.tutorialKeyLetter{font-size:20px;font-weight:700;text-transform:lowercase}.tutorialKeyCornerBL{position:absolute;right:8px;top:6px;font-size:11px;font-weight:400;opacity:.85;color:var(--color-text-key)}.tutorialKeyCornerUR{position:absolute;left:8px;bottom:6px;font-size:11px;font-weight:400;opacity:.85;color:var(--color-key-corner-green)}.tutorialKeyLabel{font-size:11px;color:var(--color-text-faint);letter-spacing:.2px;white-space:nowrap}.tutorialReservedBadge{display:inline-block;padding:2px 8px;border-radius:6px;background:var(--color-stacked-bg);border:1px solid var(--color-stacked-border);font-size:12px;color:var(--color-error)}.tutorialList{margin:8px 0;padding-left:20px}.tutorialList li{margin-bottom:6px}.tutorialLampRow{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 6px}.tutorialLampDemo{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.3);flex-shrink:0}.tutorialLampRed{background:radial-gradient(circle at 35% 30%,#f0a8a0,#d96a5e 50%,#b04a40);box-shadow:0 0 6px #d96a5eb3,0 0 2px #d96a5ee6}.tutorialLampGreen{background:radial-gradient(circle at 35% 30%,#a0e8a8,#5faf6b 50%,#3a8a44);box-shadow:0 0 6px #5faf6bb3,0 0 2px #5faf6be6}.tutorialLampLabel{font-size:12px;color:var(--color-text-secondary)}.tutorialBonusRow{display:flex;flex-direction:column;align-items:center;gap:4px;margin:10px 0;padding:10px;background:var(--color-bg-tutorial);border-radius:10px;font-size:13px;color:var(--color-text-secondary)}.tutorialSmall{font-size:12px;color:var(--color-text-secondary);margin-top:6px}.tutorialTierTable{display:flex;flex-direction:column;gap:6px;margin:10px 0;padding:10px;background:var(--color-bg-tutorial);border-radius:10px}.tutorialTierRow{display:flex;align-items:center;gap:6px;font-size:11px;line-height:1.3}.tutorialTierName{flex:0 0 auto;font-weight:700;color:var(--color-text-primary);min-width:130px}.tutorialTierDesc{flex:1;color:var(--color-text-secondary)}.tutorialTierPts{flex:0 0 auto;font-weight:700;color:var(--color-transmission-light-green, #5FAF6B)}.tutorialReady{font-weight:700;font-size:15px;color:var(--color-text-heading);text-align:center;margin-top:8px}.tutorialSliceIcon{display:flex;justify-content:center;margin-bottom:12px}.tutorialSliceImg{width:56px;height:56px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.skipOnboarding{position:fixed;bottom:calc(12px + var(--safe-bottom, 0px));right:12px;z-index:310;background:#0000008c;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:6px 14px;font-size:11px;letter-spacing:.5px;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .2s,opacity .2s;opacity:.75}.skipOnboarding:hover,.skipOnboarding:active{background:#000c;opacity:1}.mockRound{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;flex-direction:column;background:var(--color-bg-overlay);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);overflow-y:auto}.mockRound__intro{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;min-height:100%;gap:8px}.mockRound__logo{max-width:200px;height:auto;border-radius:18px}.mockRound__blob{font-size:28px;font-weight:700;letter-spacing:2px;color:var(--color-text-heading);margin:24px 0 12px}.mockRound__tagline{font-size:14px;color:var(--color-text-secondary);max-width:280px;line-height:1.5}.mockRound__startBtn{padding:14px 48px;border-radius:10px;border:none;background:var(--color-btn-primary-bg);color:#fff;font-size:16px;font-weight:700;cursor:pointer;touch-action:manipulation;margin-top:32px}.mockRound__flash{align-items:center;justify-content:center;background:#00c80014;animation:mockFlashIn .3s ease-out}.mockRound__flashText{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:22px;font-weight:700;color:var(--color-success);letter-spacing:2px}@keyframes mockFlashIn{0%{opacity:0}to{opacity:1}}.mockRound__grid{padding:8px 12px}.mockRound__kbWrap{margin-top:auto;padding:8px 4px}.mockRound__requirements{display:flex;gap:8px;justify-content:center;padding:8px 0}.mockRound__reqBadge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 10px;border:1px solid var(--color-border-glyph);border-radius:8px;font-size:13px;color:var(--color-text-faint)}.mockRound__reqMet{border-color:var(--color-success);color:var(--color-success);background:#00a00014}.mockRound__reqCount{font-size:11px;opacity:.8}.mockRound__unlockPrompt{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 16px}.mockRound__readyBadge{padding:6px 16px;border-radius:8px;background:#00a0001a;border:1px solid var(--color-success);color:var(--color-success);font-size:14px;font-weight:700}.mockRound__unlockBtn{padding:12px 36px;border-radius:10px;border:none;background:var(--color-btn-primary-bg);color:#fff;font-size:16px;font-weight:700;cursor:pointer;touch-action:manipulation;animation:guidedPulse 1.2s ease-in-out infinite}.mockRound__hint{font-size:13px;color:var(--color-text-secondary)}.mockRound__solveArea{flex:1;display:flex;flex-direction:column;padding:16px 12px}.mockRound__decompressor{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--color-border-glyph);border-radius:10px;background:var(--color-bg-card)}.mockRound__blobLabel{font-size:11px;color:var(--color-text-faint);letter-spacing:.5px}.mockRound__blobText{font-size:20px;font-weight:700;color:var(--color-text-heading);letter-spacing:1px}.mockRound__draftArea{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border-glyph)}.mockRound__draftLabel{font-size:11px;color:var(--color-text-faint);letter-spacing:.5px;margin-bottom:4px}.mockRound__draftText{font-size:18px;color:var(--color-text-heading);min-height:28px}.mockRound__placeholder{color:var(--color-text-placeholder)}.mockRound__cursor{color:var(--color-btn-primary-bg);animation:cursorBlink 1s step-end infinite}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.mockRound__sysMsg{font-size:12px;color:var(--color-text-secondary);text-align:center;padding:4px}.blobReminder{display:none;align-items:center;gap:6px;padding:8px 12px;background:var(--color-bg-card);border-bottom:1px solid var(--color-border-glyph)}@media (max-width: 768px){.blobReminder{display:flex}}.blobReminder--ready{border-color:var(--color-success)}.blobReminder__label{font-size:11px;font-weight:700;color:var(--color-text-faint);letter-spacing:.5px}.blobReminder--ready .blobReminder__label{color:var(--color-success)}.blobReminder__text{font-size:16px;font-weight:700;color:var(--color-text-heading);letter-spacing:1px}.keycap--guided{animation:guidedPulse 1.2s ease-in-out infinite;box-shadow:0 0 8px #00c86480;border-color:var(--color-success)!important}@keyframes guidedPulse{0%,to{box-shadow:0 0 4px #00c8644d}50%{box-shadow:0 0 12px #00c864b3}}.day0Intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:var(--color-bg-overlay);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px}.day0Intro__card{text-align:center;max-width:340px}.day0Intro__icon{font-size:48px;color:var(--color-success);margin-bottom:12px}.day0Intro__title{font-size:22px;margin-bottom:12px;color:var(--color-text-heading)}.day0Intro__body{font-size:15px;line-height:1.5;color:var(--color-text-primary);margin-bottom:8px}.day0Intro__body--secondary{opacity:.75;margin-bottom:24px}.day0Intro__btn{background:var(--color-success);color:#fff;border:none;padding:14px 40px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;letter-spacing:1px}.day0Intro__btn:hover{filter:brightness(1.1)}.day0Complete{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:var(--color-bg-overlay);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px}.day0Complete__card{text-align:center;max-width:360px}.day0Complete__badge{display:inline-block;background:var(--color-success);color:#fff;padding:6px 18px;border-radius:20px;font-size:13px;font-weight:700;letter-spacing:2px;margin-bottom:16px}.day0Complete__title{font-size:24px;margin-bottom:12px;color:var(--color-text-heading)}.day0Complete__body{font-size:15px;line-height:1.5;color:var(--color-text-primary);margin-bottom:16px}.day0Complete__stats{display:flex;gap:16px;justify-content:center;font-size:13px;color:var(--color-text-faint);margin-bottom:16px}.day0Complete__ready{font-size:14px;color:var(--color-text-primary);opacity:.8;margin-bottom:24px}.day0Complete__btn{background:var(--color-success);color:#fff;border:none;padding:14px 40px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;letter-spacing:1px}.day0Complete__btn:hover{filter:brightness(1.1)}.confirmOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;background:#00000073;display:flex;align-items:center;justify-content:center;padding:24px}.confirmBox{background:var(--color-bg-confirm);border-radius:16px;padding:24px 22px 20px;max-width:320px;width:100%;box-shadow:0 8px 32px #0000002e;text-align:center}.confirmTitle{font-size:16px;font-weight:700;color:var(--color-text-heading);margin-bottom:10px;letter-spacing:1px}.confirmBody{font-size:14px;line-height:1.5;color:var(--color-text-secondary);margin-bottom:20px}.confirmActions{display:flex;gap:12px;justify-content:center}.confirmBtn{padding:10px 22px;border-radius:10px;font-size:13px;font-weight:700;letter-spacing:.5px;cursor:pointer;touch-action:manipulation;border:none;transition:opacity .15s}.confirmBtn:active{opacity:.75}.confirmBtnCancel{background:var(--color-bg-btn-cancel);color:var(--color-text-key-mobile)}.confirmBtnOk{background:var(--color-btn-primary-bg);color:#fff}.authModal{background:var(--color-bg-auth);border-radius:16px;padding:28px 24px 22px;max-width:340px;width:100%;box-shadow:0 8px 32px #0000002e;text-align:center;display:flex;flex-direction:column;gap:10px}.authTitle{font-size:16px;font-weight:700;color:var(--color-text-heading);letter-spacing:1.5px;margin-bottom:2px}.authSubtitle{font-size:13px;color:var(--color-text-faint);margin:0 0 6px}.authProviderBtn{width:100%;padding:11px 16px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;touch-action:manipulation;border:1.5px solid var(--color-auth-divider-line);background:var(--color-bg-auth);color:var(--color-text-key-mobile);transition:background .15s,border-color .15s;display:flex;align-items:center;justify-content:center;gap:10px}.authProviderIcon{width:25px;height:25px;flex-shrink:0}.authProviderBtn:active{background:var(--color-bg-input)}.authGoogle{border-color:#4285f4;color:#4285f4}.authFacebook{border-color:#1877f2;color:#1877f2}.authApple{border-color:var(--color-text-unfulfilled);color:var(--color-text-unfulfilled)}.authEmail{border-color:var(--color-border-help);color:var(--color-text-secondary)}.authDivider{display:flex;align-items:center;gap:12px;margin:4px 0;color:var(--color-auth-divider);font-size:12px}.authDivider:before,.authDivider:after{content:"";flex:1;height:1px;background:var(--color-auth-divider-line)}.authInput{width:100%;padding:10px 14px;border-radius:8px;border:1.5px solid var(--color-auth-input-border);font-size:14px;color:var(--color-text-key-mobile);background:var(--color-auth-input-bg);outline:none;box-sizing:border-box;transition:border-color .15s}.authInput:focus{border-color:var(--color-text-heading)}.authSubmitBtn{width:100%;padding:12px;border-radius:10px;border:none;background:var(--color-btn-primary-bg);color:#fff;font-size:14px;font-weight:700;letter-spacing:.5px;cursor:pointer;touch-action:manipulation}.authSubmitBtn:disabled{opacity:.5;cursor:default}.authError{font-size:12px;color:var(--color-error-bright);background:#d32f2f14;padding:8px 12px;border-radius:8px}.authToggleBtn{background:none;border:none;font-size:12px;color:var(--color-text-faint);cursor:pointer;padding:4px}.authToggleBtn strong{color:var(--color-text-heading);text-decoration:underline}.authBackBtn{background:none;border:none;font-size:12px;color:var(--color-text-disabled);cursor:pointer;padding:2px}.authCloseBtn{background:none;border:none;font-size:13px;color:var(--color-text-disabled);cursor:pointer;padding:6px;margin-top:4px}.subscribeBtnActive{background:var(--color-btn-primary-bg);color:#fff;border-color:var(--color-btn-primary-bg);width:34px;height:34px;min-width:unset;padding:0;border-radius:50%;font-size:15px;display:grid;place-items:center;letter-spacing:0}.coachHint{position:fixed;left:50%;transform:translate(-50%);max-width:340px;width:calc(100% - 32px);padding:10px 16px;background:var(--color-coach-bg);color:#fff;border-radius:10px;font-size:13px;line-height:1.4;z-index:200;box-shadow:0 4px 16px #00000040;cursor:pointer;animation:coachSlideIn .3s ease-out;text-align:center}.coachHint--top{top:calc(100px + var(--safe-top, 0px))}.coachHint--center{top:50%;transform:translate(-50%,-50%);animation-name:coachSlideInCenter}.coachHint--bottom{bottom:80px}.coachHintText{display:block}.coachHintDismiss{display:block;font-size:10px;opacity:.5;margin-top:4px}@keyframes coachSlideIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes coachSlideInCenter{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px))}to{opacity:1;transform:translate(-50%,-50%)}}.landingActions{display:flex;gap:12px;width:100%;justify-content:center}.landingBtn{padding:12px 28px;border-radius:10px;font-size:14px;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;letter-spacing:1px;cursor:pointer;touch-action:manipulation;border:none;transition:opacity .15s}.landingBtn:active{opacity:.75}.landingBtnBack{background:var(--color-bg-btn-cancel);color:var(--color-text-key-mobile)}.landingBtnNext{background:var(--color-btn-primary-bg);color:#fff}.landingBtnStart{background:var(--color-landing-start-bg);color:#fff;padding:14px 40px;font-size:16px}.landingSwipeHint{font-size:14px;letter-spacing:2px;color:var(--color-text-secondary);opacity:.6}.landingSkip{margin-top:16px;padding:6px 12px;background:none;border:none;color:var(--color-text-disabled);font-size:12px;cursor:pointer;text-decoration:underline;touch-action:manipulation}@media (max-width: 768px){.mobileText{display:inline}.desktopText{display:none}.mobileContainer{display:flex;flex-direction:column;height:100dvh;height:-webkit-fill-available;overflow:hidden;padding:0;margin:0;max-width:100%;padding-left:var(--safe-left);padding-right:var(--safe-right)}.desktopOnly{display:none!important}.topBar{display:flex;flex-shrink:0;padding-top:calc(8px + var(--safe-top));padding-left:calc(10px + var(--safe-left));padding-right:calc(10px + var(--safe-right));padding-bottom:8px;gap:8px;justify-content:space-between}.topBarLeft{display:flex;align-items:center;gap:10px}.mobileRequirements{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px;padding:8px 16px;background:transparent;width:100%;max-width:320px}.reqRow{display:flex;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.reqLabel{font-size:12px;color:var(--color-req-label);font-weight:700}.reqValue{font-size:16px;font-weight:700}.reqVowels{display:flex;flex-wrap:nowrap;gap:4px;justify-content:center}.reqVowel{display:flex;align-items:center;gap:2px;padding:3px 5px;border-radius:6px;border:1px solid;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px}.reqDgs{display:flex;align-items:center;gap:6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.reqDgsLabel{font-size:10px;font-weight:700;opacity:.8}.reqDgsValue{font-size:14px;font-weight:700}.messageStatus{margin-top:4px;padding:4px 0;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700;text-align:center;letter-spacing:.06em}.messageStatus.locked{color:#a0705a;text-shadow:0 1px 0 rgba(255,255,255,.35),0 -.5px 0 rgba(0,0,0,.12)}.messageStatus.ready{color:var(--color-success);text-shadow:0 1px 0 rgba(255,255,255,.35),0 -.5px 0 rgba(0,0,0,.1)}.messageStatus.pending{color:var(--color-text-unfulfilled);text-shadow:0 1px 0 rgba(255,255,255,.35),0 -.5px 0 rgba(0,0,0,.1)}html[data-theme=dark] .messageStatus.locked,html[data-theme=dark] .messageStatus.ready,html[data-theme=dark] .messageStatus.pending{text-shadow:0 1px 0 rgba(255,255,255,.06),0 -1px 0 rgba(0,0,0,.5)}html[data-theme=dark] .messageStatus.locked{color:#b08060}.localDate{font-size:11px;color:var(--color-local-date);margin-top:6px;letter-spacing:.3px}.offlineBadge{display:inline-flex;align-items:center;gap:5px;margin-top:4px;padding:2px 8px;font-size:10px;letter-spacing:.5px;color:var(--color-warning, #c08030);background:var(--color-warning-bg, rgba(192, 128, 48, .1));border-radius:4px}.offlineDot{width:6px;height:6px;border-radius:50%;background:var(--color-warning, #c08030);animation:offlinePulse 2s ease-in-out infinite}@keyframes offlinePulse{0%,to{opacity:1}50%{opacity:.3}}.gameArea{display:flex;flex:1;flex-direction:column;justify-content:flex-start;align-items:center;padding:8px;overflow:hidden;min-height:0}.vowelGrid{gap:6px}.gridWrap{gap:4px}.containerLetters{margin-top:6px}.reserveBadges{gap:3px}.vowelPlate .well{font-size:14px}.keyboardToggle{display:block;position:fixed;bottom:calc(16px + var(--safe-bottom));left:50%;transform:translate(-50%);z-index:100}.card{border-radius:6px;padding:8px}.gridRow{grid-template-columns:repeat(10,30px);gap:3px}.tile{width:30px;height:30px;font-size:13px}.keyGrid{gap:6px;margin-top:4px;width:100%;box-sizing:border-box;padding:0 4px}.keyRow{gap:5px;justify-content:center;flex-wrap:nowrap;width:100%;box-sizing:border-box}.keycap,.keyboardPanel .keycap{width:calc((100% - 45px)*.1);flex-shrink:0;flex-grow:0;height:50px;font-size:16px;border-radius:5px;padding:0;border:none;background:var(--color-bg-key-mobile);box-shadow:0 1px 0 var(--color-key-shadow);color:var(--color-text-key-mobile)}.keycap:active:not(:disabled),.keyboardPanel .keycap:active:not(:disabled){background:var(--color-btn-active-bg);transform:translateY(1px) scale(.97);opacity:.85}.keycap .keycapLabel{font-size:18px;line-height:1}.keycap .keycapBadge{font-size:9px}.keyCornerBL{right:3px;top:2px;font-size:9px}.keyCornerUR{left:3px;bottom:2px;font-size:9px}.keycap.wide,.keyWide,.keyboardPanel .keyWide{width:calc((100% - 45px) / 10 * 1.5)}.keyRowMiddle{padding-left:0}.keyboardPanel .keyGrid{gap:6px;margin-top:4px;width:100%;box-sizing:border-box;padding:0 4px}.keyboardPanel .keyRow{gap:5px;justify-content:center;flex-wrap:nowrap;width:100%;box-sizing:border-box}.keyboardPanel .keycap:disabled{background:var(--color-btn-active-bg);color:var(--color-text-disabled)}.keyboardPanel .keycap.stacked{background:var(--color-stacked-bg);border:1px solid var(--color-stacked-border)}.dgsDisplay{display:none}.spaceBar{flex:1;max-width:220px;height:42px;border-radius:6px;border:none;background:var(--color-bg-key-mobile);box-shadow:0 1px 0 var(--color-key-shadow)}.spaceBar:active:not(:disabled):not(.spaceBar--disabled){background:var(--color-btn-active-bg);transform:translateY(1px) scale(.97);opacity:.85}.spaceRow{margin-top:4px;gap:4px}.kbActionBtn{height:42px;padding:0 8px;font-size:10px;border-radius:6px;border:none;background:var(--color-bg-key-mobile);box-shadow:0 1px 0 var(--color-key-shadow)}.kbActionBtn:active:not(:disabled):not(.kbActionBtn--disabled){background:var(--color-btn-active-bg);transform:translateY(1px) scale(.97);opacity:.85}.kbSubmitBtn:not(:disabled):not(.kbActionBtn--disabled){background:var(--color-submit-bg);box-shadow:0 1px 0 var(--color-submit-border)}.keyboardOverlay{display:block}.keyboardPanel{display:block;position:fixed;bottom:0;left:0;right:0;max-height:50vh;padding-bottom:var(--safe-bottom);z-index:320;overflow:hidden;box-sizing:border-box}.keyboardPanelHeader{padding:6px 8px}.keyboardPanelHeader .btn{padding:2px 6px!important;font-size:11px!important}.keyboardPanelHeader .small{font-size:11px}.card .row .btn{padding:4px 8px;font-size:11px}.card .small{font-size:11px}.keyboardPanel .keyboardHeader{display:none}.modalOverlay{align-items:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 70px)}.modalContent{height:329px;max-height:487px;margin-bottom:0;overflow:hidden}.editableInput{padding:12px;white-space:pre-wrap;word-break:break-word;-webkit-user-select:none;user-select:none}.blinkingCursor{display:inline-block;width:0;height:1em;border-left:2px solid var(--color-cursor);animation:blink 1s step-end infinite;vertical-align:text-bottom;margin:0 -1px}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.bottomToggles{position:fixed;bottom:calc(16px + var(--safe-bottom));left:50%;transform:translate(-50%);display:flex!important;gap:10px;z-index:100}.bottomToggles .keyboardToggle{position:static;transform:none;display:flex!important}.storeBadgeLink{display:block;position:fixed;bottom:calc(16px + var(--safe-bottom));left:16px;z-index:100}.storeBadge{height:28px;width:auto;opacity:.7;transition:opacity .2s}.storeBadge:hover{opacity:1}}@media (max-width: 380px){.gridRow{grid-template-columns:repeat(10,26px);gap:2px}.tile{width:26px;height:26px;font-size:11px}.keycap,.keyboardPanel .keycap{width:calc((100% - 36px)*.1);height:46px;font-size:14px}.keycap .keycapLabel{font-size:16px}.keyCornerBL{right:2px;top:2px;font-size:8px}.keyCornerUR{left:2px;bottom:2px;font-size:8px}.keycap.wide,.keyWide,.keyboardPanel .keyWide{width:calc((100% - 36px) / 10 * 1.5)}.keyboardPanel .keyRow,.keyRow{gap:4px}.spaceBar{max-width:180px;height:38px}.kbActionBtn{height:38px;padding:0 6px;font-size:9px}}
