:root{--ari-deep:#04222b;--ari-dark-teal:#0a3d4a;--ari-teal:#10686f;--ari-primary:#1d8b94;--ari-aqua:#4fb8b4;--ari-mint:#98d8d0;--ari-light:#e2f4f0;--ink:var(--ari-deep);--muted:var(--ari-teal);--line:var(--ari-mint);--peach:var(--ari-light);--page-bg:var(--ari-light);--surface:#fff;--surface-soft:var(--ari-light);--text-main:var(--ari-dark-teal);--text-strong:var(--ari-deep);--text-muted:var(--ari-teal);--accent:var(--ari-primary);--accent-deep:var(--ari-teal);--accent-soft:var(--ari-light);--accent-line:var(--ari-mint);--sans:"DM Sans", "Segoe UI", sans-serif;--display:"Manrope", "Segoe UI", sans-serif;font-family:var(--sans);color:var(--ink);background:var(--page-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-shell[data-theme=dark]{--ink:var(--ari-light);--muted:var(--ari-mint);--line:var(--ari-teal);--peach:var(--ari-dark-teal);--page-bg:var(--ari-deep);--surface:var(--ari-dark-teal);--surface-soft:var(--ari-teal);--text-main:var(--ari-light);--text-strong:var(--ari-light);--text-muted:var(--ari-mint);--accent:var(--ari-aqua);--accent-deep:var(--ari-mint);--accent-soft:var(--ari-dark-teal);--accent-line:var(--ari-teal)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}@media (width<=760px){body{min-height:100dvh}}@media (width<=320px){body{min-width:0}}button,input,textarea,select{font:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--ari-aqua);outline-offset:2px}::selection{background:var(--ari-mint);color:var(--ari-deep)}.knowledge-admin-summary{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.knowledge-admin-summary span{background:var(--surface-soft);color:var(--text-muted);border-radius:999px;padding:7px 10px;font-size:11px}.knowledge-admin-summary strong{color:var(--text-main)}.knowledge-language-picker{color:var(--text-muted);align-items:center;gap:9px;margin:12px 0;font-size:12px;display:flex}.knowledge-language-picker select{border:1px solid var(--line);background:var(--surface-soft);color:var(--text-main);font:inherit;border-radius:9px;padding:8px 10px}.knowledge-coverage-table{border:1px solid var(--line);border-radius:13px;max-height:360px;overflow:auto}.knowledge-coverage-row{border-bottom:1px solid var(--line);color:var(--text-main);grid-template-columns:minmax(0,1fr) 96px 75px;gap:8px;padding:9px 11px;font-size:11px;display:grid}.knowledge-coverage-row:last-child{border-bottom:0}.knowledge-coverage-row.is-header{background:var(--surface-soft);position:sticky;top:0}.knowledge-coverage-row strong{font-size:10px}.knowledge-coverage-row .has-coverage{color:#087f63}.knowledge-coverage-row .no-coverage{color:#98651d}.knowledge-sources{gap:9px;margin-top:18px;display:grid}.knowledge-sources h4{margin:0}.knowledge-sources article{background:var(--surface-soft);border-radius:12px;gap:4px;padding:11px;font-size:11px;display:grid}.knowledge-sources article a{color:var(--accent-deep);font-weight:750}.knowledge-sources article>span{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:9px}.knowledge-sources article small{color:var(--text-muted);line-height:1.45}.tutor-library-page{max-width:780px;margin:0 auto;padding-bottom:120px}.library-heading{padding:10px 2px 18px}.library-heading .eyebrow{color:var(--home-mode-start,#1d8b94);letter-spacing:.14em;margin:0 0 7px;font-size:10px;font-weight:800}.library-heading h1{letter-spacing:-.045em;margin:0 0 7px;font-size:clamp(27px,7vw,34px)}.library-heading>p:last-child{color:var(--text-muted,#7b838e);margin:0;font-size:14px;line-height:1.5}.library-segment{background:var(--surface-muted,#f1f3f5);border-radius:17px;grid-template-columns:1fr 1fr;margin-bottom:15px;padding:4px;display:grid}.library-segment button{color:var(--text-muted,#737b86);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:13px;padding:10px;font-weight:700}.library-segment button.is-selected{background:var(--surface,#fff);color:var(--text-primary,#202934);box-shadow:0 2px 8px #1b25300f}.library-custom-card{background:linear-gradient(130deg, color-mix(in srgb, var(--home-mode-start,#1d8b94) 16%, white), color-mix(in srgb, var(--home-mode-end,#a2dddd) 25%, white));border-radius:22px;margin-bottom:19px;padding:17px}.library-custom-card>div:first-child{grid-template-columns:28px 1fr;align-items:center;gap:2px 8px;display:grid}.library-custom-card>div:first-child>span{width:28px;height:28px;color:var(--home-mode-start,#1d8b94);background:#ffffffa8;border-radius:10px;grid-row:span 2;place-items:center;display:grid}.library-custom-card strong{font-size:14px}.library-custom-card small{color:var(--text-muted,#737b86);font-size:12px;line-height:1.4}.library-custom-form{gap:8px;margin-top:13px;display:flex}.library-custom-form input{width:0;min-width:0;color:var(--text-primary,#202934);font:inherit;outline-color:var(--home-mode-start,#1d8b94);background:#ffffffdb;border:1px solid #ffffffc9;border-radius:13px;flex:1;padding:11px 12px;font-size:13px}.library-custom-form button{background:var(--home-mode-start,#1d8b94);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:13px;padding:0 16px;font-weight:750}.library-custom-card>p[role=alert]{color:#a72632;margin:8px 0 0;font-size:12px}.library-category-tabs{scrollbar-width:none;gap:8px;margin-bottom:3px;padding:0 0 13px;display:flex;overflow-x:auto}.library-category-tabs::-webkit-scrollbar{display:none}.library-category-tabs button{border:1px solid var(--border-subtle,#e8ebee);background:var(--surface,#fff);color:var(--text-muted,#737b86);font:inherit;cursor:pointer;border-radius:999px;flex:none;padding:8px 12px;font-size:12px;font-weight:650}.library-category-tabs button.is-selected{border-color:var(--home-mode-start,#1d8b94);background:color-mix(in srgb, var(--home-mode-start,#1d8b94) 11%, white);color:var(--home-mode-start,#1d8b94)}.library-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.library-topic-card{border:1px solid var(--border-subtle,#edf0f2);text-align:left;background:var(--surface,#fff);min-height:174px;color:var(--text-primary,#202934);cursor:pointer;border-radius:19px;flex-direction:column;align-items:flex-start;padding:13px;transition:transform .18s,box-shadow .18s;display:flex;position:relative;box-shadow:0 5px 17px #19263208}.library-topic-card:hover{transform:translateY(-2px);box-shadow:0 9px 22px #19263212}.library-card-icon{background:color-mix(in srgb, var(--home-mode-start,#1d8b94) 10%, white);border-radius:12px;place-items:center;width:34px;height:34px;margin-bottom:9px;font-size:19px;display:grid}.library-card-level{color:var(--home-mode-start,#1d8b94);letter-spacing:.04em;text-transform:uppercase;font-size:9px;font-weight:800}.library-topic-card strong{margin-top:4px;font-size:13px;line-height:1.35}.library-topic-card small{color:var(--text-muted,#737b86);margin-top:4px;padding-bottom:18px;font-size:11px;line-height:1.4}.library-card-arrow{color:var(--home-mode-start,#1d8b94);font-size:11px;font-weight:750;position:absolute;bottom:11px;left:13px}.library-empty{color:var(--text-muted,#737b86);text-align:center;padding:28px 10px}@media (width>=600px){.library-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.library-topic-card{transition:none}.library-topic-card:hover{transform:none}}.onboarding-flow{--onboarding-accent:var(--accent,#1d8b94);flex-direction:column;width:min(100%,560px);min-height:calc(100dvh - 80px);margin:0 auto;padding:16px 0 26px;display:flex}.onboarding-flow-header{color:var(--text-muted);grid-template-columns:38px 1fr 42px;align-items:center;gap:13px;margin:0 4px 22px;font-size:12px;display:grid}.onboarding-back{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--text-strong);border-radius:50%;font-size:27px;line-height:1}.onboarding-back:disabled{opacity:.35}.onboarding-progress-track{background:var(--surface-soft);border-radius:99px;height:7px;overflow:hidden}.onboarding-progress-track>span{border-radius:inherit;background:var(--onboarding-accent);height:100%;transition:width .26s;display:block}.onboarding-flow-card{border:1px solid color-mix(in srgb, var(--line) 50%, transparent);background:var(--surface);border-radius:28px;flex:1;padding:clamp(21px,6vw,34px);box-shadow:0 16px 44px #04222b14}.onboarding-flow-card>.eyebrow{color:var(--onboarding-accent);letter-spacing:.12em;margin:0 0 11px;font-size:10px;font-weight:800}.onboarding-flow-card h1{max-width:460px;color:var(--text-strong);font-family:var(--display);margin:0;font-size:clamp(25px,7vw,34px);line-height:1.13}.onboarding-step-note{color:var(--text-muted);margin:11px 0 22px;font-size:14px;line-height:1.55}.onboarding-search-label,.onboarding-name-step>label{color:var(--text-main);margin:0 0 7px;font-size:12px;font-weight:700;display:block}.onboarding-search,.onboarding-name-step>input,.onboarding-placement textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:47px;color:var(--text-main);border-radius:14px;padding:12px 14px}.onboarding-language-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:min(39dvh,310px);margin-top:12px;padding:1px 2px 1px 1px;display:grid;overflow-y:auto}.onboarding-language-card,.onboarding-choice{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:55px;color:var(--text-main);text-align:left;cursor:pointer;border-radius:15px;padding:10px 12px;transition:border-color .16s,background .16s,transform .16s}.onboarding-language-card{align-items:center;gap:9px;font-size:13px;display:flex}.onboarding-language-card>span:first-child{font-size:20px}.onboarding-language-card.is-selected,.onboarding-choice.is-selected,.onboarding-tutor-card.is-selected{border-color:var(--onboarding-accent);background:color-mix(in srgb, var(--onboarding-accent) 9%, var(--surface));box-shadow:0 0 0 1px var(--onboarding-accent)}.onboarding-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.onboarding-choice{min-height:61px;font-size:14px;font-weight:700}.onboarding-choice small,.onboarding-style-card small{color:var(--text-muted);margin-top:4px;font-size:11px;font-weight:450;line-height:1.4;display:block}.onboarding-choice:active,.onboarding-language-card:active,.onboarding-select-chip:active{transform:scale(.98)}.onboarding-style-grid{gap:10px;display:grid}.onboarding-style-card{border:1px solid var(--line);background:var(--surface);min-height:75px;color:var(--text-main);text-align:left;border-radius:16px;grid-template-columns:44px 1fr;align-items:center;column-gap:12px;padding:12px;display:grid}.onboarding-style-card.is-selected{box-shadow:0 0 0 1px}.onboarding-style-swatch{background:linear-gradient(135deg,#ff9a8b,#ffc3a0);border-radius:13px;grid-row:span 2;width:42px;height:42px}.onboarding-style-card.mode-balanced .onboarding-style-swatch{background:linear-gradient(135deg, var(--ari-teal), var(--ari-aqua))}.onboarding-style-card.mode-strict .onboarding-style-swatch{background:linear-gradient(135deg,#c81d3a,#ff6b35)}.onboarding-chip-grid{flex-wrap:wrap;gap:9px;display:flex}.onboarding-select-chip{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text-main);cursor:pointer;border-radius:999px;padding:8px 14px;font-size:13px}.onboarding-select-chip.is-selected{border-color:var(--onboarding-accent);background:color-mix(in srgb, var(--onboarding-accent) 12%, var(--surface));color:var(--text-strong)}.onboarding-placement{gap:12px;display:grid}.onboarding-tutor-prompt,.onboarding-tutor-reply{background:var(--surface-soft);color:var(--text-main);border-radius:16px;margin:0;padding:14px;font-size:14px;line-height:1.5}.onboarding-placement textarea{resize:vertical;min-height:98px}.onboarding-secondary-button{background:var(--onboarding-accent);color:#fff;border:0;border-radius:14px;min-height:44px;font-weight:700}.onboarding-secondary-button:disabled{opacity:.6}.onboarding-tutor-reply p{margin:6px 0}.onboarding-tutor-reply small,.onboarding-inline-error{color:var(--text-muted);font-size:11px}.onboarding-inline-error{color:#b42336}.onboarding-goal-picker{gap:18px;display:grid}.onboarding-growth-curve,.onboarding-plan-curve{background:var(--surface-soft);color:var(--text-muted);border-radius:16px;padding:13px;font-size:12px}.onboarding-growth-curve svg,.onboarding-plan-curve svg{width:100%;height:73px;display:block;overflow:visible}.onboarding-growth-curve svg path,.onboarding-plan-curve svg path{fill:none;stroke:var(--onboarding-accent);stroke-width:4px;stroke-linecap:round}.onboarding-growth-curve svg .curve-fill{fill:color-mix(in srgb, var(--onboarding-accent) 12%, transparent);stroke:none}.onboarding-reminder{color:var(--text-main);align-items:center;gap:9px;margin-top:15px;font-size:13px;display:flex}.onboarding-name-step{gap:12px;display:grid}.onboarding-commit-copy{background:var(--surface-soft);color:var(--text-main);border-radius:15px;margin:6px 0;padding:14px;font-size:14px;line-height:1.5}.onboarding-commit-button{background:var(--onboarding-accent);color:#fff;touch-action:none;border:0;border-radius:17px;min-height:54px;font-weight:750;position:relative;overflow:hidden}.onboarding-commit-button>span{pointer-events:none;background:#ffffff3d;position:absolute;inset:0 auto 0 0}.onboarding-commit-button:disabled{opacity:.55}.onboarding-plan-loading{color:var(--text-main);justify-items:center;gap:15px;padding:28px 4px;display:grid}.onboarding-loading-orb{background:radial-gradient(circle at 32% 25%, white 0 5%, transparent 30%), linear-gradient(145deg, var(--onboarding-accent), color-mix(in srgb, var(--onboarding-accent) 52%, white));width:80px;height:80px;box-shadow:0 0 32px color-mix(in srgb, var(--onboarding-accent) 45%, transparent);border-radius:50%;animation:1.8s ease-in-out infinite onboarding-float}.onboarding-plan-loading>span:last-child{color:var(--text-muted);font-size:12px}.onboarding-study-plan{gap:12px;display:grid}.onboarding-level-ladder{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.onboarding-level-ladder>span:first-child,.onboarding-level-ladder>small{color:var(--text-muted);letter-spacing:.08em;grid-column:1/-1;font-size:9px;font-weight:750}.onboarding-level-ladder>span:not(:first-child){background:var(--surface-soft);color:var(--text-muted);text-align:center;border-radius:8px;padding:8px 2px;font-size:11px}.onboarding-level-ladder>span.is-current{background:var(--onboarding-accent);color:#fff}.onboarding-level-ladder>small{letter-spacing:0;margin-top:4px;font-weight:450}.onboarding-plan-items{gap:7px;display:grid}.onboarding-plan-items p{background:var(--surface-soft);color:var(--text-main);border-radius:12px;justify-content:space-between;gap:12px;margin:0;padding:10px 12px;font-size:12px;display:flex}.onboarding-plan-items span{color:var(--text-muted);text-align:right}.onboarding-plan-curve{padding-bottom:3px}.onboarding-tutor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.onboarding-tutor-card{border:1px solid var(--line);text-align:center;border-radius:18px;align-content:start;justify-items:center;gap:12px;padding:13px 8px;display:grid}.onboarding-tutor-select{color:var(--text-main);background:0 0;border:0;justify-items:center;gap:7px;display:grid}.onboarding-tutor-select small{color:var(--text-muted);font-size:10px}.onboarding-tutor-orb{width:84px;height:84px;box-shadow:inset -8px -10px 17px #04222b38, 0 0 22px color-mix(in srgb, var(--onboarding-accent) 42%, transparent);background:linear-gradient(145deg,#78d6d0,#126d78);border-radius:50%;justify-content:center;align-items:center;gap:9px;display:flex;position:relative}.onboarding-tutor-orb i{background:#fff;border-radius:99px;width:8px;height:22px}.tutor-ari:after,.tutor-ira:after{background:var(--onboarding-accent);content:"";border-radius:80% 10% 60% 15%;width:13px;height:21px;position:absolute;top:2px;right:22px;transform:rotate(-24deg)}.tutor-ira:after{border-radius:50%;width:16px;height:16px;top:13px;right:3px;transform:none}.onboarding-voice-preview{background:var(--surface-soft);min-height:32px;color:var(--text-main);border:0;border-radius:999px;padding:5px 8px;font-size:10px}.onboarding-flow-footer{padding:14px 4px 0;position:sticky;bottom:8px}.onboarding-continue-button{background:var(--onboarding-accent);width:100%;min-height:55px;box-shadow:0 9px 24px color-mix(in srgb, var(--onboarding-accent) 25%, transparent);color:#fff;border:0;border-radius:18px;justify-content:space-between;align-items:center;padding:0 20px;font-size:15px;font-weight:750;display:flex}.onboarding-continue-button>span{font-size:25px;font-weight:400}.onboarding-continue-button:disabled{opacity:.45;box-shadow:none}@keyframes onboarding-float{0%,to{transform:translateY(0)scale(.98)}50%{transform:translateY(-7px)scale(1.03)}}@media (width<=480px){.onboarding-flow{min-height:calc(100dvh - 70px);padding-top:5px}.onboarding-flow-card{padding:22px 18px}}@media (prefers-reduced-motion:reduce){.onboarding-flow *,.onboarding-flow :before,.onboarding-flow :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.app-shell{background:var(--page-bg);min-height:100vh;color:var(--text-main);overflow-x:clip}.app-shell[data-tutor-mode=soft] .home-start-button{color:#3a211d}.app-shell[data-theme=dark][data-tutor-mode=soft] .home-start-button{color:#241613}@keyframes home-orb-poke{0%{transform:scale(1)}18%{transform:scale(1.16,.86)rotate(4deg)}42%{transform:scale(.92,1.09)rotate(-3deg)}68%{transform:scale(1.04,.98)rotate(1deg)}to{transform:scale(1)}}@keyframes home-orb-speaking-pulse{0%{transform:scale(1)}to{transform:scale(1.075)}}@keyframes home-poke-ripple{0%{opacity:.68;transform:scale(.84)}to{opacity:0;transform:scale(1.38)}}.sidebar{z-index:5;border-right:1px solid var(--line);background:var(--surface);flex-direction:column;width:252px;padding:29px 18px 16px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:var(--text-strong);font-family:var(--display);letter-spacing:-1.4px;cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:10px;margin:0 0 47px 7px;padding:0;font-size:27px;font-weight:700;display:inline-flex}.brand-mark{object-fit:contain;width:88px;height:88px;display:block}.brand-period{color:var(--text-muted)}.brand-wordmark{gap:1px;display:grid}.brand-wordmark strong{font-family:var(--display);font-size:24px;line-height:1}.brand-wordmark small{color:var(--text-muted);font-family:var(--sans);letter-spacing:1px;font-size:7px;font-weight:700}.sidebar-label,.eyebrow{color:var(--text-muted);letter-spacing:1.35px;margin:0;font-size:10px;font-weight:700}.sidebar-label{margin-bottom:11px;padding-left:13px}.main-nav{gap:5px;display:grid}.nav-item{width:100%;min-height:46px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:0 13px;font-size:13px;font-weight:500;transition:background .14s,color .14s;display:flex}.nav-item:hover{color:var(--ink);background:#e2f4f0}.nav-item.active{color:var(--accent-deep);background:linear-gradient(100deg,#e2f4f0,#e2f4f0);font-weight:650}.nav-new{color:var(--text-muted);letter-spacing:.65px;background:#e2f4f0;border-radius:5px;margin-left:auto;padding:3px 6px;font-size:8px;font-weight:700}.sidebar-bottom{margin-top:auto}.plan-card{background:#e2f4f0;border:1px solid #e2f4f0;border-radius:13px;padding:16px 14px 13px}.plan-icon,.stat-icon,.practice-icon,.side-card-icon{place-items:center;display:grid}.plan-icon{width:31px;height:31px;color:var(--text-muted);background:linear-gradient(140deg,#e2f4f0,#e2f4f0);border-radius:10px;margin-bottom:13px}.plan-title,.plan-copy{margin:0}.plan-title{color:#10686f;font-family:var(--display);font-size:14px;font-weight:600}.plan-copy{color:var(--text-muted);margin-top:4px;font-size:10px;line-height:1.5}.plan-progress{background:#e2f4f0;border-radius:9px;height:5px;margin-top:16px;overflow:hidden}.plan-progress span{border-radius:inherit;background:linear-gradient(90deg,#4fb8b4,#98d8d0);width:60%;height:100%;display:block}.plan-foot{color:var(--text-muted);justify-content:space-between;margin-top:8px;font-size:9px;display:flex}.plan-foot strong{color:var(--accent-deep);font-weight:600}.settings-link{margin-top:13px}.profile-row{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:9px;padding:15px 5px 3px;display:flex}.avatar{width:34px;height:34px;color:var(--text-muted);font-family:var(--display);background:#e2f4f0;border:1px solid #e2f4f0;border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:700;display:grid}.profile-copy{gap:2px;display:grid}.profile-copy strong{color:#10686f;font-size:11px;font-weight:650}.profile-copy span{color:var(--text-muted);font-size:10px}.icon-button{width:34px;height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:none;place-items:center;padding:0;transition:background .14s,color .14s;display:inline-grid}.icon-button:hover{color:var(--text-strong);background:#e2f4f0}.profile-menu{margin-left:auto}.main-area{min-height:100vh;margin-left:252px}.topbar{z-index:4;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #e8e4dcd9;justify-content:space-between;align-items:center;height:67px;padding:0 clamp(25px,5.2vw,78px);display:flex;position:sticky;top:0}.breadcrumb{color:var(--text-muted);font-size:11px}.breadcrumb span{color:#c6c1b8;margin:0 9px}.breadcrumb strong{color:var(--text-main);font-weight:600}.topbar-actions{align-items:center;gap:17px;display:flex}.streak-pill{border:1px solid var(--line);background:var(--surface);color:var(--text-main);cursor:default;border-radius:8px;align-items:center;gap:7px;padding:8px 11px;font-size:10px;font-weight:600;display:inline-flex}.streak-pill span{color:var(--text-muted);font-size:13px}.avatar-small{width:31px;height:31px;font-size:12px}.theme-switch{border:1px solid var(--accent-line);background:var(--surface);min-height:33px;color:var(--accent-deep);font-family:var(--sans);cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:0 10px;font-size:10px;font-weight:600;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.theme-switch:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-1px)}.page-content{width:min(100%,1130px);margin:0 auto;padding:43px clamp(25px,5.2vw,78px) 27px}.welcome-row{justify-content:space-between;align-items:flex-end;gap:22px;display:flex}.welcome-row .eyebrow,.subpage-intro .eyebrow{margin-bottom:12px}h1,h2,h3,p{margin-top:0}.welcome-row h1,.subpage-intro h1{color:var(--text-strong);font-family:var(--display);letter-spacing:-1.35px;margin-bottom:10px;font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.16}.mobile-break{display:none}.heading-sparkle{color:var(--text-muted);font-family:var(--sans);vertical-align:6px;font-size:.67em;display:inline-block}.welcome-copy,.subpage-intro>p:last-child{color:var(--text-muted);margin-bottom:0;font-size:12px}.week-streak{border:1px solid var(--line);background:var(--surface);border-radius:11px;padding:13px 14px 12px}.streak-caption{color:var(--text-muted);letter-spacing:1.1px;font-size:8px;font-weight:700}.streak-days{gap:13px;margin-top:9px;display:flex}.streak-day{color:var(--text-muted);justify-items:center;gap:5px;font-size:8px;display:grid}.day-dot{border:1px solid var(--line);background:var(--surface);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;display:grid}.day-dot.completed{border-color:var(--text-muted);background:#4fb8b4}.day-dot.today{border:1px solid #98d8d0;box-shadow:0 0 0 3px #e2f4f0}.learning-card{background:linear-gradient(112deg,#1d8b94 0%,#4fb8b4 52% 100%);border:1px solid #e2f4f0;border-radius:15px;justify-content:space-between;min-height:244px;margin-top:30px;padding:27px 35px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #4fb8b421}.onboarding-card{border:1px solid var(--accent-line);background:var(--surface);border-radius:13px;gap:14px;margin-top:20px;padding:20px 22px;display:grid}.onboarding-card .eyebrow{color:var(--accent-deep);margin-bottom:7px}.onboarding-card h2{color:var(--text-strong);font-family:var(--display);margin:0 0 5px;font-size:18px;font-weight:650}.onboarding-card p:not(.eyebrow){max-width:560px;color:var(--text-muted);margin:0;font-size:11px;line-height:1.6}.onboarding-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.onboarding-actions .button-dark{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.onboarding-language-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.onboarding-language-option{border:1px solid var(--line);background:var(--surface);min-width:0;min-height:44px;color:var(--text-main);cursor:pointer;border-radius:9px;align-items:center;gap:9px;padding:8px 11px;font-size:12px;display:flex}.onboarding-language-option:hover{border-color:var(--accent)}.onboarding-language-option:focus-within{outline:2px solid var(--accent);outline-offset:2px}.onboarding-language-option input{width:15px;height:15px;accent-color:var(--accent);flex:none;margin:0}.onboarding-language-option.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep);font-weight:650}.onboarding-language-option>span:first-child{flex:none;font-size:17px}.onboarding-language-note{color:var(--text-muted);font-size:10px;line-height:1.5}.onboarding-chat{border-top:1px solid var(--line);grid-column:1/-1;min-width:0;padding-top:16px}.onboarding-chat-heading{color:var(--text-strong);justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:12px;display:flex}.onboarding-chat-messages{gap:8px;max-height:240px;padding:4px 2px 10px;display:grid;overflow-y:auto}.onboarding-chat-message{background:var(--surface-soft);width:fit-content;max-width:min(82%,520px);color:var(--text-main);overflow-wrap:anywhere;border-radius:12px;margin:0;padding:9px 12px;font-size:12px;line-height:1.55}.onboarding-chat-message.is-user{background:var(--accent-soft);color:var(--text-strong);justify-self:end}.onboarding-chat-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.onboarding-chat-form label{color:var(--text-muted);grid-column:1/-1;font-size:10px;font-weight:600}.onboarding-chat-form input{border:1px solid var(--line);background:var(--surface);width:100%;min-width:0;min-height:39px;color:var(--text-main);border-radius:8px;padding:8px 11px;font-size:12px}.onboarding-privacy,.placement-error{color:var(--text-muted);margin:9px 0 0;font-size:10px;line-height:1.55}.onboarding-next-step{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.onboarding-next-step p{color:var(--text-muted);flex:220px;margin:0;font-size:11px;line-height:1.5}.placement-error{color:#a53636}.onboarding-finish{border:1px solid var(--accent-line);background:var(--surface);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0;padding:14px 18px;display:flex}.onboarding-finish p{color:var(--text-muted);flex:230px;margin:0;font-size:11px;line-height:1.5}.learning-copy{z-index:1;max-width:440px;position:relative}.lesson-kicker{color:#e2f4f0;letter-spacing:1.05px;align-items:center;gap:8px;font-size:9px;font-weight:700;display:flex}.lesson-dot{background:#98d8d0;border-radius:50%;width:6px;height:6px}.lesson-time{color:#e2f4f0;letter-spacing:0;align-items:center;gap:4px;margin-left:5px;font-size:9px;font-weight:500;display:inline-flex}.learning-card h2{color:#fff;font-family:var(--display);letter-spacing:-.65px;margin:19px 0 7px;font-size:24px;font-weight:600}.learning-card p{color:#e2f4f0;margin-bottom:14px;font-size:11px}.lesson-meta{align-items:center;gap:8px;margin-bottom:18px;display:flex}.language-chip,.level-chip{color:#e2f4f0;background:#ffffff1f;border:1px solid #e2f4f047;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:600;display:inline-flex}.language-chip span{font-size:12px}.level-chip{color:#e2f4f0;letter-spacing:.5px;background:#ffffff2b;border-color:#0000;font-size:8px;font-weight:700}.button{min-height:37px;font-family:var(--sans);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:0 14px;font-size:10px;font-weight:600;transition:transform .14s,background .14s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-dark{color:var(--accent-deep);background:#fff}.button-dark:hover{background:#e2f4f0}.lesson-art{pointer-events:none;place-items:center;width:42%;display:grid;position:absolute;inset:0 10px 0 auto}.character-rebuild-orb{aspect-ratio:1;color:#fff;background:radial-gradient(circle at 34% 30%,#98d8d0,#4fb8b4 52%,#98d8d0);border:1px solid #ffffff94;border-radius:50%;place-items:center;width:clamp(76px,11vw,132px);display:grid;box-shadow:0 0 40px #98d8d061,inset 0 0 23px #ffffff3d}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.stat-card,.progress-stat{border:1px solid var(--line);background:#ffffff8f;border-radius:11px;flex-direction:column;align-items:flex-start;min-height:138px;padding:13px 14px;display:flex}.stat-link-card{width:100%;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s}.stat-link-card:hover{border-color:#d7c8b8;transform:translateY(-2px)}.stat-icon{border-radius:9px;width:29px;height:29px;margin-bottom:11px}.stat-icon-peach,.stat-icon-lavender{color:var(--text-muted);background:#e2f4f0}.stat-icon-mint{color:var(--accent-deep);background:#e2f4f0}.stat-icon-blue{color:var(--text-muted);background:#e2f4f0}.stat-label{color:#9a968c;letter-spacing:.9px;margin-bottom:4px;font-size:8px;font-weight:700}.stat-card>strong,.progress-stat>strong{color:#3e4039;font-family:var(--display);font-size:23px;font-weight:600;line-height:1.15}.stat-card>strong small,.progress-stat>strong small{color:#8e8b81;font-family:var(--sans);font-size:10px;font-weight:500}.stat-note{color:#98948a;align-items:center;gap:4px;margin-top:5px;font-size:9px;display:inline-flex}.stat-note svg{margin-left:3px}.positive{color:#6d9874;font-weight:650}.lower-grid{grid-template-columns:1.1fr .9fr;gap:14px;margin-top:19px;display:grid}.panel{border:1px solid var(--line);background:#ffffff8f;border-radius:12px;min-width:0;padding:18px 19px 12px}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading .eyebrow{letter-spacing:1px;margin-bottom:6px;font-size:8px}.section-heading h3{color:#44443e;font-family:var(--display);letter-spacing:-.3px;margin-bottom:0;font-size:16px;font-weight:600}.text-button{color:#89867d;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:5px 0 5px 5px;font-size:9px;display:inline-flex}.text-button:hover{color:#514d45}.practice-options{margin-top:13px;display:grid}.practice-option{color:#918f86;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #f0ede6;align-items:center;gap:10px;min-width:0;padding:9px 0;display:flex}.practice-option>svg{flex:none;transition:transform .15s}.practice-option:hover>svg{transform:translate(3px)}.practice-icon{border-radius:10px;flex:none;width:33px;height:33px}.practice-chat{color:#a77d5d;background:#f5ede3}.practice-translate{color:var(--text-muted);background:#e2f4f0}.practice-review{color:#71876f;background:#e9efe7}.practice-label{gap:3px;min-width:0;display:grid}.practice-label strong{color:#57564f;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.practice-label small{color:#99958c;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.practice-option>.practice-label{flex:1}.word-list{margin-top:14px}.word-row{border-top:1px solid #f0ede6;align-items:center;gap:10px;padding:9px 0;display:flex}.word-badge{color:#5c554c;width:38px;height:36px;font-family:var(--display);border-radius:9px;flex:none;place-items:center;font-size:17px;display:grid}.word-badge.peach{background:#f6e9dc}.word-badge.lavender{background:#e2f4f0}.word-badge.mint{background:#eaf0e7}.word-badge.blue{background:#e2f4f0}.word-detail{flex:1;gap:3px;display:grid}.word-detail strong{color:#57564f;font-size:10px;font-weight:600}.word-detail small,.vocab-word>span:last-child{color:#99958c;font-size:9px}.word-play{width:29px;height:29px}.page-footer{color:#aaa69c;justify-content:space-between;margin-top:24px;font-size:9px;display:flex}.footer-heart{color:#cb9778}.subpage-content{padding-top:45px}.subpage-intro{margin-bottom:25px}.subpage-intro h1{margin-bottom:8px}.translator-card,.vocabulary-card,.settings-card{border:1px solid var(--line);background:#ffffffad;border-radius:13px;padding:21px}.language-selectors{grid-template-columns:1fr 40px 1fr;align-items:end;gap:13px;padding-bottom:17px;display:grid}.language-select{gap:7px;display:grid}.language-select>span:first-child{color:#99958c;letter-spacing:1px;font-size:8px;font-weight:700}.language-select-control,.settings-select{color:#76736a;background:#fffefa;border:1px solid #eae6de;border-radius:8px;align-items:center;gap:9px;height:41px;padding:0 11px;display:flex}.language-select-control>span:first-child{font-size:16px}.language-select-control select,.settings-select select{appearance:none;color:#4f4d46;width:100%;font-family:var(--sans);cursor:pointer;background:0 0;border:0;outline:none;font-size:10px}.settings-select input{width:100%;min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:none}.ease-up-button{color:#963f35;border-color:#d7826f;min-height:34px;padding:6px 11px;font-size:11px;font-weight:750}.strict-safe-word,.teaching-verification{color:var(--text-muted);font-size:11px;line-height:1.45}.tutor-safeguard-offer{border:1px solid color-mix(in srgb, var(--home-mode-start,#1d8b94) 34%, white);background:color-mix(in srgb, var(--home-mode-start,#1d8b94) 8%, var(--surface,white));color:var(--text-main);border-radius:15px;gap:7px;margin:12px 0;padding:13px;display:grid}.tutor-safeguard-offer>span{color:var(--text-muted);font-size:12px}.tutor-safeguard-offer>div{flex-wrap:wrap;gap:7px;margin-top:3px;display:flex}.tutor-safeguard-offer button{border:1px solid var(--line);background:var(--surface,white);color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:700}.teaching-sources{background:var(--surface-soft);border-radius:10px;margin-top:9px;padding:9px 10px;font-size:11px}.teaching-sources summary{color:var(--accent-deep);cursor:pointer;font-weight:750}.teaching-sources article{gap:4px;padding-top:8px;display:grid}.teaching-sources article a{color:var(--accent-deep);font-weight:700}.teaching-sources article span,.teaching-sources article small{color:var(--text-muted);line-height:1.4}.settings-theme-switch input[type=checkbox]{accent-color:var(--accent)}.swap-button{color:#858078;cursor:pointer;background:#fffefa;border:1px solid #eae6de;border-radius:9px;place-items:center;width:36px;height:36px;margin-bottom:2px;display:grid}.swap-button:hover{color:#635447;background:#f6f0e8}.translation-workspace{border:1px solid #ebe7df;border-radius:9px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.translation-side{flex-direction:column;min-height:183px;padding:15px 15px 9px;display:flex;position:relative}.translation-side+.translation-side{background:var(--page-bg);border-left:1px solid #ebe7df}.translation-side-label{color:#6a685f;justify-content:space-between;align-items:center;font-size:10px;font-weight:600;display:flex}.translation-side-label span{color:#aaa69d;font-size:8px;font-weight:400}.translation-side textarea{resize:vertical;color:#44443e;width:100%;min-height:103px;font-family:var(--sans);background:0 0;border:0;outline:none;flex:1;margin-top:13px;font-size:15px;line-height:1.55}.translation-side textarea::placeholder{color:#bebbb3;font-size:13px}.translation-controls{color:#b1ada4;justify-content:space-between;align-items:center;font-size:8px;display:flex}.mic-button{background:#f3f0e9;width:29px;height:29px}.mic-button:hover,.composer-mic:hover{background:#eee8de}.translation-result{padding-bottom:12px}.translation-placeholder{color:#c0bdb4;margin:auto 0;font-size:12px}.translated-text{color:#454941;font-family:var(--display);margin:18px 0 auto;font-size:22px;line-height:1.5}.result-audio{background:#f0eee7;width:29px;height:29px;position:absolute;bottom:9px;right:13px}.translate-submit-row{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.demo-disclaimer{color:#9a958a;align-items:flex-start;gap:7px;font-size:9px;line-height:1.5;display:flex}.info-dot{color:#91897d;width:15px;height:15px;font-family:var(--display);border:1px solid #d8d1c5;border-radius:50%;flex:none;place-items:center;font-size:9px;display:grid}.translate-button{min-width:119px}.examples-section{margin-top:28px}.example-list{flex-wrap:wrap;gap:8px;margin-top:13px;display:flex}.example-chip{color:#77746b;cursor:pointer;background:#fff9;border:1px solid #eae6de;border-radius:8px;align-items:center;gap:11px;padding:9px 11px;font-size:10px;transition:border-color .14s,background .14s;display:inline-flex}.example-chip:hover{background:#fffefa;border-color:#d4c8b8}.example-chip svg{color:#aaa49a}.prototype-note{color:#8a8070;background:#f8f4eb;border:1px solid #eee8dc;border-radius:9px;align-items:center;gap:9px;margin-top:28px;padding:12px 14px;font-size:10px;display:flex}.prototype-note svg{color:#ad8965;flex:none}.tutor-layout{grid-template-columns:minmax(0,1.6fr) minmax(200px,.8fr);gap:14px;display:grid}.tutor-card,.tutor-side-card,.progress-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px}.tutor-card{padding:17px 19px 12px}.tutor-topline{border-bottom:1px solid #f0ede6;align-items:center;gap:10px;padding-bottom:14px;display:flex}.tutor-avatar{color:#fff;background:linear-gradient(135deg,#4fb8b4,#4fb8b4 58%,#98d8d0);border-radius:12px;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.tutor-topline>span:nth-child(2){gap:3px;display:grid}.tutor-identity{min-width:0}.tutor-topline strong{color:#4d4b43;font-size:11px}.tutor-topline small{color:#9a968c;font-size:9px}.online-dot{color:#799276;white-space:nowrap;margin-left:auto;font-size:9px}.online-dot.model-error{color:#ae735e}.restart-button:disabled{cursor:wait;opacity:.55}.online-dot:before{content:"";vertical-align:1px;background:#8dae87;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.restart-button{flex:none}.conversation-toolbar{justify-content:space-between;align-items:center;gap:10px;padding:11px 0 2px;display:flex}.conversation-toolbar>span,.conversation-toolbar>div{align-items:center;gap:6px;display:inline-flex}.conversation-toolbar>span{color:#a09b91;font-size:9px}.conversation-toolbar>div{gap:4px}.conversation-toggle{color:#99958b;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 7px;font-size:8px}.conversation-toggle.selected{color:#6e6a61;background:#faf8f3;border-color:#eae6de}.voice-panel{text-align:center;background:radial-gradient(at 50% 55%,#4fb8b41c,#0000 44%),linear-gradient(150deg,#e2f4f0,#e2f4f0);border:1px solid #e2f4f0;border-radius:16px;flex-direction:column;align-items:center;min-height:485px;margin-top:14px;padding:23px 18px 17px;display:flex}.voice-panel-heading{color:var(--accent-deep);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.voice-status-dot{background:#98d8d0;border-radius:50%;width:8px;height:8px}.voice-panel.is-listening .voice-status-dot{background:#4fb8b4;animation:1.4s ease-in-out infinite voice-status-pulse;box-shadow:0 0 0 4px #4fb8b421}.voice-panel.is-speaking .voice-status-dot{background:#98d8d0;box-shadow:0 0 0 4px #98d8d021}.voice-panel.is-thinking .voice-status-dot{background:#f0a84b;box-shadow:0 0 0 4px #f0a84b21}.voice-prompt{color:var(--text-muted);margin:8px 0 0;font-size:10px;line-height:1.5}.voice-main-button.mode-hold{touch-action:none;-webkit-user-select:none;user-select:none}.voice-visualizer{justify-content:center;align-items:center;gap:4px;height:18px;margin-top:8px;display:flex}.voice-visualizer span{opacity:.5;background:linear-gradient(#4fb8b4,#98d8d0);border-radius:3px;width:3px;height:4px}.voice-panel.is-listening .voice-visualizer span,.voice-panel.is-speaking .voice-visualizer span{opacity:1;animation:.7s ease-in-out infinite alternate voice-wave}.voice-visualizer span:nth-child(2),.voice-visualizer span:nth-child(4){animation-delay:.18s}.voice-visualizer span:nth-child(3){animation-delay:.34s}.voice-live-transcript{max-width:94%;min-height:32px;color:var(--text-muted);place-items:center;margin:2px 0 5px;font-size:10px;line-height:1.5;display:grid}.voice-live-transcript.has-transcript{color:var(--text-muted);font-weight:600}.voice-latency{color:var(--text-muted);margin:0 0 8px;font-size:8px;line-height:1.4}.voice-controls{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:auto;display:flex}.voice-language-select{align-items:center;gap:8px;margin:9px 0 0;display:flex}.voice-language-select>span{color:var(--text-muted);letter-spacing:.7px;font-size:7px;font-weight:700}.voice-language-select select{min-width:92px;color:var(--accent-deep);background:#fff;border:1px solid #e2f4f0;border-radius:7px;padding:6px 8px;font-size:9px}.voice-avatar-orbit{flex:none;place-items:center;width:276px;height:276px;margin-top:7px;display:grid;position:relative}.voice-avatar-orbit:before{z-index:0;border:1px solid color-mix(in srgb, var(--accent) 14%, transparent);background:color-mix(in srgb, var(--accent) 3%, transparent);box-shadow:0 0 35px color-mix(in srgb, var(--accent) 8%, transparent);content:"";pointer-events:none;border-radius:50%;animation:4s ease-in-out infinite tutor-backdrop-breathe;position:absolute;inset:16%}.voice-panel.is-speaking .voice-avatar-orbit:before{border-color:color-mix(in srgb, var(--accent) 22%, transparent);box-shadow:0 0 48px color-mix(in srgb, var(--accent) 13%, transparent);animation-duration:1.25s}.voice-panel.is-listening .voice-avatar-orbit:before{animation-duration:1.8s}.voice-panel.is-thinking .voice-avatar-orbit:before{animation-duration:3s}@keyframes tutor-backdrop-breathe{0%,to{opacity:.52;transform:scale(.94)}50%{opacity:1;transform:scale(1.025)}}.voice-main-button{z-index:1;width:230px;height:230px;box-shadow:none;cursor:pointer;background:0 0;border:0;border-radius:0;flex:none;transition:transform .2s;display:block;position:relative;overflow:visible}.voice-main-button:hover{transform:scale(1.015)}.voice-main-button:focus-visible .tutor-orb{outline-offset:8px;outline:2px solid #98d8d0f2}.voice-main-button:disabled{cursor:wait;opacity:.55;transform:none}.tutor-orb-scene{z-index:0;pointer-events:none;place-items:center;display:grid;position:absolute;inset:8px}.tutor-orb{aspect-ratio:1;width:77%;transform-style:preserve-3d;background:radial-gradient(at 34% 27%,#ffffffd1,#0000 5%),radial-gradient(at 39% 35%,#98d8d0eb,#0000 27%),radial-gradient(at 66% 66%,#4fb8b4d6,#0000 35%),radial-gradient(at 63% 26%,#98d8d0eb,#0000 43%),radial-gradient(circle at 42% 40%,#1d8b94 0%,#0a3d4a 58%,#04222b 100%);border:1px solid #e2f4f080;border-radius:50%;transition:transform .35s,box-shadow .35s;animation:3.4s ease-in-out infinite tutor-orb-breathe;display:block;position:relative;overflow:visible;transform:scale(1);box-shadow:inset -9px -12px 22px #04222bb3,inset 5px 6px 14px #e2f4f057,0 0 12px #98d8d0b3,0 0 29px #98d8d059}.tutor-orb-face{border-radius:inherit;backface-visibility:hidden;transform-style:preserve-3d;position:absolute;inset:0}.tutor-orb-face,.tutor-orb-face *{backface-visibility:hidden}.tutor-orb-front-face{transform:rotateX(var(--ball-rotation-x,0deg)) rotateY(calc(var(--ball-rotation-y,0deg) + var(--orb-idle-spin,0deg))) translateZ(2px)}.tutor-orb-back-face{transform:rotateX(var(--ball-rotation-x,0deg)) rotateY(calc(var(--ball-rotation-y,0deg) + var(--orb-idle-spin,0deg))) rotateY(180deg) translateZ(2px);place-items:center;display:grid}.tutor-orb-nebula{border-radius:inherit;filter:blur(7px);background:radial-gradient(at 26% 72%,#4fb8b4d1,#0000 15%),radial-gradient(at 73% 34%,#98d8d0b3,#0000 17%),conic-gradient(from 30deg at 48% 52%,#0000,#98d8d03d,#0000,#98d8d04d,#0000);animation:8s ease-in-out infinite alternate tutor-orb-nebula-drift;position:absolute;inset:0;overflow:hidden}.tutor-orb-highlight{border-radius:inherit;background:linear-gradient(145deg,#ffffff42,#0000 29% 70%,#98d8d024);position:absolute;inset:5%;box-shadow:inset 2px 2px 4px #ffffff30}.tutor-orb-ring{border:1px solid #98d8d0a6;border-radius:50%;animation:5s ease-in-out infinite tutor-orb-ring-drift;position:absolute;inset:-10%;transform:rotate(-24deg)scaleY(.35);box-shadow:0 0 7px #4fb8b480}.tutor-orb-ring-two{border-color:#98d8d099;animation-direction:reverse;animation-delay:-2.5s;inset:-15%;transform:rotate(28deg)scaleY(.27)}.tutor-orb-wave{opacity:0;justify-content:center;align-items:center;gap:3%;height:21%;transition:opacity .22s;display:flex;position:absolute;bottom:14%;left:18%;right:18%}.tutor-orb-wave i{background:#e2f4f0f2;border-radius:2px;width:2px;height:23%;box-shadow:0 0 5px #98d8d0d9}.tutor-orb-wave i:nth-child(3n+1){height:64%}.tutor-orb-wave i:nth-child(3n+2){height:42%}.tutor-orb-scene.is-speaking .tutor-orb{animation-duration:1.05s;transform:scale(1.08);box-shadow:inset -9px -12px 22px #04222b9e,inset 5px 6px 14px #e2f4f066,0 0 17px #98d8d0f2,0 0 38px #98d8d0b8}.tutor-orb-scene.is-speaking .tutor-orb-wave{opacity:.92}.tutor-orb-scene.is-speaking .tutor-orb-wave i{animation:.58s ease-in-out infinite alternate tutor-orb-wave}.tutor-orb-scene.is-speaking .tutor-orb-wave i:nth-child(2n){animation-delay:-280ms}.tutor-orb-scene.is-listening .tutor-orb-ring,.tutor-orb-scene.is-thinking .tutor-orb-ring{animation-duration:1.5s;box-shadow:0 0 11px #98d8d0cc}.tutor-orb-scene.is-active .tutor-orb,.tutor-orb-scene.is-listening .tutor-orb{box-shadow:inset -9px -12px 22px #04222b9e,inset 5px 6px 14px #e2f4f066,0 0 18px #98d8d0d9,0 0 34px #98d8d08c}.tutor-orb-scene.is-thinking .tutor-orb-nebula{animation-duration:2.2s}@keyframes tutor-orb-breathe{0%,to{filter:brightness(.96)}50%{filter:brightness(1.12)}}@keyframes tutor-orb-nebula-drift{0%{transform:rotate(-12deg)scale(1)}to{transform:rotate(22deg)scale(1.12)}}@keyframes tutor-orb-ring-drift{0%,to{transform:rotate(-24deg)scaleY(.35)}50%{transform:rotate(5deg)scaleY(.39)}}@keyframes tutor-orb-wave{0%{transform:scaleY(.45)}to{transform:scaleY(1.15)}}.voice-language-select select:disabled{cursor:not-allowed;opacity:.7}.voice-main-label{color:var(--text-muted);font-size:9px;font-weight:600}.voice-support-note,.voice-error,.voice-privacy-note{max-width:390px;margin:10px 0 0;font-size:8px;line-height:1.5}.voice-support-note,.voice-privacy-note{color:var(--text-muted)}.voice-error{color:#b13950}.voice-tutor-error{color:#8e5d4e;text-align:left;background:#fbf1ec;border:1px solid #eedbd2;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:10px;width:100%;max-width:390px;margin-top:10px;padding:9px 11px;font-size:8px;line-height:1.5;display:flex}.voice-tutor-error button{color:#805b4c;cursor:pointer;background:#fffaf6;border:1px solid #e4cabe;border-radius:6px;flex:none;padding:4px 7px;font-size:8px}.voice-tutor-error button:disabled{cursor:wait;opacity:.6}.text-practice{border-top:1px solid var(--line);margin-top:12px}.text-practice>summary{color:var(--text-muted);cursor:pointer;padding:12px 2px 8px;font-size:9px}.text-practice-content{padding-top:5px}@media (prefers-reduced-motion:reduce){.voice-panel.is-listening .voice-status-dot,.voice-panel.is-listening .voice-visualizer span,.voice-panel.is-speaking .voice-visualizer span{animation:none}}.voice-press-button{background:linear-gradient(110deg, var(--home-mode-start), var(--home-mode-end));color:#fff;min-height:52px;box-shadow:0 12px 28px color-mix(in srgb, var(--accent) 24%, transparent);font:inherit;cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;padding:0 24px;font-weight:750}.voice-press-button:disabled{cursor:wait;opacity:.68}.home-start-button.voice-press-button{justify-content:center;align-items:center;min-width:min(100%,250px);margin:8px auto 22px;display:inline-flex}.speech-capture-line{color:var(--text-main);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:10px 0;font-size:.9rem;display:flex}.speech-capture-line button,.voice-help-actions button,.speech-correction-editor button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text-main);font:inherit;cursor:pointer;border-radius:999px;padding:7px 12px}.voice-help-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0;display:flex}.microphone-meter{background:var(--surface-soft);border-radius:999px;width:min(100%,220px);height:7px;margin:8px auto;overflow:hidden}.microphone-meter span{transform-origin:0;background:linear-gradient(110deg, var(--home-mode-start), var(--home-mode-end));width:100%;height:100%;transition:transform 60ms linear;display:block}.speech-correction-editor{flex-wrap:wrap;justify-content:center;gap:8px;margin:10px 0;display:flex}.speech-correction-editor input{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--text-main);font:inherit;border-radius:12px;padding:8px 12px}.voice-help-prompt{color:var(--text-muted);text-align:center;font-size:.85rem}.voice-help-phrase{border:1px solid var(--accent-line);background:var(--accent-soft);width:min(100%,420px);color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:12px;flex-wrap:wrap;justify-content:center;gap:6px 12px;margin:4px auto;padding:10px 14px;font-weight:700;display:flex}.voice-help-phrase span{color:var(--text-muted);font-size:.85em;font-weight:500}.tutor-orb-scene.is-speaking .tutor-orb{transform:scale(calc(1 + var(--voice-level,0) * .055));animation:none!important}.tutor-orb-scene.is-speaking .tutor-avatar-glow,.tutor-orb-scene.is-listening .tutor-avatar-glow{opacity:calc(.28 + var(--voice-level,0) * .62);transform:scale(calc(.92 + var(--voice-level,0) * .18));animation:none!important}.tutor-orb-scene.is-speaking .tutor-orbit-ring,.tutor-orb-scene.is-listening .tutor-orbit-ring{opacity:calc(.3 + var(--voice-level,0) * .6);animation-play-state:paused}.tutor-orb-scene.is-listening .tutor-orb{transform:scale(calc(1 + var(--voice-level,0) * .025))}.tutor-orb-scene.is-unclear:after{color:var(--accent-deep);content:"?";font-size:1.5rem;font-weight:800;animation:.65s ease-out both tutor-question-shimmer;position:absolute;top:14%;right:15%}@keyframes tutor-question-shimmer{0%{opacity:0;transform:translateY(5px)scale(.7)}45%{opacity:1;transform:translateY(-3px)scale(1.15)}to{opacity:.8;transform:translateY(0)scale(1)}}@media (width<=760px){.voice-press-button{width:100%;min-height:50px}.voice-help-actions{padding-bottom:10px}}.app-shell[data-tutor-mode=soft] .voice-press-button{color:#3a211d}.app-shell[data-tutor-mode=strict] .voice-press-button{color:#fff}.app-shell[data-theme=dark][data-tutor-mode=soft] .voice-press-button{color:#241613}@media (prefers-reduced-motion:reduce){.tutor-orb-scene.is-speaking .tutor-avatar-glow,.tutor-orb-scene.is-listening .tutor-avatar-glow,.tutor-orb-scene.is-unclear:after{transition:opacity .12s linear;animation:none!important}}.home-stage-session{width:min(100%,1120px)}.home-stage-session .tutor-layout{grid-template-columns:minmax(0,1fr);gap:0}.home-stage-session .tutor-topline{flex-wrap:wrap}.home-stage-session .tutor-identity{flex:180px}.session-style-chip{border:1px solid;border-radius:999px;flex:none;padding:6px 10px;font-size:10px;font-weight:700}.session-style-chip.mode-soft,.session-style-chip.mode-balanced,.session-style-chip.mode-strict{color:var(--accent-deep);background:var(--accent-soft)}.live-transcript-toggle,.show-transcript-button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--text-main);font:inherit;cursor:pointer;border-radius:9px;padding:0 10px;font-size:10px}.session-menu{position:relative}.session-menu summary{border:1px solid var(--line);color:var(--text-main);cursor:pointer;border-radius:9px;padding:8px 10px;font-size:10px;list-style:none}.session-menu summary::-webkit-details-marker{display:none}.topbar-actions .session-menu{z-index:1}.topbar-actions .session-menu summary{background:var(--surface);border-radius:10px;align-items:center;min-height:40px;padding:0 14px;font-size:12px;display:flex}.topbar-actions .session-menu summary:after{content:"";border:4px solid #0000;border-top-color:currentColor;width:0;height:0;margin:2px 0 0 8px}.topbar-actions .session-menu[open] summary:after{transform:rotate(180deg)}.topbar-actions .session-menu-actions{min-width:190px;padding:6px;top:calc(100% + 8px);right:0}.topbar-actions .session-menu-actions button{min-height:44px;padding:10px 12px;font-size:13px}.session-menu-actions{z-index:10;border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:142px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);right:0;box-shadow:0 8px 24px #04222b24}.session-menu-actions button,.voice-error-actions button{color:var(--text-main);text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 10px;font-size:10px}.session-menu-actions button:hover,.voice-error-actions button:hover{background:var(--accent-soft)}.home-tutor-settings-link{color:var(--text-muted);margin:-12px 0 8px;font-size:10px}.home-tutor-settings-link button{color:var(--accent-deep);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.home-free-chat-shortcut{border:1px solid var(--accent-line);background:var(--surface);color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:999px;margin:10px auto 0;padding:7px 12px;font-size:11px;display:block}.session-summary-card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:14px;width:min(100%,540px);margin:15px auto 0;padding:16px}.session-summary-card h2{overflow-wrap:anywhere;margin:5px 0;font-size:clamp(18px,4vw,24px)}.session-summary-card p:not(.eyebrow),.session-summary-card small{color:var(--text-muted);line-height:1.5}.voice-mode-note{color:var(--text-muted);margin:5px 0 0;font-size:9px;line-height:1.45}.voice-error-actions{border:1px solid var(--danger-line,#efb8bf);background:var(--surface);border-radius:10px;max-width:100%;padding:10px}.voice-error-actions>div{flex-wrap:wrap;justify-content:center;gap:5px;display:flex}.show-transcript-button{margin:4px 0 8px}.transcript-word{color:inherit;font:inherit;line-height:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline}.transcript-word:hover,.transcript-word:focus-visible{outline:2px solid var(--accent-line);background:var(--accent-soft);border-radius:3px}.voice-flavor-preview-list,.voice-test-actions{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.voice-speed-setting input[type=range]{width:min(100%,300px)}.daily-goal-progress-panel{border:1px solid var(--line);background:var(--surface);border-radius:13px;margin-bottom:14px;padding:17px}.daily-goal-progress-panel>p{color:var(--text-muted);font-size:11px}.app-shell[data-theme=dark] .session-style-chip.mode-soft{color:var(--accent-deep);background:var(--accent-soft)}.app-shell[data-theme=dark] .session-style-chip.mode-balanced{color:var(--ari-mint);background:var(--ari-dark-teal)}.app-shell[data-theme=dark] .session-style-chip.mode-strict{color:var(--accent-deep);background:var(--accent-soft)}.app-shell[data-theme=dark] .live-transcript-toggle,.app-shell[data-theme=dark] .show-transcript-button,.app-shell[data-theme=dark] .session-menu summary,.app-shell[data-theme=dark] .session-menu-actions,.app-shell[data-theme=dark] .session-summary-card,.app-shell[data-theme=dark] .voice-error-actions,.app-shell[data-theme=dark] .daily-goal-progress-panel{border-color:var(--line);background:var(--surface);color:var(--text-main)}@media (width<=760px){.home-stage-session{padding:12px 10px 20px}.home-stage-session .tutor-card{padding:12px 10px}.home-stage-session .tutor-topline{gap:7px}.home-stage-session .voice-panel{min-height:min(620px,100dvh - 210px);padding:17px 12px}.home-stage-session .session-menu-actions{right:0}}@media (prefers-reduced-motion:reduce){.tutor-orb,.tutor-orb-nebula,.tutor-orb-ring,.tutor-orb-wave i{animation:none}.tutor-orb{transition:none;transform:none}.tutor-orb-scene.is-speaking .tutor-orb{transform:none}}.tutor-ira .tutor-orb-hair{background:radial-gradient(circle, transparent 25%, color-mix(in srgb, var(--home-mode-end) 90%, white) 29% 48%, transparent 53%);width:18%;height:18%;box-shadow:none;top:-4%;right:16%}@keyframes voice-wave{0%{height:4px}to{height:17px}}@keyframes voice-status-pulse{50%{box-shadow:0 0 0 7px #4fb8b412}}.tutor-chat{align-content:start;gap:15px;min-height:252px;padding:17px 0 13px;display:grid}.tutor-thinking{color:#979186;margin:0 0 0 34px;font-size:9px;font-style:italic}.conversation-date{color:#b0aba1;letter-spacing:.95px;align-items:center;gap:10px;font-size:7px;font-weight:700;display:flex}.conversation-date:before,.conversation-date:after{content:"";background:#f0ede6;flex:1;height:1px}.conversation-message{align-items:flex-start;gap:9px;width:fit-content;max-width:91%;display:flex;position:relative}.conversation-message.from-user{justify-self:end;max-width:82%}.message-avatar{color:#fff;background:linear-gradient(140deg,#4fb8b4,#4fb8b4 55%,#98d8d0);border-radius:8px;flex:none;place-items:center;width:25px;height:25px;margin-top:3px;display:grid}.message-content{background:#fcfaf5;border:1px solid #eee9df;border-radius:4px 11px 11px;min-width:0;padding:10px 12px}.from-user .message-content{background:#edf1e9;border-color:#e6ebe1;border-radius:11px 4px 11px 11px}.message-author{color:#a09a8c;letter-spacing:.8px;margin-bottom:6px;font-size:7px;font-weight:700;display:block}.message-text,.message-pinyin,.message-meaning{margin:0}.message-text{color:#44463f;font-family:var(--display);font-size:14px;line-height:1.65}.from-user .message-text{color:#475146;font-family:var(--sans);font-size:11px}.message-pinyin,.message-meaning{color:#99958b;margin-top:4px;font-size:9px;line-height:1.5}.message-pinyin{color:#9a886f}.message-coach-note{color:#7e796d;border-top:1px solid #eee9df;align-items:flex-start;gap:6px;margin-top:9px;padding-top:8px;font-size:9px;line-height:1.55;display:flex}.message-coach-note svg{color:#ac8a68;flex:none;margin-top:1px}.tutor-corrections,.tutor-new-words,.tutor-whiteboard-card{border:1px solid var(--line);background:var(--surface-soft);color:var(--text-main);border-radius:9px;margin-top:9px;padding:9px;font-size:9px;line-height:1.5}.tutor-corrections>strong,.tutor-new-words>strong,.tutor-whiteboard-card>span{color:#8a816f;letter-spacing:.6px;margin-bottom:5px;font-size:7px;display:block}.tutor-corrections p,.tutor-new-words p,.tutor-whiteboard-card p{margin:5px 0 0}.tutor-corrections small,.tutor-new-words p span{color:var(--text-muted);margin-top:2px;display:block}.tutor-whiteboard-card h3{color:var(--text-strong);font-family:var(--display);margin:0;font-size:12px}.tutor-whiteboard-card ul{margin:6px 0 0;padding-left:16px}.chat-audio{width:27px;height:27px;margin:1px 0 0 1px}.suggested-replies{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 11px 34px;display:flex}.suggested-replies>span{color:#aaa59b;letter-spacing:.8px;width:100%;margin-bottom:1px;font-size:7px;font-weight:700}.suggested-replies>button{color:#77736a;cursor:pointer;background:#fffefa;border:1px solid #eae6de;border-radius:7px;padding:7px 9px;font-size:8px;transition:border-color .14s,background .14s}.suggested-replies>button:hover{background:#faf5ee;border-color:#d8c8b7}.suggested-replies>button:disabled{cursor:wait;opacity:.6}.tutor-error{color:#8e5d4e;background:#fbf1ec;border:1px solid #eedbd2;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:9px;padding:10px 12px;font-size:9px;line-height:1.5;display:flex}.tutor-error button{color:#805b4c;cursor:pointer;background:#fffaf6;border:1px solid #e4cabe;border-radius:6px;flex:none;padding:4px 7px;font-size:8px}.tutor-composer{background:#fffefa;border:1px solid #eae6de;border-radius:9px;flex-direction:column;gap:2px;padding:8px 9px 7px;transition:border-color .14s;display:flex}.tutor-composer:focus-within{border-color:#cdb59b}.tutor-composer textarea{resize:vertical;color:#55534c;width:100%;min-width:0;min-height:47px;font-family:var(--sans);background:0 0;border:0;outline:none;padding:3px 5px;font-size:11px;line-height:1.5}.tutor-composer textarea::placeholder{color:#b4b0a8}.tutor-composer textarea:disabled{cursor:wait;opacity:.7}.composer-footer{justify-content:space-between;align-items:center;display:flex}.composer-footer>span{color:#b1ada4;font-size:8px}.send-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4fb8b4,#4fb8b4);border:0;border-radius:8px;flex:none;place-items:center;width:31px;height:31px;display:grid}.send-button:disabled{cursor:not-allowed;background:#d5d4cc}.tutor-preview-note{color:#a8a398;text-align:center;margin:8px 0 0;font-size:8px;line-height:1.5}.tutor-side-card{background:var(--surface);align-self:start;padding:0 16px 17px;overflow:hidden}.character-rebuild-card{color:#fff;text-align:center;background:radial-gradient(at 50% 38%,#4fb8b4ad,#0000 43%),linear-gradient(145deg,#0a3d4a 2%,#4fb8b4 52% 100%);border-radius:12px 12px 0 0;align-content:center;justify-items:center;gap:12px;height:231px;margin:0 -16px 17px;padding:24px;display:grid}.character-rebuild-card-icon{aspect-ratio:1;background:#ffffff21;border:1px solid #ffffffad;border-radius:50%;place-items:center;width:54px;display:grid;box-shadow:0 0 24px #98d8d059}.character-rebuild-card>strong{font-family:var(--display);font-size:15px;line-height:1.3}.character-rebuild-card>span:last-child{color:#e2f4f0;max-width:220px;font-size:10px;line-height:1.5}.side-card-icon{color:#a07c57;background:#eee2d0;border-radius:10px;width:33px;height:33px;margin-bottom:17px}.tutor-side-card .eyebrow{margin-bottom:7px;font-size:8px}.tutor-side-card h3{color:#494940;font-family:var(--display);margin-bottom:7px;font-size:15px;font-weight:600;line-height:1.3}.tutor-side-card>p:not(.eyebrow){color:#8c877b;margin-bottom:16px;font-size:9px;line-height:1.6}.conversation-goal{align-items:center;gap:9px;margin-top:13px;display:flex}.goal-number{color:#9d8365;background:#f7f0e6;border:1px solid #e8dccb;border-radius:8px;flex:none;place-items:center;width:24px;height:24px;font-size:8px;font-weight:700;display:grid}.conversation-goal>span:last-child{gap:3px;display:grid}.conversation-goal strong{color:#686359;font-size:9px;font-weight:600}.conversation-goal small{color:#a09a8f;font-size:8px}.roleplay-content-note{background:var(--surface-soft);border-radius:7px;padding:8px 9px;font-size:9px!important}.roleplay-scenario-list{gap:8px;margin:12px 0;display:grid}.roleplay-scenario-option{border:1px solid var(--line);background:var(--surface-soft);border-radius:9px;gap:7px;padding:10px;display:grid}.roleplay-scenario-option strong{color:var(--text-strong);font-size:10px}.roleplay-scenario-option p{color:var(--text-muted);margin:4px 0 0;font-size:9px;line-height:1.5}.roleplay-phrase-list{gap:8px;margin:12px 0;display:grid}.roleplay-phrase-list .useful-phrase{margin:0}.roleplay-finish-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin:0 0 13px 34px;padding-top:11px;display:flex}.roleplay-finish-row>span{color:var(--text-muted);font-size:10px}.roleplay-summary{border:1px solid var(--accent-line);background:var(--surface-soft);border-radius:10px;gap:9px;margin:4px 0 14px 34px;padding:14px;display:grid}.roleplay-summary .eyebrow{color:var(--accent-deep);margin:0}.roleplay-summary h3{color:var(--text-strong);font-family:var(--display);margin:0;font-size:15px}.roleplay-summary>p:not(.eyebrow){color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.roleplay-summary label{color:var(--text-main);align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;display:flex}.roleplay-summary input{accent-color:var(--accent);flex:none;margin:2px 0 0}.roleplay-summary .roleplay-summary-note{font-size:9px}.roleplay-summary>.button{justify-self:start}.roleplay-next-practice{border-top:1px solid var(--accent-line);justify-items:start;gap:8px;margin-top:4px;padding-top:12px;display:grid}.roleplay-next-practice p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.5}.useful-phrase{border:1px solid var(--accent-line);background:var(--accent-soft);border-radius:9px;gap:5px;margin-top:18px;padding:12px;display:grid;position:relative}.useful-phrase>span{color:#a19a8d;letter-spacing:.8px;font-size:7px;font-weight:700}.useful-phrase>strong{color:var(--text-strong);font-family:var(--display);font-size:19px}.useful-phrase>small{color:var(--text-muted);font-size:8px}.useful-phrase>button{position:absolute;bottom:5px;right:5px}.vocabulary-card{padding-bottom:8px}.vocab-toolbar{justify-content:space-between;align-items:center;padding-bottom:16px;display:flex}.vocab-count{align-items:baseline;gap:8px;display:flex}.vocab-count strong{color:#47483f;font-family:var(--display);font-size:22px;font-weight:600}.vocab-count span{color:#98948a;font-size:10px}.button-outline{border-color:var(--accent-line);background:var(--surface);color:var(--accent-deep)}.button-outline:hover{background:var(--accent-soft)}.vocab-table-heading,.vocab-row{grid-template-columns:1.5fr 1.2fr 1fr 34px;align-items:center;gap:10px;display:grid}.vocab-table-heading{color:#a09c92;letter-spacing:.9px;border-top:1px solid #eeeae2;border-bottom:1px solid #eeeae2;padding:11px 6px;font-size:8px;font-weight:700}.vocab-row{color:#5f5d55;border-bottom:1px solid #f0ede6;min-height:61px;padding:6px;font-size:10px}.vocab-row:last-of-type{border-bottom:0}.vocab-word{align-items:center;gap:10px;display:flex}.vocab-row>strong{font-size:10px;font-weight:550}.tag,.privacy-pill{color:#878176;background:#f4f1ea;border-radius:6px;width:fit-content;padding:5px 8px;font-size:9px}.inline-notice{color:#8f795f;margin:8px 5px 0;font-size:9px}.progress-summary{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:15px;display:grid}.progress-stat{min-height:140px;padding:15px}.progress-panel{padding:19px}.progress-panel .section-heading{margin-bottom:17px}.bar-chart{border-bottom:1px solid #eeebe4;justify-content:space-around;align-items:stretch;gap:12px;height:186px;padding:0 7px;display:flex}.chart-column{color:#a49f95;flex-direction:column;align-items:center;gap:8px;width:28px;font-size:9px;display:flex}.chart-track{background:#f3f0e9;border-radius:6px 6px 0 0;align-items:flex-end;width:21px;height:100%;display:flex;overflow:hidden}.chart-fill{background:#bdab90;border-radius:6px 6px 0 0;width:100%}.chart-fill.future{background:#e1ddd3}.chart-foot{color:#99958b;justify-content:space-between;margin-top:11px;font-size:9px;display:flex}.chart-foot strong{color:#6d6a61;font-weight:600}.progress-detail-panel{margin-top:14px;padding:19px}.progress-objectives,.progress-skills{gap:15px;margin-top:17px;display:grid}.objective-progress{gap:7px;display:grid}.objective-progress-heading,.progress-error-list li{justify-content:space-between;align-items:center;gap:12px;display:flex}.objective-progress-heading strong,.skill-progress span,.progress-error-list li span{color:#55534c;font-size:11px;font-weight:600}.objective-progress-heading>span,.objective-progress small,.skill-progress small,.progress-empty,.progress-error-list li strong{color:#99958b;font-size:10px;font-weight:400}.objective-progress-track{background:#efede7;border-radius:8px;height:7px;overflow:hidden}.objective-progress-track>span{border-radius:inherit;background:#9fb9a7;height:100%;transition:width .2s;display:block}.skill-progress{grid-template-columns:minmax(120px,1fr) minmax(120px,2fr);align-items:center;gap:16px;display:grid}.skill-progress>div:first-child{justify-content:space-between;gap:8px;display:flex}.progress-empty{margin:17px 0 2px;line-height:1.6}.progress-error-list{gap:11px;margin:17px 0 2px;padding:0;list-style:none;display:grid}.app-shell[data-theme=dark] .progress-detail-panel{border-color:var(--line);background-color:var(--surface);color:var(--text-main)}.app-shell[data-theme=dark] :is(.objective-progress-heading strong,.skill-progress span,.progress-error-list li span){color:var(--text-strong)}.app-shell[data-theme=dark] .objective-progress-track{background:#10686f}.app-shell[data-theme=dark] .bar-chart{border-color:var(--line)}.app-shell[data-theme=dark] .chart-foot{color:var(--text-muted)}.settings-card{padding:0 20px}.speech-settings-card{margin-top:15px;padding-bottom:17px}.speech-gender-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 12px;display:grid}.speech-gender-choice{gap:7px;display:grid}.speech-gender-option{border:1px solid var(--line);background:var(--surface);width:100%;min-height:44px;color:var(--text-main);font:inherit;cursor:pointer;border-radius:9px;font-size:13px;font-weight:650}.speech-gender-option.is-selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent);color:var(--accent-deep)}.speech-gender-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.speech-gender-preview{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.speech-gender-preview:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.speech-gender-preview:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.speech-gender-preview:disabled{cursor:wait;opacity:.65}.speech-preview-button{margin:12px 20px 2px}.speech-settings-note{color:var(--text-muted);margin:6px 0 0;font-size:11px;line-height:1.55}.speech-settings-card .voice-error{margin:8px 0 0}.placement-note,.placement-result{color:var(--text-muted);margin:8px 20px 14px;font-size:12px;line-height:1.6}.placement-questions{gap:14px;padding:0 20px;display:grid}.placement-question{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.placement-question legend{color:var(--text-strong);margin-bottom:4px;font-size:13px;font-weight:650}.placement-question label{color:var(--text-main);cursor:pointer;align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;display:flex}.placement-question input{accent-color:var(--accent);flex:none;margin:2px 0 0}.placement-actions{flex-wrap:wrap;align-items:center;gap:12px;padding:18px 20px;display:flex}.placement-result{background:var(--surface-soft);border-radius:9px;margin-top:0;padding:12px}.placement-result strong{color:var(--text-strong)}.setting-row{border-bottom:1px solid #f0ede6;justify-content:space-between;align-items:center;gap:16px;min-height:75px;display:flex}.setting-row:last-child{border-bottom:0}.tutor-style-setting-row{border-bottom:1px solid var(--line);gap:10px;padding:13px 0;display:grid}.tutor-style-setting-row>span{gap:4px;display:grid}.tutor-style-setting-row>span strong{color:var(--text-strong);font-size:11px}.tutor-style-setting-row>span small{color:var(--text-muted);font-size:9px}.settings-tutor-style-choices{flex-wrap:wrap;gap:8px;display:flex}.settings-tutor-style-choice{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:9px;font-weight:650;display:inline-flex}.settings-tutor-style-choice[aria-pressed=true]{border-color:var(--accent);color:var(--text-strong);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 17%, transparent)}.settings-tutor-style-swatch{border-radius:999px;width:22px;height:15px}.settings-tutor-style-choice.mode-soft .settings-tutor-style-swatch{background:linear-gradient(115deg,#ff9a8b,#ffc3a0)}.settings-tutor-style-choice.mode-balanced .settings-tutor-style-swatch{background:linear-gradient(115deg, var(--ari-teal), var(--ari-aqua))}.settings-tutor-style-choice.mode-strict .settings-tutor-style-swatch{background:linear-gradient(115deg,#c81d3a,#ff6b35)}.mascot-colour-preview{color:var(--text-muted);align-items:center;gap:9px;padding:10px 0 14px;font-size:10px;display:flex}.mascot-colour-swatch{border:1px solid color-mix(in srgb, var(--text-strong) 12%, transparent);width:34px;height:22px;box-shadow:0 3px 8px color-mix(in srgb, var(--text-strong) 12%, transparent);border-radius:999px;flex:none;display:block}.mascot-colour-swatch.mode-soft,.home-mode-choice.mode-soft .home-mode-swatch{background:linear-gradient(115deg,#ff9a8b,#ffc3a0)}.mascot-colour-swatch.mode-balanced,.home-mode-choice.mode-balanced .home-mode-swatch{background:linear-gradient(115deg, var(--ari-teal), var(--ari-aqua))}.mascot-colour-swatch.mode-strict,.home-mode-choice.mode-strict .home-mode-swatch{background:linear-gradient(115deg,#c81d3a,#ff6b35)}.mascot-colour-swatch.custom-sapphire{background:#2687c8}.mascot-colour-swatch.custom-rose{background:#e36b94}.mascot-colour-swatch.custom-onyx{background:#303b46}.settings-section-intro{padding:19px 20px 8px}.settings-section-intro .eyebrow{margin-bottom:7px}.settings-section-intro h3{color:#44443e;font-family:var(--display);margin:0 0 6px;font-size:17px;font-weight:600}.settings-section-intro>p:last-child{color:#99958b;margin:0;font-size:10px;line-height:1.6}.learner-personalisation,.data-controls{margin-top:15px;padding-bottom:19px}.learner-setting-field{color:var(--text-main);gap:7px;margin:12px 20px;font-size:10px;font-weight:600;display:grid}.learner-setting-field textarea,.memory-add-form input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:38px;color:var(--text-main);font:inherit;resize:vertical;border-radius:8px;padding:9px 11px;font-weight:400}.learner-setting-field textarea::placeholder,.memory-add-form input::placeholder{color:#aaa69c}.memory-editor{gap:12px;margin:18px 20px;display:grid}.memory-editor>div:first-child{gap:5px;display:grid}.memory-editor>div:first-child strong{color:#55534c;font-size:10px}.memory-editor>div:first-child small{color:#99958b;font-size:9px;line-height:1.5}.memory-add-form,.data-action-row{align-items:center;gap:9px;display:flex}.memory-add-form input{flex:1}.memory-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.memory-list li{background:color-mix(in srgb, var(--surface) 80%, #e9e5da);color:#666258;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;font-size:10px;display:flex}.transcript-setting{border-top:1px solid #f0ede6;margin:0 20px}.data-action-row{flex-wrap:wrap;margin:16px 20px 0}.button-danger-outline{color:#9c4d48;cursor:pointer;background:0 0;border:1px solid #d9a6a0;border-radius:7px;justify-content:center;align-items:center;min-height:34px;padding:0 13px;font-size:10px;display:inline-flex}.button-danger-outline:hover{background:#fff1ef}.data-status{color:#65806c;margin:10px 20px 0;font-size:10px}.history-list{gap:9px;margin-top:14px;display:grid}.history-session{border:1px solid var(--line);border-radius:8px;padding:11px 12px}.history-session summary{color:#69665d;cursor:pointer;justify-content:space-between;gap:12px;font-size:10px;display:flex}.history-session summary span:last-child{color:#99958b}.history-transcript{gap:8px;margin:12px 0;display:grid}.history-message{color:#666258;grid-template-columns:34px 1fr;gap:8px;margin:0;font-size:10px;line-height:1.6;display:grid}.history-message strong{color:#8a867c;font-size:8px}.app-shell[data-theme=dark] :is(.settings-section-intro h3,.learner-setting-field,.memory-editor>div:first-child strong,.history-session summary,.history-message){color:var(--text-strong)}.app-shell[data-theme=dark] :is(.settings-section-intro>p:last-child,.memory-editor>div:first-child small,.history-session summary span:last-child){color:var(--text-muted)}.app-shell[data-theme=dark] .memory-list li{color:var(--text-muted);background:#10686f}.app-shell[data-theme=dark] .transcript-setting{border-color:var(--line)}.app-shell[data-theme=dark] .button-danger-outline:hover{background:#10686f}.setting-row>span:first-child{gap:5px;display:grid}.setting-row strong{color:#55534c;font-size:10px;font-weight:600}.setting-row small{color:#9a968c;font-size:9px}.settings-select{flex:none;width:190px;height:35px;padding:0 9px}.settings-select select{font-size:9px}.toggle-on{background:#859b7c;border-radius:10px;justify-content:flex-end;align-items:center;width:34px;height:20px;padding:2px;display:flex}.toggle-on span{background:#fffefa;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 2px #00000024}.settings-theme-switch{border:1px solid var(--accent-line);background:var(--surface-soft);color:var(--accent-deep);cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;font-size:9px;font-weight:600;display:inline-flex}.theme-toggle-track{background:#e2f4f0;border-radius:9px;align-items:center;width:29px;height:17px;padding:2px;transition:background .15s;display:flex}.theme-toggle-track>span{background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .15s;box-shadow:0 1px 3px #0a3d4a33}.theme-toggle-track.is-dark{background:linear-gradient(90deg,#4fb8b4,#98d8d0)}.theme-toggle-track.is-dark>span{transform:translate(12px)}.app-shell[data-theme=dark]{color:var(--text-main)}.app-shell[data-theme=dark] .sidebar,.app-shell[data-theme=dark] .stat-card,.app-shell[data-theme=dark] .panel,.app-shell[data-theme=dark] .translator-card,.app-shell[data-theme=dark] .vocabulary-card,.app-shell[data-theme=dark] .settings-card,.app-shell[data-theme=dark] .tutor-card,.app-shell[data-theme=dark] .tutor-side-card,.app-shell[data-theme=dark] .progress-panel{border-color:var(--line);background-color:var(--surface);color:var(--text-main)}.app-shell[data-theme=dark] .topbar{border-color:var(--line);background:color-mix(in srgb, var(--surface) 94%, transparent)}.app-shell[data-theme=dark] :is(.brand,.welcome-row h1,.subpage-intro h1,.learning-card h2,.section-heading h3,.profile-copy strong,.stat-card>strong,.progress-stat>strong,.word-detail strong,.vocab-count strong,.vocab-row>strong,.tutor-topline strong,.tutor-side-card h3,.useful-phrase>strong,.translated-text,.translation-side-label,.setting-row strong){color:var(--text-strong)}.app-shell[data-theme=dark] :is(.welcome-copy,.subpage-intro>p:last-child,.streak-caption,.streak-day,.stat-note,.stat-label,.word-detail small,.page-footer,.breadcrumb,.tutor-topline small,.tutor-side-card>p:not(.eyebrow),.conversation-toolbar>span,.message-meaning,.message-pinyin,.tutor-preview-note,.useful-phrase>small,.setting-row small,.vocab-count span,.vocab-word>span:last-child),.app-shell[data-theme=dark] .nav-item{color:var(--text-muted)}.app-shell[data-theme=dark] .nav-item:hover,.app-shell[data-theme=dark] .settings-theme-switch:hover{color:#e2f4f0;background:#0a3d4a}.app-shell[data-theme=dark] .nav-item.active{color:var(--text-muted);background:#10686f}.app-shell[data-theme=dark] .plan-card,.app-shell[data-theme=dark] .week-streak,.app-shell[data-theme=dark] .useful-phrase,.app-shell[data-theme=dark] .setting-row .privacy-pill,.app-shell[data-theme=dark] .message-content{border-color:var(--line);background:var(--surface-soft)}.app-shell[data-theme=dark] .plan-title,.app-shell[data-theme=dark] .plan-foot strong{color:#e2f4f0}.app-shell[data-theme=dark] .plan-copy,.app-shell[data-theme=dark] .plan-foot{color:var(--text-muted)}.app-shell[data-theme=dark] .plan-progress{background:#10686f}.app-shell[data-theme=dark] .plan-progress span{background:linear-gradient(90deg,#4fb8b4,#98d8d0)}.app-shell[data-theme=dark] .learning-card{border-color:var(--accent-deep)}.app-shell[data-theme=dark] .tutor-composer,.app-shell[data-theme=dark] .language-select-control,.app-shell[data-theme=dark] .settings-select,.app-shell[data-theme=dark] .swap-button,.app-shell[data-theme=dark] .example-chip,.app-shell[data-theme=dark] .button-outline,.app-shell[data-theme=dark] .suggested-replies>button,.app-shell[data-theme=dark] .voice-language-select select{border-color:var(--line);background:var(--surface-soft);color:var(--text-main)}.app-shell[data-theme=dark] .voice-panel{border-color:var(--accent-deep);background:radial-gradient(at 50% 54%,#4fb8b42b,#0000 44%),linear-gradient(150deg,#0a3d4a,#0a3d4a)}.app-shell[data-theme=dark] .voice-panel-heading,.app-shell[data-theme=dark] .voice-live-transcript.has-transcript{color:#e2f4f0}.app-shell[data-theme=dark] .voice-prompt,.app-shell[data-theme=dark] .voice-live-transcript,.app-shell[data-theme=dark] .voice-latency,.app-shell[data-theme=dark] .voice-support-note,.app-shell[data-theme=dark] .voice-privacy-note,.app-shell[data-theme=dark] .voice-language-select>span{color:var(--text-muted)}.app-shell[data-theme=dark] .voice-error{color:#ffabb7}.app-shell[data-theme=dark] .voice-tutor-error{border-color:var(--accent-deep);color:#ffc6ce;background:#0a3d4a}.app-shell[data-theme=dark] .voice-tutor-error button{border-color:var(--accent-deep);color:#ffdce1;background:#10686f}.app-shell[data-theme=dark] .text-practice>summary{color:var(--text-muted)}.app-shell[data-theme=dark] .tutor-composer textarea,.app-shell[data-theme=dark] .tutor-composer input,.app-shell[data-theme=dark] .translation-side textarea,.app-shell[data-theme=dark] .tutor-composer textarea::placeholder,.app-shell[data-theme=dark] .translation-side textarea::placeholder{color:#e2f4f0}.app-shell[data-theme=dark] .translation-side+.translation-side,.app-shell[data-theme=dark] .message-content{background:#0a3d4a}.app-shell[data-theme=dark] .from-user .message-content{background:#0a3d4a;border-color:#10686f}.app-shell[data-theme=dark] .message-text,.app-shell[data-theme=dark] .from-user .message-text,.app-shell[data-theme=dark] .vocab-row{color:#e2f4f0}.app-shell[data-theme=dark] .day-dot{border-color:var(--line);background:#0a3d4a}.app-shell[data-theme=dark] .day-dot.completed{border-color:var(--text-muted);background:#4fb8b4}.app-shell[data-theme=dark] .day-dot.today{border-color:var(--text-muted);box-shadow:0 0 0 3px #98d8d03d}.app-shell[data-theme=dark] .chart-track{background:#0a3d4a}.app-shell[data-theme=dark] .chart-fill{background:linear-gradient(#4fb8b4,#98d8d0)}.app-shell[data-theme=dark] .chart-fill.future{background:#10686f}.app-shell[data-theme=dark] .streak-pill,.app-shell[data-theme=dark] .theme-switch{border-color:var(--line);background:var(--surface);color:#e2f4f0}.app-shell[data-theme=dark] .word-badge,.app-shell[data-theme=dark] .practice-chat,.app-shell[data-theme=dark] .practice-review,.app-shell[data-theme=dark] .practice-translate,.app-shell[data-theme=dark] .stat-icon{filter:brightness(.75)saturate(1.2)}.app-shell[data-theme=dark] .conversation-date:before,.app-shell[data-theme=dark] .conversation-date:after,.app-shell[data-theme=dark] .tutor-topline,.app-shell[data-theme=dark] .setting-row,.app-shell[data-theme=dark] .vocab-row,.app-shell[data-theme=dark] .vocab-table-heading{border-color:var(--line)}.app-shell[data-theme=dark] .conversation-toggle.selected{border-color:var(--line);color:#e2f4f0;background:#0a3d4a}.app-shell[data-theme=dark] .translation-placeholder{color:var(--text-muted)}.app-shell[data-tutor-mode=soft]{--accent:#ff9a8b;--accent-deep:#9c493c;--accent-soft:#fff0eb;--accent-line:#ffd1c4;--home-mode-start:#ff9a8b;--home-mode-end:#ffc3a0;--home-mode-button-end:#ffc3a0;--page-bg:#fffaf6}.app-shell[data-tutor-mode=balanced]{--accent:var(--ari-primary);--accent-deep:var(--ari-teal);--accent-soft:var(--ari-light);--accent-line:var(--ari-mint);--home-mode-start:var(--ari-teal);--home-mode-end:var(--ari-aqua);--home-mode-button-end:var(--ari-teal)}.app-shell[data-tutor-mode=strict]{--accent:#c81d3a;--accent-deep:#a91631;--accent-soft:#fff0ed;--accent-line:#ffc5b6;--home-mode-start:#c81d3a;--home-mode-end:#ff6b35;--home-mode-button-end:#c81d3a;--page-bg:#fff8f8}.app-shell[data-theme=dark][data-tutor-mode=soft]{--accent:#ffb09e;--accent-deep:#ffd1c4;--accent-soft:#38272a;--accent-line:#754447;--page-bg:#211d20}.app-shell[data-theme=dark][data-tutor-mode=balanced]{--accent:var(--ari-aqua);--accent-deep:var(--ari-mint);--accent-soft:var(--ari-dark-teal);--accent-line:var(--ari-teal)}.app-shell[data-theme=dark][data-tutor-mode=strict]{--accent:#ff8a5c;--accent-deep:#ffc5b6;--accent-soft:#392127;--accent-line:#7e3940;--page-bg:#241a1e}.home-language-picker{min-width:0;color:var(--text-strong);align-items:center;gap:9px;display:inline-flex}.home-language-picker>span{font-size:22px}.home-language-picker select{appearance:none;max-width:min(47vw,190px);color:var(--text-strong);cursor:pointer;background:0 0;border:0;padding:7px 2px;font-size:13px;font-weight:650}.home-language-picker>svg{color:var(--text-muted);pointer-events:none;flex:none}.page-content>.welcome-row,.page-content>.onboarding-card,.home-legacy-content{display:none}.home-studio{border:1px solid var(--line);background:radial-gradient(ellipse at 50% 33%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 35%), var(--surface);touch-action:pan-y;border-radius:30px;width:min(100%,760px);min-height:680px;margin:15px auto 48px;overflow:hidden;box-shadow:0 18px 55px #181e3012}.home-tutor-panel,.home-progress-panel{text-align:center;flex-direction:column;align-items:center;min-height:680px;padding:29px clamp(20px,5vw,52px) 35px;display:flex}.home-chapter-label{color:var(--text-muted);letter-spacing:.25px;margin-top:5px;font-size:12px;font-weight:600}.home-chapter-label span{color:var(--line);padding:0 5px}.home-tutor-panel h1,.home-progress-panel h1{color:var(--text-strong);font-family:var(--display);letter-spacing:-1px;margin:13px 0 5px;font-size:clamp(25px,4vw,34px);font-weight:700}.home-tutor-prompt{color:var(--text-muted);margin:0;font-size:13px}.home-stage-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;width:min(100%,680px);margin:14px 0 0;display:flex}.home-stage-toolbar .online-dot{margin:0 auto 0 0}.home-voice-controls{width:min(100%,490px);min-height:0;margin-top:14px;padding:15px}.home-voice-controls .voice-visualizer,.home-voice-controls .voice-controls{display:none}.home-start-hint,.home-language-warning{max-width:420px;color:var(--text-muted);margin:9px auto 0;font-size:10px;line-height:1.45}.home-language-warning{color:var(--accent-deep)}.home-setup-required{border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;width:min(100%,420px);margin:12px auto 0;padding:12px 14px;display:flex}.home-setup-required p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.45}.onboarding-modal-overlay{z-index:1000;background:color-mix(in srgb, var(--text-strong) 54%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.onboarding-modal{background:var(--page-bg);border-radius:28px;width:min(100%,600px);max-height:calc(100dvh - 32px);padding:0 20px;overflow-y:auto}.onboarding-modal .onboarding-flow{min-height:calc(100dvh - 64px)}.home-start-button:disabled{cursor:not-allowed;opacity:.62;animation:none}.home-live-caption{border:1px solid var(--accent-line);background:var(--accent-soft);width:min(100%,560px);max-height:120px;color:var(--text-main);border-radius:12px;margin:12px 0 0;padding:10px 13px;font-size:12px;line-height:1.55;overflow:auto}.session-summary-next{margin-top:8px}.session-summary-next strong{color:var(--accent-deep)}.home-stage-session{width:min(100%,820px);min-height:calc(100dvh - 102px);margin:8px auto 24px}.home-stage-session .tutor-layout{display:block}.home-stage-session .tutor-card{min-height:100%;box-shadow:0 18px 55px color-mix(in srgb, var(--text-strong) 8%, transparent);border-radius:28px;padding:clamp(16px,3vw,28px)}.home-stage-session .voice-panel{border-radius:22px;min-height:0}@media (width>=761px){.home-stage-session{width:min(100%,1120px)}.home-stage-session .voice-panel{min-height:clamp(620px,100dvh - 300px,760px);padding:24px 24px 22px}.home-stage-session .voice-controls{margin-top:14px}.home-stage-session .voice-avatar-orbit{width:clamp(360px,36vw,450px);height:clamp(360px,36vw,450px);margin-top:8px}.home-stage-session .voice-main-button{width:clamp(340px,34vw,420px);height:clamp(340px,34vw,420px)}}.home-mascot-wrap{outline-offset:8px;cursor:grab;touch-action:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;width:min(310px,76vw);height:min(310px,76vw);margin:12px auto 0;padding:0;animation:4.2s ease-in-out infinite home-mascot-float;display:grid;position:relative}.home-mascot-wrap:focus-visible{outline:2px solid var(--accent)}.home-mascot-wrap .tutor-orb-scene{transform:perspective(600px) rotateX(var(--poke-tilt-y,0deg)) rotateY(var(--poke-tilt-x,0deg));will-change:transform;perspective:900px;transform-style:preserve-3d;width:100%;height:100%;transition:transform .18s ease-out;position:relative;inset:auto}.home-mascot-wrap .tutor-orb{background:radial-gradient(ellipse at 69% 18%, color-mix(in srgb, var(--home-mode-end) 76%, white), transparent 43%), radial-gradient(ellipse at 30% 77%, color-mix(in srgb, var(--home-mode-end) 52%, white), transparent 48%), linear-gradient(145deg, color-mix(in srgb, var(--home-mode-start) 82%, white), var(--home-mode-start) 54%, color-mix(in srgb, var(--home-mode-start) 72%, #17213e));width:69%;box-shadow:inset -12px -15px 20px #081c2b40, inset 6px 7px 14px #ffffff57, 0 0 26px color-mix(in srgb, var(--home-mode-end) 36%, transparent), 0 18px 38px color-mix(in srgb, var(--home-mode-start) 18%, transparent);border:0;transition:background .4s,box-shadow .4s,transform .35s;animation:3.4s ease-in-out infinite tutor-orb-breathe,15s ease-in-out infinite home-orb-morph;transform:scale(1)}.home-mascot-wrap.is-dragging{cursor:grabbing}.home-mascot-wrap.is-dragging .tutor-orb{transition:none}.home-mascot-wrap.is-dragging .tutor-orb-scene{animation-play-state:paused}.home-mascot-wrap .tutor-orb-back-face{background:radial-gradient(ellipse at 69% 18%, color-mix(in srgb, var(--home-mode-end) 76%, white), transparent 43%), radial-gradient(ellipse at 30% 77%, color-mix(in srgb, var(--home-mode-end) 52%, white), transparent 48%), linear-gradient(145deg, color-mix(in srgb, var(--home-mode-start) 82%, white), var(--home-mode-start) 54%, color-mix(in srgb, var(--home-mode-start) 72%, #17213e));box-shadow:inset -12px -15px 20px #081c2b40,inset 6px 7px 14px #ffffff57}.home-mascot-wrap .tutor-orb-flipper{z-index:0;background:radial-gradient(ellipse at 35% 28%, color-mix(in srgb, var(--home-mode-end) 75%, white), transparent 48%), linear-gradient(145deg, color-mix(in srgb, var(--home-mode-start) 75%, white), var(--home-mode-start) 72%);width:27%;height:31%;box-shadow:inset -5px -7px 9px #081c2b2b, 0 3px 8px color-mix(in srgb, var(--home-mode-start) 18%, transparent);border-radius:48% 52% 54% 46%;position:absolute;top:51%}.home-mascot-wrap .tutor-orb-flipper-left{left:-15%;transform:rotate(20deg)}.home-mascot-wrap .tutor-orb-flipper-right{width:24%;height:28%;right:-13%;transform:rotate(-18deg)}.home-mascot-wrap .tutor-orb-back-highlight{z-index:1;border-radius:inherit;pointer-events:none;background:radial-gradient(at 30% 25%,#ffffff2e,#0000 58%);position:absolute;inset:10%;box-shadow:inset 6px 7px 15px #ffffff21,inset -10px -12px 18px #081c2b1f}.home-mascot-wrap .tutor-orb-nebula{z-index:1;background:radial-gradient(ellipse at 26% 72%, color-mix(in srgb, var(--home-mode-start) 80%, white), transparent 18%), radial-gradient(ellipse at 73% 34%, color-mix(in srgb, var(--home-mode-end) 70%, white), transparent 18%), conic-gradient(from 30deg at 48% 52%, transparent, #ffffff40, transparent, color-mix(in srgb, var(--home-mode-end) 55%, transparent), transparent)}.home-mascot-wrap .tutor-orb-highlight{z-index:2;pointer-events:none;background:radial-gradient(at 30% 22%,#ffffffe6 0 2%,#ffffff57 8%,#0000 27%),radial-gradient(at 76% 80%,#071d2b61,#0000 49%),linear-gradient(145deg,#ffffff38,#0000 36% 65%,#071d2b29);inset:1%;box-shadow:inset 7px 8px 12px #ffffff38,inset -10px -13px 17px #081c2b33}.home-mascot-wrap .tutor-orb-ring{display:none}.home-mascot-wrap .tutor-orb-wave{z-index:3}.home-mascot-wrap .tutor-orb-eyes{height:21%;top:34%}.home-mascot-wrap .tutor-orb:after{z-index:4;border:1px solid color-mix(in srgb, var(--home-mode-end) 70%, white);content:"";opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-5%}.home-mascot-wrap.is-poked .tutor-orb{animation:.7s cubic-bezier(.2,.8,.25,1) home-orb-poke}.home-mascot-wrap.is-poked .tutor-orb:after{animation:.62s ease-out home-poke-ripple}.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb{box-shadow:inset -13px -17px 26px #081c2b5c, inset 8px 9px 18px #ffffff7a, 0 0 26px color-mix(in srgb, var(--home-mode-end) 75%, transparent), 0 0 52px color-mix(in srgb, var(--home-mode-start) 43%, transparent);animation:.76s ease-in-out infinite alternate home-orb-speaking-pulse}.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb-wave{opacity:.95}.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb-ring{border-color:color-mix(in srgb, var(--home-mode-end) 88%, white);box-shadow:0 0 12px color-mix(in srgb, var(--home-mode-end) 75%, transparent)}.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb:after{animation:.95s ease-out infinite home-poke-ripple}.home-mascot-wrap .tutor-orb-scene.is-listening .tutor-orb{transform:rotate(-4deg)}.home-mascot-wrap .tutor-orb-wave{bottom:19%}.tutor-orb-eyes{z-index:2;justify-content:space-between;align-items:center;width:42%;height:16%;animation:5s ease-in-out infinite tutor-blink;display:flex;position:absolute;top:43%;left:29%}.tutor-orb-eyes i{background:#fffffff0;border-radius:999px;width:22%;height:100%;display:block;box-shadow:0 0 9px #ffffff85}.tutor-orb-hair{z-index:3;display:block;position:absolute}.tutor-ari .tutor-orb-hair{background:linear-gradient(145deg, color-mix(in srgb, var(--home-mode-end) 58%, white), var(--home-mode-start));clip-path:polygon(0 100%,16% 45%,47% 28%,63% 0,68% 43%,100% 47%,82% 100%);filter:drop-shadow(0 2px 3px #1c223c1f);border-radius:45% 55% 12% 15%;width:22%;height:23%;top:-8%;right:31%}.tutor-ira .tutor-orb-hair{background:radial-gradient(circle at 48% 46%, transparent 32%, color-mix(in srgb, var(--home-mode-end) 76%, white) 35% 52%, transparent 56%), radial-gradient(circle at 60% 55%, var(--home-mode-start), var(--home-mode-end));filter:drop-shadow(0 2px 4px #1c223c21);border:0;border-radius:50%;width:18%;height:18%;top:-1%;right:1%}.home-pagination{justify-content:center;align-items:center;gap:8px;margin:-2px 0 14px;display:flex}.home-pagination button{background:color-mix(in srgb, var(--text-muted) 29%, transparent);cursor:pointer;border:0;border-radius:8px;width:7px;height:7px;padding:0;transition:width .18s,background-color .4s}.home-pagination button.is-current{background:var(--accent);width:20px}.home-tutor-choices{gap:12px;width:min(100%,415px);display:grid}.home-choice-group{justify-content:center;gap:9px;display:flex}.home-tutor-chip{border:1px solid var(--line);background:var(--surface);min-width:102px;color:var(--text-muted);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:9px 17px;font-size:12px;font-weight:650;transition:transform .16s,color .25s,background-color .25s;display:inline-flex}.home-tutor-chip:hover{transform:translateY(-2px)}.home-tutor-chip.is-selected{background:var(--accent);color:#fff;box-shadow:0 5px 14px color-mix(in srgb, var(--accent) 25%, transparent);border-color:#0000}.home-mode-choices{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:8px;display:grid}.session-tutor-quick-tools{gap:16px;width:min(100%,415px);margin:12px auto 14px;display:grid}.session-tutor-shortcuts{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.home-tutor-choices .session-tutor-shortcuts{margin-top:8px}.session-tutor-shortcuts button{border:1px solid var(--accent-line);background:var(--surface);min-width:44px;min-height:44px;color:var(--accent-deep);cursor:pointer;border-radius:13px;place-items:center;transition:transform .16s,background-color .18s,color .18s;display:grid}.session-tutor-shortcuts button:hover:not(:disabled){background:var(--accent-soft);transform:translateY(-2px)}.session-tutor-shortcuts button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.session-tutor-shortcuts button:disabled{opacity:.45;cursor:not-allowed}.home-mode-choice{min-width:0;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:2px 4px 4px;font-size:10px;font-weight:600;display:flex}.home-mode-swatch{background:linear-gradient(115deg, var(--ari-teal), var(--ari-aqua));border:2px solid #0000;border-radius:999px;width:42px;height:30px;transition:transform .18s,box-shadow .18s;display:block;box-shadow:0 4px 10px #04222b1f}.home-mode-choice.mode-soft .home-mode-swatch{background:linear-gradient(115deg,#ff9a8b,#ffc3a0)}.home-mode-choice.mode-strict .home-mode-swatch{background:linear-gradient(115deg,#c81d3a,#ff6b35)}.home-mode-choice.is-selected .home-mode-swatch{box-shadow:0 0 0 3px var(--surface), 0 0 0 5px var(--accent), 0 6px 15px color-mix(in srgb, var(--accent) 32%, transparent);transform:scale(1.13)}.home-mode-choice.is-selected{color:var(--text-strong)}.home-mode-description{min-height:17px;color:var(--text-muted);margin:-4px 0 0;font-size:11px}.home-page-content{padding-bottom:110px}.home-studio{margin-bottom:24px;overflow:visible}.home-studio .home-tutor-panel{padding-bottom:46px}.session-summary-card{width:min(100%,490px);margin:16px 0 0}.free-chat-duration{border:0;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;padding:0;display:flex}.free-chat-duration legend{width:100%;color:var(--text-muted);margin-bottom:2px;font-size:12px;font-weight:650}.free-chat-duration button{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--text-main);font:inherit;cursor:pointer;border-radius:999px;padding:0 13px;font-size:12px}.free-chat-duration button.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-deep);font-weight:750}.floating-tutor-bubble{z-index:30;right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));border:1px solid color-mix(in srgb, var(--accent) 42%, var(--surface));background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:58px;height:58px;padding:0;transition:transform .18s,box-shadow .18s;animation:3.6s ease-in-out infinite floating-tutor-pulse;display:grid;position:fixed;box-shadow:0 8px 24px #04222b33}.floating-tutor-bubble:hover,.floating-tutor-bubble:focus-visible{box-shadow:0 10px 30px color-mix(in srgb, var(--accent) 30%, transparent);transform:translateY(-2px)}.floating-tutor-bubble .tutor-orb-scene{position:absolute;inset:3px}.floating-tutor-bubble .tutor-orb{width:46px;height:46px}.floating-tutor-bubble.is-waiting:before{border:2px solid color-mix(in srgb, var(--accent) 58%, transparent);content:"";pointer-events:none;border-radius:50%;animation:1.8s ease-out infinite tutor-wait-ring;position:absolute;inset:-5px}.floating-tutor-bubble:after{border:1px solid color-mix(in srgb, var(--accent) 38%, transparent);border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:-2px}.floating-tutor-bubble.is-paused:before{opacity:0;animation:none}.floating-tutor-status{border:2px solid var(--surface);color:#fff;background:#e9a52d;border-radius:50%;place-items:center;min-width:19px;height:19px;padding:0 3px;font-size:10px;font-weight:800;line-height:1;display:grid;position:absolute;bottom:0;right:-1px}.floating-tutor-bubble.is-active .floating-tutor-status{background:#2e9b62}.floating-tutor-bubble.is-idle .floating-tutor-status{display:none}@keyframes tutor-wait-ring{0%{opacity:.75;transform:scale(.82)}to{opacity:0;transform:scale(1.2)}}@keyframes floating-tutor-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.025)}}.home-start-button{background:linear-gradient(110deg, var(--home-mode-start), var(--home-mode-button-end,var(--home-mode-end)));width:min(100%,415px);min-height:54px;box-shadow:0 10px 23px color-mix(in srgb, var(--home-mode-start) 28%, transparent);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;margin-top:15px;font-size:15px;font-weight:700;transition:transform .18s,box-shadow .25s,background .4s;animation:7s ease-in-out infinite home-button-shimmer;display:flex}.home-start-button:hover{box-shadow:0 13px 27px color-mix(in srgb, var(--home-mode-start) 35%, transparent);transform:translateY(-2px)}.home-start-button:active{transform:scale(.98)}.home-start-button>span{font-size:24px;font-weight:400;line-height:1}.home-progress-panel{justify-content:center}.home-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;width:min(100%,490px);margin:32px 0 18px;display:grid}.home-progress-grid article{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 80%, var(--accent-soft));text-align:left;border-radius:18px;align-content:center;gap:9px;min-height:94px;padding:15px;display:grid}.home-progress-grid article>span{color:var(--text-muted);font-size:11px}.home-progress-grid strong{color:var(--text-strong);font-family:var(--display);font-size:23px}.home-progress-grid strong small{color:var(--text-muted);font-family:var(--sans);font-size:11px;font-weight:500}.home-week-dots{gap:12px;margin:2px 0 18px;display:flex}.home-week-dots span{border:1px solid var(--line);background:var(--surface);border-radius:50%;width:11px;height:11px}.home-week-dots span.has-practice{border-color:var(--accent);background:var(--accent)}.mobile-bottom-nav{display:none}.app-shell[data-theme=dark] .home-studio{border-color:var(--line);background:radial-gradient(ellipse at 50% 33%, color-mix(in srgb, var(--accent) 17%, transparent), transparent 35%), var(--surface);box-shadow:0 18px 55px #0003}.app-shell[data-theme=dark] .home-progress-grid article{background:color-mix(in srgb, var(--surface) 78%, var(--accent-soft))}@keyframes home-orb-morph{0%,79%,to{--orb-idle-spin:0deg}86%{--orb-idle-spin:180deg}93%{--orb-idle-spin:360deg}}@property --orb-idle-spin{syntax:"<angle>";inherits:true;initial-value:0deg}@keyframes home-mascot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes tutor-blink{0%,46%,49%,91%,94%,to{transform:scaleY(1)}47%,48%,92%,93%{transform:scaleY(.08)}}@keyframes home-button-shimmer{0%,78%,to{background-position:0 0}88%{background-position:100% 0}}@media (width>=761px){.page-content:not(.home-page-content):not(.home-stage-session){padding-bottom:96px}}@media (width<=760px){.sidebar{display:none}.main-area{margin-left:0;padding-bottom:90px}.topbar{min-height:63px;padding:0 16px}.topbar-actions{gap:7px}.topbar .streak-pill,.topbar .theme-switch{display:inline-flex}.page-content{padding:20px 15px 25px}.home-page-content{padding-bottom:max(150px, calc(90px + env(safe-area-inset-bottom) + 45px))}.home-studio{border-radius:25px;min-height:min(680px,100dvh - 160px);margin-top:8px;margin-bottom:12px}.home-tutor-panel,.home-progress-panel{min-height:min(680px,100dvh - 160px);padding:24px 20px 46px}.floating-tutor-bubble{right:max(18px, env(safe-area-inset-right));bottom:calc(max(12px, env(safe-area-inset-bottom)) + 78px);width:54px;height:54px}.home-mascot-wrap{width:min(280px,72vw);height:min(280px,72vw)}.mobile-bottom-nav{z-index:20;right:max(14px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));border:1px solid color-mix(in srgb, var(--line) 75%, transparent);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:23px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;min-height:66px;padding:6px 8px;display:grid;position:fixed;box-shadow:0 10px 34px #12182a26}.mobile-nav-item{min-width:0;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:5px 2px;font-size:9px;font-weight:600;display:flex}.mobile-nav-item.is-active{background:var(--accent-soft);color:var(--accent-deep)}.mobile-nav-icon{place-items:center;width:28px;height:25px;display:grid;position:relative}.mobile-nav-badge{color:#fff;background:#df4655;border-radius:999px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:8px;line-height:1;display:grid;position:absolute;top:-3px;right:-7px}.app-shell[data-theme=dark] .mobile-bottom-nav{border-color:var(--line)}}.tutor-orb-scene{perspective:none;transform-style:flat;transform:none}.tutor-orb{pointer-events:none;border-radius:0;width:77%;height:77%;box-shadow:none!important;background:0 0!important;border:0!important;animation:none!important;transform:none!important}.home-mascot-wrap .tutor-orb-scene{perspective:none;animation:15s ease-in-out infinite home-orb-morph;transform:none}.home-mascot-wrap .tutor-orb{width:100%;height:100%}.home-mascot-wrap.is-poked .tutor-orb,.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb{animation:none!important}.home-mascot-wrap .tutor-orb-scene.is-speaking:after{border-color:color-mix(in srgb, var(--home-mode-end) 72%, white);box-shadow:0 0 24px color-mix(in srgb, var(--home-mode-start) 42%, transparent)}.tutor-avatar-glow{z-index:0;background:var(--home-mode-end,#72d6d0);filter:blur(30px);opacity:.34;pointer-events:none;border-radius:50%;width:62%;height:62%;transition:opacity .4s,filter .4s;position:absolute}.tutor-orbit-ring{z-index:2;border:1.5px solid color-mix(in srgb, var(--home-mode-end,#72d6d0) 72%, white);width:86%;height:34%;box-shadow:0 0 9px color-mix(in srgb, var(--home-mode-end,#72d6d0) 52%, transparent);pointer-events:none;border-radius:50%;animation:7s ease-in-out infinite tutor-orbit-drift;position:absolute;transform:rotate(-24deg)}.tutor-orbit-ring-two{border-color:color-mix(in srgb, var(--home-mode-start,#1d8b94) 66%, white);width:94%;height:27%;box-shadow:0 0 10px color-mix(in srgb, var(--home-mode-start,#1d8b94) 48%, transparent);animation-direction:reverse;animation-delay:-3.5s;transform:rotate(28deg)}.tutor-orb-scene.is-speaking .tutor-avatar-glow,.tutor-orb-scene.is-listening .tutor-avatar-glow{filter:blur(36px);opacity:.58}.tutor-orb-scene.is-speaking .tutor-orbit-ring,.tutor-orb-scene.is-listening .tutor-orbit-ring{box-shadow:0 0 15px color-mix(in srgb, var(--home-mode-end,#72d6d0) 72%, transparent)}@keyframes tutor-orbit-drift{0%,to{scale:1 .9}50%{scale:1 1.08}}@media (prefers-reduced-motion:reduce){.tutor-orbit-ring{animation:none}.tutor-avatar-glow,.tutor-orbit-ring{transition:none}.home-mascot-wrap .tutor-orb,.home-mascot-wrap,.home-mascot-wrap .tutor-orb:after,.tutor-orb-eyes,.home-start-button{animation:none}.home-mode-swatch,.home-start-button,.home-pagination button{transition:none}}@media (width<=1080px){.sidebar{width:215px;padding-left:13px;padding-right:13px}.main-area{margin-left:215px}.page-content{padding-left:29px;padding-right:29px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card{min-height:128px}.lesson-art{opacity:.83;width:34%}.art-card-front{right:62px}.art-card-back{right:34px}.sun-shape{right:19px}}@media (width<=760px){.app-shell{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.sidebar{width:auto;height:calc(61px + env(safe-area-inset-bottom));padding:4px max(6px, env(safe-area-inset-left)) calc(4px + env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-right));border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffefaf7;border-right:0;flex-direction:row;justify-content:center;align-items:center;inset:auto 0 0}.brand,.sidebar-label,.sidebar-bottom{display:none}.main-nav{justify-content:space-around;gap:1px;width:100%;max-width:560px;display:flex}.nav-item{white-space:nowrap;border-radius:9px;flex-direction:column;justify-content:center;gap:3px;width:16.666%;min-width:0;min-height:48px;padding:3px 2px;font-size:clamp(7px,2vw,9px)}.nav-new{display:none}.nav-item svg{width:18px;height:18px}.main-area{margin-left:0}.topbar{height:57px;padding:0 20px}.topbar-actions{gap:10px}.streak-pill{padding:6px 8px;font-size:9px}.theme-switch{justify-content:center;width:34px;padding:0}.theme-switch span{display:none}.page-content{padding:26px 18px 24px}.welcome-row{flex-direction:column;align-items:flex-start;gap:19px}.welcome-row h1,.subpage-intro h1{font-size:29px}.mobile-break{display:none}.week-streak{box-sizing:border-box;width:100%}.streak-days{justify-content:space-between;max-width:300px}.learning-card{min-height:242px;margin-top:20px;padding:21px 19px}.onboarding-card{gap:12px;margin-top:16px;padding:16px}.onboarding-language-options{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding-finish{flex-direction:column;align-items:stretch}.learning-copy{max-width:70%}.learning-card h2{max-width:190px;font-size:21px}.learning-card p{max-width:190px;font-size:10px;line-height:1.5}.lesson-art{opacity:.7;transform-origin:100%;width:47%;right:-48px;transform:scale(.78)}.lesson-kicker{flex-wrap:wrap;max-width:220px;font-size:8px}.stats-grid{gap:9px;margin-top:11px}.stat-card{min-height:126px;padding:12px}.lower-grid{grid-template-columns:1fr;gap:10px;margin-top:13px}.panel{padding:15px}.page-footer{gap:9px;font-size:8px}.subpage-content{padding-top:33px}.translator-card{padding:14px}.language-selectors{grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:7px}.language-select-control{gap:5px;padding:0 7px}.language-select-control select{font-size:9px}.translation-side{min-height:166px;padding:12px 10px 8px}.translation-side textarea{font-size:13px}.translation-placeholder{font-size:10px}.translated-text{font-size:18px}.translate-submit-row{align-items:flex-start}.demo-disclaimer{max-width:60%;font-size:8px}.translate-button{min-width:93px;min-height:35px}.example-list{gap:6px}.example-chip{padding:8px 9px;font-size:9px}.tutor-layout{grid-template-columns:1fr}.tutor-side-card{order:2}.progress-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.progress-stat{min-width:0;min-height:106px;padding:11px}.progress-stat:last-child{grid-column:1/-1}.progress-stat>strong{font-size:22px}.progress-stat .stat-label{font-size:8px;line-height:1.4}.skill-progress{grid-template-columns:1fr;gap:6px}.history-session summary{flex-direction:column;align-items:flex-start;gap:5px}.data-action-row>button{flex:145px}.memory-add-form{flex-direction:column;align-items:stretch}.voice-panel{padding-left:14px;padding-right:14px}.voice-main-button{width:min(64vw,250px);height:min(64vw,250px)}.voice-avatar-orbit{width:min(72vw,276px);height:min(72vw,276px)}.tutor-composer textarea{font-size:16px}.vocabulary-card{padding:13px}.vocab-table-heading,.vocab-row{grid-template-columns:1.25fr 1fr 32px}.vocab-table-heading>:nth-child(3),.vocab-row>.tag{display:none}.vocab-word{gap:6px}.vocab-word>span:last-child{font-size:8px}.word-badge{width:34px;height:33px}.settings-card{padding:0 13px}.setting-row{gap:8px;min-height:75px}.setting-row small{max-width:205px;line-height:1.4}.settings-select{width:135px}.settings-theme-switch{gap:5px;padding:7px;font-size:8px}.privacy-pill,.setting-row>.level-chip{flex:none}}@media (width<=370px){.breadcrumb{font-size:9px}.page-content,.topbar{padding-left:14px;padding-right:14px}.nav-item{min-height:46px;font-size:7px}.nav-item svg{width:16px;height:16px}.learning-copy{max-width:78%}.lesson-art{opacity:.48;right:-69px}.language-select-control>span:first-child{display:none}.settings-select{width:117px}}@media (width<=430px){.onboarding-language-options{grid-template-columns:1fr}.topbar{padding-left:11px;padding-right:11px}.breadcrumb{overflow-wrap:anywhere;white-space:normal;max-width:58%}.topbar-actions{gap:6px}.streak-pill{font-size:8px}.nav-item{font-size:7px}.nav-item svg{width:17px;height:17px}.skill-progress>div:first-child{align-items:flex-start}.skill-progress small{text-align:right}}.lesson-voice-link{color:var(--text-strong);cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:12px;padding:4px 0;font-size:12px;font-weight:600;display:flex}.lesson-voice-link:hover,.lesson-skip-button:hover{color:var(--accent-deep)}.lesson-player{max-width:1380px}.lesson-player-topline,.lesson-action-row,.lesson-navigation,.lesson-navigation-secondary,.lesson-response-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.lesson-player-topline{margin-bottom:17px}.lesson-save-indicator{color:var(--text-muted);font-size:11px}.lesson-preview-warning,.lesson-storage-error{color:#76501c;background:#fff8e9;border:1px solid #efd4a7;border-radius:11px;align-items:flex-start;gap:9px;padding:12px 14px;font-size:12px;line-height:1.55;display:flex}.lesson-preview-warning{flex-direction:column;gap:2px}.lesson-preview-warning strong{font-size:12px}.lesson-storage-error{color:#8f3341;background:#fff0f2;border-color:#e2f4f0}.lesson-session-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin:26px 0 23px;display:flex}.lesson-session-heading h1{color:var(--text-strong);font-family:var(--display);letter-spacing:-1.5px;margin:8px 0;font-size:clamp(28px,3vw,39px)}.lesson-session-heading>div>p:last-child{max-width:650px;color:var(--text-muted);margin:0;font-size:13px;line-height:1.6}.lesson-duration{border:1px solid var(--line);color:var(--text-muted);border-radius:20px;flex:none;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:inline-flex}.lesson-stage-list{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-bottom:18px;display:grid}.lesson-stage{border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--text-muted);border-radius:10px;align-items:center;gap:8px;padding:9px 10px;display:flex}.lesson-stage.is-current{border-color:var(--accent-line);background:var(--accent-soft);color:var(--text-strong)}.lesson-stage.is-complete{color:var(--text-main)}.lesson-stage-number{background:var(--surface-soft);border-radius:50%;flex:none;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.lesson-stage.is-current .lesson-stage-number{background:var(--accent);color:#fff}.lesson-stage-label{text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.lesson-session-grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr);align-items:start;gap:17px;display:grid}.lesson-stage-panel,.lesson-whiteboard,.lesson-complete-card{border:1px solid var(--line);background:var(--surface);border-radius:15px;box-shadow:0 8px 24px #10686f09}.lesson-stage-panel{min-height:390px;padding:24px}.lesson-stage-panel-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.lesson-stage-kicker,.lesson-card-kind,.lesson-card-example>span,.lesson-roleplay-brief>span,.lesson-board-note>span,.lesson-whiteboard-heading>div>span{color:var(--text-muted);letter-spacing:1px;font-size:9px;font-weight:700}.lesson-stage-panel-heading h2{color:var(--text-strong);font-family:var(--display);letter-spacing:-.5px;margin:7px 0 0;font-size:22px}.lesson-stage-time{background:var(--surface-soft);color:var(--text-muted);white-space:nowrap;border-radius:15px;padding:6px 8px;font-size:10px}.lesson-stage-description,.lesson-recap p,.lesson-save-copy p{color:var(--text-muted);font-size:12px;line-height:1.65}.lesson-stage-description{margin:11px 0 19px}.lesson-warmup-prompt,.lesson-roleplay-brief,.lesson-board-note{border:1px solid var(--line);background:var(--surface-soft);border-radius:11px;padding:14px}.lesson-warmup-prompt{align-items:flex-start;gap:10px;margin-bottom:17px;display:flex}.lesson-ira-mark{color:#fff;background:linear-gradient(140deg,#4fb8b4,#98d8d0);border-radius:9px;flex:none;place-items:center;width:29px;height:29px;font-weight:700;display:grid}.lesson-warmup-prompt p,.lesson-roleplay-brief p,.lesson-board-note p{color:var(--text-main);margin:0;font-size:12px;line-height:1.6}.lesson-roleplay-brief{gap:6px;margin-bottom:14px;display:grid}.lesson-roleplay-brief strong,.lesson-board-note strong{color:var(--text-strong);font-size:14px}.lesson-turns{gap:9px;max-height:205px;margin:13px 0;display:grid;overflow:auto}.lesson-turn{background:var(--surface-soft);max-width:90%;color:var(--text-main);border-radius:10px;gap:4px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5;display:grid}.lesson-turn.is-learner{background:var(--accent-soft);justify-self:end}.lesson-turn strong{color:var(--text-muted);letter-spacing:.8px;font-size:8px}.lesson-response-form{gap:8px;margin-top:17px;display:grid}.lesson-response-form label{color:var(--text-strong);font-size:11px;font-weight:650}.lesson-response-form textarea{resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text-main);border-radius:10px;padding:12px;font-size:12px}.session-resource-panel,.session-paused-panel{border:1px solid var(--line);background:var(--surface);color:var(--text-main);border-radius:14px;margin:12px 0;padding:16px}.session-resource-panel>p,.session-paused-panel>span{color:var(--text-muted);font-size:12px;line-height:1.55}.session-plan-list,.session-notes-list{color:var(--text-main);gap:8px;padding-left:22px;font-size:12px;display:grid}.session-plan-list li::marker{color:var(--accent-deep);font-weight:700}.session-notes-list li{border-bottom:1px solid var(--line);gap:3px;padding:9px 0;display:grid}.session-notes-list small,.session-resource-panel>small{color:var(--text-muted)}.session-paused-panel{border-color:var(--accent-line);background:var(--accent-soft);gap:8px;display:grid}.session-paused-panel>div{flex-wrap:wrap;gap:8px;display:flex}.session-paused-panel button{border:1px solid var(--accent-line);background:var(--surface);min-height:40px;color:var(--text-strong);font:inherit;cursor:pointer;border-radius:9px;padding:8px 12px}.lesson-response-footer{color:var(--text-muted);font-size:9px}.lesson-whiteboard{gap:11px;padding:18px;display:grid}.lesson-whiteboard-heading{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding-bottom:11px;display:flex}.lesson-whiteboard-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:11px;place-items:center;font-size:20px;display:grid}.lesson-whiteboard-heading>div{gap:3px;display:grid}.lesson-whiteboard-heading>div>strong{color:var(--text-strong);font-size:13px}.lesson-whiteboard-card{border:1px solid var(--line);background:var(--surface-soft);border-radius:11px;padding:14px}.lesson-whiteboard-card h3{color:var(--text-strong);margin:8px 0 5px;font-size:17px}.lesson-whiteboard-card>p,.lesson-whiteboard-card li{color:var(--text-main);font-size:11px;line-height:1.6}.lesson-card-pronunciation{margin:0;color:var(--text-muted)!important}.lesson-card-translation{margin:6px 0 12px;font-weight:650;font-size:14px!important}.lesson-card-example{border-top:1px solid var(--line);padding-top:10px}.lesson-card-example p{color:var(--text-main);margin:5px 0 0;font-size:13px}.lesson-whiteboard-card ul,.lesson-board-note ul{color:var(--text-main);gap:5px;margin:8px 0 0;padding-left:18px;font-size:11px;line-height:1.5;display:grid}.lesson-card-pattern{background:var(--surface);border-radius:8px;padding:9px}.lesson-dialogue-line{border-bottom:1px solid var(--line);grid-template-columns:16px 1fr;gap:4px 7px;padding:7px 0;display:grid}.lesson-dialogue-line strong{color:var(--text-muted);grid-row:span 3;font-size:10px}.lesson-dialogue-line span{color:var(--text-strong);font-size:14px}.lesson-dialogue-line small{color:var(--text-muted);font-size:10px}.lesson-word-blocks{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.lesson-word-blocks span{border:1px solid var(--accent-line);background:var(--surface);color:var(--text-strong);border-radius:7px;padding:7px 9px;font-size:11px}.lesson-board-note{gap:7px;display:grid}.lesson-board-disclaimer{color:var(--text-muted);margin:0;font-size:9px;line-height:1.5}.lesson-recap,.lesson-save-copy{background:var(--surface-soft);border-radius:10px;margin:18px 0;padding:12px 14px}.lesson-recap p,.lesson-save-copy p{margin:4px 0}.lesson-navigation{margin-top:15px}.lesson-navigation-secondary{justify-content:flex-start}.lesson-skip-button{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:9px 5px;font-size:11px}.lesson-complete-card{text-align:center;max-width:680px;margin:34px auto;padding:32px}.lesson-complete-icon{background:var(--accent-soft);width:48px;height:48px;color:var(--accent-deep);border-radius:50%;place-items:center;margin:0 auto 15px;font-size:22px;font-weight:700;display:grid}.lesson-complete-card h2{color:var(--text-strong);font-family:var(--display);margin:8px 0;font-size:24px}.lesson-complete-card>p:not(.eyebrow){color:var(--text-muted);font-size:12px;line-height:1.6}.lesson-action-row{justify-content:center;margin-top:20px}.app-shell[data-theme=dark] .lesson-preview-warning{color:#f3d39d;background:#382f24;border-color:#735c36}.app-shell[data-theme=dark] .lesson-storage-error{border-color:var(--accent-deep);color:#ffc6ce;background:#0a3d4a}@media (width<=900px){.lesson-stage-label{font-size:9px}.lesson-session-grid{grid-template-columns:minmax(0,1.2fr) minmax(230px,.8fr)}}@media (width<=760px){.lesson-session-heading{margin-top:19px}.lesson-stage-list{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-session-grid{grid-template-columns:1fr}.lesson-stage-panel{min-height:0;padding:18px}.lesson-navigation,.lesson-navigation-secondary{align-items:stretch}.lesson-navigation{flex-direction:column-reverse}.lesson-navigation>.button{justify-content:center}.lesson-navigation-secondary{justify-content:space-between}}@media (width<=430px){.lesson-player-topline,.lesson-response-footer{flex-direction:column;align-items:flex-start}.lesson-save-indicator{padding-left:3px}.lesson-stage{gap:5px;padding:8px 6px}.lesson-stage-label{font-size:8px}.lesson-stage-number{width:19px;height:19px}.lesson-session-heading{gap:8px}.lesson-duration{padding:6px 7px;font-size:9px}.lesson-preview-warning{font-size:11px}}.exercise-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:13px;margin-top:16px;padding:15px;display:grid}.exercise-card-topline{color:var(--text-muted);letter-spacing:.85px;justify-content:space-between;align-items:center;gap:8px;font-size:8px;font-weight:700;display:flex}.exercise-type-label{text-transform:uppercase}.exercise-card>h3{color:var(--text-strong);font-family:var(--display);margin:0;font-size:16px;line-height:1.45}.exercise-listen-control{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.exercise-listen-control>span,.exercise-speech-notice{color:var(--text-muted);font-size:9px}.exercise-speech-notice{margin:-7px 0 0;line-height:1.5}.exercise-answer-form{gap:13px;display:grid}.exercise-choices{border:0;gap:7px;min-width:0;margin:0;padding:0;display:grid}.exercise-choices legend{color:var(--text-muted);margin-bottom:8px;font-size:10px;font-weight:600}.exercise-choice{border:1px solid var(--line);background:var(--surface);color:var(--text-main);cursor:pointer;border-radius:9px;align-items:center;gap:9px;padding:10px 11px;font-size:11px;display:flex}.exercise-choice.is-selected{border-color:var(--accent);background:var(--accent-soft)}.exercise-choice input{accent-color:var(--accent)}.exercise-text-answer{color:var(--text-muted);gap:7px;font-size:10px;font-weight:600;display:grid}.exercise-text-answer input,.exercise-text-answer textarea,.exercise-match-row select{border:1px solid var(--line);background:var(--surface);min-height:39px;color:var(--text-main);border-radius:9px;padding:9px 11px;font-size:12px}.exercise-text-answer input{width:100%}.exercise-text-answer textarea{resize:vertical;width:100%;min-height:92px;font:inherit;line-height:1.6}.exercise-reading-passage{border-left:3px solid var(--accent);background:var(--surface-soft);color:var(--text-strong);border-radius:7px;margin:0;padding:13px 15px;font-size:16px;line-height:1.8}.exercise-writing-review{color:var(--text-main);gap:10px;font-size:11px;line-height:1.55;display:grid}.exercise-writing-review>p{margin:0}.exercise-writing-draft{white-space:pre-wrap;font-size:16px;line-height:1.8}.exercise-writing-review fieldset{border:1px solid var(--line);border-radius:9px;gap:8px;margin:0;padding:10px;display:grid}.exercise-writing-review fieldset label{align-items:flex-start;gap:8px;display:flex}.exercise-writing-review fieldset input{accent-color:var(--accent);margin:2px 0 0}.exercise-writing-review details>summary{width:fit-content;color:var(--accent-deep);cursor:pointer}.exercise-writing-note{color:var(--text-muted)}.exercise-sentence-builder{gap:10px;display:grid}.exercise-built-sentence{border:1px dashed var(--accent-line);background:var(--surface-soft);min-height:48px;color:var(--text-strong);border-radius:9px;padding:12px;font-size:17px}.exercise-built-sentence>span{color:var(--text-muted);font-size:10px}.exercise-word-blocks{flex-wrap:wrap;gap:7px;display:flex}.exercise-word-blocks button{border:1px solid var(--accent-line);background:var(--surface);color:var(--text-strong);cursor:pointer;border-radius:8px;padding:8px 11px;font-size:13px}.exercise-word-blocks button:disabled{opacity:.42;cursor:default}.exercise-match-list{gap:8px;display:grid}.exercise-match-row{color:var(--text-strong);grid-template-columns:minmax(45px,.5fr) 16px minmax(100px,1fr);align-items:center;gap:7px;font-size:14px;display:grid}.exercise-match-row select{width:100%;font-size:10px}.exercise-form-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.exercise-text-action{width:fit-content;color:var(--accent-deep);cursor:pointer;background:0 0;border:0;padding:3px 0;font-size:10px;font-weight:650}.exercise-hint{color:var(--text-main);margin:0;font-size:10px;line-height:1.5}.exercise-interaction-error{color:#b13950;margin:0;font-size:10px}.exercise-feedback{border:1px solid var(--line);background:var(--surface-soft);color:var(--text-main);border-radius:10px;gap:8px;padding:12px;font-size:11px;line-height:1.55;display:grid}.exercise-feedback.is-correct{border-color:var(--text-muted);background:#e2f4f0}.exercise-feedback.is-incorrect{background:#fff5f6;border-color:#ecc1c8}.exercise-feedback>strong{color:var(--text-strong)}.exercise-feedback>p{margin:0}.lesson-practice-complete{color:var(--text-main);background:#e2f4f0;border:1px solid #98d8d0;border-radius:10px;margin-top:17px;padding:15px;font-size:11px;line-height:1.6}.lesson-practice-complete strong{color:var(--text-strong)}.lesson-practice-complete p{margin:4px 0 0}.app-shell[data-theme=dark] .exercise-feedback.is-correct,.app-shell[data-theme=dark] .lesson-practice-complete,.app-shell[data-theme=dark] .exercise-feedback.is-incorrect{border-color:var(--accent-deep);background:#0a3d4a}.review-deck-page{gap:18px;display:grid}.review-preview-warning{color:#6e5a28;background:#fff9e9;border:1px solid #ead6a1;border-radius:11px;gap:4px;padding:12px 14px;font-size:10px;line-height:1.55;display:grid}.review-preview-warning strong{color:#594718;font-size:11px}.review-overview{border:1px solid var(--line);background:var(--surface);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:15px;display:grid}.review-overview article{gap:5px;display:grid}.review-overview article span,.review-overview>p{color:var(--text-muted);font-size:10px}.review-overview article strong{color:var(--text-strong);font-family:var(--display);font-size:22px}.review-overview>p{grid-column:1/-1;margin:2px 0 0;line-height:1.5}.review-session{gap:13px;display:grid}.review-session-heading,.review-library-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-session-heading>span,.review-library-heading .eyebrow{color:var(--text-muted);letter-spacing:.8px;font-size:9px;font-weight:700}.review-session-heading>strong,.review-library-heading>span{color:var(--text-muted);font-size:10px;font-weight:600}.review-mode-list{flex-wrap:wrap;gap:7px;display:flex}.review-mode-button{border:1px solid var(--line);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:8px 11px;font-size:10px}.review-mode-button.is-active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.review-prompt-card{border:1px solid var(--line);background:var(--surface);border-radius:15px;justify-items:start;gap:12px;padding:20px;display:grid}.review-card-kicker{color:var(--text-muted);letter-spacing:.75px;font-size:9px;font-weight:700}.review-word{color:var(--text-strong);font-family:var(--display);font-size:clamp(32px,7vw,46px)}.review-pronunciation{color:var(--text-muted);font-size:12px}.review-word-prompt{color:var(--text-strong);font-family:var(--display);font-size:22px}.review-answer{color:var(--text-main);gap:6px;font-size:13px;display:grid}.review-answer p{color:var(--text-muted);margin:0;font-size:15px}.review-answer-form{width:100%;max-width:420px;color:var(--text-muted);gap:8px;font-size:10px;font-weight:600;display:grid}.review-answer-form input,.review-answer-form textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:40px;color:var(--text-main);font:inherit;border-radius:9px;padding:10px 12px;font-size:13px}.review-result{color:var(--text-main);margin:0;font-size:11px;line-height:1.5}.review-result.is-correct{color:#10686f}.review-result.is-incorrect,.review-error{color:#b13950}.app-shell[data-theme=dark] .exercise-interaction-error,.app-shell[data-theme=dark] .review-result.is-incorrect,.app-shell[data-theme=dark] .review-error{color:#ffabb7}.pronunciation-feedback{border:1px solid var(--line);background:var(--surface-soft);width:100%;color:var(--text-main);border-radius:10px;gap:5px;padding:12px;font-size:11px;line-height:1.5;display:grid}.pronunciation-feedback.is-understood{border-color:var(--text-muted)}.pronunciation-feedback.is-try-again{border-color:#ecc1c8}.pronunciation-feedback>strong{color:var(--text-strong);font-size:12px}.pronunciation-feedback p{margin:0}.pronunciation-audio-compare{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;margin-top:4px;padding-top:10px;display:grid}.pronunciation-audio-compare>div{align-content:start;justify-items:start;gap:7px;display:grid}.pronunciation-audio-compare strong{color:var(--text-strong);font-size:10px}.pronunciation-audio-compare audio{width:100%;min-width:0;height:34px}.pronunciation-feedback mark{color:var(--accent-deep);background:#ffe4e8;border-radius:4px;padding:1px 4px}.review-error{margin:0;font-size:10px;line-height:1.5}.review-privacy-note{color:var(--text-muted);margin:0;font-size:9px;line-height:1.5}.review-rating{border-top:1px solid var(--line);gap:8px;width:100%;margin-top:2px;padding-top:12px;display:grid}.review-rating>span{color:var(--text-muted);font-size:10px}.review-rating>div{flex-wrap:wrap;gap:7px;display:flex}.review-rating-button{border:1px solid var(--line);background:var(--surface);min-width:66px;color:var(--text-main);cursor:pointer;border-radius:8px;padding:8px 10px;font-size:10px}.review-rating-button.rating-again{color:var(--accent-deep);border-color:#ecc1c8}.review-rating-button.rating-easy{border-color:var(--text-muted);color:#10686f}.review-empty{border:1px solid var(--line);background:var(--surface);color:var(--text-main);border-radius:12px;gap:5px;padding:15px;display:grid}.review-empty strong{color:var(--text-strong);font-size:12px}.review-empty p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.5}.warmup-review{margin-top:14px}.review-library{gap:10px;margin-top:2px;display:grid}.review-library-heading{padding:0 2px 4px}.review-library-heading .eyebrow{margin:0 0 4px}.review-library-heading h2{color:var(--text-strong);font-family:var(--display);margin:0;font-size:17px}.review-library-row{border:1px solid var(--line);background:var(--surface);color:var(--text-main);border-radius:10px;grid-template-columns:minmax(90px,.7fr) minmax(100px,1.2fr) auto;align-items:center;gap:12px;padding:10px 12px;font-size:11px;display:grid}.review-library-row>div{gap:3px;display:grid}.review-library-row>div strong{color:var(--text-strong);font-size:16px}.review-library-row>div span{color:var(--text-muted);font-size:9px}.review-state{background:var(--surface-soft);color:var(--text-muted);text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:8px}.review-state.state-mastered{color:#10686f;background:#e2f4f0}.review-preview-warning+.review-error{margin-top:-8px}.app-shell[data-theme=dark] .review-preview-warning{color:#d9c78e;background:#302b1d;border-color:#66572f}.app-shell[data-theme=dark] .review-preview-warning strong{color:#f0dfa5}.app-shell[data-theme=dark] .review-result.is-correct,.app-shell[data-theme=dark] .review-state.state-mastered{color:#8fd4b1}.app-shell[data-theme=dark] .review-state.state-mastered{background:#0a3d4a}@media (width<=560px){.review-overview{padding:12px}.review-prompt-card{padding:15px}.review-library-row{grid-template-columns:minmax(65px,.6fr) minmax(80px,1fr) auto;gap:7px;padding:9px;font-size:10px}}.conversation-style-control{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent-deep);border-radius:999px;align-items:center;gap:5px;padding:4px 7px;display:inline-flex}.conversation-style-control>span{letter-spacing:.6px;font-size:7px;font-weight:750}.conversation-style-control select{appearance:none;max-width:80px;color:inherit;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:650}.app-shell[data-theme=dark] .conversation-style-control{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}@media (width<=1080px){.home-studio{margin-left:auto;margin-right:auto}}@media (width<=760px){.main-area{margin-left:0}.page-content{padding-left:15px;padding-right:15px}.conversation-style-control{order:3}}@media (prefers-reduced-motion:reduce){.floating-tutor-bubble,.floating-tutor-bubble:before,.voice-avatar-orbit:before{animation:none!important}.home-mascot-wrap .tutor-orb,.home-mascot-wrap.is-poked .tutor-orb,.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb,.home-mascot-wrap.is-poked .tutor-orb:after,.home-mascot-wrap .tutor-orb-scene.is-speaking .tutor-orb:after,.home-mascot-wrap .tutor-orb-scene,.tutor-orb-eyes,.home-start-button{transition:none!important;animation:none!important}}@media (width>=761px) and (width<=800px){.home-idle-shell .sidebar,.home-idle-shell>.main-area>.topbar{display:none}.home-idle-shell .main-area{min-height:100dvh;margin-left:0}.home-idle-shell .home-page-content{flex-direction:column;width:100%;height:100dvh;min-height:100dvh;padding:23px 22px 26px 14px;display:flex}.home-idle-shell .home-studio{border-radius:28px;flex:auto;width:100%;height:100%;min-height:0;margin:0}.home-idle-shell .home-studio .home-tutor-panel{height:100%;min-height:0;padding:31px clamp(20px,5vw,52px) 34px}.home-idle-shell .home-tutor-panel h1{margin-top:20px;margin-bottom:2px}.home-idle-shell .home-stage-toolbar{justify-content:space-between;width:calc(100% - 24px);margin-top:7px}.home-idle-shell .home-stage-toolbar .online-dot{margin-right:auto}.home-idle-shell .home-mascot-wrap{width:min(300px,40vw);height:min(300px,40vw);margin-top:18px}.home-idle-shell .home-start-button{width:min(100%,400px);min-height:52px;margin-top:0;margin-bottom:24px}.home-idle-shell .home-tutor-choices{gap:10px}.home-idle-shell .home-mode-choices{width:min(100%,340px);margin:0 auto}.home-idle-shell .home-mode-swatch{width:40px;height:28px}.home-idle-shell .home-mode-description{min-height:16px;margin:0;font-size:10px}.home-idle-shell .home-tutor-choices .session-tutor-shortcuts{margin-top:5px}.home-idle-shell .session-tutor-shortcuts{gap:9px;width:min(100%,400px);margin-left:auto;margin-right:auto}.home-idle-shell .session-tutor-shortcuts button{min-height:44px}.home-idle-shell .home-free-chat-shortcut{border:1px solid var(--accent-line);background:var(--surface);color:var(--accent-deep);font:inherit;cursor:pointer;border-radius:999px;margin:8px auto 0;padding:7px 12px;font-size:11px;display:block}}@media (width<=760px){.home-session-shell{background:var(--surface);min-height:100dvh;padding-bottom:0;overflow:hidden}.home-session-shell .sidebar,.home-session-shell .mobile-bottom-nav{display:none}.home-session-shell .main-area{height:100dvh;min-height:100dvh;margin:0;padding:0;overflow:hidden}.home-session-shell .topbar{z-index:60;background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:0;height:58px;min-height:58px;padding:0 18px;position:relative}.home-session-shell .breadcrumb{font-size:0}.home-session-shell .session-mobile-brand{color:var(--text-strong);font-family:var(--display);letter-spacing:-1px;font-size:22px;font-weight:800;display:inline}.home-session-shell .topbar-actions{gap:8px}.home-session-shell .topbar .streak-pill{display:none}.home-session-shell .topbar .theme-switch{border:1px solid var(--line);background:var(--surface);width:42px;height:42px;color:var(--accent-deep);border-radius:14px;justify-content:center;padding:0}.home-session-shell .topbar .theme-switch span,.home-session-shell .topbar .avatar-small{display:none}.home-session-shell .home-stage-session{width:100%;height:calc(100dvh - 58px);min-height:0;margin:0;padding:0;overflow:hidden}.home-session-shell .home-stage-session .tutor-layout,.home-session-shell .home-stage-session .tutor-card{background:var(--surface);width:100%;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0;padding:0}.home-session-shell .tutor-topline,.home-session-shell .session-tutor-quick-tools,.home-session-shell .session-paused-panel,.home-session-shell .session-resource-panel,.home-session-shell .tutor-side-card{display:none}.home-session-shell .tutor-topline{display:contents}.home-session-shell .tutor-topline>:not(.session-menu){display:none}.home-session-shell .topbar-actions .session-menu{z-index:65;margin:0;position:relative}.home-session-shell .topbar-actions .session-menu summary{border:1px solid var(--line);background:var(--surface);min-height:42px;color:var(--text-main);border-radius:14px;gap:8px;padding:0 13px;font-size:12px;font-weight:600}.home-session-shell .topbar-actions .session-menu summary:before{content:"";background:linear-gradient(currentColor 0 2px,#0000 2px 5px,currentColor 5px 7px,#0000 7px 10px,currentColor 10px 12px);flex:0 0 14px;width:14px;height:12px}.home-session-shell .topbar-actions .session-menu summary:after{display:none}.home-session-shell .voice-panel{background:radial-gradient(ellipse at 50% 62%, color-mix(in srgb, var(--accent) 11%, transparent), transparent 43%), var(--surface);border:0;border-radius:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:relative;overflow:hidden}.home-session-shell .voice-panel-heading,.home-session-shell .voice-prompt,.home-session-shell .strict-safe-word{display:none}.home-session-shell .topbar-actions .session-menu-actions{z-index:70;border-radius:15px;min-width:205px;padding:7px;top:calc(100% + 9px);right:0;box-shadow:0 14px 36px #17353b29}.home-session-shell .voice-controls{width:min(90vw,350px);margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home-session-shell .voice-avatar-orbit{width:100%;height:auto;margin:0}.home-session-shell .voice-avatar-orbit:before{inset:16%}.home-session-shell .voice-main-button{width:min(86vw,340px);height:min(86vw,340px)}.home-session-shell .voice-main-label{display:none}.home-session-shell .mobile-tutor-thought{z-index:3;border:1px solid color-mix(in srgb, var(--accent) 9%, var(--surface));background:var(--surface);width:58px;height:42px;box-shadow:0 7px 22px color-mix(in srgb, var(--text-strong) 8%, transparent);border-radius:50%;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;top:calc(50% - min(44vw,170px));right:calc(50% - min(41vw,158px))}.home-session-shell .mobile-tutor-thought:after{background:var(--surface);content:"";border-radius:50%;width:10px;height:10px;position:absolute;bottom:-4px;left:8px}.home-session-shell .mobile-tutor-thought span{background:var(--accent);opacity:.55;border-radius:50%;width:5px;height:5px;animation:1.25s ease-in-out infinite mobile-thought-pulse}.home-session-shell .mobile-tutor-thought span:nth-child(2){animation-delay:.15s}.home-session-shell .mobile-tutor-thought span:nth-child(3){animation-delay:.3s}.home-session-shell .voice-press-button{z-index:6;bottom:calc(84px + env(safe-area-inset-bottom));width:min(62vw,240px);min-height:48px;box-shadow:0 8px 22px color-mix(in srgb, var(--accent) 18%, transparent);position:absolute;left:50%;transform:translate(-50%)}.home-session-shell .voice-press-button:hover,.home-session-shell .voice-press-button:active{transform:translate(-50%)}.home-session-shell .voice-live-transcript{z-index:4;right:18px;bottom:calc(142px + env(safe-area-inset-bottom));border:1px solid var(--accent-line);background:color-mix(in srgb, var(--surface) 92%, transparent);max-height:72px;color:var(--text-main);border-radius:15px;margin:0;padding:9px 12px;font-size:12px;line-height:1.4;position:absolute;left:18px;overflow:auto}.home-session-shell .voice-error-actions,.home-session-shell .voice-support-note,.home-session-shell .voice-tutor-error{z-index:8;right:16px;bottom:calc(140px + env(safe-area-inset-bottom));max-height:118px;margin:0;position:absolute;left:16px;overflow:auto}.home-session-shell .speech-capture-line{z-index:8;right:16px;bottom:calc(140px + env(safe-area-inset-bottom));background:var(--surface);border-radius:15px;margin:0;padding:9px;position:absolute;left:16px}.home-session-shell .mobile-lesson-dock{z-index:50;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));border:1px solid color-mix(in srgb, var(--line) 78%, transparent);background:color-mix(in srgb, var(--surface) 94%, transparent);width:min(100% - 32px,350px);min-height:58px;box-shadow:0 9px 28px color-mix(in srgb, var(--text-strong) 15%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:999px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:8px;margin:0 auto;padding:6px 9px;display:grid;position:fixed;left:16px}.home-session-shell .mobile-lesson-dock button{background:var(--surface-soft);width:44px;height:44px;color:var(--accent-deep);cursor:pointer;border:0;border-radius:50%;justify-self:center;place-items:center;padding:0;transition:transform .15s,background-color .18s;display:grid}.home-session-shell .mobile-lesson-dock button:active{transform:scale(.93)}.home-session-shell .mobile-lesson-dock button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.home-session-shell .mobile-lesson-dock button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-deep)}.home-session-shell .mobile-lesson-dock .mobile-lesson-exit{color:#fff;background:#d93648}.home-session-shell .mobile-lesson-dock button:disabled{opacity:.5;cursor:not-allowed}.home-session-shell .text-practice{z-index:40;right:12px;bottom:calc(88px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface);max-height:55dvh;box-shadow:0 12px 34px color-mix(in srgb, var(--text-strong) 16%, transparent);border-radius:20px;margin:0;padding:0;position:fixed;left:12px;overflow:auto}.home-session-shell .text-practice:not([open]){display:none}.home-session-shell .text-practice>summary{background:var(--surface);padding:14px 16px;position:sticky;top:0}.home-session-shell .text-practice-content{padding:0 12px 12px}@keyframes mobile-thought-pulse{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}}.home-mascot-wrap .tutor-orb-scene.is-speaking{animation:none}.tutor-orb-scene.is-speaking .tutor-avatar-glow,.tutor-orb-scene.is-listening .tutor-avatar-glow{opacity:calc(.28 + var(--voice-level,0) * .62);transform:scale(calc(.92 + var(--voice-level,0) * .18))}.tutor-orb-scene.is-speaking .tutor-orbit-ring,.tutor-orb-scene.is-listening .tutor-orbit-ring{opacity:calc(.3 + var(--voice-level,0) * .6)}@media (prefers-reduced-motion:reduce){.tutor-orb-scene.is-speaking .tutor-avatar-glow,.tutor-orb-scene.is-listening .tutor-avatar-glow{transition:opacity .12s linear}}@media (width<=760px){.home-idle-shell{height:100dvh;min-height:100dvh;overflow:hidden}.home-idle-shell .main-area{flex-direction:column;height:100dvh;min-height:100dvh;padding-bottom:0;display:flex;overflow:hidden}.home-idle-shell .topbar{z-index:60;flex:0 0 58px;height:58px;min-height:58px;padding:0 12px;overflow:visible}.home-idle-shell .topbar .breadcrumb{font-size:0}.home-idle-shell .topbar .breadcrumb strong{font-size:12px}.home-idle-shell .topbar .streak-pill{border-radius:50%;justify-content:center;width:35px;height:35px;padding:0;font-size:0}.home-idle-shell .topbar .streak-pill span{font-size:14px}.home-idle-shell .topbar-actions .session-menu-actions{z-index:70}.home-idle-shell .home-page-content{width:100%;height:auto;min-height:0;padding:8px 12px calc(80px + env(safe-area-inset-bottom));flex-direction:column;flex:auto;display:flex;overflow:hidden}.home-idle-shell .home-studio{border-radius:20px;flex:auto;width:100%;height:100%;min-height:0;margin:0;overflow:hidden}.home-idle-shell .home-studio .home-tutor-panel{overscroll-behavior:contain;height:100%;min-height:0;padding:12px 14px 14px;overflow-y:auto}.home-idle-shell .home-chapter-label{margin-top:0;font-size:10px}.home-idle-shell .home-tutor-panel h1{margin:7px 0 3px;font-size:clamp(21px,6vw,27px)}.home-idle-shell .home-tutor-prompt{font-size:11px;line-height:1.4}.home-idle-shell .home-setup-required{gap:7px 10px;margin-top:8px;padding:8px 10px}.home-idle-shell .home-setup-required p{font-size:11px}.home-idle-shell .home-stage-toolbar{width:100%;margin-top:8px}.home-idle-shell .home-mascot-wrap{flex:none;width:min(42vw,190px,23dvh);height:min(42vw,190px,23dvh);margin:10px 0}.home-idle-shell .home-start-button{width:min(100%,400px);min-height:48px;margin:0}.home-idle-shell .home-language-warning{margin-top:5px;font-size:10px}.home-idle-shell .home-tutor-choices{gap:5px;margin-top:7px}.home-idle-shell .home-mode-choices{width:min(100%,340px);margin:0 auto}.home-idle-shell .home-mode-swatch{width:36px;height:25px}.home-idle-shell .home-mode-description{min-height:0;margin:0;font-size:10px}.home-idle-shell .home-tutor-choices .session-tutor-shortcuts{margin-top:4px}.home-idle-shell .session-tutor-shortcuts{gap:7px}.home-idle-shell .session-tutor-shortcuts button{min-height:40px}.home-idle-shell .home-free-chat-shortcut{margin-top:6px}}
