@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#2e4035;background:#f7f8f4;font-synthesis:none;--green: #405e49;--muted: #879183;--line: #e5e9df;--pale: #eff3e7;--ink: #2e4035}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;transition:background .18s,transform .18s}button:hover:not(:disabled){filter:brightness(.97)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #9bbd72;outline-offset:4px}button svg{flex-shrink:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h2{font-size:18px;font-weight:600;letter-spacing:-.5px}p{line-height:1.7}small{font-size:11px}.brand{display:flex;align-items:center;gap:10px;letter-spacing:-1px;font-size:21px;font-family:Manrope,Arial,sans-serif;font-weight:800}.brand span:not(.brand-mark){font-weight:400}.brand-mark{display:grid;place-items:center;width:41px;height:44px;border-radius:12px;background:#e9f0dd;color:#58724c;flex-shrink:0}.brand small{display:block;font-family:DM Sans,sans-serif;font-size:7px;letter-spacing:2px;font-weight:500;color:#9da58e;margin-top:8px}.primary,.secondary,.light-btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;border-radius:8px;font-size:12px;font-weight:600;min-height:43px;padding:12px 18px}.primary{background:var(--green);color:#fff}.secondary{color:#647d52;background:#f1f5e9;border:1px solid #e0e7d5}.light-btn{background:#e5edcc;color:#3c5631}.full{width:100%}.icon{display:inline-flex;align-items:center;justify-content:center;background:transparent;padding:7px;border-radius:6px;color:#8c9b7d}.text-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;color:#7b9065;padding:7px 0;font-size:11px}.eyebrow{font-size:9px;letter-spacing:2px;font-weight:600;color:#96a184}.muted{font-size:12px;color:#8a9580;line-height:1.8}.caption{color:#9ca58e;font-size:10px;line-height:1.8;display:block;margin:12px 0 0}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#8ca473;font-size:13px}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;width:245px;padding:35px 22px 23px;background:#fff;border-right:1px solid var(--line)}.sidebar .brand{padding-left:5px}.nav-label{font-size:8px;letter-spacing:1.8px;color:#a2aa94;margin:49px 12px 15px}nav{display:flex;flex-direction:column;gap:8px}nav button{background:transparent;color:#8b9680;padding:14px 12px;border-radius:9px;display:flex;align-items:center;gap:12px;font-size:12px;text-align:left}nav button.active{background:#edf2e4;color:#587344;font-weight:600}nav button>svg:last-child:not(:first-child){margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:45px}.side-quote{background:#f8f9f3;border:1px solid #edf0e5;border-radius:11px;padding:24px 18px;margin-bottom:24px;color:#8b9e74}.side-quote p{font-family:Georgia,serif;font-size:18px;line-height:1.5;letter-spacing:-.2px;color:#667858;margin:14px 0}.side-quote em{font-style:normal;color:#9aa986}.side-quote small{font-size:9px;color:#a4ae96}.profile{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;gap:11px}.avatar{width:33px;height:33px;background:#eeeadd;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;color:#7b805f}.profile strong{display:block;font-size:11px;font-weight:500;max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile small{display:block;font-size:9px;color:#a2ad94;margin-top:5px}.profile .icon{margin-left:auto}.workspace{margin-left:245px;width:calc(100% - 245px)}.topbar{height:75px;padding:0 44px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fdfefa;font-size:10px}.topbar>div{display:flex;align-items:center;gap:13px;color:#8e9b80}.topbar strong{font-weight:500;color:#697b5a}.ai-status{display:flex;align-items:center;gap:7px;color:#ad9b79;font-size:9px}.ai-status>span{width:5px;height:5px;border-radius:50%;background:#bdac8b}.ai-status.connected{color:#8c9f73}.ai-status.connected>span{background:#91ac6a}.content{padding:36px 44px 20px;max-width:1430px;margin:auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.heading h1{font-family:Georgia,Times New Roman,serif;font-size:39px;font-weight:400;line-height:1.12;letter-spacing:-1.3px;margin:14px 0}.heading h1 em{font-weight:400;color:#879b6e;font-style:normal}.heading p{font-size:12px;color:#8b9680;margin:14px 0 0}.date-card{display:flex;align-items:center;gap:10px;padding:15px;background:#fffef8;border:1px solid #eae9dc;border-radius:10px;color:#a5a186;font-size:10px;white-space:nowrap}.hero{display:flex;position:relative;overflow:hidden;background:#405e49;border-radius:16px;min-height:315px;color:#fff}.hero-copy{position:relative;z-index:1;width:63%;padding:32px 36px}.hero-label{display:flex;align-items:center;gap:8px;font-size:8px;letter-spacing:1.9px;color:#d1dec6}.hero-label>span{width:5px;height:5px;border-radius:50%;background:#ccdf9d}.hero h2{font-family:Georgia,serif;font-size:37px;font-weight:400;line-height:1.17;letter-spacing:-.7px;margin:18px 0 14px}.hero p{font-size:11px;line-height:1.9;color:#c2d0ba;max-width:360px}.hero .light-btn{margin:2px 0 16px}.hero-copy>small{display:flex;gap:8px;align-items:center;color:#bacaae;font-size:9px}.hero-art{position:relative;width:37%;min-width:240px}.orbit{position:absolute;border:1px solid #9bb18833;border-radius:50%;width:250px;height:250px;left:0;top:38px}.orbit:after{content:"";position:absolute;inset:25px;border:1px dashed #9bb18833;border-radius:50%}.bubble{position:absolute;box-shadow:0 14px 30px #193c2022;border-radius:12px}.hello{background:#f5f8ec;color:#53694b;width:165px;top:64px;left:-7px;padding:19px 20px;font-size:34px;font-family:Georgia,serif;transform:rotate(-8deg)}.hello:after{content:"";position:absolute;bottom:-10px;left:27px;border-top:13px solid #f5f8ec;border-right:16px solid transparent}.hello span{float:right;font-family:Arial,sans-serif;font-size:30px;color:#a2b286}.grow{background:#dce7b9;color:#556d42;width:187px;padding:22px;top:167px;left:62px;transform:rotate(7deg);font-size:17px;line-height:1.6}.grow b{font-weight:500}.grow i{position:absolute;right:17px;top:33px;font-style:normal;font-size:32px}.star{position:absolute;left:205px;top:31px;font-size:45px;color:#b6ce91}.aa{position:absolute;top:243px;left:-18px;transform:rotate(-13deg);background:#6b8656;color:#dbe6bf;border-radius:8px;padding:10px;font-family:Georgia,serif;font-size:23px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}.metrics>div{background:#fff;border:1px solid var(--line);border-radius:11px;padding:20px 18px;display:flex;align-items:center;gap:13px}.metric-icon{display:grid;place-items:center;width:42px;height:43px;flex-shrink:0;border-radius:11px;background:#eef3e5;color:#8ca56b}.metric-icon.peach{background:#fbf0e4;color:#bf9e79}.metric-icon.lavender{background:#efedf6;color:#a499b8}.metrics small{display:block;font-size:9px;color:#929d86;margin-bottom:7px}.metrics strong{font-size:25px;font-weight:500;line-height:1}.metrics em{font-size:10px;font-style:normal;color:#a0aa93}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;min-width:0}.dashboard-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.section-head h2{font-size:16px;margin:0}.tag{display:inline-block;font-size:8px;letter-spacing:.7px;background:#f1f5e8;color:#91a078;padding:6px 9px;border-radius:5px}.route-item{display:flex;width:100%;align-items:center;gap:12px;text-align:left;border-bottom:1px solid #edf0e6;background:none;padding:17px 0}.route-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:39px;border-radius:9px;background:#f5f0e5;color:#b5a07d}.color-1{background:#eff3e6;color:#94a778}.color-2{background:#f0edf6;color:#a69ab8}.route-item strong{display:block;font-size:12px;color:#5c7150;font-weight:500}.route-item small{display:block;font-size:9px;color:#9eaa90;margin-top:6px}.route-item>svg:last-child{margin-left:auto;color:#b6c0aa}.goal-strip{display:flex;gap:12px;margin-top:22px;color:#9eaf85}.goal-strip small{font-size:7px;letter-spacing:1.5px;color:#a8b198}.goal-strip p{font-size:10px;color:#778b62;margin:6px 0 0}.week-dots{display:flex;justify-content:space-between;margin:28px 0 24px}.week-dots>div{text-align:center}.week-dots span{display:grid;place-items:center;border:1px solid #eaf0df;background:#fbfcf7;color:#b7c2a8;width:30px;height:30px;font-size:10px;border-radius:50%}.week-dots span.done{background:#91ab6d;color:#fff;border-color:#91ab6d}.week-dots small{display:block;font-size:8px;color:#a6b295;margin-top:8px}.progress-track{height:5px;background:#eff3e7;overflow:hidden;border-radius:4px}.progress-track>div{height:100%;background:#a0b57d;border-radius:4px;transition:width .3s}.progress-label{display:flex;justify-content:space-between;gap:8px;color:#a4b28f;font-size:8px;margin:12px 0 23px}.progress-label strong{font-weight:500;color:#839968}.schedule-card{background:#f7f9f2;display:flex;align-items:center;gap:14px;padding:18px;border-radius:8px;color:#9db080}.schedule-card small{display:block;font-size:7px;letter-spacing:1px;color:#a8b397}.schedule-card strong{font-size:24px;color:#798f60;display:block;margin-top:7px;font-weight:500}.schedule-card strong span{font-size:10px;color:#b1bba1}.schedule-card p{font-size:8px;margin:6px 0 0;color:#a3b190}.schedule-card .icon{margin-left:auto}.skill-panel{margin-top:22px}.skill-panel>.section-head>.muted{font-size:9px}.skill-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:24px 0 5px}.skill-grid>div>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;font-size:10px;color:#8da078}.skill-grid small{font-size:8px;color:#b1bca2}footer{display:flex;justify-content:space-between;gap:10px;margin:26px 0 0;padding:15px 0;color:#b1bca2;font-size:9px}footer span:first-child{display:flex;align-items:center;gap:6px}.level-badge,.count-badge{padding:12px 16px;border:1px solid #dfe8d2;border-radius:9px;background:#f0f5e6;font-size:12px;color:#829b63}.lesson-title{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 0 22px}.lesson-title h2{font-size:23px;font-family:Georgia,serif;font-weight:400;margin:13px 0 7px}.lesson-title p{font-size:11px;color:#95a184;margin:0}.score-badge{display:flex;align-items:center;gap:8px;color:#829e62;border:1px solid #dee8cf;background:#f2f6e9;padding:12px 15px;border-radius:8px;font-size:12px;white-space:nowrap}.tabs{display:flex;gap:9px;border-bottom:1px solid var(--line);margin-bottom:22px;padding-bottom:13px;overflow-x:auto}.tabs button{padding:11px 19px;background:transparent;border-radius:8px;color:#97a388;font-size:12px;white-space:nowrap}.tabs button.active{background:#e9f0dd;color:#68864b}.word-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.word-card{padding:22px}.word-card h3{font-family:Georgia,serif;font-weight:400;font-size:32px;letter-spacing:-.7px;margin:16px 0 8px;overflow-wrap:anywhere}.word-card .meaning{font-size:13px;color:#8b9b7b;margin-bottom:10px}.ipa{display:block;font-family:Georgia,serif;font-size:11px;color:#aab69a;min-height:15px;margin-bottom:10px}.verb-forms{display:flex;gap:5px;margin:20px 0}.verb-forms>button{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 3px;background:#f4f7ed;border:1px solid #e9eedf;border-radius:6px;flex:1;min-width:0;color:#8fa776}.verb-forms small{font-size:7px;letter-spacing:1px;color:#a8b697}.verb-forms strong{font-size:12px;font-weight:500;color:#6c8752;overflow-wrap:anywhere;max-width:100%}.verb-forms button:disabled{opacity:.75}.example{background:#fafbf7;padding:15px;border-radius:7px}.example p{font-size:12px;color:#7b9066;line-height:1.7;margin:0 0 7px}.example>small{font-size:10px;line-height:1.7;color:#a1b08e;display:block}.example .text-btn{font-size:9px;margin-top:7px}.lesson-prose{padding:35px;max-width:900px}.lesson-prose>h2{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:23px 0}.lesson-prose .explanation{white-space:pre-line;font-size:14px;line-height:1.9;color:#82946e}.formula{background:#eef4e4;border:1px solid #e0e9d2;border-radius:8px;padding:20px;color:#6d8852;font-size:15px;font-family:monospace;line-height:1.7;margin:24px 0 30px}.lesson-prose h3{font-size:14px;font-weight:500;color:#7d9463}.tense-example{border-top:1px solid #edf1e4;padding:18px 0}.tense-example p{font-size:15px;color:#6f8757;margin-bottom:8px}.tense-example small{color:#a5b296}.reading .passage{font-size:18px;font-family:Georgia,serif;color:#687e57;line-height:2;white-space:pre-line}.gentle-tip{display:flex;gap:11px;align-items:center;padding:18px;background:#f5f8ee;border-radius:8px;color:#9aae81;margin-top:24px}.gentle-tip p{font-size:11px;line-height:1.8;margin:0}.gentle-tip svg{flex-shrink:0}.listening-card{text-align:center;padding:45px 30px;max-width:900px}.empty-icon{display:grid;place-items:center;width:70px;height:70px;background:#eef3e5;color:#91aa70;border-radius:20px;margin:0 auto 25px}.empty-icon.small{width:50px;height:50px;border-radius:14px;margin:0 0 23px}.listening-card>.eyebrow{display:block;margin:26px 0 17px}.listening-card h2{font-family:Georgia,serif;font-weight:400;font-size:31px}.listening-card>p{font-size:13px;color:#9bab87;max-width:480px;margin:0 auto 24px}.transcript{text-align:left;background:#f8faf3;padding:25px;border-radius:8px;margin-top:35px;font-size:15px;line-height:1.9;color:#7c9363}.transcript h3{font-size:13px}.transcript p{margin-bottom:0}.quiz-intro{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0}.quiz-intro h2{font-family:Georgia,serif;font-weight:400;font-size:28px;margin:15px 0}.question{margin-bottom:17px}.question-number{display:flex;gap:12px;align-items:center;margin-bottom:18px}.question-number>span{font-size:18px;font-family:Georgia,serif;color:#a1b18a}.question-number>small{font-size:8px;letter-spacing:1px;text-transform:uppercase;background:#f2f6e9;border-radius:4px;padding:5px 8px;color:#a1b18b}.question-number strong{font-size:9px;font-weight:500;color:#88a362;margin-left:auto}.question-number strong.incorrect{color:#ba9b7d}.question h3{font-weight:500;font-size:16px;line-height:1.8;color:#617b4d}.options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:17px}.options button{display:flex;align-items:center;gap:12px;min-height:53px;padding:12px 14px;border:1px solid #e5ecd9;background:#fcfdf9;border-radius:7px;text-align:left;color:#8d9e79;font-size:12px;line-height:1.6}.options button>span{font-size:9px;border:1px solid #e3ebd7;border-radius:5px;padding:4px 7px;color:#a9b996}.options button>svg{margin-left:auto}.options button.selected{background:#edf4e0;border-color:#a7c187;color:#748f59}.options button.correct{background:#eef5e2;border-color:#a3c17c;color:#779851;opacity:1}.options button.wrong{background:#fcf3ea;border-color:#dbc2a4;color:#b49675;opacity:1}.options button:disabled{opacity:.65}.feedback{padding:18px;background:#f1f6e7;color:#8ea374;border:1px solid #e3ecd6;border-radius:8px;margin-top:20px;font-size:12px}.feedback p{margin:7px 0 0;line-height:1.8}.feedback.finished{display:flex;gap:15px;align-items:center}.submit-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:25px 0}.lesson-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:22px 0}.lesson-bottom .caption{max-width:500px;font-size:9px}.lesson-bottom .secondary{flex-shrink:0}.empty-state{text-align:center;padding:60px 30px}.empty-state>svg{margin:0 auto 25px;color:#a4b78c}.empty-state h2{font-family:Georgia,serif;font-weight:400;font-size:29px}.empty-state>p{font-size:13px;color:#9cae89;max-width:500px;margin:0 auto 25px}.empty-state>.caption{font-size:10px;margin:18px auto 0}.search-panel{margin-bottom:23px;padding:20px 24px}.search-form{display:flex;gap:13px}.search-input{flex:1;display:flex;align-items:center;gap:10px;border:1px solid #e1e9d5;border-radius:8px;padding:0 14px;color:#b0be9b;background:#fbfdf7}.search-input input{background:transparent;border:0;margin:0;padding:12px 0;min-width:0}.search-form .primary{margin:0;flex-shrink:0}.search-meta{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:15px;font-size:9px;color:#a9b698}.search-meta p{margin:0}.filter-btn{color:#9fb68a;background:transparent;font-size:10px;padding:7px 10px;border-radius:6px;white-space:nowrap}.filter-btn.active{background:#eef4e4;color:#7b995d}.chat-panel{padding:0;overflow:hidden;max-width:950px}.chat-header{display:flex;align-items:center;gap:12px;padding:21px 25px;border-bottom:1px solid var(--line)}.ellie-avatar{width:40px;height:40px;display:grid;place-items:center;background:#edf4e1;color:#8ea971;border-radius:50%}.chat-header h2{font-size:13px;margin-bottom:6px}.chat-header small{font-size:9px;color:#a4b391}.chat-header>.tag{margin-left:auto;font-size:6px}.chat-history{min-height:310px;max-height:55vh;overflow:auto;padding:25px;display:flex;flex-direction:column;gap:20px;scroll-behavior:smooth}.chat-empty{text-align:center;padding:30px 15px;color:#a0b389}.chat-empty>svg{margin-bottom:22px}.chat-empty h3{font-family:Georgia,serif;font-size:25px;font-weight:400;color:#829c67}.chat-empty p{font-size:12px;max-width:460px;margin:0 auto 22px}.starter-prompts{display:flex;flex-wrap:wrap;gap:9px;justify-content:center}.starter-prompts button{display:flex;align-items:center;gap:9px;background:#f4f8ec;border:1px solid #e5edd9;border-radius:7px;padding:11px;color:#91a979;font-size:10px;text-align:left;line-height:1.5}.message{align-self:flex-start;max-width:87%;background:#f5f8ef;border:1px solid #e7eddf;padding:18px 20px;border-radius:0 12px 12px;color:#80976b;min-width:120px}.message>small{font-size:7px;letter-spacing:1.5px;color:#b0be9c}.message p{white-space:pre-wrap;font-size:13px;line-height:1.9;margin:10px 0 0;overflow-wrap:anywhere}.message.mine{align-self:flex-end;background:#eaf1e0;border-color:#dfe8d2;border-radius:12px 0 12px 12px;color:#749254}.message .text-btn{font-size:9px;margin-top:12px}.chat-compose{padding:20px 25px 17px;border-top:1px solid var(--line);background:#fcfdf9}.chat-compose form{border:1px solid #e0e9d3;background:#fff;border-radius:9px;padding:5px 13px 12px}.chat-compose textarea{border:0;border-radius:0;background:transparent;padding:12px 2px;margin:0;font-size:12px;min-height:65px;resize:vertical}.compose-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.compose-actions .primary{min-height:35px;font-size:10px;padding:9px 15px}.record-btn{background:#f7faf2;color:#a4b68d;display:flex;align-items:center;gap:7px;font-size:10px;padding:10px;border-radius:6px}.record-btn.recording{background:#faf0e7;color:#bc9275}.chat-compose .caption{font-size:8px;margin-top:10px}.thinking{display:flex;gap:10px;color:#a6b88e;font-size:10px;align-items:center}.settings-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:23px}.panel>h2{margin-bottom:23px}label,.field-label{display:block;color:#90a479;font-size:11px;margin:20px 0 7px}input,select,textarea{display:block;width:100%;border:1px solid #dde8d0;border-radius:7px;color:#77945a;background:#fcfdf8;padding:12px;margin:7px 0 0;font-size:12px;min-width:0}input::placeholder,textarea::placeholder{color:#b1c09b;font-size:11px}textarea{resize:vertical;min-height:88px}input[type=time]{max-width:190px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:17px}.day-buttons{display:flex;gap:7px;margin:12px 0 27px}.day-buttons button{flex:1;padding:10px 5px;background:#fafcf6;border:1px solid #e6eedb;color:#aec09a;border-radius:6px;font-size:10px}.day-buttons button.active{background:#eaf2de;border-color:#b4c99b;color:#7a9b57}.settings-side{display:flex;flex-direction:column;gap:23px}.settings-side h2{font-family:Georgia,serif;font-size:24px;font-weight:400}.settings-side .muted{font-size:12px}.settings-side .secondary{font-size:11px}.account p{font-size:12px;color:#a0b08c}.connection-dot{width:7px;height:7px;background:#c0b191;border-radius:50%}.connection-dot.online{background:#96b56e}.connection-box{background:#f7f9f2;border:1px solid #eaf0df;border-radius:7px;padding:17px;color:#9eb487;margin:20px 0}.connection-box strong{font-size:11px;font-weight:500}.connection-box p{font-size:11px;line-height:1.8;margin:9px 0 0;overflow-wrap:anywhere}.audio-dock{position:fixed;bottom:20px;right:28px;width:305px;z-index:30;background:#fffffff2;border:1px solid #dce7cd;border-radius:13px;box-shadow:0 8px 35px #2c48231a;padding:16px}.audio-dock>div{display:flex;gap:10px;align-items:center;font-size:11px;color:#91aa74}.audio-dock audio{width:100%;height:34px;margin-top:12px}.audio-dock>small{display:block;font-size:8px;color:#b1bf9c;margin-top:9px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%);z-index:50;background:#3e5b45;color:#e9f0dd;border-radius:10px;box-shadow:0 8px 30px #29452522;padding:17px 22px;max-width:90%;width:max-content;display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.5}.toast svg{flex-shrink:0}.alert{display:flex;gap:12px;align-items:center;background:#fff8ee;border:1px solid #eedfc9;color:#b3976e;padding:16px 18px;font-size:12px;line-height:1.7;border-radius:8px;margin-bottom:25px}.alert .icon{margin-left:auto}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;background:#fafbf7}.auth-story{position:relative;overflow:hidden;background:#405e49;padding:47px 60px;color:#f4f7ed;display:flex;flex-direction:column;min-height:100vh}.auth-story .brand{font-size:23px}.auth-story .brand-mark{background:#68815b;color:#e3eccb}.auth-intro{position:relative;z-index:1;margin:auto 0;padding:65px 0}.auth-story .eyebrow{color:#bfd0ad;font-size:8px}.auth-intro h1{font-family:Georgia,serif;font-size:clamp(42px,5vw,76px);font-weight:400;line-height:1.1;letter-spacing:-2px;margin:25px 0}.auth-intro h1 em{font-style:normal;color:#b0c591}.auth-intro>p{font-size:12px;line-height:2;color:#bdcdb2;max-width:330px}.auth-features{display:flex;flex-direction:column;gap:17px;margin-top:40px;font-size:11px;color:#c7d5bd}.auth-features span{display:flex;align-items:center;gap:12px}.auth-story>small{font-size:7px;letter-spacing:2px;color:#a6bd96}.decor-circle{position:absolute;width:430px;height:430px;border:1px solid #adc39c22;border-radius:50%;right:-230px;bottom:-40px}.decor-circle:after{content:"";position:absolute;border:1px dashed #adc39c22;border-radius:50%;inset:40px}.auth-form{display:flex;align-items:center;justify-content:center;padding:50px}.auth-card{max-width:370px;width:100%}.mini-leaf{display:grid;place-items:center;color:#a4ba89;background:#eef3e5;width:58px;height:58px;border-radius:16px;margin-bottom:33px}.auth-card .eyebrow{font-size:7px;letter-spacing:1.7px}.auth-card h2{font-family:Georgia,serif;font-size:38px;font-weight:400;letter-spacing:-1px;margin:18px 0 15px}.auth-card>p{font-size:12px;color:#9bab8b;line-height:1.9}.auth-card form{margin-top:30px}.auth-card label{font-size:10px}.auth-card input{padding:14px;font-size:12px;background:#fff}.auth-card .primary{margin-top:25px}.auth-switch{text-align:center;margin:23px 0;font-size:11px!important}.auth-switch button{background:none;color:#789858;font-size:11px;font-weight:600}.auth-note{display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid #e8eedf;padding-top:23px;font-size:9px;color:#b0bf9e}@media(min-width:1450px){.content{padding:43px 55px 25px}.hero{min-height:335px}.hero-copy{padding:36px 42px}.hero h2{font-size:43px}.hero-art{margin-right:50px}.hero p{font-size:12px}.route-item{padding:20px 0}.metrics>div{padding:23px}}@media(max-width:1150px){.sidebar{width:217px;padding-inline:16px}.brand{font-size:18px}.brand-mark{width:35px;height:39px}.workspace{margin-left:217px;width:calc(100% - 217px)}.content{padding:30px 28px}.topbar{padding:0 28px}.hero-copy{padding:29px;width:65%}.hero h2{font-size:33px}.hero-art{min-width:210px;transform:scale(.85);transform-origin:left center}.metrics{gap:10px}.metrics>div{padding:17px 13px;gap:10px}.metric-icon{width:33px;height:36px}.metric-icon svg{width:17px}.metrics small{font-size:8px}.metrics strong{font-size:22px}.metrics em{font-size:9px}.panel{padding:22px}.dashboard-grid{gap:16px}.word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-grid{grid-template-columns:repeat(2,1fr)}.settings-grid{grid-template-columns:1fr}.settings-side{display:grid;grid-template-columns:1fr 1fr;gap:17px}.auth-story{padding:40px}.auth-form{padding:35px}.date-card{font-size:9px;padding:13px}.heading h1{font-size:35px}.route-item small{font-size:8px}.route-item strong{font-size:11px}.route-item{gap:9px}.section-head .tag{font-size:6px}.schedule-card{padding:15px}.side-quote{padding:21px 15px}.side-quote p{font-size:16px}.brand small{font-size:6px}}@media(max-width:850px){.sidebar{width:76px;padding:27px 10px}.brand{justify-content:center}.sidebar .brand>div,.nav-label,.sidebar-bottom{display:none}.sidebar .brand{padding:0}.sidebar nav{margin-top:37px}.sidebar nav button{justify-content:center;padding:16px 8px;gap:0}.sidebar nav button>span,.sidebar nav button>svg:last-child:not(:first-child){display:none}.workspace{margin-left:76px;width:calc(100% - 76px)}.content{padding:28px 23px}.topbar{padding:0 23px;height:65px}.hero-copy{width:65%;padding:28px}.hero h2{font-size:31px}.hero p{font-size:10px}.hero-art{min-width:170px;transform:scale(.74)}.hero-label{font-size:7px;letter-spacing:1.2px}.hero-copy>small{font-size:8px}.dashboard-grid{grid-template-columns:1fr}.metrics>div{flex-direction:column;align-items:flex-start}.metrics small,.metrics em{font-size:9px}.date-card{display:none}.hero{min-height:300px}.auth-layout{grid-template-columns:.9fr 1fr}.auth-story{padding:35px 28px}.auth-intro h1{font-size:48px}.auth-intro>p{font-size:11px}.auth-features{font-size:9px}.auth-form{padding:35px 25px}.auth-card h2{font-size:33px}.settings-side{grid-template-columns:1fr}.chat-header>.tag{display:none}.options{grid-template-columns:1fr}.lesson-bottom{align-items:flex-start;flex-direction:column}.skill-panel>.section-head{align-items:flex-start}.word-card{padding:20px}.word-card h3{font-size:28px}.hero-art .star{display:none}.progress-label{font-size:9px}.route-item small{font-size:10px}.route-item strong{font-size:13px}.route-icon{width:39px;height:41px}.audio-dock{width:280px}}@media(max-width:580px){.sidebar{inset:auto 0 0;width:100%;height:66px;border:0;border-top:1px solid var(--line);padding:3px 7px;z-index:40}.sidebar .brand{display:none}.sidebar nav{margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:2px}.sidebar nav button{padding:17px 4px}.workspace{width:100%;margin:0;padding-bottom:66px}.topbar{height:58px;padding:0 18px;font-size:9px}.topbar>div{gap:7px}.ai-status{font-size:8px}.content{padding:25px 18px 15px}.heading{margin-bottom:24px}.heading h1{font-size:34px;margin:13px 0}.heading .eyebrow{font-size:7px;letter-spacing:1.6px}.heading p{font-size:11px;line-height:1.8}.hero{min-height:310px}.hero-copy{width:100%;padding:26px}.hero h2{font-size:35px}.hero p{font-size:11px;max-width:245px}.hero-art{position:absolute;right:-105px;bottom:-55px;height:290px;opacity:.21;pointer-events:none}.hero-copy>small{font-size:8px}.hero-label{font-size:6px}.hero .light-btn{font-size:11px;gap:10px}.metrics{gap:6px;margin:15px 0}.metrics>div{padding:13px 9px;gap:11px;border-radius:9px}.metrics small{font-size:8px;line-height:1.5;min-height:24px}.metrics strong{font-size:21px;line-height:1.3}.metrics em{display:block;font-size:8px;margin-top:4px}.metric-icon{width:30px;height:32px;border-radius:8px}.panel{padding:21px}.dashboard-grid{gap:15px}.skill-panel{margin-top:15px}.skill-panel>.section-head{flex-direction:column;gap:8px}.skill-grid{gap:22px 17px}.skill-grid small{font-size:7px}.route-item{gap:11px;padding:18px 0}.route-item strong{font-size:12px}.route-item small{font-size:9px;line-height:1.6}.route-icon{width:33px;height:37px}.goal-strip p{font-size:10px}.week-dots{margin-block:25px}.week-dots span{width:30px;height:30px}.word-grid{grid-template-columns:1fr;gap:15px}.word-card h3{font-size:32px}.word-card .meaning{font-size:13px}.verb-forms>button{padding:14px 7px}.verb-forms strong{font-size:15px}.verb-forms small{font-size:8px}.example p{font-size:13px}.search-panel{padding:18px}.search-form{flex-direction:column;gap:10px}.search-form .primary{font-size:11px}.search-meta{font-size:8px;align-items:flex-start}.search-meta p{max-width:170px}.search-input input{font-size:10px}.tabs{gap:4px;padding-bottom:11px}.tabs button{padding:10px 14px;font-size:10px}.lesson-title{align-items:flex-start;flex-direction:column}.lesson-title h2{font-size:25px;line-height:1.4}.lesson-title>.muted{font-size:10px}.score-badge{font-size:10px;padding:10px}.lesson-prose{padding:25px}.lesson-prose>h2{font-size:29px}.lesson-prose .explanation{font-size:13px}.formula{padding:16px;font-size:12px}.reading .passage{font-size:17px;line-height:1.9}.listening-card{padding:35px 23px}.listening-card h2{font-size:27px;line-height:1.3}.listening-card>p{font-size:12px}.listening-card>.eyebrow{font-size:7px;letter-spacing:1.3px}.gentle-tip{text-align:left;padding:15px}.gentle-tip p{font-size:10px}.quiz-intro{flex-direction:column;align-items:flex-start;gap:0}.quiz-intro h2{font-size:26px;line-height:1.3}.quiz-intro .secondary{font-size:10px}.question h3{font-size:14px}.options button{font-size:12px;padding:12px;gap:11px}.submit-bar{flex-direction:column;align-items:stretch}.submit-bar .muted{font-size:10px}.finished{align-items:flex-start!important}.feedback{font-size:11px}.two-col{gap:12px}.day-buttons{gap:5px}.day-buttons button{font-size:9px;padding:10px 4px}.settings-side .panel{padding:23px}.chat-header{padding:19px}.chat-header h2{font-size:12px}.chat-history{padding:20px 16px;min-height:300px;max-height:52vh}.chat-empty{padding:20px 0}.chat-empty h3{font-size:24px;line-height:1.4}.chat-empty p{font-size:11px}.starter-prompts{flex-direction:column;align-items:stretch}.starter-prompts button{font-size:10px;padding:12px;justify-content:space-between}.chat-compose{padding:15px}.message{max-width:95%;padding:16px}.message p{font-size:12px}.record-btn{font-size:9px;padding:9px}.compose-actions .primary{font-size:9px;padding:10px}.chat-compose .caption{font-size:8px}.auth-layout{display:flex;flex-direction:column;min-height:100vh}.auth-story{min-height:auto;padding:24px 25px 30px}.auth-story .brand{font-size:19px;justify-content:flex-start}.auth-story .brand-mark{width:33px;height:35px}.auth-intro{padding:35px 0 0}.auth-intro .eyebrow{font-size:6px}.auth-intro h1{font-size:40px;letter-spacing:-1px;margin:16px 0 0;line-height:1.1}.auth-intro h1 br:nth-child(2){display:none}.auth-intro>p,.auth-features,.auth-story>small{display:none}.auth-form{padding:32px 27px 40px}.auth-card{max-width:400px}.mini-leaf{display:none}.auth-card .eyebrow{font-size:6px}.auth-card h2{font-size:31px;margin:12px 0}.auth-card>p{font-size:11px}.auth-card form{margin-top:22px}.auth-card label{margin-top:17px}.auth-note{font-size:8px}.auth-switch{font-size:10px!important}.toast{bottom:82px;font-size:11px;padding:15px 18px;max-width:92%}.alert{font-size:11px;padding:14px;gap:9px}.audio-dock{right:13px;bottom:77px;width:270px;padding:13px;z-index:30}.audio-dock>div{font-size:10px}.audio-dock audio{height:30px}footer{font-size:8px;margin-top:20px}footer>span:last-child{display:none}.level-badge{font-size:10px;padding:9px 12px}.count-badge{display:none}.heading{gap:11px}.heading h1{overflow-wrap:anywhere}.empty-state{padding:40px 23px}.empty-state h2{font-size:26px}.empty-state>p{font-size:12px}.transcript{padding:18px;font-size:14px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spin{animation-duration:3s}}.chatgpt-button{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;min-height:45px;border-radius:8px;background:#111;color:#fff;font-size:12px;font-weight:600;margin-top:20px}.plan-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0}.plan-actions .secondary{font-size:10px;padding:10px}.plan-connection>.text-btn{margin-top:15px}.plan-connection .caption{font-size:10px}.speech-controls{display:flex;align-items:center;gap:6px;margin-top:14px}.speech-controls .secondary{font-size:9px;padding:8px;min-height:30px;gap:5px}.audio-dock>div>.icon{margin-left:auto}.audio-dock label{font-size:9px;margin:13px 0 4px}.audio-dock select{font-size:10px;padding:8px;margin-top:4px}.audio-dock input[type=range]{padding:0;height:15px;accent-color:#88a465;border:0;background:transparent}.dictation-language{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:12px}.dictation-language label{margin:0;font-size:9px}.dictation-language select{width:auto;margin:0;font-size:9px;padding:6px;max-width:160px}.dictation-language small{font-size:8px;color:#b2bf9f}.settings-side .plan-connection h2{font-size:23px}.plan-connection .connection-box{margin-top:17px}.api-details{background:#f7f9f2;border:1px solid #e5eddc;border-radius:8px;padding:17px;margin:20px 0}.api-details dt{font-size:9px;color:#a3b292;margin:13px 0 5px}.api-details dt:first-child{margin-top:0}.api-details dd{font-size:11px;color:#7b9467;margin:0;overflow-wrap:anywhere;line-height:1.7}.settings-side .api-connection h2{font-size:24px}:root{font-size:17px;--muted: #68796b;--line: #e1e7dc;--green: #365b46;color:#293f32;background:#f6f8f2}body{line-height:1.6;-webkit-text-size-adjust:100%}h2{font-size:1.4rem}h3{font-size:1.17rem}p{line-height:1.8}small{font-size:.8rem}button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.primary,.secondary,.light-btn{font-size:.94rem;min-height:48px;padding:13px 20px;border-radius:12px;gap:10px}.primary{box-shadow:0 5px 12px #365b4615}.primary:hover:not(:disabled),.light-btn:hover:not(:disabled){transform:translateY(-2px)}.icon{min-width:42px;min-height:42px;color:#61795e}.text-btn{font-size:.88rem;min-height:42px;color:#496c42}.eyebrow{font-size:.68rem;letter-spacing:1.7px;color:#627950}.muted{font-size:.94rem;color:var(--muted)}.caption{font-size:.8rem;color:#6d7d66;line-height:1.75}.brand{font-size:32px;gap:12px}.brand-dot{color:#7f9f50}.brand small{font-size:8px;letter-spacing:1.5px;color:#6b7e5e}.brand-mark{width:48px;height:48px;border-radius:16px}.sidebar{width:270px;padding:32px 22px 20px;z-index:20}.nav-label{font-size:.65rem;margin-top:45px;color:#72806b}.nav-mobile{display:none}nav button{font-size:.9rem;min-height:54px;color:#64755f;gap:12px}.nav-check{margin-left:auto}.side-quote{padding:22px 18px}.side-quote small{font-size:.75rem;color:#6d7c62}.side-quote p{font-size:24px;color:#526c46}.profile strong{font-size:.85rem;max-width:120px}.profile small{font-size:.67rem;color:#718066}.avatar{width:40px;height:40px;flex-shrink:0}.workspace{margin-left:270px;width:calc(100% - 270px)}.topbar{height:82px;padding:0 42px;font-size:.78rem}.topbar>div{gap:9px}.level-pill{border:1px solid #dfe8d5;background:#eef3e7;border-radius:30px;padding:7px 14px;color:#577148;font-size:.75rem;white-space:nowrap}.content{max-width:1500px;padding:40px 42px 24px}.heading{gap:24px;align-items:center;margin-bottom:30px}.heading h1{font-size:clamp(36px,3.4vw,54px);line-height:1.15;margin:12px 0 18px;letter-spacing:-1.5px}.heading p{font-size:.97rem;color:#6b7c63;max-width:720px}.heading-actions{display:flex;flex-wrap:wrap;gap:10px}.date-card{font-size:.8rem;color:#7c785a;padding:16px}.hero{min-height:350px;border-radius:24px;background:#365b46}.hero-copy{width:64%;padding:38px 40px}.hero h2{font-size:clamp(38px,3.3vw,52px);margin:18px 0}.hero p{font-size:.95rem;color:#d3dfcb;max-width:430px}.hero-label{font-size:.65rem}.hero-copy>small{font-size:.78rem;color:#d2dfc9}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:22px 0}.hero .light-btn{margin:0;background:#e5edc7}.hero-resume{display:flex;align-items:center;gap:6px;background:transparent;color:#edf4e4;font-size:.85rem;padding:10px 0}.miva-art{position:relative;width:36%;min-width:240px;align-self:stretch}.art-ring{position:absolute;width:285px;height:285px;border:1px solid #c6d6a530;border-radius:50%;top:45px;left:-5px}.ring-two{inset:75px auto auto 25px;width:225px;height:225px;border-style:dashed;animation:slow-spin 50s linear infinite}.art-card{position:absolute;box-shadow:0 15px 35px #153a2a22;border-radius:18px;animation:float 7s ease-in-out infinite}.card-hello{top:76px;left:-25px;width:200px;background:#f7faec;color:#3f5c35;font:48px Georgia,serif;padding:22px 25px;transform:rotate(-8deg)}.card-hello>span{font:35px Arial;float:right;color:#9bb379}.card-hello small{display:block;font:12px DM Sans,sans-serif;margin-top:6px;color:#76896b}.card-grow{top:222px;left:45px;width:220px;padding:22px;background:#dce8b5;color:#456336;animation-delay:-3s;transform:rotate(6deg);font-size:21px;line-height:1.5}.card-grow span,.card-grow b{display:block}.card-grow b{font-weight:500}.card-grow i{position:absolute;right:20px;top:25px;font-style:normal;font-size:40px}.art-spark{position:absolute;top:20px;left:205px;color:#bfd89d;font-size:58px;animation:slow-spin 30s linear infinite}.art-orb{position:absolute;left:-42px;top:288px;border-radius:50%;width:20px;height:20px;background:#bdd692}.metrics{gap:18px;margin:24px 0}.metrics>div{padding:24px 20px;border-radius:16px;gap:15px}.metrics small{font-size:.78rem;color:#64765b;margin-bottom:10px}.metrics strong{font-size:32px}.metrics em{font-size:.77rem;color:#718065}.metric-icon{width:48px;height:48px;border-radius:15px}.panel{padding:28px;border-radius:18px;border-color:var(--line);box-shadow:0 4px 18px #30452e03}.section-head h2{font-size:1.22rem}.section-head{margin-bottom:20px}.dashboard-grid{grid-template-columns:1.15fr 1fr;gap:22px}.goal-text{font:26px/1.6 Georgia,serif;color:#4f6d43;margin:14px 0}.week-dots{margin:26px 0}.week-dots span{width:38px;height:38px;font-size:.88rem}.week-dots small{font-size:.72rem;color:#6e805f}.progress-track{height:7px}.progress-track>div{background:#8ca960}.progress-label{font-size:.78rem;margin-top:14px;color:#6c805b}.progress-label strong{color:#53753d}.skill-grid{gap:24px}.skill-grid>div>div:first-child{font-size:.9rem;color:#557344;flex-wrap:wrap}.skill-grid small{font-size:.74rem;color:#77896c}footer{font-size:.72rem;color:#829174;margin-top:32px}.tag{font-size:.68rem;padding:7px 10px;color:#657e4f}.count-badge{font-size:.9rem}.tabs{gap:8px;scrollbar-width:thin;padding-bottom:14px;position:sticky;top:0;background:#f6f8f2ef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:5}.tabs button{display:flex;align-items:center;gap:8px;font-size:.95rem;min-height:47px;padding:12px 20px;flex-shrink:0}.tabs button.active{color:#456331;background:#e4edda}.section-intro h2{font:30px Georgia,serif;margin:25px 0 10px}.section-intro p{color:#6c7e63;font-size:.95rem;margin-bottom:24px}.session-strip{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.85rem;color:#6b7e5f;margin-bottom:22px}.session-strip>span{display:flex;align-items:center;gap:8px}.tiny-dot{width:7px;height:7px;border-radius:50%;background:#8aa95f}.session-strip strong{color:#436534}.word-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.word-card{padding:24px}.word-card h3{font-size:40px;margin:18px 0 5px}.word-card .ipa{font-size:1rem;color:#7c8e71;font-family:Georgia,serif;line-height:1.6}.meaning-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;background:transparent;color:#4d7042;text-align:left;font-size:1.06rem;width:100%;min-height:48px;padding:8px 0;margin-bottom:14px}.meaning-toggle.covered{font-size:.85rem;color:#798c68}.verb-forms{gap:7px;margin:18px 0}.verb-forms>button{padding:12px 5px;gap:8px}.verb-forms small{font-size:.6rem;color:#718563}.verb-forms strong{font-size:1rem;color:#466c35}.verb-forms>button>svg{opacity:.65}.example{padding:17px;border-radius:12px;margin-top:12px}.example p{font-size:1rem;color:#48673c;line-height:1.8}.example>small{font-size:.85rem;color:#748567}.example .text-btn{font-size:.78rem}.more-examples summary{display:flex;align-items:center;justify-content:space-between;font-size:.86rem;color:#5a7949;padding:16px 0 3px;cursor:pointer}.lesson-prose{max-width:1000px;padding:36px;margin-bottom:24px}.lesson-prose>h2{font-size:36px}.lesson-prose .explanation{font-size:1.07rem;line-height:1.95;color:#536b46;white-space:pre-line}.lesson-prose h3{font-size:1.15rem;color:#46673a;margin:30px 0 12px}.lesson-list{padding-left:24px;color:#627857;font-size:1rem;line-height:1.9}.lesson-list li{padding-bottom:10px}.formula{white-space:pre-line;font-size:1.05rem;padding:24px;margin:20px 0;overflow-wrap:anywhere}.tense-example{display:flex;gap:18px;align-items:flex-start;padding:20px 0}.tense-example>span{font:24px Georgia;color:#9eae8b}.tense-example>div{flex:1;min-width:0}.tense-example p{font-size:1.1rem;color:#48693b}.tense-example small{font-size:.92rem;color:#748567}.common-mistakes{background:#fff7ec;border:1px solid #f1e2ca;border-radius:14px;padding:22px;margin:25px 0}.common-mistakes h3{margin-top:0}.common-mistakes>div+div{border-top:1px solid #eadcc5;padding-top:14px}.common-mistakes p{font-size:1rem;margin:6px 0 14px;color:#75634b}.wrong-sentence{color:#a46e4d!important;font-style:italic}.reading .passage{font-size:1.35rem;line-height:2;color:#49633f;margin-top:24px}.reading-practice{border-top:1px solid var(--line);padding-top:30px;margin-top:35px}.reading-practice .section-head h3{margin:10px 0}.reading-practice blockquote{padding:20px 24px;border-left:3px solid #8ba65e;background:#f4f7ed;margin:24px 0;font:22px/1.8 Georgia,serif;border-radius:0 10px 10px 0}.reading-actions{display:flex;gap:12px;flex-wrap:wrap}.practice-error{color:#a7583c;font-size:.9rem}.reading-practice audio{max-width:100%;margin-top:18px}.reading-result{background:#f3f7ed;border:1px solid #dae6cd;border-radius:16px;padding:24px;margin-top:24px}.reading-score{display:flex;align-items:center;gap:20px}.reading-score>strong{font-size:40px;color:#466e35}.reading-score>strong>small{font-size:.9rem;color:#839477}.reading-score p{margin:4px 0 0;color:#76886a;font-size:.85rem}.word-marks{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.word-marks span{padding:5px 10px;border-radius:6px;background:#dfead3;color:#52733d}.word-marks .needs-work{background:#f8e1c9;color:#895737}.reading-feedback{font-size:1rem;color:#557045;white-space:pre-line}.pronunciation-stats{display:flex;gap:15px;flex-wrap:wrap;font-size:.84rem;margin-top:18px}.pronunciation-stats span{background:#fff;border-radius:8px;padding:8px 12px}.listening-unit{max-width:1000px;margin-bottom:36px}.listening-card{max-width:none;padding:35px}.listening-card>.tag{margin-bottom:22px}.empty-icon{color:#708c50}.listening-card h2{font-size:34px}.listening-card>p{font-size:1rem;max-width:600px;color:#708361}.listening-card>.caption{font-size:.8rem}.inline-questions{margin:24px 0}.inline-questions>h3{font:25px Georgia,serif;margin:24px 0}.transcript{font-size:1.05rem;color:#4b6b3c}.transcript summary{cursor:pointer}.quiz-intro h2{font-size:32px}.quiz-intro p{font-size:1rem;color:#6d8061}.question{padding:28px}.question-number>span{font-size:25px}.question-number>small{font-size:.68rem;color:#6e8859}.question-number strong{font-size:.82rem;color:#648540}.question-number strong.incorrect{color:#a3714e}.question h3{font-size:1.15rem;color:#3e5e32;line-height:1.8}.options{gap:12px}.options button{font-size:1rem;min-height:66px;padding:15px;color:#587249;gap:13px}.options button>span{font-size:.76rem;padding:4px 8px;color:#70895c}.options button p{margin:0;flex:1;line-height:1.65}.options button:disabled{opacity:.8}.options button.selected{border-color:#648b44;color:#3e622b}.options button.correct{color:#456b2b;border-color:#7aa353}.options button.wrong{color:#925e34;border-color:#c39768}.feedback{font-size:1rem;color:#526f3f;padding:22px}.feedback>strong{display:flex;align-items:center;gap:10px}.feedback p{margin-top:13px}.submit-bar{position:sticky;bottom:16px;z-index:4;background:#fffef7f5;border:1px solid #dce5d1;border-radius:16px;padding:22px;box-shadow:0 8px 35px #3042250e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.submit-bar>div{flex:1;max-width:460px}.submit-bar .caption{margin:4px 0 12px}.result-card{padding:36px;margin-bottom:28px;background:linear-gradient(125deg,#eff5e3,#fffef6);scroll-margin-top:20px}.result-heading{display:flex;gap:24px;align-items:center}.result-score{font-size:64px;font-family:Georgia,serif;color:#55763d;line-height:1.3}.result-score small{font-size:26px}.result-card h2{font:32px Georgia,serif;margin:12px 0}.result-card p{color:#677e55;font-size:1rem}.score-note{display:flex;align-items:center;gap:9px;color:#5f7b4d;margin:20px 0}.personal-review{border-top:1px solid #dce6d1;padding-top:22px;margin-top:24px}.personal-review h3{font-size:1.25rem}.personal-review h4{font-size:1rem;color:#567243;margin:18px 0 8px}.personal-review ul{padding-left:20px;color:#687e58;line-height:1.9}.review-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.history-list{margin-bottom:25px}.history-list>button{display:flex;align-items:center;gap:18px;width:100%;border-top:1px solid var(--line);padding:16px 0;background:transparent;color:#58734b;text-align:left}.history-list>button>span{flex:1}.history-list strong,.history-list small{display:block}.history-list small{font-size:.8rem;color:#7b8b6c;margin-top:5px}.history-list b{font-size:.87rem}.plan-goal{display:flex;align-items:center;gap:18px;background:#edf3e3;border:1px solid #dce6ce;padding:22px 26px;border-radius:16px;margin-bottom:24px;color:#5c7848}.plan-goal>svg{flex-shrink:0}.plan-goal>div{flex:1}.plan-goal small{font-size:.65rem;letter-spacing:1px}.plan-goal p{font-size:1.05rem;margin:7px 0 0}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.plan-card{border:1px solid #e0e6d9;transition:border-color .25s,box-shadow .25s,transform .25s}.plan-card.chosen{border-color:#b8cba3;box-shadow:0 7px 24px #57733e08}.plan-toggle{display:flex;gap:15px;align-items:center;text-align:left;width:100%;background:transparent;padding:0;color:#48673a;min-height:65px}.plan-toggle>span:nth-child(2){flex:1}.plan-toggle strong{display:block;font-size:1.24rem}.plan-toggle small{display:block;font-size:.82rem;font-weight:400;color:#7c8b70;margin-top:5px}.plan-icon{display:grid;place-items:center;width:50px;height:55px;border-radius:14px;background:#eff4e4;flex-shrink:0}.plan-icon.peach{background:#f9efdf;color:#b18d5c}.plan-icon.lavender{background:#f1eaf7;color:#9680a7}.plan-icon.blue{background:#eaf1f6;color:#6d96a9}.check-box{width:25px;height:25px;border:1px solid #bbc8ab;border-radius:8px;display:grid;place-items:center;flex-shrink:0}.chosen .check-box{background:#6c8e4b;color:#fff;border-color:#6c8e4b}.plan-card label,.field-label{font-size:.9rem;margin:25px 0 10px;color:#5c744c}.count-input{display:flex;gap:15px;align-items:center}.count-input input{width:90px;text-align:center;font-size:1.6rem;font-weight:500;margin:0;padding:12px}.count-input>span{font-size:.82rem;color:#7a8d6a}.tense-chips{display:flex;flex-wrap:wrap;gap:8px}.tense-chips button{font-size:.8rem;padding:9px 13px;background:#f8faf4;color:#6c825b;border:1px solid #e0e7d7;border-radius:9px;min-height:42px}.tense-chips button.active{background:#e7efd9;color:#45642d;border-color:#9eb780}.question-plan{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:24px}.question-plan h2{font:30px Georgia,serif;margin:10px 0}.question-plan p{font-size:.92rem;color:#728365;margin-bottom:0}.question-count{min-width:175px;max-width:230px;width:30%}.question-count input[type=number]{font-size:2rem;font-weight:500;text-align:center}.question-count input[type=range]{padding:0;accent-color:#6b8d4b;border:0;background:none}.planner-submit{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:28px 0}.planner-submit>div{display:flex;align-items:center;gap:13px;color:#687e55}.planner-submit small{display:block;font-size:.8rem;color:#829073}.preparation{text-align:center;padding:55px 35px;max-width:950px;margin:auto}.preparation h2{font:34px Georgia,serif;margin:20px 0}.preparation>p{max-width:620px;margin:18px auto;color:#738565}.preparation>.progress-track{max-width:500px;margin:30px auto 12px}.preparation>strong{color:#5f8046}.prep-orb{width:110px;height:110px;border-radius:50%;background:#edf4e0;color:#7b9d55;display:grid;place-items:center;margin:10px auto 40px;position:relative}.prep-orb>span{position:absolute;inset:-10px;border-radius:50%;border:1px solid #baca9b;animation:ripple 3s ease-out infinite}.prep-orb>span+span{animation-delay:1.5s}.prep-summary{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:28px 0}.prep-summary>span{background:#eff4e6;color:#6a8454;padding:8px 12px;border-radius:8px;font-size:.8rem}label{display:block;font-size:.9rem;margin:21px 0 8px;color:#5e7550}input,select,textarea{font-size:1rem;min-height:48px;padding:13px 15px;border-radius:10px;border:1px solid #dfe6d6;color:#456137;background:#fbfcf8;width:100%;max-width:100%}input::placeholder,textarea::placeholder{color:#8b9b7d}textarea{line-height:1.8;resize:vertical}select{padding-right:32px}input[type=range]{padding:0;accent-color:#749652}input[type=time]{min-width:0}.two-col{gap:20px}.settings-grid{gap:24px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.settings-side{min-width:0}.settings-side .panel{padding:28px}.settings-side h2{font-size:1.4rem}.settings-side p{overflow-wrap:anywhere}.day-buttons{gap:8px}.day-buttons button{font-size:.8rem;min-height:44px}.settings-grid form>.primary{margin-top:26px}.avatar.large{width:64px;height:64px;font-size:26px;margin:0 auto 18px}.account{text-align:center}.search-input input{font-size:.95rem}.search-meta{font-size:.8rem;color:#7b8c6c}.filter-btn{font-size:.85rem;min-height:42px}.chat-panel{max-width:none}.chat-header{padding:24px}.chat-header h2{font-size:1.06rem}.chat-header small{font-size:.8rem;color:#788b68}.chat-header>.tag{font-size:.57rem}.chat-history{min-height:350px;max-height:58vh;padding:28px;gap:24px}.chat-empty h3{font-size:32px}.chat-empty p{font-size:1rem;max-width:600px}.starter-prompts button{font-size:.9rem;padding:13px 17px;gap:15px}.message{max-width:85%;padding:22px;border-radius:16px}.message small{font-size:.65rem;color:#6d8559}.message p{font-size:1.06rem;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere;color:#4b683c}.message.mine p{color:#f3f7ed}.chat-compose{padding:22px}.chat-compose textarea{font-size:1rem}.compose-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:13px}.dictation{display:flex;gap:8px;align-items:center}.dictation select{font-size:.82rem;min-height:44px;width:auto;max-width:140px;margin:0;padding:8px 28px 8px 10px}.record-btn{min-height:44px;min-width:44px;font-size:.85rem}.thinking{font-size:.9rem;color:#6a8554;display:flex;align-items:center;gap:10px}.audio-dock{width:340px;right:24px;bottom:24px;padding:20px;border:1px solid #dce5d1;border-radius:18px;box-shadow:0 12px 55px #2c452633;z-index:30;max-height:70dvh;overflow:auto;background:#fffef9}.player-title{display:flex;align-items:center;gap:10px;font-size:.85rem;color:#5d7948}.player-title>.icon{margin-left:auto}.speech-controls{display:flex;gap:8px;margin-top:12px}.speech-controls .secondary{font-size:.8rem;min-height:42px;padding:9px 12px}.audio-settings{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.audio-settings summary{cursor:pointer;display:flex;gap:8px;align-items:center;font-size:.8rem;color:#78925e;min-height:35px}.audio-dock label{font-size:.8rem;margin:16px 0 7px}.audio-dock select{font-size:.8rem;min-height:44px}.audio-dock input[type=range]{height:25px}.alert{display:flex;align-items:center;gap:13px;font-size:.92rem;padding:16px 20px;border-radius:12px}.alert>span{flex:1}.alert>svg{flex-shrink:0}.toast{font-size:.9rem;bottom:24px;border-radius:14px;padding:17px 24px;z-index:50;line-height:1.6}.empty-state h2{font-size:32px}.empty-state>p{font-size:1rem}.auth-story{padding:45px 50px}.auth-intro{max-width:600px}.auth-intro h1{font-size:clamp(46px,4.4vw,72px)}.auth-intro>p{font-size:1rem;line-height:1.9}.auth-features{font-size:.9rem;gap:18px}.auth-story>small{font-size:.65rem}.auth-card{max-width:430px}.auth-card h2{font-size:39px}.auth-card>p{font-size:1rem;color:#76896b}.auth-card .eyebrow{font-size:.62rem}.auth-card label{font-size:.9rem}.auth-card input{font-size:1rem}.auth-switch{font-size:.9rem!important}.auth-switch button{font-size:inherit}.auth-note{font-size:.8rem}.enter{animation:enter .35s ease-out}.content>.heading{animation:enter .4s ease-out}.recording{animation:recordPulse 1.4s ease-in-out infinite}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{translate:0 0}50%{translate:0 -10px}}@keyframes ripple{0%{transform:scale(.9);opacity:.7}to{transform:scale(1.35);opacity:0}}@keyframes slow-spin{to{rotate:360deg}}@keyframes recordPulse{50%{box-shadow:0 0 0 6px #c96b4c20}}@media(min-width:1600px){.content{padding:45px 55px}.hero-copy{padding:42px 45px}.word-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.miva-art{margin-left:25px}.metrics>div{padding:26px}}@media(max-width:1200px){.sidebar{width:235px;padding:28px 16px}.workspace{margin-left:235px;width:calc(100% - 235px)}.content{padding:32px 28px}.topbar{padding:0 28px}.word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy{width:66%;padding:32px}.miva-art{min-width:190px}.card-hello{left:-15px;width:170px;font-size:40px}.card-grow{left:10px;width:190px}.art-ring{left:-30px;width:230px;height:230px}.art-spark{left:140px}.metrics>div{padding:20px 16px}.metric-icon{width:38px;height:42px}.metrics small{font-size:.7rem}.metrics em{display:block;margin-top:7px;font-size:.72rem}.skill-grid{grid-template-columns:repeat(2,1fr);row-gap:25px}.date-card{display:none}.dashboard-grid{grid-template-columns:1fr 1fr}.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-side{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-side .panel{margin:0}.plan-card{padding:23px}.plan-toggle{gap:11px}.plan-toggle strong{font-size:1.14rem}.plan-toggle small{font-size:.75rem}.plan-icon{width:43px;height:48px}}@media(max-width:900px){.sidebar{width:88px;padding:24px 12px;align-items:center}.sidebar .brand{padding:0}.sidebar .brand>div,.nav-desktop,.nav-label,.sidebar-bottom,.nav-check{display:none}.sidebar nav{margin-top:40px;width:100%}.sidebar nav button{padding:16px;justify-content:center}.workspace{margin-left:88px;width:calc(100% - 88px)}.heading h1{font-size:42px}.content{padding:30px 26px}.plan-grid{gap:16px}.plan-toggle small{line-height:1.5}.plan-toggle{align-items:flex-start}.check-box{width:22px;height:22px}.plan-icon{width:37px;height:41px}.count-input{gap:10px}.count-input>span{font-size:.74rem}.metrics{gap:12px}.metrics>div{display:block}.metrics .metric-icon{margin-bottom:13px}.metrics strong{font-size:29px}.hero-copy{width:66%;padding:30px}.hero h2{font-size:42px}.hero p{font-size:.9rem}.miva-art{opacity:.7}.card-hello{top:85px;left:-15px}.card-grow{left:-5px;top:230px}.art-spark{left:125px}.dashboard-grid{gap:16px}.panel{padding:24px}.goal-text{font-size:24px}.section-head h2{font-size:1.15rem}.lesson-prose{padding:30px}.question,.question-plan{padding:25px}.auth-story{padding:32px}.auth-form{padding:35px}.auth-intro h1{font-size:46px}}@media(max-width:640px){:root{font-size:17px}.app-shell{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.sidebar{position:fixed;inset:auto 0 0;width:100%;padding:0 5px env(safe-area-inset-bottom);height:calc(76px + env(safe-area-inset-bottom));border:0;border-top:1px solid #dde6d2;background:#fffffff5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:40;display:block}.sidebar>.brand{display:none}.sidebar nav{margin:0;display:flex;flex-direction:row;justify-content:space-between;gap:2px;height:76px}.sidebar nav button{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:10px 2px;flex:1;border-radius:0;background:transparent;min-width:0;color:#7c8d6d}.sidebar nav button.active{color:#466c31;background:#f0f5e5;box-shadow:inset 0 3px #85a45d}.nav-mobile{display:inline;font-size:11px;font-weight:500;line-height:1.4}.sidebar nav button svg{width:22px;height:22px;margin:0!important}.nav-check{display:none!important}.workspace{margin-left:0;width:100%}.topbar{height:64px;padding:0 20px;font-size:.72rem}.topbar .crumb{display:none}.topbar>div>svg{display:none}.topbar-right>.text-btn{display:none}.level-pill{font-size:.68rem;padding:6px 11px}.level-pill>span{display:none}.content{padding:27px 18px 18px}.heading{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:25px}.heading h1{font-size:40px;letter-spacing:-1.4px;margin:11px 0 16px;overflow-wrap:normal}.heading p{font-size:.94rem;line-height:1.8}.heading .eyebrow{font-size:.6rem;letter-spacing:1.3px}.heading-actions{width:100%;gap:10px}.heading-actions .secondary{font-size:.85rem;flex:1;padding:12px}.hero{min-height:330px;border-radius:20px}.hero-copy{width:100%;padding:28px 25px}.hero h2{font-size:42px;max-width:280px}.hero p{max-width:290px;font-size:.92rem}.hero-label{font-size:.57rem}.hero-copy>small{font-size:.7rem}.hero .light-btn{font-size:.9rem;gap:9px}.hero-actions{flex-direction:column;align-items:flex-start;gap:3px;margin:22px 0 14px}.hero-resume{font-size:.8rem}.miva-art{position:absolute;right:-150px;bottom:-60px;width:280px;height:320px;opacity:.16;pointer-events:none}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.metrics>div{padding:16px 10px;border-radius:13px;display:block}.metrics .metric-icon{width:35px;height:35px;border-radius:10px;margin-bottom:10px}.metrics svg{width:20px;height:20px}.metrics small{font-size:.65rem;line-height:1.6;min-height:42px;margin-bottom:7px}.metrics strong{font-size:28px;line-height:1.3}.metrics em{font-size:.62rem;line-height:1.6;margin-top:4px}.dashboard-grid{grid-template-columns:1fr;gap:18px}.panel{padding:23px;border-radius:16px}.section-head h2{font-size:1.16rem;line-height:1.5}.section-head{gap:14px}.section-head>svg{flex-shrink:0}.goal-text{font-size:25px}.muted{font-size:.92rem}.text-btn{font-size:.84rem}.week-dots span{width:36px;height:36px;font-size:.85rem}.week-dots small{font-size:.72rem}.progress-label{font-size:.73rem}.skill-grid{gap:24px 18px}.skill-grid>div>div:first-child{font-size:.85rem}.skill-grid small{font-size:.68rem}.skill-panel>.section-head{align-items:flex-start}.skill-panel>.section-head>.muted{font-size:.78rem}.word-grid{grid-template-columns:1fr;gap:18px}.word-card{padding:25px}.word-card h3{font-size:42px}.word-card .ipa{font-size:1rem}.verb-forms strong{font-size:1.12rem}.verb-forms small{font-size:.65rem}.verb-forms>button{padding:14px 7px}.example p{font-size:1.05rem}.example>small{font-size:.88rem}.session-strip{font-size:.78rem;gap:10px}.tabs{margin-inline:-18px;padding:10px 18px 12px;gap:6px;top:0}.tabs button{font-size:.85rem;padding:10px 13px;min-height:46px}.section-intro h2{font-size:28px;line-height:1.4}.section-intro p{font-size:.94rem}.lesson-prose{padding:25px}.lesson-prose>h2{font-size:31px;line-height:1.4}.lesson-prose .explanation{font-size:1.04rem;line-height:1.95}.lesson-prose h3{font-size:1.1rem}.lesson-list{font-size:1rem;padding-left:20px}.formula{font-size:.94rem;padding:18px}.tense-example{gap:13px}.tense-example>span{font-size:20px}.tense-example p{font-size:1.05rem}.tense-example small{font-size:.86rem}.tense-example .icon{min-width:32px;padding:4px}.common-mistakes{padding:19px}.common-mistakes p{font-size:.96rem}.reading .passage{font-size:1.25rem;line-height:2}.reading-practice blockquote{font-size:21px;padding:17px;margin:21px 0}.reading-actions{flex-direction:column;align-items:stretch}.reading-practice select{font-size:.9rem}.reading-result{padding:19px}.reading-score{gap:15px}.reading-score>strong{font-size:36px}.reading-score b{font-size:.9rem}.reading-feedback{font-size:.96rem}.word-marks{gap:6px}.word-marks span{font-size:.87rem}.listening-card{padding:29px 24px}.listening-card h2{font-size:29px;line-height:1.4}.listening-card>p{font-size:1rem}.listening-card>.eyebrow{font-size:.65rem}.listening-card .empty-icon{margin:22px auto}.inline-questions>h3{font-size:25px;line-height:1.5}.quiz-intro{align-items:flex-start;gap:16px}.quiz-intro h2{font-size:29px;line-height:1.4}.quiz-intro p{font-size:.94rem}.question h3{font-size:1.08rem;line-height:1.85}.question{padding:24px}.options{grid-template-columns:1fr;gap:11px}.options button{font-size:1rem;min-height:62px;padding:14px}.options button>span{font-size:.76rem}.feedback{font-size:.95rem;padding:18px}.submit-bar{bottom:calc(87px + env(safe-area-inset-bottom));padding:18px;gap:18px;border-radius:14px}.submit-bar>div{width:100%;max-width:none}.submit-bar strong{font-size:.92rem}.submit-bar .primary{font-size:.9rem}.lesson-bottom{gap:15px}.lesson-bottom .text-btn{font-size:.8rem}.result-card{padding:26px}.result-heading{align-items:flex-start;gap:14px}.result-score{font-size:48px}.result-card h2{font-size:29px}.result-card p{font-size:.97rem}.score-note{font-size:.87rem;align-items:flex-start}.score-note svg{flex-shrink:0}.review-columns{grid-template-columns:1fr;gap:0}.personal-review ul{font-size:.96rem}.plan-goal{padding:20px;gap:13px;align-items:flex-start}.plan-goal small{font-size:.58rem;letter-spacing:.7px}.plan-goal p{font-size:.95rem}.plan-goal>svg{width:20px;margin-top:5px}.plan-goal .text-btn{font-size:.8rem}.plan-grid{grid-template-columns:1fr;gap:18px}.plan-card{padding:24px}.plan-toggle{gap:14px;align-items:center}.plan-toggle strong{font-size:1.25rem}.plan-toggle small{font-size:.83rem}.plan-icon{width:48px;height:52px}.count-input input{width:88px;font-size:1.5rem}.count-input>span{font-size:.85rem}.plan-card label,.field-label{font-size:.94rem}.tense-chips{gap:9px}.tense-chips button{font-size:.82rem;min-height:44px}.question-plan{flex-direction:column;align-items:stretch;gap:14px}.question-plan h2{font-size:29px}.question-plan p{font-size:.95rem}.question-count{display:flex;align-items:center;gap:20px;width:100%;max-width:none}.question-count input[type=number]{width:90px;flex-shrink:0;font-size:1.7rem}.question-count input[type=range]{flex:1;min-width:0}.planner-submit{flex-direction:column;align-items:stretch;gap:23px}.planner-submit>div{font-size:.95rem}.planner-submit .primary{min-height:54px}.preparation{padding:40px 24px}.preparation h2{font-size:30px;line-height:1.5}.preparation p{font-size:.97rem}.prep-summary{gap:8px}.prep-summary span{font-size:.73rem;padding:8px 10px}.history-list>button{gap:10px}.history-list strong{font-size:.92rem}.history-list b,.history-list small{font-size:.75rem}.search-panel{padding:21px}.search-form{gap:12px}.search-input input{font-size:.92rem}.search-meta{font-size:.77rem;gap:12px}.search-meta p{max-width:200px}.filter-btn{font-size:.75rem;white-space:normal}.two-col{grid-template-columns:1fr;gap:0}.settings-grid{gap:18px}.settings-side{display:flex;flex-direction:column;gap:18px}.settings-side .panel{padding:25px}.day-buttons{gap:5px}.day-buttons button{font-size:.74rem;min-height:44px;padding:9px 4px}.settings-grid input,.settings-grid select,.settings-grid textarea{font-size:1rem}.settings-grid label{font-size:.9rem}.chat-panel{padding:0}.chat-header{padding:21px;gap:12px}.chat-header h2{font-size:.99rem;line-height:1.5}.chat-header small{font-size:.75rem}.chat-header>.tag{display:none}.chat-history{padding:22px 17px;min-height:320px;max-height:55dvh;gap:20px}.chat-empty{padding:20px 0}.chat-empty h3{font-size:29px}.chat-empty p{font-size:.95rem}.starter-prompts{gap:10px}.starter-prompts button{font-size:.88rem;line-height:1.6;padding:14px}.message{max-width:96%;padding:19px}.message p{font-size:1rem;line-height:1.9}.message small{font-size:.65rem}.chat-compose{padding:18px}.chat-compose .caption{font-size:.73rem}.compose-actions .primary{font-size:.85rem;padding:11px 15px}.record-btn{font-size:.85rem}.dictation{gap:5px}.dictation select{font-size:.78rem;max-width:115px}.audio-dock{right:12px;bottom:calc(88px + env(safe-area-inset-bottom));width:min(340px,calc(100vw - 24px));max-height:60dvh;padding:19px}.audio-dock label{font-size:.8rem}.audio-dock select{font-size:.84rem}.player-title{font-size:.86rem}.toast{bottom:calc(90px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 28px);font-size:.86rem;padding:15px 18px;left:50%;transform:translate(-50%);right:auto}.alert{font-size:.9rem;padding:14px;gap:10px}.auth-story{padding:26px 27px 32px}.auth-story .brand{font-size:30px}.auth-story .brand-mark{width:44px;height:44px}.auth-intro{padding-top:28px}.auth-intro .eyebrow{font-size:.58rem}.auth-intro h1{font-size:44px;line-height:1.15;margin-top:16px}.auth-form{padding:34px 25px 45px}.auth-card h2{font-size:35px}.auth-card .eyebrow{font-size:.59rem}.auth-card>p{font-size:.94rem}.auth-card label{font-size:.9rem}.auth-card form{margin-top:27px}.auth-switch{font-size:.9rem!important}.auth-note{font-size:.78rem}.auth-card input{font-size:1rem}.empty-state{padding:40px 24px}.empty-state h2{font-size:29px;line-height:1.4}.empty-state>p{font-size:.98rem}footer{font-size:.68rem;line-height:1.6;margin-top:24px}}@media(max-width:359px){.content{padding-inline:14px}.heading h1{font-size:36px}.hero-copy{padding:25px 22px}.hero h2{font-size:38px}.metrics>div{padding:14px 8px}.metrics small{font-size:.61rem}.metrics em{font-size:.57rem}.plan-toggle{gap:10px}.plan-toggle small{font-size:.75rem}.plan-icon{width:40px;height:46px}.dictation select{max-width:98px}.panel{padding:20px}.section-head h2{font-size:1.1rem}.week-dots span{width:31px;height:31px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:901px){.sidebar nav button>.nav-desktop{display:inline}.sidebar nav button{justify-content:flex-start}}@media(max-width:640px){.sidebar nav button>.nav-mobile{display:inline}}.result-card{position:relative;overflow:hidden}.score-ring{position:relative;width:154px;height:154px;background:conic-gradient(#85a75b var(--score),#e2ebd7 0);padding:9px;border-radius:50%;margin:28px 0}.score-ring>div{border-radius:50%;background:#f7faef;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%}.score-ring strong{font-size:48px;font-family:Georgia,serif;color:#51753b;line-height:1.2}.score-ring small{font-size:22px}.score-ring span{font-size:.75rem;color:#7f926b}.result-decoration{position:absolute;top:30px;right:35px;width:180px;height:150px;pointer-events:none}.result-decoration i{position:absolute;left:calc(var(--i) * 16px);top:calc(mod(var(--i),3)*35px);width:8px;height:15px;border-radius:3px;background:#a6bc81;rotate:calc(var(--i) * 30deg);opacity:.45;animation:confetti 4s ease-in-out infinite;animation-delay:calc(var(--i) * -.4s)}@keyframes confetti{50%{translate:0 12px;opacity:.15}}@media(max-width:640px){.score-ring{width:138px;height:138px}.score-ring strong{font-size:44px}.result-decoration{right:-30px;opacity:.6}}
