@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(./nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(./nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(./nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(./nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(./nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(./nunito-latin-400-normal-DKg4f3fz.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-ext-600-normal-CWPPjBOD.woff2)format("woff2"),url(./nunito-cyrillic-ext-600-normal-vnfu4DTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-cyrillic-600-normal-DJGQ2h05.woff2)format("woff2"),url(./nunito-cyrillic-600-normal-BUjmtIuu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-vietnamese-600-normal-BY8O6Cug.woff2)format("woff2"),url(./nunito-vietnamese-600-normal-DO1RqFw5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-ext-600-normal-Dd9Zuxh1.woff2)format("woff2"),url(./nunito-latin-ext-600-normal-BKUpuB78.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(./nunito-latin-600-normal-Br8yIETf.woff2)format("woff2"),url(./nunito-latin-600-normal-Cd0eNu1l.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(./nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(./nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(./nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(./nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(./nunito-latin-700-normal-OcDqTBcA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(./nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(./nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(./nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(./nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(./nunito-latin-800-normal-D-J0wlBY.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--navy:#122d4b;--cream:#fdf8ed;--peach:#f79874;--apricot:#db835b;--sand:#efe4cc;--slate:#4a5a6e;--correct:#3e8f6e;--present:#e0b04a;--absent:#4a5a6e;--tap:44px;--pad:14px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html,body{background:var(--cream);min-height:100%;color:var(--navy);margin:0;font-family:Nunito,system-ui,sans-serif}body{-webkit-font-smoothing:antialiased;overflow-x:hidden}button{cursor:pointer;font-family:inherit}#app{width:min(430px,100%);min-height:100dvh;padding:8px var(--pad) 12px;flex-direction:column;gap:8px;margin:0 auto;display:flex}.header{align-items:center;gap:10px;min-height:52px;display:flex}.brand{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.brand-icon{border-radius:10px;flex-shrink:0;width:44px;height:44px}.brand-text{min-width:0}.brand-text h1{letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:800;line-height:1.1}.brand-text p{color:var(--peach);white-space:nowrap;margin:0;font-size:.78rem;font-weight:700}.header-actions{flex-shrink:0;gap:6px;display:flex}.icon-btn{min-width:var(--tap);min-height:var(--tap);border:2px solid var(--navy);background:var(--cream);color:var(--navy);border-radius:999px;padding:0 10px;font-size:.95rem;font-weight:800}.icon-btn:hover{background:var(--sand)}.banner{background:var(--sand);color:var(--slate);text-align:center;border-radius:10px;padding:6px 10px;font-size:.8rem;font-weight:700}.sentence,.finish-sentence{text-align:center;margin:0;font-size:1.02rem;font-weight:700;line-height:1.45}.blanks-only{flex-wrap:wrap;justify-content:center;gap:8px 10px;margin:2px 0 4px;display:flex}.blank{border-bottom:3px solid var(--navy);letter-spacing:.08em;white-space:nowrap;min-width:3.2em;padding:0 2px 2px;font-weight:800;display:inline-block}.blank.today{border-bottom-color:var(--peach);color:var(--apricot)}.blank.filled{letter-spacing:.04em;border-bottom-color:var(--navy)}.blank.missed{color:var(--slate);border-bottom-style:dotted}.blank.highlight{background:var(--peach);color:var(--navy);border-bottom-color:var(--peach);border-radius:6px;padding:0 6px}.week-strip{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.day-chip{border:2px solid var(--navy);background:var(--cream);min-height:44px;color:var(--navy);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:0;font-size:.72rem;font-weight:800;line-height:1.1;display:flex}.day-chip.today{border-color:var(--peach);box-shadow:0 0 0 2px var(--peach)}.day-chip.won{background:var(--correct);color:#fff;border-color:var(--correct)}.day-chip.lost{background:var(--slate);color:var(--cream);border-color:var(--slate)}.day-chip.locked{opacity:.45;cursor:not-allowed;background:0 0;border-style:dashed}.day-chip.open{background:var(--sand)}.meta{color:var(--slate);justify-content:space-between;align-items:baseline;font-size:.88rem;font-weight:800;display:flex}.meta strong{color:var(--navy)}.board{perspective:600px;flex:none;grid-template-rows:repeat(6,1fr);gap:5px;width:min(100%,300px);height:min(38dvh,300px);margin:4px auto 8px;display:grid;overflow:hidden}.row{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.tile{border:2px solid var(--sand);background:var(--cream);color:var(--navy);text-transform:uppercase;border-radius:8px;justify-content:center;align-items:center;min-height:0;font-size:clamp(1rem,4vw,1.45rem);font-weight:800;display:flex}.tile.filled{border-color:var(--navy)}.tile.correct{background:var(--correct);border-color:var(--correct);color:#fff}.tile.present{background:var(--present);border-color:var(--present);color:var(--navy)}.tile.absent{background:var(--absent);border-color:var(--absent);color:var(--cream)}.tile.flip,.tile.reveal{animation:tile-flip .45s ease var(--d,0s) both}.board.won .tile.reveal{animation:tile-flip .45s ease var(--d,0s) both, tile-bounce .55s cubic-bezier(.2, 1.4, .3, 1) calc(var(--d,0s) + .45s) both}.board.lost .tile.reveal{animation:tile-flip .45s ease var(--d,0s) both, tile-sigh .7s ease calc(var(--d,0s) + .45s) both}@keyframes tile-flip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}to{transform:rotateX(0)}}@keyframes tile-bounce{0%,to{transform:translateY(0)scale(1)}40%{transform:translateY(-14px)scale(1.06)}70%{transform:translateY(4px)scale(.98)}}@keyframes tile-sigh{0%,to{filter:none;transform:translateY(0)}40%{filter:saturate(.7);transform:translateY(4px)}}.keyboard{gap:6px;margin-top:auto;display:grid}.kb-row{justify-content:center;gap:4px;display:flex}.key{background:var(--sand);min-width:28px;max-width:42px;min-height:46px;color:var(--navy);touch-action:manipulation;border:0;border-radius:8px;flex:1 1 0;font-size:.85rem;font-weight:800}.key.wide{flex:1.6 1 0;max-width:72px;font-size:.72rem}.key.correct{background:var(--correct);color:#fff}.key.present{background:var(--present);color:var(--navy)}.key.absent{background:var(--absent);color:var(--cream)}.toast-slot{text-align:center;min-height:24px}.toast{background:var(--navy);color:var(--cream);border-radius:999px;padding:6px 12px;font-size:.9rem;font-weight:800;display:inline-block}.lock-note,.done-note{text-align:center;color:var(--navy);margin:0 0 4px;font-size:1.05rem;font-weight:800}.wrap{background:var(--sand);border-radius:16px;padding:14px}.wrap h2{margin:0 0 8px;font-size:1.2rem}.wrap p{margin:0 0 10px;line-height:1.4}.course-link{color:var(--navy);border-bottom:2px solid var(--peach);font-weight:800;text-decoration:none}.btn{min-height:var(--tap);border-radius:999px;width:100%;padding:0 14px;font-weight:800}.btn-peach{background:var(--peach);border:2px solid var(--peach);color:var(--navy)}.btn-peach:hover{background:var(--apricot);border-color:var(--apricot)}.btn-navy{background:var(--navy);border:2px solid var(--navy);color:var(--cream)}.btn-ghost{background:var(--cream);border:2px solid var(--navy);color:var(--navy)}.share-row,.email-row{flex-direction:column;gap:8px;margin-top:8px;display:flex}.email-card input{min-height:var(--tap);border:2px solid var(--navy);background:var(--cream);color:var(--navy);border-radius:12px;padding:0 12px;font-size:16px}.todo{color:var(--slate);margin:4px 0 0;font-size:.78rem;font-weight:600}.visually-hidden{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.row.shake{animation:.4s shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.footer{text-align:center;color:var(--slate);margin-top:4px;font-size:.75rem;font-weight:600}.overlay{z-index:30;background:#122d4b80;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.card{background:var(--cream);border-radius:20px;width:min(430px,100%);padding:20px 18px 16px}.card h2{margin:0 0 8px}.card p,.card li{line-height:1.45}.example-row{grid-template-columns:repeat(5,1fr);gap:6px;margin:10px 0;display:grid}.dots{justify-content:center;gap:6px;margin:8px 0 12px;display:flex}.dots i{background:var(--sand);border-radius:50%;width:8px;height:8px}.dots i.on{background:var(--navy)}:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.fx-overlay{background:var(--navy);color:var(--cream);z-index:50;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:fixed;inset:0}.fx-overlay.leave{opacity:0;transition:opacity .18s}.opener-tiles{gap:8px;display:flex}.opener-tiles .flip{background:var(--peach);width:52px;height:52px;color:var(--navy);border-radius:10px;place-items:center;font-size:1.6rem;font-weight:800;animation:.5s backwards flipin;display:grid}.opener-tiles .flip:nth-child(2){animation-delay:80ms}.opener-tiles .flip:nth-child(3){animation-delay:.16s}.opener-tiles .flip:nth-child(4){animation-delay:.24s}.opener-tiles .seven{background:var(--cream);animation-delay:.36s}@keyframes flipin{0%{opacity:0;transform:rotateX(90deg)}}.opener-sub{letter-spacing:.04em;font-weight:800}.opener-logo{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.opener-logo.pop{animation:.6s pop}.opener-logo strong{font-size:2rem;font-weight:800}.opener-logo span{color:var(--peach);font-weight:700}@keyframes pop{0%{opacity:0;transform:scale(.6)}70%{transform:scale(1.06)}to{transform:scale(1)}}.blanks-line{gap:10px;display:flex}.blanks-line span{border-bottom:4px solid var(--cream);width:36px;animation:.8s both grow;display:inline-block}.blanks-line span.today{border-bottom-color:var(--peach)}.opener-keys{gap:4px;display:flex}.opener-keys i{background:var(--sand);color:var(--navy);border-radius:6px;place-items:center;width:26px;height:36px;font-style:normal;font-weight:800;animation:.7s both rise;display:grid}.opener-keys i:nth-child(odd){animation-delay:80ms}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes grow{0%{transform:scaleX(0)}}.fx-canvas{pointer-events:none;z-index:40;position:fixed;inset:0}.moment{z-index:46;cursor:pointer;background:#122d4bb8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.moment-phrase{letter-spacing:-.04em;text-align:center;max-width:12ch;color:var(--cream);background:var(--navy);border:4px solid var(--peach);border-radius:24px;margin:0;padding:22px 26px;font-size:clamp(2.6rem,12vw,4.4rem);font-weight:800;line-height:1.05;animation:.5s cubic-bezier(.2,1.3,.3,1) moment-pop}.moment.lose .moment-phrase{border-color:var(--sand);max-width:14ch;font-size:clamp(1.8rem,8vw,2.8rem);animation:.55s moment-fade}@keyframes moment-pop{0%{transform:scale(.7)}70%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes moment-fade{0%{transform:translateY(12px)}to{transform:translateY(0)}}.finish-page{z-index:48;background:var(--cream);padding:12px 16px 36px;position:fixed;inset:0;overflow-y:auto}.finish-inner{text-align:center;flex-direction:column;align-items:center;gap:8px;width:min(430px,100%);margin:0 auto;display:flex}.finish-close{width:var(--tap);height:var(--tap);color:var(--navy);background:0 0;border:0;align-self:flex-end;font-size:2rem;font-weight:700;line-height:1;position:sticky;top:4px}.finish-lockup{width:min(260px,80%);height:auto;margin:4px 0 8px}.finish-page h1{letter-spacing:-.03em;margin:0;font-size:clamp(1.6rem,6vw,2.1rem);font-weight:800;line-height:1.15}.finish-word{letter-spacing:.14em;color:var(--navy);margin:0;font-size:clamp(2.4rem,10vw,3.4rem);font-weight:800}.finish-meaning{color:var(--slate);margin:0;font-weight:700;line-height:1.4}.finish-stats{grid-template-columns:repeat(3,1fr);gap:8px;width:100%;display:grid}.finish-stats div{background:var(--sand);border-radius:14px;padding:10px 6px}.finish-stats span{color:var(--slate);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:800;display:block}.finish-stats strong{font-size:1.45rem;font-weight:800}.finish-stats small{color:var(--slate);font-size:.85rem}.countdown{color:var(--slate);margin:0;font-weight:800}.countdown strong{color:var(--navy);font-variant-numeric:tabular-nums}.finish-lesson{color:var(--slate);margin:0;font-size:.88rem;font-weight:600;line-height:1.4}.finish-page .share-row,.finish-page .email-card,.finish-page .course-link{width:100%}.finish-media:empty{display:none}.finish-media{justify-content:center;width:100%;display:flex}.media-wrap{aspect-ratio:1;background:var(--navy);border-radius:18px;width:min(220px,64vw);position:relative;overflow:hidden;box-shadow:0 8px 24px #122d4b29}.media-wrap video{object-fit:contain;background:var(--navy);width:100%;height:100%;display:block}.media-fullscreen{z-index:55;aspect-ratio:auto;width:auto;box-shadow:none;border-radius:0;justify-content:center;align-items:center;padding:56px 20px 24px;display:flex;position:fixed;inset:0}.media-fullscreen video{aspect-ratio:1;object-fit:contain;border-radius:20px;width:min(84vw,360px);height:auto;max-height:min(72dvh,360px)}.media-skip{background:var(--cream);min-height:44px;color:var(--navy);z-index:1;border:0;border-radius:999px;padding:0 14px;font-weight:800;position:absolute;top:12px;right:12px}@media (prefers-reduced-motion:reduce){.tile.flip,.tile.reveal,.board.won .tile.reveal,.board.lost .tile.reveal,.opener-tiles .flip,.opener-logo.pop,.opener-keys i,.blanks-line span,.moment-phrase{animation:none}}@media (width>=800px){#app{padding-top:20px}.brand-text h1{font-size:1.6rem}}
