@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAn4ABMAAAAAEwQAAAmOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGjQbgnQcLj9IVkFSgQEGYD9TVEFUgQIAgQovahEICok0h0ULIAAwhzoBNgIkAzwEIAWHJgeBDgwHG6QQUdRKTmoBFD8K42bniObKrG3LZFcMWZzFmrjTFhQ6TVTqPJcInrfrvzq3b2PGn1wwMiNYGTy9ViREYARlL1zAGcPdPqBt3gNWrfKthv4xnM+b9caw+wmjgEUVRjHXhS6jgCK6zf5HiWQacJpGdAgdrbV6g/Rf1BfxRqZVQnrxRVWSJb6RLFnyu0elilmjeoSQCKnxsmwLaddUMjnksriSYuuPl06EAl7KfAiWQjCUETz0zNZ3EII94CDQtzkMfZ/9IkkY8tZRZTDky5ZVwBAM+GYpdd4ZVAWYImnLkiTg48l79gGx3D+VBtLeyg8u7bJAd4uo0pFuQBFysE9C95l0W4Fkiao6GfrDbu77lVU7wk9cV3uqOsXmQiMkhVKl1ugjzUAJBSIkkVWHijkpkVSyUFsgVBuJMA0N+ZnXtyUv5yMigGdfQRmwL1AAjQ3YXG6iIFNSUdPQo8+AISPGAltBMDQRAtyf4ZspLlZkpyOVoMZPvFGWzvk8p5SUC/NWPMj6T2/Yas2EdlON5GkfdkeFwVGjta825H89NIenlLWAPAp5h1KDtRhCaAQWMsFKtEvOKpIhgLHlXPARokkgEGEOAkqxJRQpKYq4ezahIiLHP6hZpqMbV0pUF2vdvEimLEQ/iIUYLgYWs0VXGVlLTOPdaPmFfCC/XrtzqVo1ez7vz6+Kd2+7o11ZJ+4MreLbB5BKVGxobAq4jZYalZ5aX2CKJiwUuc9GNJyi4M8bGyKcdjSRrG4JohdF8buJfmQefbYYREnMFsOoiNliFDVxmRgL0XUmUMLqzW0A4gCQAhWGYCQpFNukwXhIkPMsbRI19ewtw8Cp2Wj/Ro5cM2OTAbJAvZ/L4opBXb9+UHscYuOKM/W8isgwN26Exexjizmfnlp9dE3hOSqdZ/F5QqbckIlPb+oKfXxd6hftJ7Sm/uyPYpONza84CRlMNk/uhOrLpyf53982++zRkXNu3g3VF8qFbx1+7fbHZ9DrB3VXWNSmhnT2vrwS1+1Z+kHGBaZIhnnvuLBTNDeA340D1DWu5/jEa9pVfl6+Jij+yo3EELNixXCLjr173Q5eDP7Y7/L4iQFHbjpaJLFoP4cCsYP6sAPL7gMHNg53yYjqxqTDrYqLDl5DzW/eTLjYxCvucprjI3yl2ykKowKUC2Ox2FJLFo6Fa1HBWLC2jMCIIBEmklkYhmkpmBhTm/LCvJAH5oGcMKcgFEP1xUdho8ANPa6RFD99/PN60fjj9eXy2Eex4B5MpmRapXidzFk1p4uLk3+hn6jAP9ovJcXPPwk8o/0ltizbdbnTprvx4PSxT0VZ3Xc772aN7RflgbXRYwc3hLNO+k878nxGwfuVM8m8Gs7WEoVGWLHwSpx4vNSHBCMNqJ4m15Kp/TfHHVkQd++eY7PGN4W5byTs+6Ft8Ozvb/D60btv37de8ER0mS3P/0sLW84qGjEVkwztPzz06eGUWwKLwPb0D/WFd3vltl2aP276KpM0JNz6AfnAnZ5ADlF2zVyZ2OkxHSMxWPMnSZLbbDR3F1UjPVqp4d68da13F1YZujdWw7271iecO2l9+/4p47Oztjck355/75wFOI+VdGDqbNGs+ISgxg3iB2jb2r+b0CWsNLHIM4sdv8SDSFBP/Oromz6FNCWw2iMTxV0R8QLyBTkpe0j5+pSSJOOTB5Mck/gh3IopuNQnhKj02t3FL80gGbEh89SZcwTxcYt5cZT/nMnB3uXfPy8BSpVMBuRx+ZhACGzDBmwHsJRAjhotOnzuj2wDz3ug2wOUAY2NgZln9/TK/enG/oE4rO1wxvGUFMAxsZ0qNjRC7hl9d17e7imbgDt6uJXhUobDg7v3RX/yRCKxgMhfyiKcZfbpk0wmCcdQlIAOHeakXLvCNt++WfKiozNqSZxxJotn+c0a7DdPsx7DPYgKIDxwwYUZDg9aJbxocTjcwovr9WAsVV32mQoiiIOCHc60Oltst9qCQYuCqN1yHo0Kj60OgI2OqmiuBUWrNA0NDhYCDcdpmMrs1fZZ0xdTzMr1HdPtIHstYhqaPDDA5YxUDx7J4fJiisBSDI/L6G/bn34GNy8Q2g044ZTulAdFLb0tI6NNxfj3DzLjWiNGxje1pz7aXOcNV68lDPEd2SXl6VfBuwmHzdf1gxFy1HvA7pD8I2BnnmyGw852Cg5XbgIdEEGE5UCzen5jTlG6JCU5iajlxVcsXvbcS0SAcg1dcesWJLVK8+hYHOYQ+Pjy+EyVGXP0aPTFagrV9E03hCQvYx+g47KGq+1GsLj8uBIyihNw33YUe8PNC4BOJ3Lm1AglLV3nCuvUdIP+v15tVGbWIwgxLVpPkfpthCGpTKG+oA/DQfsKKvxhScqaN6FuElAUtTKv2UYgOmQegsN/n7njHUju8wM4VTcm+Q8xfX9SFwjTzdVqu95UOWSIGOabH8OGBEba//8Yxl3GcPdP/dMBOoSX/0z5SZmBoLbaPs+9asaMpb36yknKaw6FqWZa6A5vDa02mhkOba1q6KtLV208xrkwmW5C4VD6n2fvRjADy2qDYYnNy+H10Fq0LMbNzS863gkO7iQ8eC48/Ny5m59tOcEso3u7Qg3yrqDL6eKXwJAuWnhylfbWrRObe66rzX59+XDtzusnL66dI/86ArmtLlzED860Ef3bFPV78OX/zFTA11fcBn2Vntb7qiGBSgLBHyuv/uEaqqoTgSpOyjlzh86me1Vriv7i9rLPLvtghWmSnblRbAsBJL/4dScSQTBxOivHMO5QvBBY0iheJvfwWLxLOGzYKZyM4zVc2Cll46zEpeUV4MqGEWZj22SdOxhGAjgs9AEnfT+RoiMfcDb0GS5NncKVxju4Nt/mRk13O9Gz3FLct5oCD6wkwUNrCfHIUg6SMf8LwQGyVaBUqpLPW5BaMpRshEpl8nS1qw5dgnzlik8QBXmdy5UrIH74heTKZKMSilQso4hsRiGraQZRzxpNGqlEJMsXuAU7GlcR8mWSykUpVkWGyIf0a8v4qEQp5CtGsMiZa+4ESYQy+WilCiguHzxMXO54ogShooTV2bj2z1zL6DYSoImoQ8lFUWxMLBNQQgLkV2tHYgUoIbkuREz+fJHKxxWBcnvu3KQppFCxLkguB1NyVSp/TknRvNwYlCdbblWu3ze6owHdWluhE5tgQ6ej2SV65CijijoaRfSiH4Nqz1OpfEW+WeI/oU0ly60zkV9YzOQSYtZVEGYmrysTZAJkY4qZtIBD9/LYTIK7Nww3vMiYBwA=)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");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}.echo-practice{color:#2e4d43;background:#f1f4eb;border:1px solid #dce4d8;border-radius:17px;margin:16px 0}.echo-practice>summary{cursor:pointer;align-items:center;gap:10px;min-height:58px;padding:10px 13px;list-style:none;display:flex}.echo-practice>summary::-webkit-details-marker{display:none}.echo-practice>summary>span{flex:1;min-width:0}.echo-practice>summary strong{font-size:14px;display:block}.echo-practice>summary small{color:#657266;margin-top:3px;font-size:11px;line-height:1.45;display:block}.echo-practice .echo-chevron{flex:none}.echo-practice[open] .echo-chevron{transform:rotate(180deg)}.echo-body{padding:0 13px 13px}.echo-phrase{gap:4px;padding:4px 0 12px;display:grid}.echo-phrase>strong{overflow-wrap:anywhere;font-size:19px;line-height:1.5}.echo-phrase>span{color:#68756a;font-size:13px}.echo-practice .echo-actions{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.echo-practice fieldset{border:0;min-width:0;margin:0;padding:0;display:flex}.echo-practice .echo-model,.echo-practice .echo-record,.echo-practice .echo-recognize{color:#2e594b;background:#fffefb;border:1px solid #d5dfd0;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 12px;font-size:12px;font-weight:650;line-height:1.4;display:inline-flex}.echo-practice .echo-record{flex:1}.echo-practice button:disabled,.echo-practice fieldset:disabled{opacity:.55}.echo-practice .echo-playback{gap:8px;margin-top:13px;display:grid}.echo-practice .echo-playback>label{font-size:12px;font-weight:650}.echo-practice audio{width:100%;max-width:100%;height:42px;display:block}.echo-practice .echo-recognize{justify-self:start}.echo-practice .echo-recording{color:#68756a;align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.echo-practice .echo-pulse{fill:#527b63;flex:none}.echo-practice .echo-cancel{color:#5d7064;background:0 0;border:0;align-items:center;gap:5px;min-height:44px;padding:8px 0;font-size:12px;display:inline-flex}.echo-practice .echo-privacy{color:#71806f;margin:12px 0 0;font-size:11px;line-height:1.7}.echo-practice .echo-notice,.echo-practice .echo-error{margin:10px 0;font-size:12px;line-height:1.7}.echo-practice .echo-error{color:#915634}.echo-practice .echo-comparison{background:#fffefb;border-radius:13px;margin-top:13px;padding:12px}.echo-practice .echo-comparison>strong{font-size:13px}.echo-practice .echo-comparison p{margin:8px 0 0;font-size:12px;line-height:1.75}.echo-practice .echo-comparison .echo-limitation{color:#798274;font-size:11px}.echo-practice .echo-transcript{overflow-wrap:anywhere}.echo-practice .echo-transcript>span:first-child{color:#74806f}.echo-practice .echo-word-diff{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.echo-practice .echo-word-diff>span{color:#725e3f;overflow-wrap:anywhere;background:#f5ecdb;border-radius:7px;flex-direction:column;gap:3px;max-width:100%;padding:5px 7px;display:flex}.echo-practice .echo-word-diff b{font-size:12px;font-weight:650}.echo-practice .echo-word-diff small{font-size:10px;line-height:1.4}.echo-practice .echo-word-diff .echo-word-match{color:#527354;background:#eaf1e6}.echo-practice .echo-next{color:#426f59;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;margin-top:5px;padding:9px 0 0;font-size:12px;font-weight:650;display:flex}.echo-practice .echo-next small{color:#7b8b77;margin-left:8px;font-weight:450}@media (prefers-reduced-motion:no-preference){.echo-practice .echo-chevron{transition:transform .22s}.echo-practice .echo-pulse rect{transform-origin:50%;transform-box:fill-box;animation:1.2s ease-in-out infinite alternate echo-record-pulse}.echo-practice .echo-pulse rect:nth-child(2){animation-delay:-300ms}.echo-practice .echo-pulse rect:nth-child(3){animation-delay:-600ms}.echo-practice .echo-pulse rect:nth-child(4){animation-delay:-900ms}}@keyframes echo-record-pulse{0%{opacity:.65;transform:scaleY(.65)}to{opacity:1;transform:scaleY(1)}}.word-match{--wm-ink:#31543f;--wm-line:#dfe5d7;width:100%;color:var(--wm-ink)}.word-match .wm-heading,.word-match .wm-growth,.word-match .wm-rounds{justify-content:space-between;align-items:center;gap:10px;display:flex}.word-match .wm-heading h3{margin:0;font-size:18px}.word-match .wm-eyebrow{color:#758069;font-size:11px;font-weight:650}.word-match .wm-growth{color:#66765b;font-variant-numeric:tabular-nums;flex-shrink:0;gap:0;font-size:12px}.word-match .wm-sprout{width:42px;height:42px;display:block;overflow:visible}.word-match .wm-sprout-plant{transform-origin:36px 58px;transform:scaleY(var(--wm-growth,1));transition:transform .42s cubic-bezier(.22,1,.36,1)}.word-match .wm-sprout-flower,.word-match .wm-sprout-sparkles{opacity:0;transition:opacity .3s}.word-match .wm-sprout-bloom .wm-sprout-flower,.word-match .wm-sprout-bloom .wm-sprout-sparkles{opacity:1}.word-match .wm-sprout-bloom .wm-sprout-sparkles{transform-origin:50%;animation:.7s ease-out both wm-sparkle}.word-match .wm-instruction{color:#69765f;margin:2px 0 6px;font-size:13px;line-height:1.5}.word-match .wm-rounds{color:#7b866e;margin-bottom:6px;font-size:11px}.word-match .wm-rounds>div{gap:4px;display:flex}.word-match .wm-rounds i{background:#e5e9de;border-radius:4px;width:17px;height:4px}.word-match .wm-rounds .wm-round-current{background:#b1c193}.word-match .wm-rounds .wm-round-done{background:#698b59}.word-match .wm-column-labels,.word-match .wm-row{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:10px;display:grid}.word-match .wm-column-labels{color:#7f8976;margin-bottom:4px;padding:0 8px;font-size:10px}.word-match .wm-board{gap:6px;display:grid}.word-match .wm-az-card,.word-match .wm-ru-card{border:1px solid var(--wm-line);background:#fffefa;border-radius:13px;min-width:0;min-height:60px;transition:background-color .18s,border-color .18s,box-shadow .18s}.word-match .wm-az-card{grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;display:grid}.word-match .wm-choice{text-align:center;overflow-wrap:anywhere;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:44px;padding:6px 8px;font-size:14px;font-weight:600;line-height:1.5;display:flex}.word-match .wm-ru-card{color:#68745e;font-weight:500}.word-match .wm-az-card .speak-wrap{justify-content:center;align-self:stretch;align-items:center;display:flex}.word-match .wm-listen.speak.icon-only{color:#7c906b;background:0 0;border-radius:10px;width:44px;min-width:44px;height:44px;padding:0}.word-match .wm-listen.speak.icon-only svg{width:17px;height:17px}.word-match .wm-selected{background:#f0f4e6;border-color:#789668;box-shadow:inset 0 0 0 1px #789668}.word-match .wm-try-again{background:#f8f0df;border-color:#d7bc85}.word-match .wm-matched,.word-match .wm-matched:disabled,.word-match .wm-matched>button:disabled{color:#648050;opacity:1;background:#edf2e3;border-color:#dce6cc}.word-match .wm-matched{animation:.32s cubic-bezier(.22,1,.36,1) both wm-found}.word-match .wm-check{color:#72945d;width:12px;height:12px;position:absolute;top:4px;left:5px}.word-match .wm-choice{position:relative}.word-match .wm-feedback{color:#748069;background:#f3f2ea;border-radius:12px;flex-direction:column;justify-content:center;gap:3px;min-height:96px;margin:12px 0 0;padding:10px 12px;font-size:12px;line-height:1.55;display:flex}.word-match .wm-feedback strong{color:#56704a;font-size:13px;font-weight:650}.word-match .wm-feedback-correct{background:#f0f4e8}.word-match .wm-actions{flex-direction:column;align-items:stretch;min-height:60px;padding-top:12px;display:flex}.word-match .wm-actions:has(.wm-text-button){min-height:104px}.word-match .wm-actions>.primary{margin-bottom:4px}.word-match .wm-actions>.wm-text-button{margin-top:auto}.word-match .wm-text-button{color:#76856a;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:9px;font-size:12px;line-height:1.5;display:inline-flex}.word-match.wm-finish{text-align:center;flex-direction:column;align-items:center;padding:20px 6px 6px;display:flex}.word-match.wm-finish>.wm-sprout{width:104px;height:104px;margin-bottom:12px}.word-match.wm-finish h3{margin:6px 0 10px}.word-match.wm-finish p{color:#748069;max-width:360px;margin-bottom:22px;font-size:14px;line-height:1.8}.word-match.wm-finish>.primary{width:100%}@keyframes wm-found{0%{transform:translateY(0)}45%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes wm-sparkle{0%{transform:scale(.8)}65%{transform:scale(1.08)}to{transform:scale(1)}}@media (width<=360px){.word-match .wm-sprout{width:38px;height:38px}.word-match .wm-az-card,.word-match .wm-ru-card{min-height:56px}.word-match .wm-choice{padding:5px;font-size:12px;line-height:1.4}.word-match .wm-column-labels,.word-match .wm-row{gap:7px}.word-match .wm-instruction{font-size:12px}.word-match .wm-feedback{min-height:110px}}@media (prefers-reduced-motion:reduce){.word-match *,.word-match :before,.word-match :after{transition:none!important;animation:none!important}}.tap-instruction{color:var(--muted);margin:0 0 12px;font-size:13px;line-height:1.55}.tap-answer .word-bank,.tap-answer .sentence-slots{flex-wrap:wrap;gap:8px}.tap-answer .word-tile{white-space:normal;text-align:left;overflow-wrap:anywhere;min-width:44px;max-width:100%;min-height:44px;padding:10px 14px;line-height:1.5}.tap-answer .sentence-slots{align-content:flex-start;min-height:70px;margin-bottom:14px;padding:12px}.tap-answer .tap-selected{animation:.16s ease-out tap-arrive}.tap-options button{white-space:normal;overflow-wrap:anywhere;min-height:48px;line-height:1.5}.tap-game-label{color:var(--green);align-items:center;gap:8px;margin:10px 0;font-size:12px;font-weight:700;display:inline-flex}.tap-game-label:before{content:"";background:currentColor;border-radius:3px;width:9px;height:9px;transform:rotate(45deg)}.tap-cue{background:#f0f2e7;border-left:3px solid #a4b88d;border-radius:0 12px 12px 0;margin:12px 0;padding:12px 16px;line-height:1.7}@keyframes tap-arrive{0%{opacity:.3;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tap-answer .tap-selected{animation:none}}.word-picture{--picture-size:54px;width:var(--picture-size);height:var(--picture-size);flex:0 0 var(--picture-size);vertical-align:middle;isolation:isolate;color:#376654;contain:layout paint;background:#fbfaf5;border-radius:18px;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.picture-art{transform-origin:50% 80%;width:100%;height:100%;display:block}.picture-art>svg{width:100%;height:100%;display:block;overflow:hidden}.picture-tile{--picture-size:78px;border-radius:21px}.picture-question{--picture-size:88px;border-radius:24px}.picture-large{--picture-size:174px;border-radius:32px;flex-shrink:0;margin:4px auto 14px}.picture-negative{color:#bc5b49;background:#fffaf5;border-radius:50%;width:25px;height:25px;padding:3px;position:absolute;bottom:2px;right:2px;box-shadow:0 1px 5px #374b3420}.picture-large .picture-negative{width:40px;height:40px;padding:6px;bottom:10px;right:10px}.picture-negative svg{width:100%;height:100%;display:block}@media (prefers-reduced-motion:no-preference){.picture-alive .picture-art{animation:4.8s cubic-bezier(.45,0,.55,1) 2 picture-breathe}.picture-alive[data-visual=food-0] .picture-art,.picture-alive[data-visual=food-1] .picture-art{animation-name:picture-warm}}@keyframes picture-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes picture-warm{0%,to{transform:rotate(0)}50%{transform:rotate(1.2deg)}}@media (width<=600px){.word-picture{--picture-size:48px}.picture-tile{--picture-size:66px}.picture-question{--picture-size:70px}.picture-large{--picture-size:152px;margin:0 auto 10px}.lesson-word-list>div{gap:12px}.dictionary-card-top{align-items:flex-start}}@media (height<=700px){.flash-card .picture-large{--picture-size:120px}}:root{color:#283d35;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green:#215b4d;--muted:#83887e;--border:#e7e8df;--mint:#e8eedb;--peach:#f8e5d9;--lavender:#eae6f3;--butter:#f5edcf;background:#f8f7f2;font-family:Manrope Variable,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:default;opacity:.55}a{color:var(--green)}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #8dab65}input:focus,select:focus{outline-offset:2px;outline:2px solid #7d9e6c}button{touch-action:manipulation}svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1{letter-spacing:-1.3px;font-size:34px;font-weight:750;line-height:1.28}h2{letter-spacing:-.6px;font-size:23px;line-height:1.35}h3{letter-spacing:-.3px;font-size:17px}p{line-height:1.65}small{font-size:12px}.primary,.secondary{border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:13px 23px;font-size:14px;font-weight:750;transition:background .15s,transform .15s;display:inline-flex}.primary{color:#fff;background:var(--green)}.primary:hover:not(:disabled){background:#164839;transform:translateY(-1px)}.secondary{border:1px solid var(--border);background:#fff}.secondary:hover{background:#f0f3e8}.compact{padding:12px 17px}.text-button{color:var(--green);justify-content:center;align-items:center;gap:8px;padding:7px 0;font-size:13px;font-weight:700;display:inline-flex}.icon-btn{border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.icon-btn:hover{background:#eff1e9}.eyebrow{letter-spacing:1.7px;color:#6e7d6b;font-size:10px;font-weight:800;line-height:1.6;display:block}.muted,.note,.hint{color:#7a8276}.muted{font-size:14px;line-height:1.7}.note,.hint{font-size:12px;line-height:1.7}.mint{background:var(--mint)}.peach{background:var(--peach)}.lavender{background:var(--lavender)}.butter{background:var(--butter)}.green{color:var(--green)}.danger{color:#a45343!important}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand{align-items:center;gap:10px;display:flex}.brand svg{width:40px;height:40px}.brand>span{letter-spacing:-2px;font-size:33px;font-weight:850}.brand-dot{color:#be7f53}.app-shell{min-height:100dvh;display:flex}.sidebar{border-right:1px solid var(--border);z-index:15;background:#fdfcf8;flex-direction:column;width:236px;padding:32px 22px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar .brand{padding-left:13px}.course-tag{border:1px solid var(--border);border-radius:13px;align-items:center;gap:12px;margin:33px 0 31px;padding:12px 10px;display:flex}.course-tag>span{font-size:25px}.course-tag strong{font-size:12px;display:block}.course-tag small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.sidebar nav{gap:9px;display:grid}.sidebar nav button{text-align:left;color:#7b8277;border-radius:12px;align-items:center;gap:14px;min-height:49px;padding:14px 17px;font-size:14px;font-weight:650;display:flex}.sidebar nav button.active{color:var(--green);background:#e9efdd}.sidebar nav button:hover{background:#eff1e7}.sidebar nav b{background:#d6e3bd;border-radius:6px;margin-left:auto;padding:2px 6px;font-size:11px}.sidebar-bottom{margin-top:auto;padding-top:35px}.tiny-quote{margin:0 14px 30px;font-size:14px;font-weight:700}.tiny-quote span{color:var(--muted);margin-top:6px;font-size:10px;font-weight:500;display:block}.account{border-top:1px solid var(--border);text-align:left;align-items:center;gap:10px;width:100%;padding:20px 0 0;display:flex}.avatar{color:#736b52;background:#ece8dd;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:39px;height:39px;font-size:16px;font-weight:750;display:inline-flex}.avatar.small{width:32px;height:32px;font-size:13px}.account strong{text-overflow:ellipsis;max-width:100px;font-size:12px;display:block;overflow:hidden}.account small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.account>svg{color:#929587;margin-left:auto}.main{flex:1;min-width:0;margin-left:236px}.topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:82px;padding:0 42px;display:flex}.breadcrumb{color:#899081;align-items:center;gap:12px;font-size:12px;display:flex}.top-stats{align-items:center;gap:22px;font-size:12px;font-weight:800;display:flex}.top-stats>span{align-items:center;gap:6px;display:flex}.top-stats>span:nth-child(2){color:#cf8a57}.xp-chip{color:#798743}.language-chip{background:#f0f0e7;border-radius:8px;gap:5px;padding:6px 8px;font-size:15px}.language-chip span{font-size:10px}.page-content{max-width:1500px;margin:auto;padding:34px 42px 45px}.page-heading{justify-content:space-between;align-items:center;gap:22px;margin-bottom:30px;display:flex}.page-heading .eyebrow{margin-bottom:10px}.page-heading p{color:#83897d;margin-top:12px;font-size:13px}.greeting-wave{margin-left:13px;font-size:28px;display:inline-block}.date-badge{color:#858a7e;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.dashboard-columns{grid-template-columns:minmax(0,1fr) 264px;gap:26px;display:grid}.hero{background:#e8eedb;border:1px solid #e0e7d1;border-radius:22px;align-items:center;min-height:310px;padding:31px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:1;width:65%;position:relative}.hero h2{white-space:pre-line;letter-spacing:-1px;margin:16px 0 14px;font-size:31px;font-weight:750;line-height:1.25}.hero p{color:#6e8062;max-width:280px;font-size:12px;line-height:1.75}.hero .primary{min-height:46px;margin-top:24px;font-size:12px}.pill{letter-spacing:1.3px;background:#f7f9ea;border-radius:20px;align-items:center;gap:7px;padding:7px 10px;font-size:8px;font-weight:800;display:inline-flex}.pulse-dot{background:#527649;border-radius:50%;width:5px;height:5px}.hero-caption{color:#708166;margin-top:15px;font-size:10px;display:block}.hero-art{width:49%;max-width:330px;position:absolute;bottom:9px;right:-22px}.section-heading{justify-content:space-between;align-items:center;gap:14px;margin:29px 0 15px;display:flex}.section-heading h2{font-size:18px}.section-heading>span{color:#8f9486;font-size:10px}.section-heading h3{font-size:14px}.quick-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.quick-card{border:1px solid var(--border);text-align:left;background:#fdfcf9;border-radius:17px;padding:23px;transition:transform .15s,border .15s}.quick-card:hover{border-color:#b8c9a5;transform:translateY(-2px)}.icon-bubble{color:#55724d;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.quick-card .peach{color:#aa765c}.quick-card h3{margin:17px 0 8px;font-size:15px}.quick-card p{color:#8b9184;font-size:11px}.card-link{color:#4a7151;justify-content:space-between;align-items:center;margin-top:22px;font-size:12px;font-weight:750;display:flex}.route-list{border:1px solid var(--border);background:#fdfcf9;border-radius:17px;padding:0 18px;display:grid}.route-row{text-align:left;border-bottom:1px solid var(--border);align-items:center;gap:15px;padding:15px 0;display:flex}.route-row:last-child{border:0}.route-row>svg{color:#8a9481;margin-left:auto}.lesson-emoji{border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;display:flex}.route-copy{flex-direction:column;gap:3px;display:flex}.route-copy small{letter-spacing:1px;color:#969b8c;font-size:8px;font-weight:700}.route-copy strong{font-size:13px}.route-copy>span{color:#8a9380;font-size:11px}.goal-card{border:1px solid var(--border);text-align:center;background:#fdfcf9;border-radius:19px;padding:21px}.goal-card .section-heading{margin:0 0 23px}.goal-card .section-heading svg{color:#859277}.goal-ring{background:conic-gradient(#7c9a56 var(--progress), #edf0e5 0);border-radius:50%;width:156px;height:156px;margin:0 auto 19px;padding:8px;transform:rotate(-5deg)}.goal-ring>div{background:#fdfcf9;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;transform:rotate(5deg)}.goal-ring>div>span{margin-bottom:3px;font-size:28px}.goal-ring strong{letter-spacing:-1px;font-size:25px}.goal-ring strong small{color:#9b9f90;letter-spacing:0;font-size:14px}.goal-ring>div>small{color:#9b9f90;margin-top:5px;font-size:9px}.goal-card>h3{font-size:13px}.goal-card>p{color:#969a8d;margin-top:8px;font-size:11px}.week-dots{border-top:1px solid var(--border);justify-content:space-between;margin-top:20px;padding-top:18px;display:flex}.week-dots>div{flex-direction:column;align-items:center;gap:5px;display:flex}.week-dots span{color:#959b89;background:#f1f1e9;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:8px;display:flex}.week-dots span.today{outline-offset:2px;outline:1px solid #8ca06c}.week-dots span.done{color:#fff;background:#73935d}.week-dots small{color:#a2a693;font-size:8px}.daily-phrase{background:#f4ecd8;border:1px solid #ebe1c8;border-radius:18px;margin-top:20px;padding:24px;position:relative}.daily-phrase .eyebrow{color:#9c8e68;margin-bottom:19px;font-size:9px}.daily-flower{color:#b2a068;font-size:29px;position:absolute;top:18px;right:18px}.daily-phrase .speak{letter-spacing:-.5px;text-align:left;align-items:flex-start;padding:0;font-size:22px;font-weight:700;line-height:1.4}.daily-phrase .speak svg{width:17px;margin-top:6px}.daily-phrase p{color:#9a8e6f;margin-top:10px;font-size:12px}.daily-phrase .text-button{color:#8c7c4c;margin-top:17px;font-size:10px}.gentle-note{color:#939a86;gap:10px;padding:25px 8px;display:flex}.gentle-note>span{color:#aab890;font-size:22px}.gentle-note p{font-size:10px;line-height:1.8}.page-footer{border-top:1px solid var(--border);color:#9c9f91;justify-content:space-between;gap:12px;max-width:1500px;margin:0 auto;padding:21px 42px;font-size:10px;display:flex}.sync-status{color:#8b9680;align-items:center;gap:6px;font-size:10px;display:flex}.mobile-brand,.mobile-nav{display:none}.resume-banner{text-align:left;background:#f0f3e6;border:1px solid #d4dec5;border-radius:13px;align-items:center;gap:10px;width:100%;margin-top:17px;padding:14px 17px;font-size:11px;display:flex}.resume-banner strong{margin-left:auto}.sync-banner{color:#80723c;background:#f5edce;align-items:center;gap:10px;padding:11px 42px;font-size:12px;display:flex}.sync-banner button{margin-left:auto;font-weight:800;text-decoration:underline}.course-overview{border:1px solid var(--border);background:#fffefa;border-radius:16px;align-items:center;gap:23px;margin-bottom:22px;padding:18px 22px;display:flex}.course-overview>div:first-child{align-items:center;gap:14px;display:flex}.course-overview strong{white-space:nowrap;font-size:22px}.course-overview small{color:#8b9284;font-size:12px;font-weight:500}.course-overview .progress-track{flex:1}.course-overview>span{color:#859177;white-space:nowrap;font-size:11px}.progress-track{background:#e9ecdf;border-radius:20px;height:8px;overflow:hidden}.progress-track>div{background:#77965c;border-radius:20px;height:100%;transition:width .3s}.alphabet-banner{text-align:left;background:#efeee4;border:1px solid #e1dfd1;border-radius:16px;align-items:center;gap:20px;width:100%;padding:20px 23px;display:flex}.alphabet-symbol{color:#8b8061;letter-spacing:-2px;font-size:32px;font-weight:750}.alphabet-banner strong{font-size:14px;display:block}.alphabet-banner small{color:#918c79;margin-top:6px;font-size:11px;display:block}.alphabet-banner>svg{margin-left:auto}.section-number{color:#7b8a69;background:#ebeede;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-right:11px;font-size:12px;display:inline-flex}.lesson-section{margin-top:32px}.lesson-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;display:grid}.lesson-card{border:1px solid var(--border);text-align:left;background:#fdfcf9;border-radius:18px;padding:0;transition:transform .2s,border .2s;overflow:hidden}.lesson-card:hover{border-color:#b5c6a6;transform:translateY(-3px)}.lesson-art{justify-content:center;align-items:center;height:136px;display:flex;position:relative}.lesson-art>span:first-child{filter:drop-shadow(0 5px 3px #0000000d);font-size:60px}.lesson-number{opacity:.4;font-size:11px;font-weight:750;position:absolute;top:14px;left:16px}.completed-pill{background:#fffdf0d9;border-radius:8px;align-items:center;gap:3px;padding:4px 7px;font-size:8px;font-weight:700;display:flex;position:absolute;bottom:10px;right:10px}.lesson-card-body{padding:20px 17px}.lesson-card-body>small{letter-spacing:.7px;color:#8c9482;font-size:8px}.lesson-card h3{margin-top:8px;font-size:15px}.lesson-card p{color:#8b9283;min-height:53px;margin-top:8px;font-size:11px}.lesson-card .card-link{margin-top:16px;font-size:10px}.practice-hero{background:#e9eedb;border:1px solid #e0e7ce;border-radius:20px;align-items:center;gap:23px;padding:30px;display:flex}.practice-hero>.icon-bubble{background:#f4f6e6;border-radius:20px;width:72px;height:72px}.practice-hero h2{margin-top:6px}.practice-hero p{color:#829174;margin-top:8px;font-size:12px}.practice-hero>.primary{white-space:nowrap;margin-left:auto}.practice-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;display:grid}.practice-card{border:1px solid var(--border);text-align:left;background:#fdfcf9;border-radius:17px;align-items:center;gap:20px;padding:25px;display:flex}.practice-card>svg{margin-left:auto}.practice-emoji{border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:75px;height:75px;font-size:37px;display:flex}.practice-card h3{font-size:17px}.practice-card p{color:#818c77;margin-top:6px;font-size:12px}.practice-card small{color:#969e8c;margin-top:12px;font-size:10px;display:block}.chat-banner{text-align:left;background:#eee8e1;border:1px solid #e8dfd6;border-radius:20px;align-items:center;gap:28px;width:100%;padding:28px;display:flex}.chat-banner h2{margin-top:7px;font-size:23px}.chat-banner p{color:#8d887b;max-width:420px;margin-top:8px;font-size:12px}.chat-banner>.primary{white-space:nowrap;margin-left:auto}.chat-illustration{color:#9d7a63;flex-shrink:0;justify-content:center;align-items:center;width:95px;height:95px;display:flex;position:relative}.chat-illustration span{background:#f8f3df;border-radius:10px;padding:6px 10px;font-size:11px;font-weight:750;position:absolute;bottom:7px;right:0;transform:rotate(-8deg)}.chat-banner+.note{margin:15px 0}.dictionary-toolbar{gap:15px;display:flex}.search-field{border:1px solid var(--border);color:#96a08a;background:#fffefa;border-radius:13px;flex:1;align-items:center;gap:12px;padding:0 15px;display:flex}.search-field input{color:#354832;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:15px 0;font-size:13px}.search-field input:focus{outline:0}.search-field:focus-within{outline:2px solid #a3b58b}.dictionary-toolbar select{width:205px}.filter-tabs{border-bottom:1px solid var(--border);gap:7px;margin-top:23px;display:flex}.filter-tabs button{color:#959b8b;white-space:nowrap;border-bottom:2px solid #0000;gap:7px;padding:13px 17px;font-size:12px;font-weight:700;display:flex}.filter-tabs button.active{color:var(--green);border-bottom-color:var(--green)}.filter-tabs small{background:#e9eddc;border-radius:5px;padding:0 5px;font-size:10px}.dictionary-count{color:#9ca08e;margin:20px 0 15px;font-size:11px}.dictionary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;display:grid}.dictionary-card{border:1px solid var(--border);background:#fdfcf9;border-radius:17px;flex-direction:column;padding:18px 21px;display:flex}.dictionary-card-top{justify-content:space-between;align-items:center;display:flex}.dictionary-emoji{font-size:33px}.favorite{color:#abb09d}.favorite.is-favorite{color:#b29845}.favorite.is-favorite svg{fill:#e9d88a}.dictionary-word{text-align:left;flex:1;margin:15px 0 18px;padding:0}.dictionary-word h3{font-size:18px;line-height:1.4}.dictionary-word p{color:#8b9380;margin-top:7px;font-size:12px}.dictionary-card-bottom{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding-top:10px;display:flex}.dictionary-card-bottom>span{letter-spacing:.2px;color:#9aa08d;font-size:9px}.speak-wrap{vertical-align:middle;flex-direction:column;max-width:100%;display:inline-flex}.speak{text-align:left;color:#315e48;justify-content:flex-start;align-items:center;gap:12px;max-width:100%;padding:8px 0;font-size:15px;font-weight:650;line-height:1.6;display:inline-flex}.speak svg{color:#879875;flex-shrink:0}.speak.icon-only{background:#eff2e8;border-radius:11px;justify-content:center;width:38px;height:38px;padding:9px}.speak:hover{color:#608246}.speak:hover.icon-only{background:#e0e8d1}.audio-message{color:#b2674b;max-width:200px;margin:5px 0;font-size:10px}.slow-button{color:#939b85!important;font-size:12px!important;font-weight:600!important}.empty-state{text-align:center;color:#8a977c;padding:70px 20px}.empty-state>svg{margin-bottom:20px}.empty-state h3{color:#3c583b;font-size:21px}.empty-state p{margin:12px 0 25px;font-size:13px}.profile-stats{grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:28px;display:grid}.profile-stats>div{border:1px solid var(--border);color:#7b9063;background:#fffdf7;border-radius:16px;flex-direction:column;align-items:center;gap:9px;padding:22px;display:flex}.profile-stats strong{letter-spacing:-1px;color:#32583e;font-size:30px}.profile-stats span{color:#8f9782;font-size:11px}.profile-grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:24px;display:grid}.settings-card{border:1px solid var(--border);background:#fffdf8;border-radius:18px;margin-bottom:22px;padding:26px}.settings-card h2{align-items:center;gap:10px;margin-bottom:24px;font-size:18px;display:flex}.field-label,.add-form label{margin:18px 0 12px;font-size:12px;font-weight:700;display:block}.field-label>select{width:100%;margin-top:10px;display:block}input:not([type=file]),select{color:#40573b;background:#fffefa;border:1px solid #e0e4d5;border-radius:10px;min-width:0;padding:13px 14px;font-size:14px}.inline-field{gap:9px;margin:12px 0 24px;display:flex}.inline-field input{width:100%}.inline-field .secondary{padding:10px 14px;font-size:11px}.goal-options{gap:10px;margin-bottom:16px;display:flex}.goal-options button{color:#8f967f;border:1px solid #e4e6da;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:8px;padding:15px 8px;display:flex}.goal-options button.active{color:#3a683e;background:#edf1e0;border-color:#8da171}.goal-options strong{font-size:11px}.goal-options span{font-size:16px;font-weight:700}.goal-options small{font-size:9px}.settings-divider{border-top:1px solid var(--border);margin-top:27px;padding-top:26px}.settings-card .speak-wrap{margin:10px 0}.settings-card .speak.secondary{min-height:44px;padding:10px 15px;font-size:12px}.activity-grid{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.activity-grid>div{aspect-ratio:1;color:#a3a88f;background:#f0f1e7;border-radius:8px;justify-content:center;align-items:center;font-size:10px;display:flex}.activity-grid .partial,.activity-legend .partial{color:#4c663c;background:#cadbac}.activity-grid .full,.activity-legend .full{color:#fff;background:#739353}.activity-legend{color:#939c80;justify-content:space-between;gap:8px;margin-top:16px;font-size:8px;display:flex}.activity-legend span{align-items:center;gap:4px;display:flex}.activity-legend i{background:#eff0e4;border-radius:2px;width:9px;height:9px;display:inline-block}.install-card{background:#eeeede}.install-card>span{font-size:30px}.install-card h3{margin:9px 0}.install-card p{color:#8c947a;font-size:12px}.install-card .note{margin-top:10px;font-size:10px}.settings-action{border-bottom:1px solid var(--border);text-align:left;align-items:center;gap:12px;width:100%;padding:15px 0;font-size:12px;display:flex}.settings-action:last-child{border:0}.settings-action span{flex:1}.settings-action svg{color:#91a078}.settings-card>.muted{font-size:12px}.password-form{gap:10px;margin:17px 0;display:grid}.password-form input,.password-form .primary{font-size:12px}.about-course{color:#929984;max-width:850px;font-size:11px;line-height:1.8}.about-course h3{color:#728464;margin-bottom:10px;font-size:13px}.about-course p{margin-top:8px}.source-links{flex-wrap:wrap;gap:20px;margin-top:14px;display:flex}.source-links a{align-items:center;gap:7px;font-size:10px;display:inline-flex}.overlay{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#203a2d69;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0;overflow:hidden}.modal{background:#fbfaf5;border:1px solid #e6e7da;border-radius:22px;outline:none;flex-direction:column;width:520px;max-width:100%;max-height:calc(100dvh - 50px);display:flex;overflow-y:auto;box-shadow:0 22px 80px #233d3226}.modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:15px 22px;display:flex}.modal-header>span{color:#849074;font-size:12px;font-weight:650}.modal-body{padding:25px 28px}.modal-body>h2{margin-bottom:15px}.lesson-modal{width:710px;overflow:hidden}.lesson-modal-title{flex-shrink:0;align-items:center;gap:23px;padding:25px 30px;display:flex}.lesson-modal-title>span{font-size:55px}.lesson-modal-title small{color:#8c9278;letter-spacing:1px;font-size:9px}.lesson-modal-title h2{margin:7px 0 0;font-size:28px}.lesson-modal-title .speak{padding:4px 0;font-size:15px}.segmented{background:#eeefe4;border-radius:11px;flex-shrink:0;gap:6px;margin:18px 25px 0;padding:4px;display:flex}.segmented button{color:#96a087;border-radius:8px;flex:1;padding:10px 6px;font-size:11px;font-weight:650}.segmented button.active{color:#466841;background:#fffefa;box-shadow:0 2px 6px #00000008}.lesson-tab-content{flex:1;min-height:200px;overflow-y:auto}.lesson-word-list{grid-template-columns:1fr 1fr;gap:0 24px;margin-top:18px;display:grid}.lesson-word-list>div{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:13px 0;display:flex}.lesson-word-list>div>span:first-child{flex-shrink:0;font-size:25px}.word-info{text-align:left;flex:1;min-width:0;padding:0}.word-info strong{font-size:13px;line-height:1.5;display:block}.word-info small{color:#90987f;margin-top:3px;font-size:10px;display:block}.lesson-word-list .icon-only{background:0 0;width:33px;height:33px}.lesson-word-list .icon-only svg{width:16px}.modal-action{border-top:1px solid var(--border);background:#fbfaf5;flex-shrink:0;justify-content:space-between;align-items:center;gap:14px;padding:18px 27px;display:flex}.modal-action>span{color:#94a083;font-size:11px}.modal-action>.primary{font-size:12px}.grammar-content h3{margin:17px 0}.grammar-content>p{font-size:15px;line-height:1.9}.tip-box{color:#7e9066;background:#ecefdf;border-radius:12px;gap:12px;margin:20px 0;padding:18px;display:flex}.tip-box p{font-size:12px;line-height:1.8}.example-box{text-align:left;background:#f0f1e7;border-radius:14px;margin:16px 0;padding:20px}.example-box>small{letter-spacing:1px;color:#a3aa90;margin-bottom:8px;font-size:9px;display:block}.example-box p{color:#8c977c;margin-top:5px;font-size:12px}.example-box .speak{padding:0;font-size:14px}.dialogue{gap:23px;margin:25px 0;display:grid}.dialogue-line{align-items:flex-start;gap:12px;max-width:90%;display:flex}.dialogue-avatar{margin-top:10px;font-size:23px}.dialogue-line>div{background:#e8eeda;border-radius:16px;padding:15px 19px}.dialogue-line .speak{padding:0;font-size:14px}.dialogue-line p{color:#839474;margin-top:7px;font-size:11px}.speaker-B{margin-left:auto}.speaker-B>div{background:#f0e8df}.alphabet-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:23px;display:grid}.alphabet-grid>div{background:#f3f3e9;border-radius:13px;padding:18px 14px}.alphabet-grid strong{letter-spacing:1px;font-size:30px}.alphabet-grid p{color:#909c7d;min-height:36px;margin-top:8px;font-size:10px}.alphabet-grid .speak{gap:6px;font-size:12px}.alphabet-grid .speak svg{width:15px}.alphabet-grid small{color:#9ca58d;font-size:10px;display:block}.word-detail{text-align:center;flex-direction:column;align-items:center;padding:25px 30px;display:flex}.flash-emoji{filter:drop-shadow(0 5px 5px #0000000c);margin:10px 0 15px;font-size:78px;display:block}.flash-word{letter-spacing:-.6px;justify-content:center;font-size:30px!important;font-weight:750!important;line-height:1.4!important}.word-detail>h2{color:#8d9881;margin:10px 0;font-size:18px;font-weight:500}.word-detail .example-box{width:100%;margin:20px 0}.word-detail>.secondary{min-height:43px;font-size:12px}.word-detail .note{margin-top:16px;font-size:10px}.word-detail>.text-button{margin-top:15px;font-size:11px}.add-form>p{font-size:12px}.add-form label input{width:100%;margin-top:9px;display:block}.add-form label small{color:#9ca58e;margin-left:5px;font-size:10px;font-weight:500}.add-form>.primary{width:100%;margin-top:25px}.add-form>.secondary{width:100%;margin-top:5px;font-size:12px}.letter-keys{justify-content:center;gap:7px;margin:13px 0;display:flex}.letter-keys button{background:#ebedde;border:1px solid #e0e6d2;border-radius:8px;min-width:34px;min-height:36px;font-size:17px;font-weight:650}.letter-keys button:hover{background:#dce5c8}.emoji-picker{gap:6px;margin-top:23px;display:flex}.emoji-picker button{border:1px solid #0000;border-radius:10px;width:40px;height:40px;font-size:23px}.emoji-picker button.selected{background:#ecf0df;border-color:#b6c39b}.form-error{color:#a5604b;background:#f6e7df;border-radius:10px;margin:15px 0;padding:12px 15px;font-size:12px;line-height:1.6}.toast{color:#fff;z-index:100;background:#254e3f;border-radius:13px;max-width:90%;padding:16px 23px;font-size:13px;position:fixed;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 8px 35px #27453326}.exercise-panel{background:#faf9f3;border-radius:22px;flex-direction:column;width:760px;max-width:100%;max-height:calc(100dvh - 50px);display:flex;position:relative;overflow:auto}.exercise-header{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:20px;padding:21px 27px;display:flex}.exercise-header .progress-track{flex:1}.exercise-header>span:last-child{color:#8c9b79;text-align:right;min-width:40px;font-size:12px;font-weight:700}.exercise-header>.eyebrow{text-align:center;flex:1}.exercise-body{min-height:0;padding:30px 55px 36px;overflow-y:auto}.exercise-body>.eyebrow{font-size:9px}.exercise-body>h2{margin-top:14px;font-size:23px}.question-word{align-items:center;gap:22px;padding:25px 0;display:flex}.word-emoji{font-size:48px}.question-word .speak,.question-word h3{font-size:24px;font-weight:700;line-height:1.5}.answer-options{gap:11px;margin-top:10px;display:grid}.answer-option{text-align:left;background:#fffefa;border:1px solid #dde3d0;border-bottom-width:3px;border-radius:13px;align-items:center;gap:15px;min-height:58px;padding:14px 17px;font-size:14px;display:flex}.answer-option>svg{margin-left:auto}.option-number{color:#a3ad91;border:1px solid #e0e5d5;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:25px;height:25px;font-size:11px;display:flex}.answer-option.selected{background:#ecf2dd;border-color:#8fa968}.answer-option.correct-option{opacity:1;color:#52713b;background:#e3efd3;border-color:#83a15d}.answer-option.wrong-option{opacity:1;color:#9e6951;background:#f6e7df;border-color:#d7a289}.answer-option:disabled{opacity:.8}.exercise-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:25px;padding:22px 30px;display:flex}.exercise-footer>.hint{max-width:260px;font-size:10px}.exercise-footer>.primary{flex-shrink:0;min-width:160px}.feedback-success{background:#e9f0dd}.feedback-wrong{background:#f5e9df}.feedback{flex-direction:column;gap:3px;display:flex}.feedback strong{color:#688649;font-size:15px}.feedback-wrong strong{color:#a27151}.feedback .speak{padding:0;font-size:13px}.feedback>span:last-child{color:#949b80;font-size:11px}.listening{text-align:center;padding:25px 0}.listening .speak-wrap{align-items:center;display:flex}.listen-big{background:#e5ecd6;border-radius:23px;flex-direction:column;justify-content:center;align-items:center;gap:13px;padding:26px 35px;font-size:14px;display:flex}.listen-big svg{color:#73935a}.listen-big>svg:last-child{display:none}.typing-input{width:100%;margin:10px 0;padding:18px!important;font-size:17px!important}.exercise-body>.hint{margin-top:15px;font-size:10px}.sentence-slots{border-top:2px solid #e2e5d7;border-bottom:2px solid #e2e5d7;flex-wrap:wrap;align-items:center;gap:9px;min-height:93px;margin:12px 0 24px;padding:14px 0;display:flex}.sentence-slots>span{color:#adb59b;font-size:12px}.word-tile{background:#fffdf5;border:1px solid #dbe1ca;border-bottom-width:3px;border-radius:9px;min-height:44px;padding:12px 16px;font-size:14px}.word-bank{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.word-tile.used{opacity:.25}.confirm-box{text-align:center;z-index:3;background:#fffefa;border:1px solid #d2ddbe;border-radius:18px;padding:30px;position:absolute;inset:auto 20px 20px;box-shadow:0 0 0 100vmax #23432d69}.confirm-box p{color:#859277;margin:13px 0 23px;font-size:13px}.confirm-box .primary{width:100%}.confirm-box .text-button{margin-top:12px}.result-panel{text-align:center;align-items:center;padding:55px 50px}.result-medal{color:#899b58;background:#e9eed9;border-radius:50%;justify-content:center;align-items:center;width:130px;height:130px;margin-bottom:27px;display:flex}.result-panel h1{margin:14px 0 18px;font-size:34px}.result-panel>p{color:#8b977b;font-size:13px}.result-stats{gap:50px;margin:30px 0;display:flex}.result-stats>div{flex-direction:column;gap:5px;display:flex}.result-stats strong{color:#628044;font-size:33px}.result-stats span{color:#a3aa91;font-size:11px}.result-panel>.primary{min-width:240px;margin-top:30px}.flash-card{text-align:center;flex-direction:column;align-items:center;min-height:350px;padding:30px 42px;display:flex;overflow-y:auto}.flash-prompt p{color:#98a287;margin:23px 0;font-size:13px}.flash-prompt .secondary{font-size:12px}.flip-answer h2{color:#8d9b7d;margin:20px 0;font-size:21px;font-weight:500}.flip-answer>.speak-wrap{align-items:center;display:flex}.flip-answer .speak{font-size:15px}.flip-answer p{color:#98a287;font-size:12px}.flip-answer .slow-button{margin-top:20px}.rating-footer{border-top:1px solid var(--border);text-align:center;flex-shrink:0;padding:20px 28px 25px}.rating-footer>p{color:#a0a98f;margin-bottom:15px;font-size:11px}.rating-buttons{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.rating-buttons button{border:1px solid #e0e5d4;border-radius:11px;flex-direction:column;gap:7px;padding:13px 5px;display:flex}.rating-buttons strong{font-size:12px}.rating-buttons span{color:#97a085;font-size:10px}.rating-1{color:#ac7c5d;background:#f3e6de}.rating-2{color:#ac985e;background:#f2ecdb}.rating-3{color:#6b854d;background:#e8eedb}.rating-4{color:#4f723f;background:#dae8cb}.tutor-modal{width:650px;height:760px;overflow:hidden}.tutor-top{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:18px 25px;display:flex}.tutor-avatar{background:#ede9d8;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;font-size:30px;display:flex}.tutor-top strong{font-size:13px}.tutor-top small{color:#97a184;margin-top:4px;font-size:10px;display:block}.ai-label{color:#8d9d75;background:#e9eedc;border-radius:6px;margin-left:auto;padding:5px 8px;font-size:10px}.tutor-start{text-align:center;flex:1;padding:35px 30px;overflow-y:auto}.tutor-start h2{margin-bottom:14px}.tutor-start p{color:#91a07d;font-size:13px}.topic-choices{flex-wrap:wrap;justify-content:center;gap:9px;margin:26px 0;display:flex}.topic-choices button{border:1px solid #e0e5d0;border-radius:10px;padding:12px 16px;font-size:12px}.topic-choices .selected{color:#54793d;background:#eaf0dc;border-color:#91a872}.chat-messages{flex-direction:column;flex:1;gap:17px;min-height:100px;padding:25px;display:flex;overflow-y:auto}.chat-message{border-radius:16px;flex-shrink:0;max-width:90%;padding:15px 19px}.chat-message.assistant{background:#eaf0dd;align-self:flex-start}.chat-message.user{background:#eee7db;align-self:flex-end}.chat-message>.speak-wrap .speak{padding:0;font-size:14px;line-height:1.75}.chat-message>p{color:#8d9d76;margin-top:8px;font-size:12px}.chat-message.user>p{color:#8f8167;margin:0;font-size:14px}.correction{color:#8b9875;border-top:1px solid #dbe5ca;gap:8px;margin-top:13px;padding-top:11px;font-size:11px;line-height:1.7;display:flex}.chat-thinking{color:#9ca78c;gap:9px;font-size:11px;display:flex}.chat-hint{flex-shrink:0;padding:5px 25px}.chat-hint>.text-button{font-size:10px}.hint-answer{text-align:left;background:#f0f2e5;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;width:100%;margin:7px 0;padding:12px 15px;font-size:12px;display:flex}.hint-answer>span{flex:1;font-weight:700}.hint-answer small{color:#97a183;font-size:10px}.chat-input{border-top:1px solid var(--border);flex-shrink:0;padding:12px 25px 5px}.chat-input>div:first-child{gap:10px;display:flex}.chat-input input{flex:1;font-size:14px}.chat-input .primary{min-width:48px;padding:12px}.chat-input .letter-keys{gap:6px;margin:11px 0 3px}.chat-input .letter-keys button{min-width:30px;min-height:29px;font-size:14px}.tutor-disclaimer{text-align:center;color:#a9b196;flex-shrink:0;padding:12px;font-size:9px}.tutor-error{flex-shrink:0;margin:10px 22px}.login-page{background:#fdfcf6;grid-template-columns:1.15fr 1fr;min-height:100dvh;display:grid}.login-art{background:#e8eedc;flex-direction:column;justify-content:space-between;min-height:100dvh;padding:45px 60px;display:flex}.login-art>div:nth-child(2){margin-top:40px}.login-art h1{letter-spacing:-1.8px;margin-top:20px;font-size:45px;line-height:1.28}.login-art h1 em{color:#7a9152;font-style:normal}.login-art p{color:#8a9b75;margin-top:20px;font-size:14px}.login-art>div>svg{width:370px;max-width:85%;margin:5px auto -10px;display:block}.login-footer{color:#9aa88a;padding-top:15px;font-size:11px}.login-form{place-self:center;width:100%;max-width:435px;padding:40px}.login-welcome{margin-bottom:20px;font-size:50px}.login-form>.eyebrow{margin-bottom:10px;font-size:9px}.login-form h2{letter-spacing:-1px;font-size:32px}.login-form>p{color:#929d82;margin:16px 0 30px;font-size:13px;line-height:1.85}.login-form label{margin-bottom:10px;font-size:12px;font-weight:700;display:block}.password-input{background:#fffefa;border:1px solid #dce3cb;border-radius:12px;align-items:center;display:flex;overflow:hidden}.password-input input{background:0 0;border:0;border-radius:0;outline:0;width:100%}.password-input:focus-within{outline:2px solid #9bb480}.password-input .icon-btn{color:#96a580;flex-shrink:0;margin-right:7px}.login-form form>.primary{width:100%;margin-top:20px}.private-note{color:#a1ab91;align-items:center;gap:8px;margin-top:24px;font-size:9px;line-height:1.6;display:flex}.loading-screen{color:#8b9f70;flex-direction:column;justify-content:center;align-items:center;gap:30px;min-height:100dvh;display:flex}.loading-screen p{font-size:13px}@media (width>=1500px){.hero{min-height:340px}.hero h2{font-size:36px}.hero-art{width:48%;max-width:400px;right:0}.hero p,.hero .primary{font-size:13px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 285px;gap:30px}}@media (width<=1200px){.sidebar{width:210px;padding:28px 16px}.main{margin-left:210px}.page-content{padding:28px}.topbar{padding:0 28px}.dashboard-columns{grid-template-columns:minmax(0,1fr) 230px;gap:20px}.hero{min-height:325px;padding:25px}.hero h2{font-size:27px}.hero-copy{width:75%}.hero-art{opacity:.9;width:48%;bottom:15px;right:-35px}.hero-caption{font-size:9px}.quick-card{padding:19px}.page-heading h1{font-size:29px}.date-badge{display:none}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-art{height:145px}.lesson-card p{min-height:35px}.practice-hero{flex-wrap:wrap;gap:17px;padding:25px}.practice-hero>.primary{margin-left:90px}.practice-card{gap:15px;padding:20px}.practice-emoji{width:60px;height:60px;font-size:30px}.practice-card>svg{display:none}.practice-card h3{font-size:15px}.practice-card p{font-size:11px}.chat-banner{flex-wrap:wrap;gap:16px}.chat-banner>div:nth-child(2){flex:1}.chat-banner>.primary{margin-left:110px}.dictionary-card{padding:17px}.dictionary-grid{gap:13px}.dictionary-word h3{font-size:16px}.profile-grid{gap:18px}.settings-card{padding:22px}.goal-options{gap:5px}.goal-options button{padding:12px 4px}.goal-options small{font-size:8px}.page-footer{padding:20px 28px}.login-art{padding:35px}.login-art h1{font-size:37px}.login-art>div>svg{max-width:100%}}@media (width<=1020px) and (width>=761px){.dashboard-columns{grid-template-columns:1fr}.dashboard-aside{grid-template-columns:1fr 1fr;gap:20px;display:grid}.goal-card{padding:22px}.goal-ring{width:130px;height:130px}.daily-phrase{flex-direction:column;justify-content:center;margin-top:0;display:flex}.gentle-note{display:none}.hero-copy{width:65%}.hero-art{width:43%;right:0}.hero h2{font-size:34px}.dictionary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-grid{grid-template-columns:1fr}.profile-grid>div{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.profile-grid>div>.settings-card:last-child{grid-column:1/-1}.profile-stats{gap:10px}.profile-stats span{font-size:9px}}@media (width<=760px){:root{--border:#e6e8dc}.sidebar{display:none}.main{width:100%;margin-left:0}.topbar{height:75px;padding:calc(env(safe-area-inset-top) + 14px) 21px 15px;border-bottom:0;height:auto;min-height:75px}.mobile-brand{display:block}.brand svg{width:31px;height:31px}.brand>span{font-size:28px}.brand{gap:8px}.breadcrumb{display:none}.top-stats{gap:13px;font-size:11px}.top-stats .language-chip,.top-stats .avatar{display:none}.top-stats svg{width:17px}.top-stats .xp-chip{font-size:10px}.page-content{padding:15px 21px 28px}.page-heading{align-items:flex-start;gap:15px;margin-bottom:23px}.page-heading h1{letter-spacing:-1.1px;overflow-wrap:anywhere;font-size:27px;line-height:1.35}.page-heading .eyebrow{letter-spacing:1.25px;margin-bottom:11px;font-size:8px}.page-heading p{margin-top:10px;font-size:11px;line-height:1.7}.page-heading>.primary{border-radius:12px;gap:0;min-width:42px;min-height:42px;margin-top:26px;padding:10px;font-size:0}.greeting-wave{margin-left:8px;font-size:23px}.dashboard-columns{flex-direction:column;gap:24px;display:flex}.hero{border-radius:20px;align-items:flex-start;min-height:313px;padding:25px 22px}.hero-copy{width:100%}.hero h2{letter-spacing:-1px;max-width:250px;margin-top:17px;font-size:29px}.hero p{z-index:2;max-width:215px;font-size:11px;line-height:1.8;position:relative}.hero-art{opacity:1;width:51%;max-width:230px;bottom:6px;right:-24px}.hero .primary{z-index:2;min-height:45px;margin-top:22px;padding:13px 17px;font-size:11px;position:relative}.hero .primary svg{width:16px}.hero-caption{z-index:2;max-width:190px;margin-top:14px;font-size:9px;position:relative}.pill{letter-spacing:1px;padding:6px 9px;font-size:7px}.quick-grid{gap:12px}.quick-card{border-radius:15px;flex-direction:column;min-height:187px;padding:17px 15px;display:flex}.quick-card .icon-bubble{border-radius:12px;width:41px;height:41px}.quick-card .icon-bubble svg{width:21px}.quick-card h3{letter-spacing:-.3px;margin:15px 0 7px;font-size:13px}.quick-card p{font-size:10px;line-height:1.6}.quick-card .card-link{gap:4px;width:100%;margin-top:auto;padding-top:18px;font-size:10px}.card-link svg{width:14px}.section-heading{margin:25px 0 14px}.section-heading h2{font-size:17px}.section-heading>span{font-size:8px}.section-heading .text-button{font-size:10px}.section-heading .text-button svg{width:14px}.route-list{border-radius:15px;padding:0 15px}.route-row{gap:13px;padding:15px 0}.lesson-emoji{border-radius:12px;width:47px;height:47px;font-size:25px}.route-copy small{letter-spacing:.8px;font-size:7px}.route-copy strong{font-size:12px}.route-copy>span{font-size:10px}.dashboard-aside{grid-template-columns:1fr 1fr;align-items:stretch;gap:12px;display:grid}.goal-card{border-radius:16px;padding:15px 12px}.goal-card .section-heading{margin:0 0 16px}.goal-card .section-heading h3{font-size:11px}.goal-card .section-heading svg{width:15px}.goal-ring{width:111px;height:111px;margin-bottom:15px;padding:6px}.goal-ring>div>span{margin:0;font-size:23px}.goal-ring strong{font-size:22px}.goal-ring strong small{font-size:12px}.goal-ring>div>small{margin-top:1px;font-size:8px}.goal-card>h3{font-size:11px}.goal-card>p{margin-top:7px;font-size:9px;line-height:1.6}.week-dots{gap:3px;margin-top:15px;padding-top:13px}.week-dots span{width:16px;height:16px;font-size:6px}.week-dots svg{width:11px}.week-dots small{font-size:7px}.daily-phrase{border-radius:16px;flex-direction:column;justify-content:center;margin:0;padding:18px 15px;display:flex}.daily-phrase .eyebrow{letter-spacing:1px;margin-bottom:24px;font-size:7px}.daily-flower{font-size:23px;top:12px;right:12px}.daily-phrase .speak{flex-wrap:wrap;gap:6px;font-size:18px;line-height:1.5}.daily-phrase .speak svg{width:15px;margin:3px 0 0}.daily-phrase p{margin-top:10px;font-size:10px}.daily-phrase .text-button{text-align:left;justify-content:flex-start;gap:5px;margin-top:20px;font-size:8px}.daily-phrase .text-button svg{width:13px}.gentle-note{display:none}.page-footer{padding:20px 21px calc(97px + env(safe-area-inset-bottom));flex-direction:column;gap:6px;font-size:8px}.page-footer .sync-status{align-self:flex-start;padding:5px 0;font-size:9px}.mobile-nav{padding:10px 11px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:30;background:#fcfbf6f5;border-top:1px solid #e1e6d5;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#9ba58b;flex-direction:column;flex:1;align-items:center;gap:5px;min-height:44px;padding:3px 0;display:flex}.mobile-nav button>span{display:flex;position:relative}.mobile-nav button.active{color:#305f3e}.mobile-nav small{font-size:9px;font-weight:700}.mobile-nav button.active>span:before{content:"";z-index:-1;background:#e7eeda;border-radius:10px;position:absolute;inset:-4px -13px}.mobile-nav i{background:#c6955d;border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;right:-3px}.sync-banner{align-items:flex-start;padding:10px 21px;font-size:10px}.sync-banner svg{width:15px;margin-top:2px}.resume-banner{flex-wrap:wrap;gap:7px;padding:12px;font-size:10px}.resume-banner strong{font-size:10px}.resume-banner>span{flex:1}.course-overview{border-radius:14px;flex-wrap:wrap;gap:12px;padding:15px}.course-overview .icon-bubble{border-radius:10px;width:34px;height:34px}.course-overview .icon-bubble svg{width:18px}.course-overview>div:first-child{gap:10px}.course-overview strong{font-size:19px}.course-overview strong small{font-size:10px}.course-overview .progress-track{min-width:70px}.course-overview>span{width:100%;font-size:9px;display:none}.alphabet-banner{gap:15px;padding:16px}.alphabet-symbol{font-size:29px}.alphabet-banner strong{font-size:11px;line-height:1.6}.alphabet-banner small{margin-top:3px;font-size:9px;line-height:1.6}.alphabet-banner>svg{width:17px}.lesson-section{margin-top:26px}.lesson-grid{gap:12px}.lesson-art{height:118px}.lesson-art>span:first-child{font-size:48px}.lesson-number{font-size:9px;top:10px;left:12px}.lesson-card{border-radius:14px}.lesson-card-body{padding:14px}.lesson-card-body>small{letter-spacing:.3px;font-size:7px}.lesson-card h3{margin-top:7px;font-size:13px}.lesson-card p{min-height:48px;font-size:10px;line-height:1.6}.lesson-card .card-link{margin-top:16px;font-size:9px}.section-number{width:24px;height:24px;margin-right:8px;font-size:10px}.completed-pill{padding:3px 5px;font-size:7px;bottom:8px;right:7px}.practice-hero{border-radius:18px;gap:15px;padding:21px}.practice-hero>.icon-bubble{border-radius:13px;width:48px;height:48px}.practice-hero>.icon-bubble svg{width:25px}.practice-hero>div{flex:1;min-width:170px}.practice-hero .eyebrow{letter-spacing:1px;font-size:7px}.practice-hero h2{letter-spacing:-.6px;font-size:19px}.practice-hero p{font-size:10px;line-height:1.7}.practice-hero>.primary{width:100%;margin:4px 0 0;font-size:12px}.practice-grid{gap:12px;margin-top:17px}.practice-card{flex-direction:column;align-items:flex-start;gap:15px;padding:18px 15px;display:flex}.practice-emoji{border-radius:13px;width:48px;height:48px;font-size:28px}.practice-card h3{font-size:14px}.practice-card p{min-height:33px;font-size:10px}.practice-card small{margin-top:12px;font-size:9px}.chat-banner{border-radius:17px;gap:12px;padding:20px}.chat-illustration{width:48px;height:66px}.chat-illustration>svg{width:35px}.chat-illustration span{padding:4px 6px;font-size:8px;bottom:4px;right:-6px}.chat-banner>div:nth-child(2){min-width:180px}.chat-banner .eyebrow{letter-spacing:.8px;font-size:6px}.chat-banner h2{letter-spacing:-.4px;font-size:18px;line-height:1.5}.chat-banner p{font-size:10px}.chat-banner>.primary{width:100%;margin:6px 0 0;font-size:12px}.chat-banner+.note{font-size:10px}.dictionary-toolbar{flex-wrap:wrap;gap:10px}.search-field{flex-basis:100%;gap:9px;padding:0 12px}.search-field input{padding:14px 0;font-size:12px}.search-field>svg{width:18px}.dictionary-toolbar select{width:100%;padding:11px 13px;font-size:12px}.filter-tabs{gap:0;margin-top:14px;overflow-x:auto}.filter-tabs button{padding:13px 11px;font-size:10px}.filter-tabs small{font-size:8px}.dictionary-count{margin:16px 0 12px;font-size:10px}.dictionary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.dictionary-card{border-radius:14px;padding:14px}.dictionary-emoji{font-size:29px}.dictionary-card .favorite{width:31px;height:31px}.favorite svg{width:17px}.dictionary-word{margin:12px 0 15px}.dictionary-word h3{overflow-wrap:anywhere;font-size:15px;line-height:1.55}.dictionary-word p{font-size:10px;line-height:1.6}.dictionary-card-bottom{gap:4px;padding-top:9px}.dictionary-card-bottom>span{font-size:8px}.dictionary-card-bottom .icon-only{border-radius:9px;width:33px;height:33px}.dictionary-card-bottom .icon-only svg{width:16px}.empty-state{padding:55px 20px}.empty-state h3{font-size:18px}.empty-state p{font-size:12px}.profile-stats{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:22px}.profile-stats>div{grid-template-columns:auto 1fr;align-items:center;gap:6px;padding:18px;display:grid}.profile-stats svg{grid-row:1/3;width:22px;margin-right:10px}.profile-stats strong{font-size:25px}.profile-stats span{font-size:9px}.profile-grid{display:block}.settings-card{border-radius:16px;margin-bottom:18px;padding:21px}.settings-card h2{margin-bottom:20px;font-size:17px}.goal-options{gap:8px}.goal-options button{padding:15px 8px}.goal-options small{font-size:9px}.inline-field input{font-size:13px}.activity-grid{gap:9px}.activity-grid>div{font-size:11px}.activity-legend{font-size:9px}.about-course{font-size:10px}.about-course h3{font-size:12px}.source-links{gap:12px}.source-links a{font-size:9px}.overlay{background:#203a2d73;align-items:flex-end;padding:0}.modal{max-height:calc(100dvh - env(safe-area-inset-top) - 14px);width:100%;max-width:100%;padding-bottom:env(safe-area-inset-bottom);border:0;border-radius:22px 22px 0 0}.modal-header{z-index:2;background:#fbfaf5;padding:12px 20px;position:sticky;top:0}.modal-header>span{font-size:11px}.modal-body{padding:23px}.modal-body h2{font-size:23px}.lesson-modal{height:calc(100dvh - env(safe-area-inset-top) - 14px)}.lesson-modal-title{gap:18px;padding:20px 23px}.lesson-modal-title>span{font-size:44px}.lesson-modal-title small{font-size:8px}.lesson-modal-title h2{font-size:23px}.lesson-modal-title .speak{font-size:13px}.segmented{gap:3px;margin:15px 20px 0}.segmented button{padding:10px 3px;font-size:10px}.lesson-word-list{grid-template-columns:1fr;gap:0;margin-top:10px}.lesson-word-list>div{gap:14px;padding:12px 0}.word-info strong{font-size:15px}.word-info small{font-size:11px}.lesson-word-list>div>span:first-child{font-size:27px}.lesson-word-list .icon-only{background:#eff2e6;width:42px;height:42px}.lesson-word-list .icon-only svg{width:19px}.lesson-tab-content>.muted{font-size:11px}.modal-action{flex-direction:column;gap:8px;padding:15px 21px}.modal-action>span{font-size:10px;display:none}.modal-action>.primary{width:100%;min-height:47px;font-size:12px}.grammar-content h3{font-size:16px}.grammar-content>p{font-size:14px}.dialogue-line{gap:8px;max-width:98%}.dialogue-avatar{font-size:21px}.dialogue-line>div{padding:14px}.dialogue-line .speak{gap:8px;font-size:13px;line-height:1.7}.dialogue-line .speak svg{width:16px}.dialogue-line p{font-size:10px}.alphabet-grid{grid-template-columns:repeat(2,1fr);gap:9px}.alphabet-grid>div{padding:15px}.alphabet-grid p{min-height:32px}.alphabet-grid strong{font-size:30px}.alphabet-grid .speak{font-size:13px}.alphabet-grid small{font-size:10px}.word-detail{padding:20px 25px 28px}.flash-emoji{font-size:68px}.flash-word{font-size:27px!important}.word-detail>h2{font-size:17px}.word-modal{max-height:90dvh}.word-detail .example-box .speak{font-size:14px}.exercise-panel{width:100%;height:100dvh;max-height:100dvh;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);border-radius:0;overflow:hidden}.exercise-header{gap:12px;min-height:68px;padding:13px 16px}.exercise-header .icon-btn{width:35px;height:35px}.exercise-header>span:last-child{font-size:11px}.exercise-body{flex:1;min-height:0;padding:24px 23px;overflow:auto}.exercise-body>.eyebrow{font-size:8px;line-height:1.7}.exercise-body>h2{margin-top:13px;font-size:23px}.question-word{gap:17px;padding:24px 0}.word-emoji{font-size:42px}.question-word .speak,.question-word h3{font-size:22px}.answer-options{gap:12px;margin-top:0}.answer-option{gap:12px;min-height:60px;padding:14px 15px;font-size:13px;line-height:1.7}.option-number{width:23px;height:23px;font-size:10px}.exercise-footer{flex-direction:column;align-items:stretch;gap:13px;padding:16px 23px 20px;display:flex}.exercise-footer>.hint{text-align:center;order:1;max-width:none;font-size:9px}.exercise-footer>.primary{width:100%;min-height:48px;font-size:13px}.feedback strong{font-size:15px}.feedback .speak{font-size:13px;line-height:1.6}.feedback>span:last-child{font-size:11px}.listening{padding:24px 0 20px}.listen-big{border-radius:20px;gap:10px;padding:23px 35px;font-size:13px}.listen-big svg{width:35px}.typing-input{font-size:16px!important}.letter-keys{gap:7px}.letter-keys button{min-width:35px;min-height:39px}.word-tile{padding:11px 12px;font-size:13px}.sentence-slots{gap:7px;min-height:100px;margin-bottom:24px}.word-bank{gap:8px}.result-panel{padding:40px 24px calc(40px + env(safe-area-inset-bottom));justify-content:center;overflow-y:auto}.result-panel h1{font-size:30px}.result-panel>p{font-size:12px}.result-medal{width:120px;height:120px;margin-bottom:27px}.result-stats{gap:40px;margin:30px 0}.result-stats strong{font-size:30px}.result-panel>.primary{width:100%;margin-top:26px}.flash-card{flex:1;justify-content:center;min-height:0;padding:25px 24px}.flash-card .flash-emoji{font-size:78px}.flash-prompt p{margin:25px 0;font-size:13px}.flip-answer h2{font-size:20px}.flip-answer .speak{font-size:14px;line-height:1.75}.flip-answer p{font-size:11px}.rating-footer{padding:17px 15px 23px}.rating-buttons{gap:7px}.rating-buttons button{padding:14px 4px}.rating-buttons strong{font-size:11px}.rating-buttons span{font-size:9px}.tutor-modal{height:calc(100dvh - env(safe-area-inset-top) - 10px)}.tutor-top{gap:10px;padding:15px 20px}.tutor-top strong{font-size:12px}.tutor-top small{font-size:9px}.tutor-start{padding:30px 23px}.tutor-start h2{font-size:24px}.tutor-start p{font-size:12px}.topic-choices{gap:9px}.topic-choices button{padding:12px 14px;font-size:11px}.chat-messages{gap:17px;padding:22px 17px}.chat-message{max-width:95%;padding:14px}.chat-message>.speak-wrap .speak{gap:9px;font-size:13px}.chat-message .speak svg{width:16px}.chat-message>p{font-size:11px}.correction{font-size:10px}.chat-hint{padding:4px 20px}.chat-input{padding:12px 17px 0}.chat-input input{min-width:0;padding:12px;font-size:16px}.chat-input .letter-keys button{min-width:32px;min-height:33px;font-size:16px}.tutor-disclaimer{padding:10px;font-size:8px}.toast{bottom:calc(93px + env(safe-area-inset-bottom));text-align:center;min-width:240px;padding:14px 18px;font-size:12px}.login-page{flex-direction:column;min-height:100dvh;display:flex}.login-art{display:none}.login-form{padding:30px 27px calc(40px + env(safe-area-inset-bottom));max-width:450px;margin:auto}.login-form .mobile-brand{margin-bottom:65px}.login-form .brand svg{width:37px;height:37px}.login-form .brand>span{font-size:34px}.login-welcome{margin-bottom:22px;font-size:51px}.login-form h2{font-size:31px}.login-form>p{margin-bottom:32px;font-size:13px}.login-form>.eyebrow{font-size:9px}.login-form label{font-size:12px}.password-input input{padding:16px;font-size:16px}.login-form form>.primary{min-height:51px;font-size:14px}.private-note{font-size:10px;line-height:1.8}.add-form input{font-size:16px!important}.add-form>.secondary{font-size:11px}.emoji-picker{justify-content:space-between;gap:3px}.emoji-picker button{width:35px;height:37px;font-size:23px}.about-course .note{font-size:10px}}@media (width<=370px){.page-content,.topbar{padding-left:16px;padding-right:16px}.page-heading h1{font-size:24px}.hero{padding:23px 18px}.hero h2{font-size:26px}.hero-art{width:46%;right:-20px}.hero p{max-width:205px;font-size:10px}.hero .primary{padding:12px 14px;font-size:10px}.quick-card{padding:15px 12px}.quick-card h3{font-size:12px}.quick-card .card-link{font-size:9px}.dictionary-grid{gap:9px}.dictionary-card{padding:12px}.filter-tabs button{padding:12px 9px;font-size:9px}.letter-keys{gap:5px}.letter-keys button{min-width:32px}.exercise-body{padding:23px 19px}.exercise-body>h2{font-size:21px}.answer-option{font-size:12px}.lesson-card-body{padding:12px}.lesson-card p{font-size:9px}.goal-card{padding:13px 10px}.week-dots span{width:14px;height:14px}.daily-phrase{padding:17px 13px}.daily-phrase .speak{font-size:16px}.top-stats{gap:10px}.profile-stats span{font-size:8px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important}}.voice-previews{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.voice-previews .secondary{min-height:44px}.daily-plan,.program-intro{background:var(--surface,#fff);border:1px solid var(--line,#e5e8e4);border-radius:24px;margin:24px 0;padding:24px}.daily-plan select{color:#244c3d;font:inherit;background:#f8faf7;border:1px solid #d8e2dc;border-radius:12px;max-width:150px;padding:9px;font-size:13px}.plan-steps{gap:10px;margin-top:18px;display:grid}.plan-steps>button{text-align:left;color:inherit;background:#f5f8f3;border-radius:16px;align-items:center;gap:14px;padding:16px;display:flex}.plan-steps b{color:#829887;font-size:13px}.plan-steps span{flex:1}.plan-steps small,.checkpoint-card small{color:#6e7c73;margin-top:4px;font-size:12px;line-height:1.6;display:block}.level-tabs{margin-bottom:24px}.level-tabs button{font-size:20px;padding:16px!important}.level-tabs small{margin-top:4px;font-size:11px;font-weight:500;display:block}.program-intro h2{max-width:700px;margin:12px 0;font-size:23px;line-height:1.45}.program-intro p{color:#617067;font-size:13px;line-height:1.7}.checkpoint-card{text-align:left;color:#284c3e;background:#eff5ef;border:1px dashed #aac5b6;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;width:100%;margin-top:14px;padding:20px;display:flex}.skill-dots{flex-wrap:wrap;gap:5px;margin:15px 0;display:flex}.skill-dots span{color:#727d74;background:#f2f3ef;border-radius:6px;padding:4px 6px;font-size:9px}.skill-dots span.done{color:#31674a;background:#dcefe1}.lesson-skill-nav{flex-shrink:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 25px 0;display:grid}.lesson-skill-nav button{color:#52685a;background:#fff;border:1px solid #dce4dc;border-radius:10px;min-height:44px;padding:10px;font-size:12px;line-height:1.4}.lesson-skill-nav button.active{color:#fff;background:#245540;border-color:#245540}.learning-content{gap:18px;min-width:0;display:grid}.learning-content h3{font-size:21px;line-height:1.5}.learning-content p{overflow-wrap:anywhere;margin:0;line-height:1.75}.learning-content .prose{white-space:pre-line}.learning-content .primary,.learning-content .secondary{justify-self:start;max-width:100%}.learning-content .example-box{margin:0;padding:18px}.learning-content .example-box .speak{white-space:normal;text-align:left}.learning-content input,.learning-content textarea{color:#203f30;background:#fff;border:1px solid #bdcfc1;border-radius:12px;width:100%;min-width:0;padding:15px;font-family:inherit;font-size:17px;line-height:1.6}.learning-content textarea{resize:vertical}.learning-content .letter-keys{margin-top:0}.learning-content .passage{background:#f3f7f1;border-radius:16px;gap:14px;padding:20px;display:grid}.passage .speak{text-align:left;white-space:normal;overflow-wrap:anywhere;align-items:flex-start;font-size:17px;line-height:1.9;display:flex}.passage .speak svg{flex-shrink:0;margin-top:5px}.reveal{justify-self:start;color:#667e6f!important;font-size:12px!important}.translation{color:#5c6c61;border-top:1px solid #dce5db;padding-top:14px;font-size:14px}.answer-options{gap:10px;display:grid}.answer-options button{text-align:left;color:#304e3e;background:#fff;border:1px solid #d9e2d9;border-radius:12px;padding:16px;line-height:1.5}.answer-options button.selected{background:#ecf4e9;border:2px solid #487a5a;padding:15px}.answer-options button.correct{background:#dcf2df;border-color:#76af7e}.answer-feedback{background:#f9eee4;border-radius:16px;gap:12px;padding:20px;display:grid}.answer-feedback.correct{background:#eaf5e7}.task-checklist{margin:0;padding-left:22px;font-size:14px;line-height:1.8}.recording-panel{background:#eff4f0;border-radius:16px;gap:14px;padding:18px;display:grid}.recording-panel p,.recording-panel small{color:#637268;font-size:12px;line-height:1.7}.recording-panel audio{width:100%;max-width:100%}.record-button{color:#fff;background:#25563f;border-radius:12px;justify-self:start;align-items:center;gap:10px;padding:14px 20px;display:flex}.record-button.recording{background:#a43e35}.production-actions{flex-wrap:wrap;gap:10px;display:flex}.assessment{background:#f2f6ed;border-radius:18px;gap:16px;padding:20px;display:grid}.assessment details summary{cursor:pointer;font-size:13px}.criteria-scores{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.criteria-scores span{background:#fff;border-radius:10px;padding:10px;font-size:12px}.criteria-scores b{margin-top:5px;font-size:18px;display:block}.answer-label{font-size:13px;font-weight:700}.learning-content button:disabled{opacity:.6;cursor:default}@media (width<=600px){.daily-plan,.program-intro{border-radius:20px;padding:18px}.daily-plan .section-heading{align-items:flex-start;gap:8px}.daily-plan .section-heading h2{font-size:18px}.daily-plan select{max-width:136px;font-size:12px}.plan-steps>button{gap:10px;padding:14px}.plan-steps strong{font-size:13px}.level-tabs button{font-size:19px;padding:12px 5px!important}.level-tabs small{font-size:9px}.program-intro h2{font-size:19px}.lesson-skill-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 20px 0}.learning-content h3{font-size:19px}.learning-content .passage,.assessment{padding:16px}.learning-content .primary{width:100%;font-size:13px}.learning-content .section-heading{gap:10px}.checkpoint-card{padding:16px}.checkpoint-card strong{font-size:14px}.learning-content .speak{overflow-wrap:anywhere;white-space:normal;text-align:left}}.progress-explainer{color:#6b796e;margin:12px 0;font-size:12px}.progress-explainer summary{cursor:pointer}.progress-explainer p{margin:10px 0;font-size:12px}.program-intro .progress-track{margin-top:18px}@media (width<=600px){.program-map .program-intro h2{font-size:17px}.program-intro p{font-size:12px}.lesson-modal-title{gap:16px!important;padding:20px!important}.lesson-modal-title>span{font-size:42px!important}.lesson-modal-title h2{font-size:25px!important;line-height:1.25!important}.lesson-modal-title small{font-size:10px!important}.lesson-modal-title .speak{font-size:13px!important}.learning-content h3{font-size:18px}}.lesson-tabs button{min-height:44px;line-height:1.4}.lesson-word-list .icon-only{min-width:44px;min-height:44px}.production-actions{gap:12px}@media (width<=600px){.lesson-tabs{gap:6px}.lesson-tab-content{min-height:100px;padding:20px}.lesson-skill-nav button{padding:10px 8px}.filter-tabs{flex-wrap:wrap;gap:8px;overflow:visible}.letter-keys{flex-wrap:wrap;gap:8px}.letter-keys button{min-width:38px;min-height:42px}.word-detail>.speak-wrap+.speak-wrap{margin-top:10px}}@media (width<=600px) and (height<=740px){.lesson-modal-title{gap:12px!important;padding:12px 20px!important}.lesson-modal-title>span{font-size:32px!important}.lesson-modal-title h2{font-size:21px!important}.lesson-tabs{margin-top:10px}.lesson-tab-content{padding-top:16px}}:root{--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.2, .9, .25, 1.25)}.sound-bars{vertical-align:middle;flex:0 0 19px;justify-content:center;align-items:center;gap:2px;width:19px;height:19px;display:inline-flex}.sound-bars i{background:currentColor;border-radius:3px;width:3px;height:7px;display:block}.sound-bars i:nth-child(2){height:15px}.sound-bars i:nth-child(3){height:11px}.sound-bars i:nth-child(4){height:9px}.speak.is-playing{color:#267961}.speak.icon-only.is-playing{background:#dceee1}.listen-big>.sound-bars{display:none}.result-medal,.achievement-mark{isolation:isolate;position:relative}.achievement-mark{color:#397c56;background:#e1f0de;border-radius:22px;place-items:center;width:64px;height:64px;margin:16px auto;display:grid}.celebration{pointer-events:none;z-index:-1;width:0;height:0;position:absolute;top:50%;left:50%}.celebration i{opacity:0;background:#8aac6b;border-radius:3px;width:7px;height:12px;position:absolute}.celebration i:nth-child(3n){background:#e6b67b;border-radius:50%;width:8px;height:8px}.celebration i:nth-child(3n+1){background:#64a492}@media (prefers-reduced-motion:no-preference){.motion-page{animation:.42s ease-out content-fade}.lesson-tab-content,.exercise-body,.retrieval{animation:.32s ease-out content-fade}.flash-card{animation:.34s ease-out content-fade}.flip-answer{transform-origin:top;animation:.36s ease-out content-fade}.flash-card.is-revealed{animation:.36s ease-out content-fade}.rating-footer{animation:content-arrive .26s var(--ease-out)}.feedback,.answer-feedback,.assessment,.confirm-box,.translation{animation:content-arrive .24s var(--ease-out)}.feedback-success .feedback strong,.answer-feedback.correct strong{animation:success-arrive .34s var(--ease-spring)}.answer-option.correct-option>svg{animation:success-arrive .35s var(--ease-spring)}.sentence-slots .word-tile{animation:tile-place .18s var(--ease-spring)}.toast{animation:toast-arrive .26s var(--ease-out)}.sync-banner{animation:content-arrive .22s var(--ease-out)}.result-medal>svg,.achievement-mark>svg{animation:medal-arrive .55s var(--ease-spring)}.result-stats>div{animation:content-arrive .36s var(--ease-out) .1s backwards}.result-stats>div:nth-child(2){animation-delay:.16s}.celebration i{animation:petal-burst .85s var(--ease-out) var(--petal-delay) both}.stat-update{animation:stat-arrive .4s var(--ease-out);display:inline-block}.greeting-wave{transform-origin:70% 75%;animation:1.4s ease-in-out .25s hello-wave;display:inline-block}.hero-art .art-steam{animation:1.5s ease-in-out 3 tea-steam}.hero-art .art-sun{transform-box:fill-box;transform-origin:50%;animation:sun-arrive 1.4s var(--ease-out)}.pulse-dot{animation:1.4s ease-in-out 3 step-pulse}.progress-track>div{transition:width .55s var(--ease-out)}.goal-ring{animation:success-arrive .5s var(--ease-out)}.motion-page button,.overlay button,.mobile-nav button,.sidebar button{transition:background-color .18s ease, border-color .18s ease, color .18s ease, box-shadow .22s ease, transform .2s var(--ease-out), scale .14s var(--ease-out)}button:not(:disabled):active{scale:.97}.icon-btn:not(:disabled):active,.speak:not(:disabled):active{scale:.92}.lesson-card,.dictionary-card,.quick-card,.practice-card{transition:box-shadow .22s ease, border-color .2s ease, transform .22s var(--ease-out), scale .14s var(--ease-out)}.favorite.is-favorite svg{animation:star-save .38s var(--ease-spring)}.segmented button.active,.lesson-skill-nav button.active{animation:selection-settle .22s var(--ease-out)}.mobile-nav button>span,.sidebar nav button svg{transition:background-color .22s, transform .22s var(--ease-spring)}.mobile-nav button.active svg,.sidebar nav button.active svg{animation:nav-settle .36s var(--ease-spring)}.sound-bars i{animation:.65s ease-in-out infinite alternate sound-wave}.sound-bars i:nth-child(2){animation-delay:-300ms}.sound-bars i:nth-child(3){animation-delay:-150ms}.sound-bars i:nth-child(4){animation-delay:-450ms}.listen-big.is-playing>svg:first-child{animation:.9s ease-in-out infinite alternate listening-breathe}.record-button.recording svg{animation:1s ease-in-out infinite alternate recording-breathe}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.lesson-card:hover,.dictionary-card:hover,.quick-card:hover,.practice-card:hover{border-color:#bfcfb3;transform:translateY(-3px);box-shadow:0 10px 24px #244c3910}.primary>svg:last-child,.text-button>svg:last-child{transition:translate .18s var(--ease-out)}.primary:hover>svg:last-child,.text-button:hover>svg:last-child{translate:3px}.lesson-card:hover .lesson-art>span:first-child{transform:translateY(-3px)rotate(-4deg)}.lesson-art>span:first-child{transition:transform .25s var(--ease-spring)}}@media (prefers-reduced-motion:reduce){.spin{animation:none!important}.celebration{display:none}.motion-page,.modal,.exercise-panel,.flash-card,.flip-answer{animation:none!important}}@keyframes page-arrive{0%{opacity:.5;translate:0 9px}to{opacity:1;translate:0}}@keyframes content-arrive{0%{opacity:.45;translate:0 7px}to{opacity:1;translate:0}}@keyframes veil-arrive{0%{background-color:#203a2d00}}@keyframes veil-leave{to{opacity:0}}@keyframes sheet-arrive{0%{opacity:.65;translate:0 22px;scale:.985}to{opacity:1;translate:0;scale:1}}@keyframes sheet-leave{to{opacity:0;translate:0 14px;scale:.99}}@keyframes answer-unfold{0%{opacity:0;transform:perspective(700px)rotateX(-9deg)translateY(7px)}to{opacity:1;transform:none}}@keyframes card-reveal{0%{transform:perspective(900px)rotateY(-5deg)}to{transform:perspective(900px)rotateY(0)}}@keyframes success-arrive{0%{opacity:.4;scale:.9}to{opacity:1;scale:1}}@keyframes tile-place{0%{opacity:.5;translate:0 4px;scale:.92}to{opacity:1;translate:0;scale:1}}@keyframes toast-arrive{0%{opacity:0;translate:0 12px}to{opacity:1;translate:0}}@keyframes medal-arrive{0%{opacity:0;rotate:-14deg;scale:.65}70%{rotate:4deg;scale:1.08}to{opacity:1;rotate:0deg;scale:1}}@keyframes petal-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}20%{opacity:.85}to{opacity:0;transform:translate(var(--petal-x), var(--petal-y)) rotate(var(--petal-turn)) scale(.6)}}@keyframes stat-arrive{0%{opacity:.4;translate:0 5px}to{opacity:1;translate:0}}@keyframes hello-wave{0%,to{rotate:0deg}20%,60%{rotate:16deg}40%,80%{rotate:-9deg}}@keyframes tea-steam{0%,to{opacity:.5;translate:0}50%{opacity:1;translate:0 -4px}}@keyframes sun-arrive{0%{opacity:.3;scale:.7}to{opacity:1;scale:1}}@keyframes step-pulse{0%,to{box-shadow:0 0 #7b9c6d00}50%{box-shadow:0 0 0 4px #7b9c6d20}}@keyframes star-save{0%{rotate:-15deg;scale:.8}60%{rotate:8deg;scale:1.22}to{rotate:0deg;scale:1}}@keyframes selection-settle{0%{opacity:.6}to{opacity:1}}@keyframes nav-settle{0%{translate:0 2px;scale:.9}60%{translate:0 -2px;scale:1.06}to{translate:0;scale:1}}@keyframes sound-wave{0%{scale:1 .45}to{scale:1}}@keyframes listening-breathe{0%{opacity:.7;scale:.97}to{opacity:1;scale:1.04}}@keyframes recording-breathe{0%{opacity:.4}to{opacity:1}}.overlay{-webkit-backdrop-filter:none}.modal,.exercise-panel{overscroll-behavior:contain}@keyframes content-fade{0%{opacity:.65}to{opacity:1}}.sheet-grip{display:none}@media (width<=760px){.sheet-grip{-webkit-user-select:none;user-select:none;flex:0 0 24px;justify-content:center;align-items:center;height:24px;display:flex}.sheet-grip span{background:#c6cebf;border-radius:4px;width:36px;height:4px;display:block}.modal-header,.exercise-header{padding-top:30px;position:relative}.modal-header{position:sticky}.modal-header>.sheet-grip,.exercise-header>.sheet-grip{position:absolute;top:0;left:0;right:0}.result-panel>.sheet-grip{margin-top:-16px;margin-bottom:12px}[data-dragging]{-webkit-user-select:none;user-select:none}}.modal-heading{flex:1;gap:3px;min-width:0;display:grid}.modal-heading>span{color:#849074;font-size:12px;font-weight:650}.modal-heading>small{color:#7c8a7a;font-size:10px}.modal-header{gap:10px}.guided-lesson{height:min(900px,100dvh - 50px);overflow:hidden}.guided-lesson .modal-header{min-height:62px;padding:10px 16px;position:relative}.guided-lesson .modal-heading>span{color:#294839;white-space:nowrap;text-overflow:ellipsis;font-size:15px;line-height:1.3;overflow:hidden}.lesson-reference-button{color:#486d56;background:#edf1e8;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;min-height:44px;padding:0 8px;font-size:12px;display:inline-flex}.guided-lesson .modal-header>.icon-btn{flex-shrink:0;width:44px;height:44px}.lesson-stepbar{flex-shrink:0;align-items:center;gap:8px;height:46px;padding:0 16px;display:flex}.lesson-stepbar>.icon-btn{flex-shrink:0;width:40px;min-height:44px}.lesson-stepbar>.icon-btn:disabled{opacity:.28}.lesson-stepbar>div{flex:1;align-items:baseline;gap:9px;min-width:0;display:flex}.lesson-stepbar small{color:#7d8977;white-space:nowrap;font-size:11px}.lesson-stepbar strong{color:#34533f;font-size:13px;font-weight:650;line-height:1.3}.step-count{display:none}.lesson-route-progress{background:#edf0e7;flex-shrink:0;height:3px}.lesson-route-progress>span{background:#779867;height:100%;transition:width .22s;display:block}.guided-lesson>.flow-body{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:18px 26px 24px;overflow-y:auto}.flow-body>*{max-width:680px;margin-left:auto;margin-right:auto}.flow-body .step-instruction{color:#657460;margin:0 0 12px;font-size:14px;line-height:1.65}.flow-body h3,.reference-body h3{margin:0 0 14px;font-size:18px;line-height:1.45}.flow-body .lesson-word-list>div,.reference-body .lesson-word-list>div{gap:12px;padding:10px 0}.flow-body .word-info strong{font-size:17px}.flow-body .word-info small{margin-top:3px;font-size:13px;line-height:1.5}.flow-body .lesson-word-list .speak.icon-only{border-radius:13px;width:44px;min-width:44px;height:44px}.formatted-text{overflow-wrap:anywhere;font-size:15px;line-height:1.8}.formatted-text p,.formatted-text .text-paragraph{margin:0 0 13px;display:block}.formatted-text p:last-child,.formatted-text .text-paragraph:last-child{margin-bottom:0}.formatted-text .az-term{color:#366248;font-weight:650}.lesson-notes{gap:14px;display:grid}.lesson-notes>h3{margin:0}.study-hint{color:#788671;font-size:13px;line-height:1.65}.pattern-list{border:1px solid #e4e8dd;border-radius:14px;gap:0;display:grid;overflow:hidden}.pattern-list>div{background:#f1f5ec;padding:12px 15px}.pattern-list>div+div{border-top:1px solid #e1e7da}.pattern-list .speak{text-align:left;white-space:normal;font-size:16px;line-height:1.6}.pattern-list p{color:#77836d;margin:5px 0 0;font-size:13px;line-height:1.6}.lesson-pitfall{background:#f4eee2;border-left:3px solid #c6a76c;border-radius:13px;padding:14px 16px;font-size:14px;line-height:1.75}.lesson-pitfall>strong{margin-bottom:5px;display:block}.lesson-pitfall .formatted-text{font-size:14px}.lesson-pitfall p{margin:0}.dialogue-section{margin-top:24px}.lesson-conversation{gap:9px;display:grid}.conversation-line{align-items:flex-start;gap:9px;display:flex}.speaker-label{color:#688158;background:#e6ecdf;border-radius:50%;flex:0 0 24px;place-items:center;width:24px;height:24px;margin-top:10px;font-size:10px;font-weight:700;display:grid}.conversation-line>div{background:#eef2e6;border-radius:13px;flex:1;min-width:0;padding:10px 13px}.conversation-line:nth-child(2n)>div{background:#f2ebe2}.conversation-line .speak{white-space:normal;text-align:left;font-size:16px;line-height:1.55}.conversation-line p{color:#74816a;margin:5px 0 0;font-size:13px;line-height:1.55}.lesson-flow-footer{padding:10px 18px calc(10px + env(safe-area-inset-bottom));background:#fbfaf5;border-top:1px solid #e3e7dc;flex-shrink:0}.lesson-flow-footer>.primary{border-radius:13px;justify-content:space-between;gap:10px;width:100%;min-height:46px;padding:10px 14px;font-size:14px;line-height:1.4}.flow-body .learning-content{gap:14px}.flow-body .learning-content h3{font-size:18px}.flow-body .learning-content .primary,.flow-body .learning-content .secondary{min-height:44px;padding:11px 15px;font-size:14px;line-height:1.45}.flow-body .answer-options button{min-height:44px;padding:12px 14px;font-size:15px;line-height:1.55}.flow-body .answer-options button.selected{padding:11px 13px}.flow-body .passage{gap:12px;padding:15px}.flow-body .passage>.speak-wrap .speak{font-size:16px;line-height:1.8}.flow-body .passage .formatted-text{text-align:left;font-size:16px}.flow-body .answer-feedback{gap:10px;padding:15px}.flow-body .retrieval-result>.achievement-mark{border-radius:14px;width:44px;height:44px;margin:0}.flow-body .retrieval-result h2{font-size:24px}.flow-body .production>.eyebrow{display:none}.flow-body .task-checklist{padding-left:20px;font-size:14px;line-height:1.75}.flow-body .task-checklist li+li{margin-top:5px}.flow-body .recording-panel{gap:10px;padding:14px}.flow-body .production textarea{padding:12px;font-size:16px;line-height:1.65}.flow-body .flow-continue{justify-content:space-between;width:100%}.practice-intro p,.lesson-finish p{font-size:15px;line-height:1.8}.finish-check{color:#52763c;background:#e5edda;border-radius:16px;place-items:center;width:48px;height:48px;margin-bottom:16px;display:grid}.route-recap{gap:0;margin:18px 0;padding:0;list-style:none;display:grid}.route-recap li{border-bottom:1px solid #e7eadd;justify-content:space-between;align-items:center;padding:9px 0;font-size:14px;display:flex}.route-recap li>span{align-items:center;gap:9px;display:flex}.pending-dot{border:1px solid #b5bfa9;border-radius:50%;width:12px;height:12px}.lesson-reference{width:710px}.reference-body{font-size:15px;line-height:1.8}.reference-body>details{border-bottom:1px solid #e2e6da;margin-bottom:12px;padding:4px 0 16px}.reference-body summary{color:#345a41;cursor:pointer;min-height:44px;padding:12px 0;font-weight:650}.reference-body details[open]>summary{margin-bottom:10px}.reference-body .speak{white-space:normal;text-align:left;font-size:16px;line-height:1.8}.reference-body>details>section+section{margin-top:22px}.reference-body ul,.reference-body ol{padding-left:21px}.reference-body li+li{margin-top:6px}.reference-hint{background:#eef3e6;border-radius:12px;margin:0 0 14px;padding:12px;font-size:13px;line-height:1.65}@media (width<=760px){.guided-lesson{height:calc(100dvh - env(safe-area-inset-top) - 14px);max-height:calc(100dvh - env(safe-area-inset-top) - 14px);padding-bottom:0}.guided-lesson .modal-header{gap:6px;min-height:64px;padding:18px 10px 2px}.guided-lesson .modal-header>.sheet-grip{height:16px}.guided-lesson .modal-heading>span{font-size:14px}.guided-lesson .modal-heading>small{font-size:10px}.lesson-reference-button{gap:4px;padding:0 6px;font-size:11px}.lesson-stepbar{gap:5px;height:44px;padding:0 10px}.lesson-stepbar>div{gap:7px}.lesson-stepbar strong{font-size:12px}.lesson-stepbar small{font-size:10px}.guided-lesson>.flow-body{padding:14px 18px 20px}.flow-body .word-info strong{font-size:16px}.flow-body .word-info small{font-size:12px}.flow-body .lesson-word-list>div{padding:9px 0}.flow-body .word-picture{--picture-size:44px}.lesson-flow-footer{padding:8px 14px calc(8px + env(safe-area-inset-bottom))}.flow-body .learning-content h3,.reference-body h3{font-size:17px}.reference-body{padding:18px!important}.formatted-text{font-size:15px;line-height:1.8}.flow-body .learning-content .section-heading{margin-bottom:0}.flow-body .learning-content .example-box{padding:14px}.flow-body .learning-content>.eyebrow{font-size:10px}.flow-body .recording-panel small{font-size:11px}}@media (width<=360px){.guided-lesson .modal-heading>span{font-size:13px}.lesson-reference-button span{display:none}.lesson-reference-button{width:44px}.lesson-stepbar>div{gap:1px;display:grid}.lesson-stepbar strong{font-size:12px}.guided-lesson>.flow-body{padding-left:14px;padding-right:14px}}@media (prefers-reduced-motion:reduce){.lesson-route-progress>span{transition:none}}.reference-stage{text-align:left;color:#486841;background:0 0;border-bottom:1px solid #e4e9dc;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:44px;padding:11px 2px;font-size:14px;display:flex}.flow-body .learning-content>.section-heading,.flow-body .passage>h3{margin:0}.flow-body .passage .formatted-text,.reference-body .speak .formatted-text{color:#34533f;font-weight:450}.daily-garden{color:#36513d;background:#f3f4e9;border:1px solid #e0e5d5;border-radius:22px;padding:22px}.garden-heading{align-items:center;gap:10px;display:flex}.garden-heading>div{flex:1}.garden-heading h3{margin:8px 0;font-size:19px;line-height:1.35}.garden-heading p{color:#75816b;margin:0;font-size:12px;line-height:1.6}.growing-plant{flex-shrink:0;width:92px;height:92px}.plant-leaf,.plant-flower{transform-box:fill-box;transform-origin:bottom;transition:opacity .4s}.growth-1 .leaf-left,.growth-2 .leaf-right,.growth-3 .plant-flower{animation:.6s cubic-bezier(.2,.8,.2,1) both plant-unfurl}@keyframes plant-unfurl{0%{transform:scale(.7)rotate(-7deg)}to{transform:scale(1)rotate(0)}}.daily-garden ul{gap:12px;margin:18px 0 10px;padding:0;list-style:none;display:grid}.daily-garden li{align-items:center;gap:10px;font-size:13px;line-height:1.5;display:flex}.mission-mark{color:#748166;background:#e5e9dc;border-radius:10px;flex:0 0 30px;place-items:center;height:30px;font-size:10px;display:grid}.mission-done .mission-mark{color:#4c733d;background:#dcebcf}.mission-details{font-size:12px;line-height:1.65}.mission-details summary{cursor:pointer;color:#748166;align-items:center;min-height:44px;display:flex}.mission-details p{margin:0 0 10px}.garden-xp{flex-wrap:wrap;justify-content:space-between;gap:8px;margin:13px 0 18px;font-size:11px;display:flex}.garden-xp>div{background:#dfe5d6;border-radius:8px;width:100%;height:5px;overflow:hidden}.garden-xp i{background:#7e9e64;height:100%;transition:width .35s;display:block}.daily-garden>.secondary{justify-content:space-between;width:100%;min-height:44px;padding:11px 14px;font-size:13px}.achievement-cabinet{background:#fbfaf5;border:1px solid #e2e5d9;border-radius:22px;margin:26px 0;padding:24px}.achievement-cabinet .section-heading{margin:0 0 18px}.achievement-cabinet h2{font-size:19px}.achievement-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.achievement-badge{color:#798372;background:#f0f1e9;border-radius:16px;flex-direction:column;align-items:center;gap:9px;min-height:130px;padding:16px 8px;display:flex}.achievement-badge>span{background:#e5e8dd;border-radius:16px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;position:relative}.achievement-badge>span>svg+svg{color:#fff;background:#2c664d;border-radius:50%;width:18px;height:18px;padding:3px;position:absolute;bottom:0;right:-3px}.achievement-badge.earned{color:#375b37;background:#ecf2e1}.achievement-badge.earned>span{color:#608249;background:#dce9c7}.achievement-badge[aria-pressed=true]{outline-offset:2px;outline:2px solid #7f9c6a}.achievement-badge strong{font-size:12px;line-height:1.5}.achievement-badge small{font-size:10px}.achievement-explanation{margin:18px 0 0;font-size:14px;line-height:1.8}.answer-spark{color:#547240;align-items:center;gap:10px;max-width:100%;min-height:40px;font-size:12px;line-height:1.5;display:flex}.answer-spark svg{flex-shrink:0;width:36px;height:36px}.spark-again{color:#8b724e}.spark-check{stroke-dasharray:30;animation:.35s both draw-answer}.spark-rays{transform-origin:50%;animation:.45s both ray-answer}@keyframes draw-answer{0%{stroke-dashoffset:30px}to{stroke-dashoffset:0}}@keyframes ray-answer{0%{opacity:0;transform:scale(.65)}to{opacity:1;transform:scale(1)}}.repair-note{background:#f1eddf;border-radius:14px;padding:14px;font-size:14px;line-height:1.7}.repair-note strong{display:block}.practice-tools{border:1px solid #e1e7d9;border-radius:14px;margin-top:18px;padding:0 14px}.practice-tools>summary{color:#426448;cursor:pointer;min-height:48px;padding:13px 0;font-size:13px;font-weight:650}.practice-tools[open]>summary{margin-bottom:10px}.practice-tools>div{padding-bottom:14px}.practice-tools+.practice-tools{margin-top:10px}@media (width<=760px){.daily-garden,.achievement-cabinet{padding:18px}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.achievement-cabinet h2{font-size:17px}.achievement-badge{min-height:120px}.achievement-cabinet .section-heading{gap:12px}.answer-spark{font-size:12px}}@media (prefers-reduced-motion:reduce){.plant-leaf,.plant-flower,.garden-xp i{transition:none!important}.growing-plant *,.answer-spark *{animation:none!important}}.word-game-launch{text-align:left;color:#426341;background:#ebf0df;border:1px solid #dce5cb;border-radius:13px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:48px;margin:0 0 12px;padding:12px 14px;font-size:14px;font-weight:650;display:flex}.word-game-launch span{color:#7b876c;font-size:10px;font-weight:450}.word-detail>.echo-practice{text-align:left;width:100%}.exercise-footer .feedback .answer-spark{margin-bottom:6px}.quiz-chain-result{color:#587544;font-size:14px!important}.guided-lesson .flow-body>.echo-practice{margin-bottom:18px}@media (width<=760px){.dashboard-aside{grid-template-columns:minmax(0,1fr)!important}.daily-garden{min-width:0}.dashboard-aside .daily-phrase{min-height:180px}.garden-heading h3{font-size:19px}.garden-heading p{font-size:12px}}
