:root{color:#15213b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#15213b;--muted:#657089;--blue:#3155e7;--blue-dark:#2342bd;--blue-soft:#eef2ff;--orange:#ff7138;--orange-dark:#e85621;--green:#43b36a;--yellow:#ffd449;--line:#e3e7ef;--surface:#f7f9fd;--white:#fff;--shadow-sm:0 3px 0 #15213b14, 0 8px 24px #15213b0f;--shadow-button:0 4px 0 var(--blue-dark), 0 10px 22px #3155e738;background:#fff;font-family:Aptos,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#fff;min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline-offset:3px;outline:3px solid #3155e74d}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.button{cursor:pointer;border:0;border-radius:13px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 24px;font-size:16px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(2px);box-shadow:none!important}.button.primary{color:#fff;background:var(--blue);box-shadow:var(--shadow-button)}.button.primary:hover{background:#3b61f4}.button.secondary{color:var(--blue);border:2px solid var(--blue);background:#fff;box-shadow:0 3px #d8defc}.button.orange{color:#fff;background:var(--orange);box-shadow:0 4px 0 var(--orange-dark), 0 10px 22px #ff71382e}.button.small{border-radius:11px;min-height:44px;padding:0 19px;font-size:14px}.button.full{width:100%}.button svg{stroke-width:2.5px;width:19px;height:19px}.text-button,.brand-button,.marketing-nav button,.marketing-footer button{cursor:pointer;background:0 0;border:0;font-weight:750}.brand-lockup{align-items:center;gap:9px;display:inline-flex}.brand-glyph{color:#fff;background:var(--blue);border-radius:10px 10px 10px 3px;place-items:center;width:38px;height:38px;font-size:25px;font-weight:900;display:grid;transform:rotate(-3deg);box-shadow:inset 0 -4px #0000001f}.brand-name{color:var(--ink);letter-spacing:-1.3px;font-size:27px;font-weight:900;line-height:1}.brand-name span{color:var(--blue)}.brand-lockup.compact .brand-glyph{width:33px;height:33px;font-size:22px}.brand-lockup.compact .brand-name{font-size:23px}.landing-page{background:#fff;min-height:100vh;overflow:hidden}.marketing-header{z-index:10;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;width:min(1380px,100% - 56px);height:82px;margin:0 auto;display:grid;position:relative}.brand-button{justify-self:start;padding:0}.marketing-nav{gap:36px;display:flex}.marketing-nav button{padding:10px 2px;font-size:15px}.marketing-nav button:hover,.text-button:hover{color:var(--blue)}.header-actions{justify-self:end;align-items:center;gap:22px;display:flex}.landing-hero{grid-template-columns:.9fr 1.1fr;align-items:center;gap:42px;width:min(1380px,100% - 56px);min-height:670px;margin:0 auto;padding:44px 0 72px;display:grid}.hero-copy{z-index:2;position:relative}.hero-copy h1{color:#0f1d3c;letter-spacing:-5px;max-width:620px;margin:0;font-size:clamp(58px,6.1vw,92px);font-weight:900;line-height:.96}.hero-copy h1 span{color:var(--blue)}.hero-copy>p{color:#34415b;max-width:570px;margin:34px 0 28px;font-size:21px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.hero-note{color:var(--muted);align-items:center;gap:8px;margin-top:26px;font-size:14px;font-weight:700;display:flex}.hero-note svg{color:var(--green);stroke-width:3px}.hero-visual{min-height:535px;position:relative}.keyboard-stage{background:#f6f6f4;border:1px solid #e7e7e2;border-radius:25px;width:700px;max-width:96%;padding:22px 25px 28px;position:absolute;top:48px;right:3%;transform:perspective(1000px)rotateX(8deg)rotate(-6deg);box-shadow:0 40px 70px #15213b2e,0 9px #deded9}.keyboard-caption{color:#596276;letter-spacing:.2px;margin:0 0 16px 5px;font-size:13px;font-weight:800}.guide{object-fit:contain}.hero-guide{z-index:3;filter:drop-shadow(0 22px 20px #1e38aa30);width:238px;height:270px;position:absolute;bottom:-2px;right:-4px}.floating-letter{width:62px;height:62px;box-shadow:var(--shadow-sm);color:var(--blue);background:#fff;border-radius:16px;place-items:center;font-size:32px;font-weight:900;animation:4s ease-in-out infinite float;display:grid;position:absolute}.letter-one{color:var(--orange);top:4%;left:9%;transform:rotate(-8deg)}.letter-two{animation-delay:-.7s;top:5%;right:11%}.letter-three{color:var(--green);animation-delay:-1.3s;bottom:10%;left:18%}@keyframes float{50%{translate:0 -11px;rotate:3deg}}.path-section{background:linear-gradient(#fff 0%,#f8faff 45%,#fff 100%);padding:90px 28px 112px}.section-heading{text-align:center}.section-heading h2,.adaptive-copy h2,.progress-copy h2,.final-cta h2{color:#102044;letter-spacing:-2.4px;margin:0;font-size:clamp(38px,4vw,58px);font-weight:900;line-height:1.05}.section-heading p{color:var(--muted);margin:15px 0 0;font-size:18px}.landing-path{grid-template-columns:repeat(6,1fr);gap:20px;width:min(1260px,100%);margin:68px auto 0;display:grid;position:relative}.path-dash{opacity:.85;background:url("data:image/svg+xml,%3Csvg width='1100' height='120' viewBox='0 0 1100 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 70 C150 5 210 120 360 55 S620 15 730 70 S930 110 1095 45' fill='none' stroke='%233155e7' stroke-width='3' stroke-dasharray='10 11'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;height:120px;position:absolute;top:28px;left:7%;right:7%}.path-stop{z-index:1;text-align:center;position:relative}.path-stop:nth-child(2n){transform:translateY(30px)}.path-number{z-index:2;color:#fff;border-radius:50%;place-items:center;width:27px;height:27px;font-size:12px;font-weight:900;display:grid;position:absolute;top:-10px;left:50%;translate:-50%}.color-0,.color-3{background:var(--blue)}.color-1{background:var(--orange)}.color-2{background:var(--green)}.path-orb{width:116px;height:116px;color:var(--blue);background:#fff;border:1px solid #e5e8ef;border-radius:50%;place-items:center;margin:0 auto 24px;font-size:37px;font-weight:900;display:grid;box-shadow:0 8px #eef0f5,0 16px 30px #15213b17}.path-stop:nth-of-type(3n) .path-orb{color:var(--orange)}.path-stop:nth-of-type(4n) .path-orb{color:var(--green)}.path-stop h3{margin:0 0 9px;font-size:17px}.path-stop p{max-width:145px;color:var(--muted);margin:auto;font-size:13px;line-height:1.45}.adaptive-section{background:#f5f7fb;border-radius:28px;grid-template-columns:1.25fr .75fr;align-items:center;gap:54px;width:min(1320px,100% - 56px);margin:10px auto 92px;padding:46px;display:grid}.product-preview{background:#fff;border:1px solid #dfe3ec;border-radius:18px;padding:22px;box-shadow:0 22px 55px #15213b21}.preview-toolbar{color:#39435a;justify-content:space-between;align-items:center;font-size:13px;font-weight:800;display:flex}.preview-toolbar span{align-items:center;gap:8px;display:flex}.preview-prompt{padding:24px 10px 18px}.preview-prompt small{color:var(--blue);font-weight:800}.preview-prompt>div{letter-spacing:5px;direction:rtl;justify-content:center;margin-top:9px;font-size:43px;font-weight:800;display:flex}.preview-prompt span{text-align:center;border-bottom:3px solid #0000;min-width:38px}.preview-prompt .current{color:var(--blue);border-color:var(--blue);background:var(--blue-soft);border-radius:6px 6px 0 0}.preview-stats{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:18px;padding-top:18px;display:grid}.preview-stats>span{color:var(--muted);border-right:1px solid var(--line);flex-direction:column;gap:3px;padding:0 14px;font-size:11px;display:flex}.preview-stats>span:last-child{border:0}.preview-stats strong{color:var(--ink);font-size:22px}.preview-stats .focus-stat strong{color:var(--orange)}.adaptive-copy h2{font-size:clamp(42px,4.5vw,66px)}.adaptive-copy h2 span{color:var(--blue)}.adaptive-copy>p{color:#46516a;margin:28px 0;font-size:17px;line-height:1.65}.adaptive-copy ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.adaptive-copy li{align-items:center;gap:10px;font-weight:800;display:flex}.adaptive-copy li svg{color:#fff;background:var(--green);stroke-width:4px;border-radius:50%;width:21px;height:21px;padding:4px}.progress-band{background:#fff9ec;border-radius:26px;grid-template-columns:160px 1.3fr repeat(3,.75fr);align-items:center;gap:22px;width:min(1320px,100% - 56px);min-height:270px;margin:0 auto 90px;padding:34px 42px;display:grid;overflow:hidden}.progress-character{height:220px;position:relative}.progress-character .guide{filter:drop-shadow(0 18px 14px #3155e72e);width:180px;height:205px;position:absolute;bottom:-30px;left:-26px}.growth-arrow{color:var(--green);position:absolute;top:2px;right:0;transform:scale(1.5)rotate(-8deg)}.progress-copy h2{letter-spacing:-1.7px;font-size:38px}.progress-copy h2 span{color:var(--blue)}.progress-copy p{color:var(--muted)}.progress-metric{border-left:1px solid #e6dfcf;align-items:flex-start;gap:12px;min-height:110px;padding-left:22px;display:flex}.progress-metric>svg{stroke-width:3px;width:31px;height:31px}.progress-metric span{flex-direction:column;display:flex}.progress-metric small{font-weight:800}.progress-metric strong{color:var(--ink);margin:4px 0;font-size:23px}.progress-metric em{color:var(--muted);font-size:11px;font-style:normal}.progress-metric.orange{color:var(--orange)}.progress-metric.green{color:var(--green)}.progress-metric.blue{color:var(--blue)}.final-cta{justify-content:center;align-items:center;gap:48px;width:min(1000px,100% - 56px);min-height:250px;margin:0 auto 20px;display:flex;position:relative}.final-cta .guide{align-self:flex-end;width:190px;height:220px}.final-cta h2{margin-bottom:26px}.cta-crown{color:var(--orange);width:48px;height:48px;position:absolute;top:35%;right:1%;transform:rotate(10deg)}.marketing-footer{border-top:1px solid var(--line);min-height:140px;color:var(--muted);grid-template-columns:auto 1fr auto auto;align-items:center;gap:28px;padding:28px max(28px,50% - 660px);font-size:13px;display:grid}.marketing-footer div{gap:22px;display:flex}.marketing-footer button{color:var(--ink)}.keyboard{-webkit-user-select:none;user-select:none;direction:ltr;gap:8px;width:100%;display:grid}.kb-row{justify-content:center;gap:7px;display:flex}.kb-row.row-1{padding-left:3%}.kb-row.row-2{padding-left:6%}.kb-key{background:#fff;border:1px solid #d9dde5;border-radius:8px;width:min(7vw,70px);height:58px;padding:7px 8px;transition:transform 80ms,background .12s,box-shadow 80ms;position:relative;box-shadow:0 4px #d7dae1,0 6px 9px #15213b14}.kb-yi{color:#151d31;font-size:24px;font-weight:750;position:absolute;top:50%;left:50%;translate:-50% -53%}.kb-en{color:#858da0;font-size:9px;font-weight:800;position:absolute;top:5px;left:7px}.kb-key.target{color:#fff;background:var(--blue);border-color:var(--blue);box-shadow:0 4px 0 var(--blue-dark), 0 0 0 5px #3155e721;animation:1.2s ease-in-out infinite key-pulse}.kb-key.target .kb-yi,.kb-key.target .kb-en{color:#fff}.kb-key.pressed{transform:translateY(4px);box-shadow:0 0 #d7dae1}.kb-key.error{background:#ff5b4d;border-color:#ff5b4d}.kb-key.home:not(.target):after{content:"";background:#cbd1dd;border-radius:3px;width:8px;height:2px;position:absolute;bottom:5px;left:50%;translate:-50%}.kb-row.row-space .space{width:42%;height:48px}.keyboard.compact,.keyboard.compact .kb-row{gap:5px}.keyboard.compact .kb-key{border-radius:7px;width:min(4.4vw,54px);height:43px;box-shadow:0 3px #d7dae1,0 4px 7px #15213b12}.keyboard.compact .kb-yi{font-size:18px}.keyboard.compact .kb-en{font-size:7px;top:3px;left:5px}.keyboard.compact .kb-row.row-space .space{height:36px}@keyframes key-pulse{50%{box-shadow:0 4px 0 var(--blue-dark), 0 0 0 9px #3155e70f}}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#0b142ba3;place-items:center;padding:24px;animation:.2s both fade-in;display:grid;position:fixed;inset:0}.auth-modal{background:#fff;border-radius:25px;grid-template-columns:.88fr 1.12fr;width:min(1000px,100%);max-height:calc(100vh - 48px);display:grid;position:relative;overflow:auto;box-shadow:0 30px 100px #0000004d}.modal-close{z-index:2;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:17px;right:17px}.modal-close svg{width:19px}.auth-art{background:var(--blue);color:#fff;flex-direction:column;justify-content:space-between;min-height:680px;padding:38px;display:flex;position:relative;overflow:hidden}.auth-art:before{content:"";border:60px solid #ffffff14;border-radius:50%;width:420px;height:420px;position:absolute;top:130px;left:-170px}.auth-art .brand-glyph{color:var(--blue);background:#fff;box-shadow:inset 0 -4px #dfe4ff}.auth-art .brand-name,.auth-art .brand-name span{color:#fff}.auth-art>div{z-index:1;position:relative}.auth-art h2{letter-spacing:-1.7px;margin:0;font-size:39px;line-height:1.03}.auth-art p{color:#e2e7ff;margin:18px 0 0;line-height:1.55}.auth-art>img{object-fit:contain;filter:drop-shadow(0 22px 20px #00000026);width:260px;height:300px;position:absolute;bottom:-24px;right:-30px}.auth-form-wrap{padding:50px 66px}.auth-back{color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:13px;font-weight:750;display:flex}.auth-back svg{width:16px}.auth-form-wrap>h2{letter-spacing:-1.3px;margin:30px 0 8px;font-size:34px}.auth-form-wrap>p{color:var(--muted);margin:0 0 25px;line-height:1.5}.google-button{cursor:pointer;background:#fff;border:1px solid #d9dee8;border-radius:12px;justify-content:center;align-items:center;gap:12px;width:100%;height:50px;font-weight:800;display:flex;box-shadow:0 3px #edf0f5}.google-mark{width:20px;height:20px}.auth-divider{background:var(--line);text-align:center;height:1px;margin:22px 0;position:relative}.auth-divider span{color:#8b93a5;background:#fff;padding:0 10px;font-size:11px;font-weight:700;position:relative;top:-9px}.auth-form-wrap form{gap:15px;display:grid}.auth-form-wrap label{gap:7px;font-size:13px;font-weight:800;display:grid}.auth-form-wrap input{width:100%;height:49px;color:var(--ink);background:#fbfcfe;border:1px solid #d9dee8;border-radius:11px;padding:0 15px;font-size:15px}.input-with-icon{position:relative}.input-with-icon>svg{z-index:1;color:#8c95a8;width:18px;position:absolute;top:15px;left:14px}.input-with-icon>svg+input{padding-left:43px}.input-with-icon>button{cursor:pointer;background:0 0;border:0;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:3px;right:4px}.input-with-icon>button svg{color:#8c95a8;width:18px}.auth-error{color:#a33724;background:#fff0ec;border-radius:9px;padding:11px 13px;font-size:12px;line-height:1.45}.auth-submit{width:100%;margin-top:3px}.auth-switch{text-align:center;font-size:13px;margin:24px 0 9px!important}.auth-switch button,.guest-link{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.guest-link{text-align:center;width:100%;font-size:13px}.spin{animation:.8s linear infinite spin}.auth-form-wrap.showing-next-step{place-items:center;min-height:680px;display:grid}.auth-next-step{text-align:center;justify-items:center;width:100%;display:grid}.auth-next-icon{color:#237746;background:#e9f8ef;border:1px solid #c7ead4;border-radius:24px 24px 24px 8px;place-items:center;width:78px;height:78px;margin-bottom:18px;display:grid;transform:rotate(-3deg);box-shadow:0 8px #d7f0e0}.auth-next-icon.existing{color:var(--blue);background:var(--blue-soft);border-color:#ccd6ff;box-shadow:0 8px #e0e6ff}.auth-next-icon svg{stroke-width:2.4px;width:38px;height:38px;transform:rotate(3deg)}.auth-next-kicker{letter-spacing:1.3px;text-transform:uppercase;font-size:11px;font-weight:900;color:var(--blue)!important;margin:0 0 10px!important}.auth-next-step h2{max-width:430px;color:var(--ink);letter-spacing:-1.35px;margin:0;font-size:34px;line-height:1.08}.auth-next-step>p:not(.auth-next-kicker){max-width:440px;color:var(--muted);margin:15px 0 22px;font-size:15px;line-height:1.6}.auth-next-step>p strong{color:var(--ink);overflow-wrap:anywhere}.auth-email-card{width:100%;min-height:54px;color:var(--ink);border:1px solid var(--line);overflow-wrap:anywhere;background:#f7f9fd;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:11px 15px;font-size:14px;font-weight:800;display:flex}.auth-email-card svg{width:18px;color:var(--blue);flex:none}.auth-next-note{color:#8992a3;gap:3px;width:100%;margin-top:15px;font-size:11px;line-height:1.45;display:grid}.auth-next-note strong{color:#697386;font-weight:750}.auth-next-actions{gap:12px;width:100%;margin-top:24px;display:grid}.auth-next-actions .button{width:100%}.auth-text-button{min-height:34px;color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 10px;font-size:13px;font-weight:800}.email-verified-toast{z-index:120;width:min(360px,100% - 32px);min-height:72px;color:var(--ink);background:linear-gradient(135deg,#fff 0%,#f3f6ff 100%);border:1px solid #ccd6ff;border-radius:16px 16px 16px 5px;align-items:center;gap:12px;padding:12px 16px 12px 12px;animation:2.1s both verified-toast;display:flex;position:fixed;top:86px;left:50%;translate:-50%;box-shadow:0 6px #e0e6ff,0 18px 34px #3155e729}.email-verified-toast>svg{color:#fff;background:var(--blue);stroke-width:3px;border-radius:11px 11px 11px 4px;flex:none;width:36px;height:36px;padding:8px}.email-verified-toast span{gap:3px;min-width:0;display:grid}.email-verified-toast strong{font-size:14px;font-weight:900}.email-verified-toast small{color:var(--muted);font-size:12px;line-height:1.3}@keyframes verified-toast{0%{opacity:0;transform:translateY(-10px)scale(.96)}12%,82%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px)scale(.98)}}@keyframes fade-in{0%{opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}.auth-art{justify-content:flex-start;gap:112px}.lesson-row{content-visibility:auto;contain-intrinsic-size:82px}.product-shell{background:#fbfcff;min-height:100vh}.app-header{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;height:70px;padding:0 max(28px,50% - 710px);display:grid;position:sticky;top:0}.app-tabs{gap:7px;display:flex}.app-tabs button{cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-width:112px;height:42px;padding:0 17px;font-size:14px;font-weight:800;display:flex}.app-tabs button svg{width:17px}.app-tabs button.active{color:#fff;background:var(--blue);box-shadow:0 3px 0 var(--blue-dark)}.app-status{justify-self:end;align-items:center;gap:17px;display:flex;position:relative}.status-item{align-items:center;gap:5px;font-weight:900;display:flex}.status-item svg{width:19px}.status-item.streak{color:var(--orange)}.status-item.hearts{color:#f33f4d}.profile-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:22px;align-items:center;gap:7px;height:42px;padding:0 9px 0 7px;font-size:13px;font-weight:800;display:flex}.profile-button>svg:first-child,.profile-button img{color:#fff;background:var(--blue);object-fit:cover;border-radius:50%;width:28px;height:28px;padding:5px}.profile-button>svg:last-child{width:15px}.profile-menu{z-index:60;border:1px solid var(--line);width:260px;box-shadow:var(--shadow-sm);background:#fff;border-radius:14px;gap:5px;padding:16px;display:grid;position:absolute;top:50px;right:0}.profile-menu>span{color:var(--muted);overflow-wrap:anywhere;font-size:11px}.profile-menu button{cursor:pointer;background:#f4f6fa;border:0;border-radius:9px;align-items:center;gap:8px;margin-top:10px;padding:10px;font-weight:750;display:flex}.profile-menu button svg{width:16px}.profile-menu .danger-link{color:#b63d31;background:0 0;margin-top:2px}.delete-confirm{background:#fff7f5;border:1px solid #ffd0cb;border-radius:10px;margin-top:6px;padding:10px}.delete-confirm p{color:#8f342d;margin:0;font-size:11px;line-height:1.4}.delete-confirm>div{gap:6px;display:flex}.delete-confirm button{flex:1;justify-content:center;font-size:10px}.delete-confirm button.danger{color:#fff;background:#c94438}.product-main{width:min(1420px,100% - 56px);margin:0 auto;padding:30px 0 70px}.mobile-tabs{display:none}.dashboard-page{grid-template-columns:minmax(0,1.5fr) minmax(350px,.72fr);gap:20px;display:grid}.learning-path-panel,.daily-goal,.smart-review,.week-strip{border:1px solid var(--line);background:#fff;border-radius:18px}.learning-path-panel{grid-row:span 2;padding:28px 30px}.dashboard-title-row{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.dashboard-title-row h1,.page-heading h1{letter-spacing:-1.8px;margin:0;font-size:clamp(31px,3vw,43px);line-height:1.05}.dashboard-title-row p,.page-heading p{color:var(--muted);margin:9px 0 0}.level-progress-copy{text-align:right;min-width:85px}.level-progress-copy strong{color:var(--blue);font-size:28px;display:block}.level-progress-copy span{color:var(--muted);font-size:11px}.learning-path{margin-top:27px;display:grid}.level-step{border-radius:13px;grid-template-columns:44px 50px minmax(150px,1fr) auto auto;align-items:center;gap:14px;min-height:80px;padding:10px 10px 10px 0;display:grid;position:relative}.level-step.current{background:var(--blue-soft);box-shadow:inset 4px 0 0 var(--blue);border:1px solid #ced7ff;padding:10px 12px 10px 0}.path-rail{align-self:stretch;place-items:center;display:grid;position:relative}.path-rail:before{content:"";background:#d6dbe5;width:3px;position:absolute;top:-17px;bottom:-17px}.level-step:first-child .path-rail:before{top:50%}.level-step:last-child .path-rail:before{bottom:50%}.path-rail span{z-index:1;color:#fff;background:#bbc2cf;border:4px solid #fff;border-radius:50%;place-items:center;width:29px;height:29px;display:grid;position:relative;box-shadow:0 0 0 2px #bbc2cf}.path-rail span svg{stroke-width:3px;width:14px}.level-step.done .path-rail:before{background:var(--green)}.level-step.done .path-rail span{background:var(--green);box-shadow:0 0 0 2px var(--green)}.level-step.current .path-rail span{background:var(--blue);box-shadow:0 0 0 4px #c5d0ff,0 0 0 7px #fff}.level-step.current .path-rail span:after{content:"";background:#fff;border-radius:50%;width:8px;height:8px}.level-step.locked{color:#8d95a6}.level-icon{border:1px solid var(--line);width:46px;height:46px;color:var(--blue);background:#fff;border-radius:12px;place-items:center;display:grid;box-shadow:0 3px #edf0f5}.level-icon svg{width:22px}.level-step.locked .level-icon{color:#8d95a6}.level-copy{gap:4px;display:grid}.level-copy strong{font-size:16px}.level-copy span{color:var(--muted);font-size:12px}.level-count{color:var(--muted);font-size:12px;font-weight:800}.level-step .button svg{width:15px}.dashboard-rail{align-content:start;gap:20px;display:grid}.daily-goal,.smart-review{padding:23px}.rail-heading{align-items:flex-start;gap:12px;display:flex}.rail-heading>svg{width:25px;color:var(--blue);stroke-width:2.7px}.rail-heading h2{margin:0;font-size:20px}.rail-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.week-rings{grid-template-columns:repeat(7,1fr);gap:9px;margin:25px 0;display:grid}.week-rings span{color:var(--muted);justify-items:center;gap:5px;font-size:9px;font-weight:800;display:grid}.week-rings i{border:4px solid #e3e6ec;border-radius:50%;width:28px;height:28px}.week-rings span.active i{border-color:var(--green)}.week-rings span.today i{border-color:var(--orange);border-right-color:#e3e6ec}.goal-bottom{border-top:1px solid var(--line);align-items:center;gap:18px;padding-top:18px;display:flex}.goal-ring{background:conic-gradient(var(--orange) var(--goal), #edf0f4 0);text-align:center;border-radius:50%;flex:none;place-content:center;width:85px;height:85px;display:grid;position:relative}.goal-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:8px}.goal-ring>*{position:relative}.goal-ring strong{font-size:25px;line-height:1}.goal-ring span{font-size:9px}.goal-bottom>div:last-child>strong{font-size:20px}.goal-bottom>div:last-child>strong span{color:var(--muted);font-size:12px}.goal-bottom p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.45}.smart-review .rail-heading>svg{color:var(--orange)}.weak-key-row{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:9px;margin:19px 0;display:grid}.weak-key-row>div{text-align:center;background:#fff5f1;border:1px solid #ffd9ce;border-radius:11px;place-content:center;justify-items:center;gap:3px;min-height:88px;padding:9px 5px;display:grid}.weak-key-row strong{color:var(--ink);font-size:34px;line-height:1}.weak-key-row span{color:#a26759;font-size:9px;line-height:1.25}.week-strip{grid-column:1/-1;grid-template-columns:auto repeat(3,auto) minmax(180px,1fr) auto;align-items:center;gap:28px;min-height:100px;padding:18px 25px;display:grid}.week-strip h2{margin:0;font-size:18px}.week-stat{border-left:1px solid var(--line);align-items:center;gap:10px;padding-left:23px;display:flex}.week-stat>svg{stroke-width:2.6px;width:28px}.week-stat>span{color:var(--muted);font-size:10px;display:grid}.week-stat strong{color:var(--ink);font-size:22px}.week-stat.blue>svg{color:var(--blue)}.week-stat.green>svg{color:var(--green)}.week-stat.yellow>svg{color:#e9ae00}.mini-chart{grid-template-rows:auto minmax(0,1fr);gap:3px;height:70px;display:grid}.mini-chart>span{color:var(--muted);letter-spacing:.2px;font-size:9px;font-weight:800}.mini-chart svg{width:100%;height:100%;overflow:visible}.chart-area{fill:#3155e714}.chart-line{fill:none;stroke:var(--blue);stroke-width:4px;stroke-linecap:round}.streak-chip{min-height:36px;color:var(--orange);background:#fff1e9;border-radius:18px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:900;display:flex}.streak-chip svg{fill:currentColor;width:16px}.library-page,.progress-page{width:min(1180px,100%);margin:0 auto}.page-heading{margin:20px 0 30px}.page-heading.split{justify-content:space-between;align-items:center;gap:30px;display:flex}.library-tools{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.lesson-search{width:290px;height:44px;position:relative}.lesson-search svg{width:18px;color:var(--muted);position:absolute;top:13px;left:14px}.lesson-search input{border:1px solid var(--line);background:#fff;border-radius:11px;width:100%;height:100%;padding:0 14px 0 42px}.level-filter{background:#edf0f6;border-radius:11px;gap:5px;padding:4px;display:flex;overflow-x:auto}.level-filter button{white-space:nowrap;height:35px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 13px;font-size:12px;font-weight:800}.level-filter button.active{color:var(--blue);background:#fff;box-shadow:0 2px 5px #15213b14}.lesson-list{gap:8px;display:grid}.lesson-row{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:13px;grid-template-columns:48px minmax(220px,1fr) auto auto 24px;align-items:center;gap:18px;min-height:82px;padding:13px 18px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.lesson-row:hover{box-shadow:var(--shadow-sm);border-color:#bdc9ff;transform:translate(4px)}.lesson-index{width:42px;height:42px;color:var(--muted);background:#f0f3f8;border-radius:11px;place-items:center;font-size:12px;font-weight:900;display:grid}.lesson-index.done{color:#fff;background:var(--green);box-shadow:inset 0 -3px #349252}.lesson-index svg{stroke-width:3px;width:19px}.lesson-main{gap:5px;display:grid}.lesson-main strong{font-size:16px}.lesson-main>span{color:var(--muted);font-size:12px}.lesson-focus{gap:5px;display:flex}.lesson-focus i{border:1px solid var(--line);border-radius:7px;place-items:center;width:31px;height:31px;font-size:17px;font-style:normal;display:grid}.lesson-best{min-width:105px;color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.lesson-best svg{width:15px;color:var(--orange)}.lesson-arrow{width:18px;color:var(--blue)}.progress-hero-grid{color:#fff;background:var(--blue);border-radius:22px;grid-template-columns:240px 1fr;align-items:center;gap:45px;min-height:280px;padding:35px 45px;display:grid;position:relative;overflow:hidden}.progress-hero-grid:after{content:"אידיש";color:#ffffff12;font-size:320px;font-weight:900;position:absolute;bottom:-40%;right:4%}.mastery-ring{background:conic-gradient(var(--yellow) var(--mastery), #ffffff2e 0);border-radius:50%;place-items:center;width:190px;height:190px;display:grid;position:relative}.mastery-ring:before{content:"";background:var(--blue);border-radius:50%;position:absolute;inset:13px}.mastery-ring>div{text-align:center;display:grid;position:relative}.mastery-ring strong{font-size:43px}.mastery-ring span{color:#dfe4ff;font-size:12px}.progress-overview{z-index:1;position:relative}.progress-overview h2{letter-spacing:-1.5px;max-width:700px;margin:0;font-size:37px;line-height:1.08}.progress-overview>p{color:#dfe4ff}.achievement-row{gap:15px;margin-top:28px;display:flex}.achievement-row>span{background:#ffffff1f;border-radius:11px;grid-template-columns:auto 1fr;align-items:center;gap:0 8px;min-width:120px;padding:12px 15px;font-size:22px;font-weight:900;display:grid}.achievement-row svg{width:20px;color:var(--yellow)}.achievement-row small{color:#dfe4ff;grid-column:1/-1;margin-top:3px;font-size:9px;font-weight:600}.metric-row{grid-template-columns:repeat(3,1fr);gap:18px;margin:18px 0;display:grid}.metric-row>div{border:1px solid var(--line);background:#fff;border-radius:15px;align-items:center;gap:15px;min-height:105px;padding:20px;display:flex}.metric-row>div>svg{width:32px;color:var(--blue)}.metric-row span{display:grid}.metric-row small{color:var(--muted)}.metric-row strong{font-size:26px}.metric-row em{font-size:12px;font-style:normal}.progress-detail-grid{grid-template-columns:1.25fr .75fr;gap:18px;display:grid}.history-chart,.key-health{border:1px solid var(--line);background:#fff;border-radius:16px;min-height:330px;padding:25px}.section-title h2{margin:0;font-size:20px}.section-title p{color:var(--muted);margin:5px 0 0;font-size:12px}.session-bars{border-bottom:1px solid var(--line);justify-content:space-around;align-items:flex-end;gap:12px;height:220px;margin-top:22px;display:flex}.session-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.session-bar>span{background:linear-gradient(180deg, var(--blue), #7890f1);border-radius:8px 8px 0 0;width:min(46px,80%);min-height:12%;position:relative}.session-bar i{color:var(--muted);font-size:9px;font-style:normal;position:absolute;top:-20px;left:50%;translate:-50%}.session-bar small{color:var(--muted);font-size:10px}.empty-chart{height:230px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:6px;display:grid}.empty-chart svg{color:#b7c0d2;width:38px}.empty-chart strong{color:var(--ink)}.empty-chart span{font-size:12px}.key-health-list{gap:13px;margin-top:22px;display:grid}.key-health-list>div{grid-template-columns:35px 1fr auto;align-items:center;gap:10px;display:grid}.key-health-list strong{background:#fff4ef;border-radius:8px;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.key-health-list span{background:#eef0f5;border-radius:5px;height:7px;overflow:hidden}.key-health-list i{background:var(--orange);border-radius:inherit;height:100%;display:block}.key-health-list em{min-width:50px;color:var(--muted);direction:ltr;font-size:9px;font-style:normal}.key-health-list .empty-keys{color:var(--muted);text-align:center;direction:ltr;padding:45px 15px;display:block}.reset-link{color:#9aa2b2;cursor:pointer;background:0 0;border:0;margin:30px auto 0;padding:8px;font-size:11px;text-decoration:underline;display:block}.arena{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(1320px,100%);margin:0 auto;position:relative;overflow:hidden;box-shadow:0 16px 50px #15213b12}.arena-top{grid-template-columns:minmax(180px,1fr) auto auto;align-items:center;gap:20px;min-height:88px;padding:16px 22px;display:grid}.arena-title{gap:4px;display:grid}.arena-title span{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;font-size:10px;font-weight:800}.arena-title h2{margin:0;font-size:18px}.live-stats{gap:6px;display:flex}.stat-pill{justify-items:center;min-width:76px;display:grid}.stat-val{color:var(--blue);font-size:18px;font-weight:900}.stat-lab{color:var(--muted);font-size:9px}.stat-pill.accent .stat-val{color:var(--green)}.arena-controls{gap:8px;display:flex}.arena-controls button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:6px;height:41px;padding:0 13px;font-size:12px;font-weight:800;display:flex;box-shadow:0 2px #e7eaf0}.arena-controls svg{width:16px}.progress-rail{background:#edf0f4;height:5px}.progress-fill{background:var(--blue);height:100%;transition:width .2s}.prompt-card{background:#fbfcff;align-content:center;justify-items:center;min-height:240px;padding:37px 30px 24px;display:grid}.hint-en{color:var(--blue);margin:0 0 13px;font-size:12px;font-weight:800}.prompt-text{letter-spacing:4px;flex-wrap:wrap;justify-content:center;align-items:center;min-height:78px;font-size:clamp(44px,6vw,75px);font-weight:750;line-height:1.1;display:flex}.ch{text-align:center;border-bottom:4px solid #0000;min-width:.7em;padding:0 2px 5px}.ch.ok{color:var(--green)}.ch.current{color:var(--ink);background:var(--blue-soft);border-color:var(--blue);border-radius:8px 8px 0 0}.ch.pending{color:#9ba3b4}.space-mark{color:#c2c8d3;font-size:.4em}.next-key-hint{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#fff;border-radius:19px;align-items:center;gap:9px;margin-top:20px;padding:0 14px;font-size:10px;display:flex}.next-yi{color:var(--blue);font-size:22px;font-weight:900}.next-en kbd{border:1px solid var(--line);color:var(--ink);background:#f4f6fa;border-radius:5px;padding:3px 6px;font-weight:800}.arena>.keyboard{padding:28px 38px 34px}.arena>.keyboard .kb-key{width:min(6.2vw,78px);height:61px}.arena-footer-hint{border-top:1px solid var(--line);min-height:53px;color:var(--muted);grid-template-columns:1fr 1fr 1fr;align-items:center;margin:0;padding:10px 22px;font-size:11px;display:grid}.arena-footer-hint>span:nth-child(2){justify-content:center;align-items:center;gap:7px;display:flex}.arena-footer-hint>span:last-child{text-align:right}.arena-footer-hint svg{width:16px}.arena-footer-hint>span:first-child{color:var(--green);font-weight:800}.arena-footer-hint .error-copy{color:#e74c3c}.shake{animation:.2s linear shake}.pause-overlay{z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffdb;place-items:center;display:grid;position:absolute;inset:0}.pause-overlay>div{text-align:center;border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:36px}.pause-overlay>div>svg{width:35px;height:35px;color:var(--blue)}.pause-overlay h3{margin:12px 0 5px;font-size:27px}.pause-overlay p{color:var(--muted);margin:0 0 22px}@keyframes shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.results-page{border:1px solid var(--line);width:min(850px,100%);min-height:650px;box-shadow:var(--shadow-sm);text-align:center;background:#fff;border-radius:22px;margin:0 auto;padding:45px 40px;position:relative;overflow:hidden}.results-guide{object-fit:contain;width:160px;height:190px;position:absolute;bottom:-20px;left:10px}.result-check{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:62px;height:62px;margin:0 auto 15px;display:grid;box-shadow:inset 0 -6px #339054,0 0 0 9px #e5f7eb}.result-check svg{stroke-width:3.5px;width:31px}.result-lesson{color:var(--blue);margin:0 0 6px;font-size:12px;font-weight:800}.results-page h1{letter-spacing:-2px;margin:0;font-size:45px}.results-sub{color:var(--muted)}.results-metrics{grid-template-columns:repeat(4,1fr);gap:11px;margin:30px 0;display:grid}.results-metrics>div{background:#f6f8fc;border-radius:13px;justify-items:center;gap:7px;min-height:110px;padding:17px;display:grid}.results-metrics svg{width:25px}.results-metrics span{display:grid}.results-metrics strong{font-size:24px}.results-metrics small{color:var(--muted);font-size:9px}.results-metrics .blue svg{color:var(--blue)}.results-metrics .green svg{color:var(--green)}.results-metrics .orange svg{color:var(--orange)}.results-metrics .yellow svg{color:#d8a600}.result-review{text-align:left;background:#fff6f2;border:1px solid #ffd9ce;border-radius:12px;align-items:center;gap:13px;max-width:560px;margin:0 auto 30px;padding:14px 17px;display:flex}.result-review>svg{color:var(--orange)}.result-review p{color:var(--muted);margin:4px 0 0;font-size:12px}.results-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:13px;display:flex}.confetti{border-radius:3px;width:12px;height:25px;position:absolute}.confetti-one{background:var(--orange);top:12%;left:10%;transform:rotate(-20deg)}.confetti-two{background:var(--blue);top:18%;right:12%;transform:rotate(28deg)}.confetti-three{background:var(--yellow);top:7%;right:22%;transform:rotate(-8deg)}@media (width<=1000px){.marketing-header,.landing-hero{width:min(100% - 36px,1000px)}.landing-hero{grid-template-columns:1fr;padding-top:60px}.hero-copy{text-align:center}.hero-copy h1,.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-note{justify-content:center}.hero-visual{width:850px;max-width:100%;margin:0 auto}.landing-path{grid-template-columns:repeat(3,1fr);row-gap:70px}.path-dash{display:none}.path-stop:nth-child(2n){transform:none}.adaptive-section{grid-template-columns:1fr}.adaptive-copy{text-align:center}.adaptive-copy ul{text-align:left;width:fit-content;margin:auto}.progress-band{grid-template-columns:130px 1fr repeat(3,1fr)}.progress-copy{grid-column:2/-1}.progress-metric{border:0;padding:0}.dashboard-page{grid-template-columns:1fr}.learning-path-panel{grid-row:auto}.dashboard-rail{grid-template-columns:1fr 1fr}.week-strip{grid-template-columns:auto repeat(3,auto) minmax(160px,1fr)}.streak-chip{display:none}.marketing-footer{grid-template-columns:auto 1fr auto}.marketing-footer>span{display:none}}@media (width<=780px){.landing-hero{display:block}.landing-hero .hero-copy,.landing-hero .hero-visual{width:100%;min-width:0}.marketing-header{grid-template-columns:1fr auto;height:70px}.marketing-nav,.header-actions .text-button{display:none}.landing-hero{min-height:auto;padding:55px 0 30px}.hero-copy h1{letter-spacing:-3.5px;font-size:clamp(49px,15vw,72px)}.hero-copy>p{font-size:18px}.hero-visual{min-height:420px}.keyboard-stage{max-width:105%;padding:14px;top:65px;right:-6%}.hero-guide{width:180px;height:215px}.floating-letter{width:48px;height:48px;font-size:25px}.path-section{padding:70px 18px}.landing-path{grid-template-columns:repeat(2,1fr)}.adaptive-section,.progress-band{border-radius:20px;width:calc(100% - 28px);padding:22px}.product-preview{padding:13px}.preview-stats{grid-template-columns:repeat(2,1fr);row-gap:14px}.progress-band{grid-template-columns:90px 1fr}.progress-character{height:150px}.progress-character .guide{width:130px;height:155px}.progress-copy{grid-column:auto}.progress-metric{min-height:70px}.final-cta{text-align:center;min-height:300px}.final-cta .guide{width:130px}.cta-crown{display:none}.marketing-footer{text-align:center;grid-template-columns:1fr}.marketing-footer .brand-lockup,.marketing-footer div{justify-self:center}.auth-modal{grid-template-columns:1fr}.auth-art{display:none}.auth-form-wrap{padding:45px 28px}.app-header{grid-template-columns:1fr auto;height:62px;padding:0 16px}.app-tabs,.status-item,.profile-button span{display:none}.app-status{gap:7px}.profile-button{padding:0 6px}.product-main{width:calc(100% - 24px);padding:18px 0 90px}.mobile-tabs{z-index:50;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;grid-template-columns:repeat(3,1fr);height:66px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tabs button{color:var(--muted);background:0 0;border:0;place-content:center;justify-items:center;gap:3px;font-size:10px;font-weight:800;display:grid}.mobile-tabs button svg{width:21px}.mobile-tabs button.active{color:var(--blue)}.dashboard-title-row{display:block}.level-progress-copy{display:none}.learning-path-panel{padding:20px 14px}.level-step{grid-template-columns:34px 43px 1fr auto;gap:9px}.level-step .button{grid-column:3/-1;justify-self:start}.level-count{display:none}.level-copy strong{font-size:14px}.level-copy span{font-size:10px}.dashboard-rail{grid-template-columns:1fr}.week-strip{grid-template-columns:repeat(3,1fr);gap:12px}.week-strip h2{grid-column:1/-1}.week-stat{border:0;padding:0}.week-stat>svg{flex:none;width:17px;height:17px;margin-top:2px;display:block}.mini-chart{grid-column:1/-1}.page-heading.split,.library-tools{flex-direction:column;align-items:stretch}.lesson-search{width:100%}.level-filter{max-width:100%}.lesson-row{grid-template-columns:42px 1fr 20px;gap:11px}.lesson-focus,.lesson-best{display:none}.progress-hero-grid{text-align:center;grid-template-columns:1fr;justify-items:center;padding:30px 20px}.mastery-ring{width:150px;height:150px}.achievement-row{flex-wrap:wrap;justify-content:center}.metric-row,.progress-detail-grid{grid-template-columns:1fr}.arena-top{grid-template-columns:1fr auto}.live-stats{border-top:1px solid var(--line);grid-area:2/1/auto/-1;justify-content:space-between;padding-top:10px}.arena-controls button{justify-content:center;width:39px;padding:0;font-size:0}.prompt-card{min-height:210px;padding:25px 12px}.prompt-text{font-size:clamp(38px,12vw,58px)}.arena>.keyboard{padding:20px 8px 28px;overflow-x:auto}.arena>.keyboard .kb-key{width:8vw;min-width:39px;height:48px}.arena-footer-hint{text-align:center;grid-template-columns:1fr;gap:5px}.arena-footer-hint>span:nth-child(2){display:none}.arena-footer-hint>span:last-child{text-align:center}.results-page{padding:35px 18px}.results-page h1{font-size:36px}.results-metrics{grid-template-columns:repeat(2,1fr)}.results-guide{opacity:.15}.results-actions{flex-direction:column}.results-actions .button{width:100%}}@media (width<=480px){.marketing-header,.landing-hero{width:calc(100% - 28px)}.header-actions .button{min-height:40px;padding:0 13px;font-size:12px}.brand-name{font-size:22px}.brand-glyph{width:33px;height:33px}.hero-copy h1{font-size:49px}.hero-actions .button{width:100%}.hero-visual{min-height:330px}.keyboard-stage{top:40px;transform:perspective(1000px)rotateX(8deg)rotate(-4deg)scale(.93)}.hero-guide{width:130px;height:155px;right:-15px}.floating-letter{display:none}.keyboard.compact .kb-key{min-width:25px;height:31px;padding:2px}.keyboard.compact .kb-yi{font-size:13px}.keyboard.compact .kb-en{display:none}.keyboard-caption{font-size:10px}.landing-path{gap:48px 10px}.path-orb{width:90px;height:90px;font-size:29px}.section-heading h2,.adaptive-copy h2,.final-cta h2{letter-spacing:-1.5px;font-size:36px}.adaptive-section{padding:16px}.adaptive-copy{padding:16px 7px}.preview-prompt>div{font-size:31px}.progress-band{flex-direction:column;align-items:flex-start;display:flex}.progress-character{display:none}.progress-metric{width:100%}.final-cta{gap:8px;width:calc(100% - 28px)}.final-cta .guide{display:none}.marketing-footer div{flex-wrap:wrap;justify-content:center}.modal-backdrop{padding:10px}.auth-form-wrap{padding:38px 20px}.auth-form-wrap>h2{font-size:29px}.dashboard-title-row h1,.page-heading h1{font-size:31px}.learning-path-panel{padding:19px 10px}.level-step,.level-step.current{padding-right:4px}.level-icon{width:39px;height:39px}.level-copy span{max-width:170px}.week-strip{padding:17px}.week-stat strong{font-size:18px}.daily-goal,.smart-review{padding:19px}.progress-overview h2{font-size:29px}.achievement-row>span{min-width:100px}.arena-top{padding:12px}.stat-pill{min-width:57px}.stat-val{font-size:16px}.arena>.keyboard .kb-key{min-width:30px;height:43px}.kb-yi{font-size:17px}.kb-en{display:none}}.keyboard.compact .kb-row.row-space .space{width:52%}.arena>.keyboard .kb-row.row-space .space{width:54%}.mobile-typing-input{opacity:0;clip-path:inset(50%);pointer-events:none;border:0;width:1px;height:1px;padding:0;font-size:16px;position:absolute;top:0;left:0}.lesson-active{overscroll-behavior:none}html.lesson-active,body.lesson-active{width:100%;height:100%;overflow:hidden}body.lesson-active{position:fixed;inset:0}.lesson-shell{--lesson-canvas:#fbfcff;height:var(--lesson-viewport-height,100dvh);min-height:480px;overflow:hidden}.lesson-shell .product-main{height:calc(var(--lesson-viewport-height,100dvh) - 70px);padding:14px 0;display:grid}.lesson-shell .arena{grid-template-rows:auto 4px minmax(110px,.78fr) minmax(205px,1.22fr) auto;height:100%;display:grid}.lesson-shell .arena-top{min-height:70px;padding-block:10px}.lesson-shell .prompt-card{background:var(--lesson-canvas);min-height:0;padding:14px 24px 12px}.lesson-shell .hint-en{margin-bottom:7px}.lesson-shell .prompt-text{min-height:56px;font-size:clamp(38px,5.2vw,64px)}.lesson-shell .prompt-text.prompt-medium{font-size:clamp(32px,4.3vw,54px)}.lesson-shell .prompt-text.prompt-long{letter-spacing:2px;font-size:clamp(27px,3.5vw,44px)}.lesson-shell .arena>.keyboard{background:var(--lesson-canvas);align-content:center;gap:5px;min-height:0;padding:12px 28px 16px}.lesson-shell .arena>.keyboard .kb-row{gap:5px;padding-left:0}.lesson-shell .arena>.keyboard .kb-row.row-space{margin-top:7px}.lesson-shell .arena>.keyboard .kb-key{width:min(5.7vw,69px);height:clamp(46px,7.2vh,56px)}.lesson-shell .arena>.keyboard .kb-row.row-space .space{width:min(49vw,560px);height:clamp(38px,6.2vh,46px)}.lesson-shell .arena-footer-hint{min-height:39px;padding-block:7px}.reset-progress{color:var(--muted);justify-items:center;gap:6px;margin-top:28px;font-size:11px;display:grid}.reset-progress .reset-link{margin:0}.reset-success{color:#267e46}.reset-error{color:#a33724}.legal-page,.standalone-auth-page{background:#f7f9fd;min-height:100vh}.legal-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 max(24px,50% - 520px);display:flex}.legal-content{width:min(780px,100% - 36px);margin:0 auto;padding:70px 0 90px}.legal-kicker{color:var(--blue);text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;font-weight:900}.legal-content h1{letter-spacing:-2.5px;margin:0;font-size:clamp(42px,6vw,66px)}.legal-updated{color:var(--muted);margin:12px 0 48px}.legal-content section{margin:32px 0}.legal-content h2{margin:0 0 9px;font-size:21px}.legal-content section p{color:#46516a;margin:0;line-height:1.75}.standalone-auth-page{place-items:start center;gap:36px;padding:30px;display:grid}.standalone-auth-card{border:1px solid var(--line);width:min(480px,100%);box-shadow:var(--shadow-sm);background:#fff;border-radius:20px;padding:40px}.standalone-auth-card h1{letter-spacing:-1px;margin:0 0 10px;font-size:34px}.standalone-auth-card>p{color:var(--muted);line-height:1.55}.standalone-auth-card form{gap:16px;margin-top:25px;display:grid}.standalone-auth-card label{gap:8px;font-size:13px;font-weight:800;display:grid}.standalone-auth-card input{border:1px solid #d9dee8;border-radius:11px;width:100%;height:49px;padding:0 48px 0 14px}.success-icon{width:46px;height:46px;color:var(--green);margin-bottom:16px}.auth-success{color:#267e46;background:#eaf8ef;border-radius:9px;padding:11px 13px;font-size:12px;line-height:1.45}.forgot-link{color:var(--blue);cursor:pointer;background:0 0;border:0;margin:14px auto 0;padding:3px;font-size:13px;font-weight:800;display:block}.marketing-footer a{color:var(--ink);font-weight:750;text-decoration:none}.marketing-footer a:hover{color:var(--blue)}@media (height<=760px) and (width>=781px){.lesson-shell .arena-top{min-height:64px}.lesson-shell .prompt-text{font-size:clamp(36px,4.6vw,56px)}.lesson-shell .prompt-text.prompt-medium{font-size:clamp(30px,4vw,48px)}.lesson-shell .prompt-text.prompt-long{font-size:clamp(25px,3.2vw,39px)}.lesson-shell .arena>.keyboard .kb-key{height:clamp(48px,7.4vh,54px)}.lesson-shell .arena>.keyboard .kb-row.row-space .space{height:42px}}@media (width<=780px){.lesson-shell{min-height:0}.lesson-shell .app-header,.lesson-shell .mobile-tabs{display:none}.lesson-shell .product-main{width:100%;height:var(--lesson-viewport-height,100dvh);padding:0}.lesson-shell .arena{box-shadow:none;border:0;border-radius:0;grid-template-rows:auto 3px minmax(70px,.65fr) minmax(126px,1.35fr) auto}.lesson-shell .arena-top{gap:8px;min-height:0;padding:8px 11px 7px}.lesson-shell .arena-title{gap:1px}.lesson-shell .arena-title h2{font-size:14px}.lesson-shell .arena-title span{font-size:8px}.lesson-shell .live-stats{gap:2px;padding-top:5px}.lesson-shell .stat-pill{min-width:48px}.lesson-shell .stat-val{font-size:14px}.lesson-shell .stat-lab{font-size:8px}.lesson-shell .arena-controls button{place-items:center;gap:0;width:34px;height:34px;padding:0;line-height:0;display:grid}.lesson-shell .arena-controls button svg{width:16px;height:16px;margin:0;display:block;transform:translateY(3px)}.lesson-shell .prompt-card{min-height:0;padding:5px 9px}.lesson-shell .hint-en{margin-bottom:2px;font-size:10px}.lesson-shell .prompt-text{letter-spacing:2px;min-height:38px;font-size:clamp(29px,9.5vw,45px);line-height:1}.lesson-shell .prompt-text.prompt-medium{font-size:clamp(25px,8vw,38px)}.lesson-shell .prompt-text.prompt-long{letter-spacing:1px;font-size:clamp(21px,6.7vw,31px)}.lesson-shell .ch{border-bottom-width:3px;padding-bottom:3px}.lesson-shell .arena>.keyboard{gap:3px;padding:7px 5px 9px;overflow:hidden}.lesson-shell .arena>.keyboard .kb-row{gap:2px;padding-left:0}.lesson-shell .arena>.keyboard .kb-row.row-space{margin-top:4px}.lesson-shell .arena>.keyboard .kb-key{border-radius:6px;width:min(8.2vw,35px);min-width:0;height:clamp(28px,min(8.2vw,8dvh),38px);padding:2px;box-shadow:0 2px #d7dae1,0 3px 5px #15213b0f}.lesson-shell .arena>.keyboard .kb-yi{font-size:clamp(13px,4.8vw,19px)}.lesson-shell .arena>.keyboard .kb-en{font-size:6px;display:block;top:2px;left:3px}.lesson-shell .arena>.keyboard .kb-row.row-space .space{width:min(53vw,250px);height:clamp(26px,min(7.2vw,7dvh),34px)}.lesson-shell .arena-footer-hint{min-height:27px;padding:4px 8px;font-size:9px}.lesson-shell .arena-footer-hint>span:last-child{display:none}.lesson-shell .arena.software-keyboard-open{grid-template-rows:auto 3px minmax(0,1fr)}.lesson-shell .arena.software-keyboard-open .prompt-card{overscroll-behavior:contain;padding-block:10px;overflow-y:auto}.lesson-shell .arena.software-keyboard-open .prompt-text{font-size:clamp(25px,7.8vw,36px);line-height:1.08}.lesson-shell .arena.software-keyboard-open .prompt-text.prompt-medium{font-size:clamp(23px,7vw,32px)}.lesson-shell .arena.software-keyboard-open .prompt-text.prompt-long{font-size:clamp(20px,5.8vw,27px);line-height:1.12}.lesson-shell .arena.software-keyboard-open>.keyboard,.lesson-shell .arena.software-keyboard-open>.arena-footer-hint{display:none}.legal-header{height:66px;padding:0 16px}.legal-header .button{display:none}.legal-content{padding:45px 0 70px}.legal-content h1{font-size:42px}}@media (width<=480px){.standalone-auth-page{padding:22px 12px}.standalone-auth-card{padding:28px 20px}.marketing-footer div{gap:15px}}.app-loading{background:var(--surface);min-height:100vh;color:var(--muted);place-content:center;justify-items:center;gap:20px;font-weight:750;display:grid}.progress-loading{background:var(--blue-soft);color:var(--blue);text-align:center;border:1px solid #dce3ff;border-radius:10px;margin:0 0 14px;padding:10px 14px;font-size:12px;font-weight:750}.status-item.sync-state{min-width:auto;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;gap:6px;padding:0;font-size:11px}.status-item.sync-state svg{width:16px;height:16px}.status-item.sync-state.offline{color:var(--orange-dark)}.sync-tooltip{z-index:70;width:min(280px,100vw - 32px);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm);text-align:left;background:#fff;border-radius:14px;gap:5px;padding:13px 14px;display:grid;position:absolute;top:48px;right:48px}.sync-tooltip strong{color:var(--ink);font-size:13px}.sync-tooltip span{color:var(--muted);font-size:12px;line-height:1.45}.sync-tooltip button{color:var(--blue);background:var(--blue-soft);font:inherit;cursor:pointer;border:0;border-radius:8px;justify-self:start;margin-top:3px;padding:7px 10px;font-size:12px;font-weight:800}.profile-menu .menu-error{color:#b63d31;max-width:240px;font-size:11px}.lesson-index.mastered{background:var(--blue);box-shadow:inset 0 -3px 0 var(--blue-dark)}.weak-key-empty{color:#865e50;background:#fff7f2;border-radius:11px;margin:18px 0;padding:17px;font-size:12px;line-height:1.55}.week-strip h2 small{color:var(--muted);margin-top:4px;font-size:10px;font-weight:700;display:block}.week-stat span small{color:var(--muted);font-size:8px;font-weight:700;display:block}.chart-empty{height:100%;color:var(--muted);text-align:center;place-items:center;font-size:10px;display:grid}.trend-chart-wrap{margin-top:16px}.trend-legend{color:var(--muted);justify-content:flex-end;gap:17px;font-size:10px;font-weight:800;display:flex}.trend-legend span:before{content:"";border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.trend-legend .accuracy-dot:before{background:var(--green)}.trend-legend .wpm-dot:before{background:var(--blue)}.trend-chart{width:100%;height:190px;overflow:visible}.trend-grid{stroke:var(--line);stroke-width:1px}.accuracy-trend,.wpm-trend{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.accuracy-trend{stroke:var(--green)}.wpm-trend{stroke:var(--blue)}.trend-labels{color:var(--muted);justify-content:space-between;gap:3px;font-size:8px;display:flex;overflow:hidden}.trend-labels span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.recent-session-list{gap:7px;margin:20px 0 0;padding:0;list-style:none;display:grid}.recent-session-list li{border-top:1px solid var(--line);color:var(--muted);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding-top:8px;font-size:10px;display:grid}.recent-session-list strong{color:var(--ink)}.recent-session-list small{font-size:9px}.key-health-list i.health-strong,.key-health-list i.health-good{background:var(--green)}.key-health-list i.health-improving{background:var(--blue)}.key-health-list i.health-needs-practice,.key-health-list i.health-needs-refresh{background:#e9ae00}.key-health-list i.health-not-enough-data{background:#aab2c2}@media (width<=780px){.app-header .status-item.sync-state{border:1px solid #0000;border-radius:10px;place-items:center;width:36px;height:36px;padding:0;display:grid}.app-header .status-item.sync-state.offline{background:#ff71381a;border-color:#ff71383d}.app-header .status-item.sync-state>span{display:none}.app-header .status-item.sync-state svg{width:17px;height:17px}.sync-tooltip{top:44px;right:0}.trend-chart{height:150px}.recent-session-list li{grid-template-columns:1fr auto}.recent-session-list small{display:none}}@media (width<=480px){.arena>.keyboard{gap:2px;overflow-x:hidden}.arena>.keyboard .kb-row{gap:2px}.arena>.keyboard .kb-key{width:6.5vw;min-width:21px}.key-health-list>div{grid-template-columns:32px 1fr}.key-health-list em{grid-column:2}}
