@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--font-sans:Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--bg-0:#0d0c12;--bg-1:#100f15;--bg-2:#15131b;--bg-3:#1b1822;--bg-4:#201b2d;--bg-5:#2a2138;--surface-strong:#201c29;--surface-soft:#1b1822;--surface-muted:#2a2138;--border-soft:#2d2937;--border-strong:#3d344d;--text-primary:#f5f1ff;--text-secondary:#d8caff;--text-muted:#9d95ad;--text-subtle:#7c758d;--accent-violet:#a98aff;--accent-violet-strong:#8d6ce8;--accent-blue:#7ed6ff;--accent-green:#7fe6a2;--accent-cyan:#a9d8ff;--accent-warm:#d8b4ff;--focus-ring:#a98affcc;--shadow-soft:0 18px 42px #0b0a1361;--shadow-card:0 12px 30px #120f192e;--radius-xs:8px;--radius-sm:10px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--motion-fast:.16s ease;--motion-medium:.22s ease;--motion-slow:.42s ease;--text-xs:11px;--text-sm:12px;--text-md:13px;--text-lg:16px;--text-xl:19px;--text-2xl:22px;--text-3xl:30px;--ring-width:2px;font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-0);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-weight:var(--font-weight-regular);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg-0:#f4f5f8;--bg-1:#fff;--bg-2:#f1f3fb;--bg-3:#edf0f9;--bg-4:#fff;--bg-5:#eaf1ff;--surface-strong:#fff;--surface-soft:#f3f5fb;--surface-muted:#edf1ff;--border-soft:#dfe6ff;--border-strong:#c8d2f5;--text-primary:#242532;--text-secondary:#2d3553;--text-muted:#5b647d;--text-subtle:#7a839c;--accent-violet:#7e60d8;--accent-violet-strong:#6750b7;--accent-blue:#4a8ef7;--accent-green:#38b87d;--accent-cyan:#80c6ff;--accent-warm:#af93ff;--focus-ring:#7e60d880;--shadow-soft:0 16px 30px #282c4417;--shadow-card:0 10px 18px #282c440f;color:var(--text-primary);background:var(--bg-0);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{color:var(--text-primary);background:var(--bg-0);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg-0);min-width:320px;min-height:100%}body{background:var(--bg-0);min-width:320px;min-height:100vh;color:var(--text-primary);margin:0}html[data-theme=light] body,html[data-theme=light] #root{background:var(--bg-0)}body,button,input,select,textarea{font-family:var(--font-sans)}button,input,select,textarea{font-size:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}#root{width:100%;min-height:100vh;margin:0}h1,h2,h3,p{margin-top:0}button,select{color:inherit;font:inherit}button{cursor:pointer}.app{background:radial-gradient(at 70% 0,#21172d 0%,#0000 35%),#0d0c12;min-height:100vh;display:flex}.sidebar{background:#100f15;border-right:1px solid #25232d;flex-direction:column;flex-shrink:0;width:240px;min-height:100vh;padding:30px 18px;display:flex}.brand{color:#f6f3ff;letter-spacing:-1px;align-items:center;gap:9px;margin:0 0 55px 5px;font-size:21px;font-weight:800;text-decoration:none;display:flex}.brand-icon{color:#171022;background:#a58aff;border-radius:10px;place-items:center;width:31px;height:31px;font-size:24px;display:grid}.brand-dot{color:#aa8dff;margin-left:-9px}.nav-label,.eyebrow{color:#898496;letter-spacing:1.7px;font-size:10px;font-weight:700}.nav-label{margin:0 0 14px 12px}.nav-item{color:#9691a4;text-align:left;isolation:isolate;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:13px;width:100%;margin-bottom:5px;padding:13px 14px;font-size:18px;transition:color .28s,border-color .28s,background-color .28s;display:flex;position:relative}.nav-item span{font-size:13px;font-weight:500}.nav-item.active{color:#c5a5ff;background:#8b5cf61a;border-color:#a777ff3d}.sidebar-bottom{border-top:1px solid #292631;align-items:center;gap:11px;margin-top:auto;padding:18px 4px 0;display:flex}.avatar{color:#d8caff;background:#342647;border-radius:13px;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.sidebar-bottom strong{font-size:12px}.sidebar-bottom p{color:#8d879b;margin:5px 0 0;font-size:10px}.content{width:min(1200px,100%);margin:0 auto;padding:0 48px}.topbar{border-bottom:1px solid #25232d;justify-content:space-between;align-items:center;gap:20px;min-height:77px;display:flex}.breadcrumb,.muted{color:#918b9f;font-size:12px}.streak{color:#c5b0ff;background:#1b1624;border:1px solid #393044;border-radius:30px;padding:9px 13px;font-size:11px}.welcome{background:radial-gradient(circle at 100% 0,#816dff38,#0000 32%),linear-gradient(115deg,#1a1325 0%,#171529 42%,#1c1a2f 100%);border:1px solid #9686c447;border-radius:24px;justify-content:space-between;align-items:center;gap:24px;min-height:280px;margin:30px 0 22px;padding:32px 32px 28px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 38px #09081147}.welcome:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff05,#0000 32%,#74a4ff0a);border-radius:23px;position:absolute;inset:1px}.welcome>div:first-child{z-index:2;max-width:510px;position:relative}.eyebrow{letter-spacing:.12em;margin:0 0 13px}h1{letter-spacing:-2px;margin:0;font-size:clamp(30px,3.5vw,43px);font-weight:700;line-height:1.14}h1 span{background:linear-gradient(135deg,#d7c6ff 0%,#9dbcff 55%,#7fe6a2 100%);color:#0000;-webkit-background-clip:text;background-clip:text}.welcome-description{color:#b7adcb;max-width:440px;margin:18px 0 0;font-size:13px;line-height:1.8}.continue-learning{background:linear-gradient(#17151ffa,#110f16fa);border:1px solid #9c89c53d;border-left:3px solid #a58aff;border-radius:18px;justify-content:space-between;align-items:center;gap:22px;margin:0 0 24px;padding:20px 22px;display:flex;box-shadow:0 12px 24px #0b0a1329}.continue-learning-copy{min-width:0}.continue-learning .eyebrow{margin-bottom:7px}.continue-learning h2{letter-spacing:-.04em;font-size:18px}.continue-learning-copy>p:last-child{color:#aaa3b8;margin:8px 0 0;font-size:12px;line-height:1.6}.continue-learning-button{min-height:44px;color:var(--text-primary);transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast), opacity var(--motion-fast);background:linear-gradient(135deg,#756dff5c,#3c2e58f5);border:1px solid #a58eff66;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;gap:12px;padding:10px 16px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 14px 26px #736dff33}.continue-learning-button:not(:disabled):hover{background:linear-gradient(135deg,#9275e666,#241d2ff5);border-color:#a98affb3;transform:translateY(-1px)}.continue-learning-button:not(:disabled):active{transform:translateY(0)}.continue-learning-button:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}.continue-learning-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.welcome-art{flex-shrink:0;width:240px;height:210px;position:relative}.art-circle{color:#f0eaff;letter-spacing:-5px;background:linear-gradient(145deg,#7255a5,#30213f);border:1px solid #8d72cf;border-radius:50%;place-items:center;width:135px;height:135px;font-size:52px;font-weight:800;display:grid;position:absolute;top:45px;left:50px;box-shadow:0 0 65px #8e69d438,inset 0 0 25px #ffffff12}.orbit{border:1px solid #755d91;border-radius:50%;position:absolute;transform:rotate(-25deg)}.orbit-one{inset:22px 0}.orbit-two{border-color:#443552;inset:4px 30px;transform:rotate(40deg)}.bubble{z-index:2;color:#e3d6ff;background:#20182c;border:1px solid #57466c;border-radius:12px;padding:10px 14px;font-size:11px;position:absolute;box-shadow:0 8px 25px #0003}.bubble-one{top:30px;right:0}.bubble-two{bottom:26px;left:0}.sparkle{color:#b8a0ff;font-size:23px;position:absolute;top:3px;left:17px}.section{margin-bottom:39px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px;display:flex}.section-heading .eyebrow{margin-bottom:8px}h2{letter-spacing:-.7px;margin:0;font-size:22px;font-weight:600}.settings-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.panel{background:#15131b;border:1px solid #2d2937;border-radius:15px;min-width:0;padding:22px}.panel label{color:#aaa3b8;margin-bottom:11px;font-size:12px;display:block}.panel select{color:#f4efff;background:#201c29;border:1px solid #393341;border-radius:9px;outline:none;width:100%;padding:12px 13px;font-size:13px}.panel select:focus{border-color:#a48aff}.panel select:focus-visible,.exercise-input:focus-visible{outline-offset:3px;outline:2px solid #b39aff}.language-info,.level-description{align-items:center;gap:12px;margin-top:20px;display:flex}.language-flag{background:#26202f;border-radius:12px;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.language-info strong,.level-description strong{font-size:13px}.language-info p,.level-description p{color:#928b9f;margin:5px 0 0;font-size:11px;line-height:1.6}.progress-track{background:#5d537657;border-radius:999px;height:9px;margin-top:18px;overflow:hidden;box-shadow:inset 0 1px 1px #00000047}.progress-track div{border-radius:inherit;background:linear-gradient(90deg,#8e7cff 0%,#7fc7ff 52%,#7ee2b7 100%);height:100%;transition:width .3s;box-shadow:0 0 16px #7ea0ff40}.level-icon{color:#c6aaff;background:#302440;border-radius:12px;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.lesson-card{background:linear-gradient(#131119fa,#0f0d14fa);border:1px solid #79719b3d;border-radius:18px;min-width:0;padding:20px 20px 18px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;box-shadow:0 16px 32px #08080f2e}.lesson-card--available{border-color:#7c70b942}.lesson-card--active{border-color:#8674ff66;box-shadow:0 18px 32px #5c4ca024}.lesson-card--done{border-color:#5fb38f52;box-shadow:0 18px 32px #14342b21}.lesson-card:hover{border-color:#998aff70;transform:translateY(-2px);box-shadow:0 18px 34px #08080f38}.lesson-card-status{color:#b9afd9;letter-spacing:.08em;text-transform:uppercase;background:#1f192dc2;border:1px solid #9085ca38;border-radius:999px;align-items:center;padding:5px 8px;font-size:9px;font-weight:700;display:inline-flex;position:absolute;top:18px;right:18px}.lesson-icon{background:linear-gradient(135deg,#9179ff47,#74b0ff2e);border-radius:14px;place-items:center;width:46px;height:46px;margin-bottom:20px;font-size:22px;display:grid;box-shadow:inset 0 1px #ffffff0f}.lesson-icon-1{background:linear-gradient(135deg,#60af8c42,#719aff29)}.lesson-icon-2{background:linear-gradient(135deg,#8d73ff42,#52bee42e)}.lesson-time{color:#aaa0bb;font-size:10px;font-weight:600;position:absolute;top:56px;right:18px}.lesson-card h3{letter-spacing:-.04em;color:#f3eeff;margin:0 0 8px;font-size:17px;font-weight:700}.lesson-card>p{color:#a7a0b8;min-height:38px;margin:0 0 18px;font-size:12px;line-height:1.6}.lesson-card-progress{color:#b8b0cf;margin:0 0 14px;font-size:11px;line-height:1.5}.lesson-button{color:#f4eefe;background:linear-gradient(135deg,#6e5ed647,#18161f);border:1px solid #8270b061;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;font-size:12px;font-weight:700;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s,opacity .2s;display:flex}.lesson-button:not(:disabled):hover{background:linear-gradient(135deg,#8777ff66,#1d1929);border-color:#a092ff85;transform:translateY(-1px);box-shadow:0 12px 22px #6558a82e}.lesson-button:not(:disabled):active{transform:translateY(0)}.lesson-button:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}.lesson-button:disabled{opacity:.6;cursor:not-allowed;background:#16131ce6;border-color:#655d754d}.lesson-button span{font-size:16px;line-height:1}.lesson-detail{background:#191420;border:1px solid #57436f;border-radius:16px;margin:25px 0;padding:26px;position:relative}.lesson-player{max-width:820px;margin:30px auto 50px}.lesson-back-button{color:#c5a5ff;background:0 0;border:0;margin-bottom:24px;padding:8px 0;font-size:13px}.lesson-back-button:hover{color:#e2d6ff}.lesson-player-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.lesson-player-heading h1,.lesson-result h1{font-size:30px}.lesson-player-heading .muted{margin:10px 0 0}.lesson-step-count{color:#aaa3b8;flex-shrink:0;font-size:12px}.lesson-progress-track{background:#302b38;border-radius:8px;height:6px;margin-bottom:20px;overflow:hidden}.lesson-progress-track span{border-radius:inherit;background:linear-gradient(90deg,#8969d4,#bba5ff);height:100%;transition:width .22s;display:block}.exercise-panel{box-shadow:var(--shadow-card);background:linear-gradient(#16141efa,#131119fa);border:1px solid #6671aa2e;border-radius:18px;padding:26px}.exercise-panel h2{overflow-wrap:anywhere;color:var(--text-primary);margin:0 0 24px;font-size:21px;line-height:1.5}.exercise-options{gap:10px;display:grid}.exercise-option{color:#e7e1f0;text-align:left;background:#201c29;border:1px solid #393341;border-radius:9px;width:100%;padding:13px 15px;transition:border-color .16s,background-color .16s}.exercise-option:hover:not(:disabled),.exercise-option.selected{background:#2a2038;border-color:#9476d4}.exercise-option:disabled{cursor:default}.exercise-input{color:#f5f1ff;width:100%;min-height:48px;font:inherit;background:#1b1822;border:1px solid #3d344d;border-radius:9px;outline:none;padding:12px 14px;font-size:14px}.exercise-input:focus{border-color:#a48aff}.exercise-input:disabled{opacity:.8}.exercise-feedback{border:1px solid;border-radius:9px;margin-top:20px;padding:14px 16px;font-size:13px;line-height:1.6}.exercise-feedback.correct{color:#b9ebca;background:#17271f;border-color:#397b5a}.exercise-feedback.incorrect{color:#f0c1bd;background:#2b1c20;border-color:#89504e}.exercise-feedback p{margin:5px 0 0}.exercise-actions{justify-content:flex-end;margin-top:22px;display:flex}.lesson-primary-button{color:#f5f8ff;min-height:44px;transition:transform var(--motion-fast), box-shadow var(--motion-fast), filter var(--motion-fast), opacity var(--motion-fast);background:linear-gradient(135deg,#6d8cff 0%,#7a5fe0 52%,#8a6dff 100%);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:11px 16px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 10px 22px #6073ff47}.lesson-primary-button:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}.lesson-primary-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.lesson-primary-button:not(:disabled):hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 16px 26px #6073ff52}.lesson-primary-button:not(:disabled):active{transform:translateY(0)}.lesson-result{text-align:center;background:#15131b;border:1px solid #342d42;border-radius:15px;flex-direction:column;align-items:center;padding:52px 24px;display:flex}.lesson-result-icon{color:#b9ebca;background:#17271f;border:1px solid #397b5a;border-radius:50%;place-items:center;width:58px;height:58px;margin-bottom:22px;font-size:27px;display:grid}.lesson-result-score{color:#c5bfd1;margin:18px 0 8px}.lesson-result-score strong{color:#e8d9ff}.lesson-result .lesson-primary-button{margin-top:22px}.lesson-card-progress{color:#bba5ff;min-height:16px;margin:-10px 0 14px;font-size:11px;line-height:1.5}.level-results{background:linear-gradient(#110f16fa,#0c0a10fa);border:1px solid #7e74ab33;border-radius:20px;margin-top:26px;padding:22px 20px 8px;box-shadow:0 16px 30px #0a08121f}.level-results>.eyebrow{margin-bottom:14px}.level-result-row{color:#a9a0bd;background:#18151ee6;border:1px solid #79709e24;border-radius:12px;grid-template-columns:64px repeat(3,minmax(0,1fr));align-items:center;gap:12px;padding:12px 10px;font-size:12px;display:grid}.level-result-row+.level-result-row{margin-top:10px}.level-result-row strong{color:#e7dfff;font-size:13px}.level-result-row span{min-width:0;display:block}.lesson-detail>p:not(.eyebrow){color:#a9a1b7;font-size:12px;line-height:1.7}.close-button{float:right;color:#c8b8e8;background:0 0;border:1px solid #41354f;border-radius:8px;padding:7px 10px;font-size:11px}.phrase{background:#24202d;border-radius:12px;flex-direction:column;gap:8px;margin:20px 0;padding:19px;display:flex}.phrase strong{font-size:17px}.phrase span{color:#b4a9c7;font-size:13px}.progress-page{--progress-bg:var(--bg-0);--progress-surface:#171521;--progress-surface-soft:#1b1823;--progress-border:#9481c73d;--progress-text:var(--text-primary);--progress-muted:var(--text-muted);--progress-soft:#74749138;--progress-shadow:0 16px 32px #0a081224;background:var(--progress-bg);color:var(--progress-text)}.progress-page .topbar{background:var(--progress-bg);border-bottom-color:var(--border-soft)}.progress-page .breadcrumb,.progress-page .muted,.progress-page .panel label,.progress-page .progress-metric p,.progress-page .empty-state p,.progress-page .level-result-row{color:var(--progress-muted)}.progress-page .streak{background:var(--progress-surface);border-color:var(--progress-border);color:var(--text-secondary);box-shadow:var(--shadow-card)}.progress-page .section-heading{margin-bottom:24px}.progress-page .section-heading .eyebrow{color:var(--text-muted);letter-spacing:.14em;font-size:10px}.progress-page .section-heading h2{color:var(--text-primary);letter-spacing:-.06em;font-size:clamp(24px,2vw,32px)}.progress-page .progress-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.progress-page .progress-grid .panel{border:1px solid var(--progress-border);min-width:0;box-shadow:var(--progress-shadow);background:linear-gradient(#121018fa,#0e0c13fa);border-radius:18px;padding:20px;position:relative}.progress-page .progress-grid .panel label{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;font-size:10px;font-weight:700;display:block}.progress-page .progress-metric{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;margin-top:12px;display:grid}.progress-page .metric-icon{width:48px;height:48px;color:var(--text-secondary);background:linear-gradient(135deg,#8575ff2b,#5fa2ff14);border:1px solid #8577b557;border-radius:14px;place-items:center;font-size:22px;display:grid;box-shadow:inset 0 1px #ffffff0a}.progress-page .progress-metric strong{color:var(--text-primary);letter-spacing:-.07em;font-size:clamp(24px,2vw,34px);line-height:1.15;display:block}.progress-page .progress-metric p{color:var(--text-muted);margin:6px 0 0;font-size:11px;line-height:1.5}.progress-page .progress-track{background:#5c567347;border-radius:999px;height:8px;margin-top:18px;overflow:hidden}.progress-page .progress-track div{border-radius:inherit;background:linear-gradient(90deg,#8c79ff 0%,#7bc7ff 52%,#7ce9b6 100%);height:100%;transition:width .3s;box-shadow:0 0 16px #7ea0ff3d}.progress-page .level-results{border:1px solid var(--progress-border);box-shadow:var(--progress-shadow);background:linear-gradient(#121018fa,#0d0b11fa);border-radius:18px;margin-top:24px;padding:20px 18px 8px}.progress-page .level-results>.eyebrow{color:var(--text-muted);letter-spacing:.14em;margin-bottom:14px;font-size:10px}.progress-page .level-result-row{color:var(--text-muted);background:#17141ee6;border:1px solid #766aa12e;border-radius:12px;grid-template-columns:64px repeat(3,minmax(0,1fr));align-items:center;gap:12px;padding:12px;font-size:12px;display:grid}.progress-page .level-result-row+.level-result-row{margin-top:10px}.progress-page .level-result-row strong{color:var(--text-primary);font-size:13px}.progress-page .empty-state{border:1px solid var(--progress-border);box-shadow:var(--progress-shadow);background:linear-gradient(#121018fa,#0e0c13fa);border-radius:18px;padding:24px 22px}.progress-page .empty-state h3{letter-spacing:-.05em;color:var(--text-primary);margin:0 0 8px;font-size:22px}.progress-page .empty-state p{color:var(--text-muted);margin:0;line-height:1.7}@media (width<=1000px){.progress-page .progress-grid{grid-template-columns:1fr}}@media (width<=700px){.progress-page .level-result-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;font-size:11px}.progress-page .level-result-row strong,.progress-page .level-result-row span:last-child{grid-column:1/-1}}footer{color:#797285;border-top:1px solid #25232d;justify-content:center;gap:8px;padding:25px 0;font-size:11px;display:flex}footer span{color:#b69cff}@media (width<=1000px){.sidebar{width:200px}.content{padding:0 25px}.welcome{padding:30px}.welcome-art{transform-origin:100%;width:190px;margin-left:-20px;transform:scale(.85)}.lesson-grid{grid-template-columns:1fr 1fr}.progress-grid{grid-template-columns:1fr}}@media (width<=700px){.sidebar{display:none}.content{padding:0 17px}.topbar{min-height:62px}.breadcrumb{font-size:10px}.streak{max-width:150px;font-size:9px}.welcome{min-height:auto;margin:20px 0 32px;padding:25px 22px}.welcome-art{display:none}h1{font-size:34px}.welcome-description{font-size:12px}.continue-learning{flex-direction:column;align-items:stretch;gap:14px;margin:-12px 0 32px;padding:18px}.continue-learning-button{width:100%}.section-heading{align-items:start}.section-heading h2{font-size:19px}.section-heading .muted{text-align:right;font-size:10px}.settings-grid,.lesson-grid{grid-template-columns:1fr}.panel,.lesson-card{padding:18px}.lesson-icon{margin-bottom:15px}.lesson-player{margin:20px auto 36px}.lesson-player-heading{flex-direction:column;align-items:flex-start;gap:10px}.lesson-player-heading h1,.lesson-result h1{font-size:27px}.exercise-panel{padding:19px 16px}.exercise-panel h2{font-size:18px}.exercise-actions,.exercise-actions .lesson-primary-button{width:100%}.lesson-result{padding:38px 18px}.level-result-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:11px}.level-result-row strong,.level-result-row span:last-child{grid-column:1/-1}}.interest-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.interest-chip{color:#c5bfd1;text-align:left;background:#15131b;border:1px solid #302b3a;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;padding:15px 13px;font-size:12px;transition:all .2s;display:flex}.interest-chip:hover{border-color:#776092}.interest-chip.selected{color:#e2d6ff;background:#251c34;border-color:#9476d4}.interest-chip>span{color:#a98aff;font-size:15px}.interest-summary{color:#9992a5;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:15px 0;font-size:12px;display:flex}.interest-summary strong{color:#e1d5ff}.interest-save-feedback{margin:0;font-size:12px;line-height:1.5}.interest-save-success{color:#b9ebca}.interest-save-error{color:#ffb7b7}.save-interests{color:#e1d4ff;background:#291e39;border:1px solid #624b83;border-radius:9px;padding:11px 15px;font-size:12px}.save-interests:hover{background:#38264e}@media (width<=900px){.interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.interest-grid{grid-template-columns:1fr}.interest-summary{flex-direction:column;align-items:flex-start}}.chat-start-button{color:#f7f3ff;min-height:46px;font:inherit;cursor:pointer;transition:background var(--motion-fast), border-color var(--motion-fast), box-shadow var(--motion-fast), transform var(--motion-fast), opacity var(--motion-fast);background:linear-gradient(135deg,#6d8cff 0%,#7a5fe0 52%,#8a6dff 100%);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:13px 22px;font-size:14px;font-weight:700;display:inline-flex;box-shadow:0 12px 26px #6c7dff47}.chat-start-button:not(:disabled):hover{background:linear-gradient(135deg,#7f8eff 0%,#866ce8 52%,#9b7efc 100%);transform:translateY(-1px);box-shadow:0 16px 30px #6c7dff57}.chat-start-button:not(:disabled):active{transform:translateY(0);box-shadow:0 10px 18px #6c7dff38}.chat-start-button:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}.chat-start-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.chat-start-button span{color:#ffffffe6;transition:transform var(--motion-fast)}.chat-start-button:not(:disabled):hover span{transform:translate(2px,-2px)}.chat-panel{background:#15131b;border:1px solid #342d42;border-radius:16px;margin-top:20px;padding:22px}.chat-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.chat-messages{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.chat-message{border-radius:12px;max-width:80%;padding:12px 14px;font-size:13px;line-height:1.6}.assistant-message{color:#efe7ff;background:#201b2d;border:1px solid #392f4d;align-self:flex-start}.user-message{color:#f6f0ff;background:#2a2240;border:1px solid #6a4bbc;align-self:flex-end}.chat-form{gap:10px;margin-top:12px;display:flex}.chat-form input{color:#f5f1ff;background:#1b1822;border:1px solid #3d344d;border-radius:10px;flex:1;min-height:46px;padding:12px 14px}.chat-submit{color:#f0e7ff;background:linear-gradient(135deg,#38264f,#271d35);border:1px solid #7256ad;border-radius:10px;min-width:130px;min-height:46px;padding:12px 18px}.chat-submit:disabled{opacity:.7;cursor:wait}.chat-header-actions{align-items:center;gap:10px;display:flex}.clear-chat-button{color:#e8d9ff;background:#1f1a2b;border:1px solid #5d4b78;border-radius:8px;padding:8px 12px;font-size:11px}.chat-error{color:#ffb7b7;margin:0 0 12px;font-size:12px}.live-error-message small{color:#aaa3b8;overflow-wrap:anywhere;margin-top:-6px;font-size:11px;display:block}.chat-note{color:#928aa5;margin-top:12px;font-size:11px;line-height:1.6}.nav-item:hover:not(.active){color:#e2d4ff;background:#8b5cf60d}.nav-item:active{transition-duration:.1s}.nav-menu{flex-direction:column;gap:6px;display:flex;position:relative}.nav-menu .nav-item{background:0 0;border-color:#0000;transition:color .22s,background-color .22s;position:relative}.nav-menu .nav-item.active{color:#c5a5ff;background:#8b5cf61a;border-color:#a777ff3d}.mobile-nav{display:none}.home-overview{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;margin-bottom:38px;display:grid}.home-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.home-stat,.home-shortcut{background:linear-gradient(#131119f5,#0f0d15f5);border:1px solid #7e789a33;border-radius:14px;min-width:0;padding:17px;box-shadow:0 10px 18px #0908111f}.home-stat{--stat-progress:0%;flex-direction:column;justify-content:space-between;gap:10px;display:flex;position:relative;overflow:hidden}.home-stat:before{content:"";background:linear-gradient(90deg,#a093ff00,#a093ff99,#a093ff00);height:1px;position:absolute;inset:auto 18px 0}.home-stat span{color:#948aa4;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:700;line-height:1.5;display:block}.home-stat strong{color:#f4efff;letter-spacing:-.05em;margin-top:2px;font-size:22px;line-height:1.1;display:block}.home-stat strong small{color:#948aa4;font-size:12px;font-weight:500}.home-stat-progress{background:#857ca42e;border-radius:999px;width:100%;height:5px;overflow:hidden}.home-stat-progress span{width:var(--stat-progress);border-radius:inherit;background:linear-gradient(90deg,#7ea7ff 0%,#8e78ff 45%,#7fe6a2 100%);height:100%;display:block}.home-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.home-shortcut{color:#d8caff;text-align:left;width:100%;min-height:54px;transition:transform var(--motion-fast), border-color var(--motion-fast), background var(--motion-fast), box-shadow var(--motion-fast);justify-content:space-between;align-items:center;padding:10px 14px;font-size:12px;font-weight:600;display:flex}.home-shortcut:not(:disabled):hover{background:linear-gradient(#1b1624f5,#13101cf5);border-color:#8b76ff7a;transform:translateY(-1px);box-shadow:0 14px 24px #0b0a1324}.home-shortcut:focus-visible{outline:var(--ring-width) solid var(--focus-ring);outline-offset:3px}.home-shortcut:active{transform:translateY(0)}.home-shortcut span{color:#a8a0ff;transition:transform var(--motion-fast);font-size:16px;line-height:1}.home-shortcut:hover span{transform:translate(2px)}.profile-heading{align-items:center;gap:16px;margin:32px 0;display:flex}.profile-avatar{color:#e2d6ff;background:#302440;border:1px solid #624b83;border-radius:20px;flex:0 0 64px;place-items:center;width:64px;height:64px;font-size:26px;font-weight:700;display:grid}.profile-heading h1{font-size:27px}.profile-heading .eyebrow{margin-bottom:5px}.profile-heading .muted{margin:7px 0 0}.profile-section{margin-bottom:32px}.profile-setting-panel{min-height:190px}.theme-picker{background:#15131b;border:1px solid #302b3a;border-radius:11px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:5px;display:grid}.theme-option{color:#aaa3b8;background:0 0;border:1px solid #0000;border-radius:8px;min-height:42px;padding:8px;font-size:12px}.theme-option.selected{color:#e2d6ff;background:#302440;border-color:#624b83}.profile-setting-note{color:#948aa4;margin:10px 2px 0;font-size:11px;line-height:1.6}.sound-settings{gap:22px;display:grid}.setting-toggle{justify-content:space-between;align-items:center;gap:16px;color:#f4f3fa!important;margin:0!important;display:flex!important}.setting-toggle strong,.setting-toggle small{display:block}.setting-toggle strong{font-size:13px}.setting-toggle small{color:#948aa4;margin-top:5px;font-size:11px;line-height:1.5}.setting-toggle input{accent-color:#9a7be0;flex:0 0 42px;width:42px;height:24px}.volume-control{grid-template-columns:1fr auto;align-items:center;gap:10px 14px;color:#c5bfd1!important;margin:0!important;font-size:12px!important;display:grid!important}.volume-control strong{color:#d8caff;font-size:12px}.volume-control input{accent-color:#9a7be0;grid-column:1/-1;width:100%}.chat-context-panel>p,.chat-context-panel li{color:#aaa3b8;font-size:12px;line-height:1.7}.chat-context-panel ul{margin:8px 0 18px;padding-left:19px}.chat-context-panel .lesson-button{max-width:360px}html,body,#root{width:100%;min-width:320px;overflow-x:clip}@media (width<=700px){.app{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);display:block}.sidebar{display:none}.content{width:100%;max-width:100%;padding:0 16px calc(104px + env(safe-area-inset-bottom))}.mobile-nav{z-index:30;padding:7px 8px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#100f15f5;border-top:1px solid #302b3a;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #0000002e}.mobile-nav-item{color:#938da1;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;place-content:center;justify-items:center;gap:3px;min-width:0;min-height:54px;padding:4px 2px;font-size:10px;line-height:1.1;display:grid}.mobile-nav-item.active{color:#d2bcff;background:#8b5cf61f;border-color:#a777ff3b}.mobile-nav-icon{font-size:19px;line-height:1}.topbar{gap:8px;min-height:62px}.breadcrumb{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.streak{text-overflow:ellipsis;white-space:nowrap;max-width:45%;padding:8px 9px;overflow:hidden}.welcome{border-radius:16px;margin-top:18px;padding:24px 20px}.welcome h1{letter-spacing:0;font-size:32px}.home-overview{grid-template-columns:1fr;gap:10px;margin-bottom:26px}.home-stats{gap:7px}.home-stat{padding:12px 10px}.home-stat span{min-height:30px;font-size:10px}.home-stat strong{font-size:18px}.home-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-shortcut{min-height:48px;padding:8px 10px;font-size:10px}.lesson-grid,.settings-grid,.progress-grid{grid-template-columns:minmax(0,1fr)}.lesson-player{margin-bottom:20px}.chat-panel{margin:16px 0 0;padding:17px 14px}.chat-header{flex-direction:column}.chat-header-actions{justify-content:space-between;width:100%}.chat-messages{max-height:min(48dvh,420px);overflow-y:auto}.chat-message{overflow-wrap:anywhere;max-width:90%}.chat-form{flex-direction:column}.chat-form input{width:100%;min-width:0}.chat-submit{width:100%}.profile-heading{margin:22px 0 28px}.profile-heading h1{letter-spacing:0;overflow-wrap:anywhere;font-size:25px}.profile-section{margin-bottom:26px}.theme-picker{grid-template-columns:1fr}.theme-option{min-height:40px}.profile-setting-panel{min-height:0}.interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.interest-chip{min-width:0;padding:12px 10px;font-size:11px}}.live-panel{max-width:920px;margin:28px auto;padding-bottom:36px}.live-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.live-heading h1{margin:0 0 8px}.live-description,.live-history details,.live-summary{line-height:1.65}.live-profile-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0;display:grid}.live-profile-controls label{color:#b7b0c4;gap:7px;font-size:12px;display:grid}.live-profile-controls select{color:#f4f3fa;background:#17151e;border:1px solid #39343f;border-radius:10px;width:100%;min-height:42px;padding:0 12px}.live-mode-picker{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.live-mode-picker button{color:#aaa3b8;background:#17151e;border:1px solid #39343f;border-radius:10px;min-height:38px;padding:8px 12px;font-size:12px}.live-mode-picker button.selected{color:#d7c6ff;background:#282137;border-color:#765ca6}.live-mode-picker button:disabled{cursor:default;opacity:.75}.live-controls{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.live-status{color:#ded8eb;border:1px solid #39343f;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:9px 12px;font-size:13px;display:inline-flex}.live-status>span{background:#92879f;border-radius:50%;width:8px;height:8px}.live-status-listening>span,.live-status-recognizing>span{background:#67d6a4}.live-status-thinking>span,.live-status-summarizing>span{background:#e9c66c}.live-status-speaking>span{background:#ad91ff}.live-status-error>span,.live-status-unsupported>span{background:#f27b86}.live-transcript{background:#100f15bf;border:1px solid #292631;border-radius:16px;gap:12px;min-height:130px;max-height:52vh;padding:16px;display:grid;overflow:auto}.live-turn{background:#201d29;border-radius:14px;width:min(85%,680px);padding:12px 15px}.live-turn p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0}.live-turn strong{color:#b69cff;font-size:12px}.live-user-turn{background:#28223a;justify-self:end}.live-assistant-turn{justify-self:start}.live-interim{opacity:.65}.live-text-form{margin-top:14px}.live-summary,.live-history{background:#14121bbf;border:1px solid #302c39;border-radius:16px;margin-top:22px;padding:18px}.live-summary h2,.live-history h2{margin:0 0 10px;font-size:18px}.live-summary>p:last-child,.live-history details p{white-space:pre-wrap;overflow-wrap:anywhere}.live-history details{border-top:1px solid #302c39;padding:10px 0}.live-history summary{cursor:pointer}.live-history details p{margin-bottom:0}@media (width<=700px){.live-panel{margin-top:16px}.live-profile-controls{grid-template-columns:1fr}.live-heading{flex-direction:column;gap:12px}.live-transcript{max-height:45vh;padding:10px}.live-turn{width:95%}}@media (width<=360px){.content{padding-left:12px;padding-right:12px}.mobile-nav{padding-left:4px;padding-right:4px}.mobile-nav-item{font-size:9px}.home-stats,.home-shortcuts{grid-template-columns:1fr}}html[data-theme=light] body,html[data-theme=light] #root{color:#242532}html[data-theme=light] .app{color:#242532;background:radial-gradient(at 72% 0,#e9e8f7 0%,#0000 38%),#f4f5f8}html[data-theme=light] .sidebar{background:#fff;border-color:#e3e5eb}html[data-theme=light] .brand,html[data-theme=light] .sidebar-bottom strong,html[data-theme=light] h1,html[data-theme=light] h2,html[data-theme=light] h3{color:#242532}html[data-theme=light] .brand-icon{color:#fff;background:#6a58b3}html[data-theme=light] .brand-dot,html[data-theme=light] h1 span{color:#6653ae}html[data-theme=light] .nav-label,html[data-theme=light] .eyebrow{color:#727384}html[data-theme=light] .nav-item{color:#626474}html[data-theme=light] .nav-item:hover:not(.active){color:#383450;background:#f4f2fb}html[data-theme=light] .nav-item.active{color:#554594;background:#f0edfa;border-color:#dcd5f2}html[data-theme=light] .sidebar-bottom,html[data-theme=light] .topbar{border-color:#e2e4eb}html[data-theme=light] .avatar,html[data-theme=light] .profile-avatar{color:#554594;background:#eeebf8;border-color:#ded8f1}html[data-theme=light] .sidebar-bottom p,html[data-theme=light] .breadcrumb,html[data-theme=light] .muted{color:#727384}html[data-theme=light] .streak{color:#5c4b99;background:#f1eef9;border-color:#dfd9f0}html[data-theme=light] .welcome{background:linear-gradient(115deg,#fff 0%,#f3f0fa 100%);border-color:#e1dced}html[data-theme=light] .welcome-description,html[data-theme=light] .home-stat span,html[data-theme=light] .home-stat small,html[data-theme=light] .progress-metric p{color:#696a7a}html[data-theme=light] .art-circle{color:#fff;background:linear-gradient(145deg,#8d82bd,#524878);border-color:#9589c5}html[data-theme=light] .orbit{border-color:#a49ac8}html[data-theme=light] .orbit-two{border-color:#d5d1e3}html[data-theme=light] .bubble{color:#4f456e;background:#fff;border-color:#d7d1e8}html[data-theme=light] .sparkle{color:#6653ae}html[data-theme=light] .continue-learning,html[data-theme=light] .panel,html[data-theme=light] .lesson-card,html[data-theme=light] .lesson-detail,html[data-theme=light] .exercise-panel,html[data-theme=light] .lesson-result,html[data-theme=light] .empty-state,html[data-theme=light] .chat-panel,html[data-theme=light] .home-stat,html[data-theme=light] .home-shortcut{color:#292a38;background:#fff;border-color:#e1e3eb}html[data-theme=light] .continue-learning{border-left-color:#7664ba}html[data-theme=light] .continue-learning-copy>p:last-child,html[data-theme=light] .chat-context-panel>p,html[data-theme=light] .chat-context-panel li{color:#696a7a}html[data-theme=light] .home-stat strong{color:#292a38}html[data-theme=light] .home-shortcut{color:#554594}html[data-theme=light] .home-shortcut:hover,html[data-theme=light] .lesson-card:hover{background:#faf9fd;border-color:#c8c0e3}html[data-theme=light] .continue-learning-button,html[data-theme=light] .lesson-primary-button,html[data-theme=light] .chat-start-button,html[data-theme=light] .chat-submit,html[data-theme=light] .save-interests{color:#fff;background:#5e4d9d;border-color:#7664ba}html[data-theme=light] .continue-learning-button:hover,html[data-theme=light] .lesson-primary-button:not(:disabled):hover,html[data-theme=light] .chat-start-button:hover,html[data-theme=light] .save-interests:hover{color:#fff;background:#514184;border-color:#584792}html[data-theme=light] .chat-start-button span{color:#e5defc}html[data-theme=light] .progress-track,html[data-theme=light] .lesson-progress-track{background:#e7e7ed}html[data-theme=light] .panel label,html[data-theme=light] .language-info p,html[data-theme=light] .level-description p{color:#696a7a}html[data-theme=light] .panel select,html[data-theme=light] .exercise-input,html[data-theme=light] .chat-form input{color:#292a38;background:#f8f8fb;border-color:#d8dae3}html[data-theme=light] .panel select:focus,html[data-theme=light] .exercise-input:focus{border-color:#7664ba}html[data-theme=light] .panel select:focus-visible,html[data-theme=light] .exercise-input:focus-visible{outline-color:#6653ae}html[data-theme=light] .interest-save-success{color:#275a39}html[data-theme=light] .interest-save-error{color:#783c38}html[data-theme=light] .language-flag,html[data-theme=light] .level-icon,html[data-theme=light] .metric-icon,html[data-theme=light] .lesson-icon{color:#554594;background-color:#f0eef7}html[data-theme=light] .lesson-icon-1{background:#edf3f3}html[data-theme=light] .lesson-icon-2{background:#f4eef2}html[data-theme=light] .lesson-time,html[data-theme=light] .lesson-card>p,html[data-theme=light] .lesson-detail>p:not(.eyebrow){color:#696a7a}html[data-theme=light] .lesson-button,html[data-theme=light] .clear-chat-button,html[data-theme=light] .exercise-option,html[data-theme=light] .theme-picker{color:#464054;background:#f7f6fa;border-color:#d8d4e5}html[data-theme=light] .lesson-button:hover,html[data-theme=light] .exercise-option:hover:not(:disabled),html[data-theme=light] .exercise-option.selected{color:#41386a;background:#efedf7;border-color:#a69acb}html[data-theme=light] .phrase{color:#292a38;background:#f1f0f5}html[data-theme=light] .phrase span,html[data-theme=light] .progress-metric p{color:#696a7a}html[data-theme=light] .chat-message.assistant-message{color:#302d3c;background:#f4f2f9;border-color:#ded9ec}html[data-theme=light] .chat-message.user-message{color:#342b52;background:#eee9fa;border-color:#c8bde9}html[data-theme=light] .chat-form input{color:#292a38}html[data-theme=light] .chat-note,html[data-theme=light] .profile-setting-note,html[data-theme=light] .setting-toggle small{color:#696a7a}html[data-theme=light] .close-button{color:#554594;border-color:#d8d4e5}html[data-theme=light] .interest-chip{color:#4b4c5b;background:#fff;border-color:#e1e3eb}html[data-theme=light] .interest-chip.selected{color:#514184;background:#f0edfa;border-color:#b8addc}html[data-theme=light] .interest-chip>span,html[data-theme=light] .interest-summary strong,html[data-theme=light] .lesson-card-progress,html[data-theme=light] .progress-metric strong{color:#554594}html[data-theme=light] .interest-summary,html[data-theme=light] .level-result-row{color:#696a7a;border-color:#e1e3eb}html[data-theme=light] .level-results{border-color:#e1e3eb}html[data-theme=light] .level-result-row strong{color:#514184}html[data-theme=light] .theme-picker{background:#ededf2}html[data-theme=light] .theme-option{color:#555666}html[data-theme=light] .theme-option.selected{color:#514184;background:#fff;border-color:#d4cdea}html[data-theme=light] .setting-toggle{color:#292a38!important}html[data-theme=light] .mobile-nav{background:#fffffff5;border-color:#e0e2e9;box-shadow:0 -8px 30px #1d1d2c1a}html[data-theme=light] .mobile-nav-item{color:#6c6d7b}html[data-theme=light] .mobile-nav-item.active{color:#554594;background:#f0edfa;border-color:#ded8ef}html[data-theme=light] .exercise-feedback.correct{color:#275a39;background:#eff8f1;border-color:#a9d1b5}html[data-theme=light] .exercise-feedback.incorrect{color:#783c38;background:#fcf1f0;border-color:#e2b8b3}html[data-theme=light] .lesson-result-icon{color:#275a39;background:#eff8f1;border-color:#a9d1b5}html[data-theme=light] .lesson-result-score,html[data-theme=light] .lesson-result-score strong{color:#3f4050}html[data-theme=light] .exercise-option:disabled{color:#555666}html[data-theme=light] footer{color:#696a7a;border-color:#e1e3eb}html[data-theme=light] footer span{color:#554594}html[data-theme=light] .live-transcript,html[data-theme=light] .live-summary,html[data-theme=light] .live-history{background:#fff;border-color:#e0e2e9}html[data-theme=light] .live-turn{background:#f0eef6}html[data-theme=light] .live-user-turn{background:#eee9fa}html[data-theme=light] .live-status{color:#4a4b59;border-color:#dedfe6}html[data-theme=light] .live-history details{border-color:#e0e2e9}html[data-theme=light] .live-profile-controls label{color:#555666}html[data-theme=light] .live-profile-controls select,html[data-theme=light] .live-mode-picker button{color:#373847;background:#fff;border-color:#dedfe6}html[data-theme=light] .live-mode-picker button.selected{color:#554594;background:#f0ebff;border-color:#9c87d4}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.loading-screen{--loading-screen-bg-top:#1a1227;--loading-screen-bg-bottom:#0d0c12;--loading-screen-text:#f4f3fa;--loading-screen-muted:#b0a9bd;--loading-band-bg-1:#f5f0ff;--loading-band-bg-2:#ece1ff;--loading-band-text:#171022;--loading-band-accent:#8d6ce8;--loading-band-outline:#6f57a42e;z-index:1000;background:radial-gradient(ellipse at 70% 0%, #8a6bd63d, transparent 32%), linear-gradient(135deg, var(--loading-screen-bg-top) 0%, var(--loading-screen-bg-bottom) 100%);min-width:320px;min-height:100dvh;color:var(--loading-screen-text);grid-template-rows:minmax(0,1fr) auto minmax(0,1fr);justify-items:center;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:fixed;inset:0;overflow:hidden}html[data-theme=light] .loading-screen{--loading-screen-bg-top:#f6f4ff;--loading-screen-bg-bottom:#f4f5f8;--loading-screen-text:#201a2d;--loading-screen-muted:#544d63;--loading-band-bg-1:#f7f3ff;--loading-band-bg-2:#efe7ff;--loading-band-text:#1a1622;--loading-band-accent:#7c5fd1;--loading-band-outline:#7e69b629}.loading-brand{color:var(--loading-screen-text);letter-spacing:.22em;align-self:end;margin-bottom:clamp(32px,8vh,76px);font-size:clamp(14px,1.8vw,19px);font-weight:800;line-height:1}.loading-marquee-band{background:linear-gradient(90deg, var(--loading-band-bg-1) 0%, var(--loading-band-bg-2) 100%);border-top:1px solid var(--loading-band-outline);border-bottom:1px solid var(--loading-band-outline);width:100%;height:clamp(100px,18vh,144px);box-shadow:inset 0 0 0 1px var(--loading-band-outline);clip-path:polygon(0 0,45% 14%,55% 14%,100% 0,100% 100%,55% 86%,45% 86%,0 100%);align-items:center;display:flex;overflow:hidden}.loading-marquee-track{will-change:transform;width:max-content;animation:22s linear infinite loading-marquee-scroll;display:flex}.loading-marquee-group{white-space:nowrap;flex:none;align-items:center;gap:clamp(24px,4vw,58px);padding-right:clamp(24px,4vw,58px);display:flex}.loading-marquee-group>span{color:var(--loading-band-text);letter-spacing:-.035em;flex:none;font-size:clamp(27px,5vw,64px);font-weight:800;line-height:1}.loading-marquee-group>.loading-marquee-separator{color:var(--loading-band-accent);font-size:clamp(22px,3.5vw,42px);font-weight:600}.loading-status{color:var(--loading-screen-muted);letter-spacing:.02em;align-self:start;margin-top:clamp(32px,8vh,76px);font-size:clamp(13px,1.8vw,16px);font-weight:500}@keyframes loading-marquee-scroll{0%{transform:translate(-50%)}to{transform:translate(0,0)}}@media (width<=600px){.loading-marquee-band{height:clamp(92px,16vh,118px)}.loading-marquee-group{gap:24px;padding-right:24px}}@media (prefers-reduced-motion:reduce){.loading-marquee-track{will-change:auto;animation:none;transform:none}}.enhanced-progress-dashboard{width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;gap:24px;padding:12px 8px 8px;display:flex}.enhanced-progress-dashboard__topbar{justify-content:space-between;align-items:end;gap:16px;display:flex}.enhanced-progress-dashboard__eyebrow{color:#aab5ffcc;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:10px;font-weight:700}.enhanced-progress-dashboard__topbar h2{color:#edf3ff;letter-spacing:-.08em;margin:0;font-size:clamp(30px,3vw,42px);line-height:1.02}.enhanced-progress-dashboard__label{color:#dfe7ff;letter-spacing:.06em;text-transform:uppercase;background:#6f78d21f;border:1px solid #8790db47;border-radius:999px;align-items:center;padding:8px 12px;font-size:11px;display:inline-flex}.enhanced-progress-dashboard__streak-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;display:grid}.enhanced-progress-dashboard__day{color:#b7bfd9;background:#131722cc;border:1px solid #8189c438;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:96px;padding:12px 8px 10px;transition:border-color .2s,transform .2s,box-shadow .2s;display:flex}.enhanced-progress-dashboard__day:hover{border-color:#81b0ff6b;transform:translateY(-1px)}.enhanced-progress-dashboard__day.is-active{background:linear-gradient(#1d2740fa,#11131efa);border-color:#5fb4ff80;box-shadow:0 18px 24px #4e7dff2e}.enhanced-progress-dashboard__day.is-complete .enhanced-progress-dashboard__day-icon{background:#70d0ff1f;border-color:#70d0ff52}.enhanced-progress-dashboard__day-icon{color:#e7ebff;background:#ffffff05;border:1px solid #929cce42;border-radius:12px;place-items:center;width:32px;height:32px;font-size:14px;display:grid}.enhanced-progress-dashboard__day strong{color:#ecf3ff;letter-spacing:-.04em;font-size:17px}.enhanced-progress-dashboard__main-panel{background:linear-gradient(#0f1219d1,#0c0f16ad);border:1px solid #848fc61f;border-radius:24px;grid-template-columns:minmax(260px,360px) minmax(0,1fr);align-items:center;gap:24px;padding:20px 16px 8px;display:grid;box-shadow:0 16px 32px #070a122e}.enhanced-progress-dashboard__gauge-shell{place-items:center;width:min(100%,330px);margin:0 auto;display:grid;position:relative}.enhanced-progress-dashboard__gauge{filter:drop-shadow(0 0 22px #5e9aff47);width:100%;height:auto;display:block}.enhanced-progress-dashboard__gauge-track{fill:none;stroke:#959dc52e}.enhanced-progress-dashboard__gauge-arc{fill:none;stroke:url(#progress-gauge-gradient)}.enhanced-progress-dashboard__gauge-mark{stroke:#c8d5ff47;stroke-width:2.2px;stroke-linecap:round}.enhanced-progress-dashboard__gauge-center{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute}.enhanced-progress-dashboard__gauge-value{color:#f4f8ff;letter-spacing:-.08em;font-size:clamp(34px,5vw,46px);font-weight:700;line-height:1}.enhanced-progress-dashboard__gauge-label{color:#aeb7d8;letter-spacing:.14em;text-transform:uppercase;font-size:11px}.enhanced-progress-dashboard__summary{min-width:0}.enhanced-progress-dashboard__tag{color:#d9e9ff;letter-spacing:.12em;text-transform:uppercase;background:#5a97ff1f;border:1px solid #75b4ff42;border-radius:999px;align-items:center;padding:7px 10px;font-size:10px;display:inline-flex}.enhanced-progress-dashboard__summary h3{color:#eef6ff;letter-spacing:-.06em;margin:18px 0 10px;font-size:clamp(24px,2.6vw,38px);line-height:1.14}.enhanced-progress-dashboard__summary p{color:#b1bdd6;margin:0;font-size:14px;line-height:1.7}.enhanced-progress-dashboard__selected-day{background:#11151fcc;border:1px solid #7e86be38;border-radius:12px;align-items:center;gap:8px;margin-top:18px;padding:8px 12px;display:inline-flex}.enhanced-progress-dashboard__selected-day span{color:#95a1c9;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.enhanced-progress-dashboard__selected-day strong{color:#edf6ff;font-size:15px}.enhanced-progress-dashboard__chart-wrap{background:#0e121cb3;border:1px solid #7a83b524;border-radius:22px;outline:none;padding:18px 18px 8px;position:relative}.enhanced-progress-dashboard__chart-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.enhanced-progress-dashboard__chart-period{color:#a5b0d6;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.enhanced-progress-dashboard__chart-shell{background:linear-gradient(#0f121ac2,#0e121aeb);border-radius:18px;overflow:hidden}.enhanced-progress-dashboard__chart{width:100%;height:220px;display:block}.enhanced-progress-dashboard__chart-grid line{stroke:#a6b0dc1f;stroke-width:1px}.enhanced-progress-dashboard__chart-point{cursor:pointer}.enhanced-progress-dashboard__chart-hit-area{fill:#0000;stroke:#0000;stroke-width:18px;cursor:pointer}.enhanced-progress-dashboard__chart-point .point-glow{fill:#589bff29}.enhanced-progress-dashboard__chart-point .point-core{fill:#ecf6ff;stroke:#8ec9ff;stroke-width:2px}.enhanced-progress-dashboard__chart-labels{color:#99a7d1;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:8px;padding:0 8px 6px;font-size:10px;display:grid}.enhanced-progress-dashboard__tooltip{pointer-events:none;background:#101321f2;border:1px solid #8292e042;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:inline-flex;position:absolute;bottom:20px;right:18px;box-shadow:0 12px 24px #0508124d}.enhanced-progress-dashboard__tooltip span{color:#9ab1d8;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.enhanced-progress-dashboard__tooltip strong{color:#edf4ff;font-size:14px}.enhanced-progress-dashboard__metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.enhanced-progress-dashboard__metric{background:#0e1119d1;border:1px solid #747dad38;border-radius:24px;flex-direction:column;gap:12px;min-height:180px;padding:18px 18px 16px;display:flex}.enhanced-progress-dashboard__metric--cyan{box-shadow:inset 0 0 0 1px #78dcff14}.enhanced-progress-dashboard__metric--blue{box-shadow:inset 0 0 0 1px #7aaaff14}.enhanced-progress-dashboard__metric--violet{box-shadow:inset 0 0 0 1px #b599ff14}.enhanced-progress-dashboard__metric--pink{box-shadow:inset 0 0 0 1px #ff9cd614}.enhanced-progress-dashboard__metric--green{box-shadow:inset 0 0 0 1px #87e8bc14}.enhanced-progress-dashboard__metric-top{align-items:center;gap:10px;display:flex}.enhanced-progress-dashboard__metric-icon{color:#ecf6ff;background:#ffffff0a;border-radius:10px;place-items:center;width:30px;height:30px;font-size:14px;display:grid}.enhanced-progress-dashboard__metric-title{color:#a8b4d5;letter-spacing:.08em;text-transform:uppercase;font-size:11px}.enhanced-progress-dashboard__metric-value{color:#edf5ff;letter-spacing:-.08em;font-size:clamp(28px,3vw,38px);font-weight:700;line-height:1}.enhanced-progress-dashboard__metric-description{color:#9ca8c3;margin:0;font-size:12px;line-height:1.6}.enhanced-progress-dashboard__metric-track{background:#9da8d11f;border-radius:999px;width:100%;height:9px;margin-top:auto;position:relative;overflow:hidden}.enhanced-progress-dashboard__metric-track span{border-radius:inherit;background:linear-gradient(90deg,#7ae4ff 0%,#8e8bff 48%,#ff8ed9 100%);height:100%;display:block}@media (width<=720px){.enhanced-progress-dashboard{border-radius:26px;padding:20px 16px 18px}.enhanced-progress-dashboard__topbar{flex-direction:column;align-items:flex-start}.enhanced-progress-dashboard__streak-row{gap:8px}.enhanced-progress-dashboard__main-panel{grid-template-columns:1fr;gap:12px;padding:10px 8px 8px}.enhanced-progress-dashboard__metrics{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.enhanced-progress-dashboard__day,.enhanced-progress-dashboard__metric,.enhanced-progress-dashboard__chart-point,.enhanced-progress-dashboard__gauge-arc{transition:none;animation:none}}.learning-path-map{box-shadow:none;background:0 0;border:none;border-radius:0;margin:20px 0 24px;padding:0;position:relative}.learning-path-map__header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:10px;display:flex}.learning-path-map__header h2{letter-spacing:-.06em;margin:0;font-size:clamp(1.45rem,3vw,2.1rem)}.learning-path-map__cta{color:#f5f3ff;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#7976ff5c,#5e3f76d9);border:1px solid #9681ff61;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:44px;padding:10px 16px;font-size:12px;font-weight:700;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex;box-shadow:0 14px 26px #665cc833}.learning-path-map__cta:hover{border-color:#b1a0ffb8;transform:translateY(-1px);box-shadow:0 18px 30px #6e5ebb38}.learning-path-map__cta:focus-visible{outline-offset:3px;outline:2px solid #c3b6ff}.learning-path-map__scene{min-height:780px;box-shadow:none;background:0 0;border:none;border-radius:0;position:relative;overflow:visible}.learning-path-map__svg{z-index:1;width:100%;height:100%;position:absolute;inset:0}.learning-path-map__line{fill:none;stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.learning-path-map__line--active{stroke:url(#learning-path-map-gradient);stroke-dasharray:0 0;filter:drop-shadow(0 0 12px #9c8eff3d)}.learning-path-map__line--locked{stroke:#7e779647}.learning-path-map__node{z-index:2;color:#f6f3fd;text-align:left;background:#0e0c14b8;border:1px solid #8b7eb52e;border-radius:16px;align-items:center;gap:12px;width:min(250px,40vw);padding:10px 12px 10px 10px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 18px #08080f1f}.learning-path-map__node:hover{border-color:#a895ff6b;transform:translate(-50%,-50%)translateY(-2px);box-shadow:0 14px 22px #08080f29}.learning-path-map__node:focus-visible{outline-offset:3px;outline:2px solid #d9cdfd}.learning-path-map__node--completed{background:linear-gradient(135deg,#0c231ccc,#161922cc);border-color:#78cfa14d;box-shadow:0 12px 28px #1d5b441a}.learning-path-map__node--active{background:linear-gradient(135deg,#241f40d1,#13101cc7);border-color:#9680ff94;box-shadow:0 12px 26px #736ef624}.learning-path-map__node--locked{opacity:.82;background:#1210189e;border-color:#6e65832e}.learning-path-map__node--chest{width:min(210px,36vw)}.learning-path-map__node--boss{width:min(220px,38vw)}.learning-path-map__node-glow{pointer-events:none;background:radial-gradient(circle,#9a88ff2e,#0000 68%);border-radius:24px;position:absolute;inset:-8px}.learning-path-map__node-icon{z-index:1;background:linear-gradient(135deg,#8b8bff42,#7bdbc42e);border:1px solid #9d8fff5c;border-radius:14px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:20px;display:grid;position:relative}.learning-path-map__node--completed .learning-path-map__node-icon{background:linear-gradient(135deg,#70c98f4d,#87b0ff2e)}.learning-path-map__node-copy{z-index:1;flex-direction:column;gap:1px;min-width:0;display:flex;position:relative}.learning-path-map__node-copy strong{letter-spacing:-.04em;font-size:.84rem;line-height:1.2;display:block}.learning-path-map__node-copy small{color:#a7a1b2;font-size:.68rem;line-height:1.4}.learning-path-map__node-badge{z-index:1;color:#e8e4ff;letter-spacing:.08em;text-transform:uppercase;background:#9486ff2e;border:1px solid #a896ff52;border-radius:999px;padding:3px 7px;font-size:.58rem;font-weight:700;position:absolute;top:10px;right:10px}.learning-path-map__node-lock{z-index:1;background:#6e658333;border-radius:50%;place-items:center;width:18px;height:18px;font-size:.62rem;display:grid;position:absolute;top:10px;right:10px}@media (width<=760px){.learning-path-map{padding:0}.learning-path-map__header{display:block}.learning-path-map__cta{width:100%;margin-top:14px}.learning-path-map__scene{min-height:700px}.learning-path-map__node{width:min(220px,52vw);padding-right:30px}}@media (prefers-reduced-motion:reduce){.learning-path-map__node,.learning-path-map__cta{transition:none}}.text-highlighter{--text-highlight-color:#bea4ff80;--text-highlight-blur:5px;--text-highlight-opacity:.7;--text-highlight-blur-delay:0s;--text-highlight-blur-duration:.8s;--text-highlight-delay:.12s;--text-highlight-duration:.9s;--text-highlight-shift-x:-.28em;--text-highlight-shift-y:0;opacity:var(--text-highlight-opacity);filter:blur(var(--text-highlight-blur));transition:opacity var(--text-highlight-blur-duration) ease var(--text-highlight-blur-delay), filter var(--text-highlight-blur-duration) ease var(--text-highlight-blur-delay);display:inline;position:relative}.text-highlighter.is-visible{opacity:1;filter:blur()}.text-highlighter__mark{z-index:0;background:color-mix(in srgb, var(--text-highlight-color) 72%, transparent 28%);color:inherit;transform:translate(var(--text-highlight-shift-x), var(--text-highlight-shift-y));opacity:0;animation:text-highlighter-appear var(--text-highlight-duration) ease var(--text-highlight-delay) forwards;border-radius:.6em;padding:.08em .14em;display:inline;position:relative;box-shadow:inset 0 0 0 1px #ffffff14}.text-highlighter[data-direction=left] .text-highlighter__mark{transform-origin:0}.text-highlighter[data-direction=right] .text-highlighter__mark{transform-origin:100%}.text-highlighter[data-direction=top] .text-highlighter__mark{transform-origin:top}.text-highlighter[data-direction=bottom] .text-highlighter__mark{transform-origin:bottom}@keyframes text-highlighter-appear{0%{opacity:0;transform:translate(var(--text-highlight-shift-x), var(--text-highlight-shift-y)) scaleX(.88) scaleY(.82);filter:blur(5px)}55%{opacity:.88}to{opacity:1;filter:blur();transform:translate(0)scale(1)}}@media (prefers-reduced-motion:reduce){.text-highlighter{opacity:1;filter:none;transition:none}.text-highlighter__mark{opacity:1;filter:none;animation:none;transform:none}}
