:root{font-family:Tahoma,Segoe UI,Arial,sans-serif;color:#e7f1f7;background:#08111c;font-synthesis:none;--bg: #08111c;--panel: #0f1c2a;--panel-2: #142537;--line: #294158;--text: #e7f1f7;--muted: #91a9b9;--cyan: #55d6be;--gold: #f2bf62;--red: #ff727d;--violet: #a38bff;--shadow: 0 24px 64px rgba(0, 0, 0, .24)}*{box-sizing:border-box}html{direction:rtl;background:var(--bg);min-width:320px}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 78% -5%,#15334a 0,transparent 34%),var(--bg);color:var(--text)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.35;margin-bottom:.65rem}h2{font-size:1.15rem}p{line-height:1.85;color:var(--muted)}small{color:var(--muted)}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #fff3a3;outline-offset:3px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;border-left:1px solid rgba(80,117,144,.35);background:#08111ce6;backdrop-filter:blur(18px);display:flex;flex-direction:column;z-index:10}.brand,.login-brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:45px;height:45px;border:1px solid rgba(85,214,190,.45);border-radius:14px;background:linear-gradient(145deg,#55d6be40,#55d6be0a);color:var(--cyan);font-size:.82rem;font-weight:900;letter-spacing:.05em;box-shadow:inset 0 1px #ffffff1f}.brand strong{display:block;font-size:.9rem}.brand small{display:block;margin-top:4px;font-size:.68rem}.sidebar nav{display:grid;gap:6px;margin-top:42px}.sidebar nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid transparent;border-radius:12px;color:#a8bcc9;font-size:.9rem;transition:.2s}.sidebar nav a:hover{color:var(--text);background:#102132}.sidebar nav a.active{color:var(--cyan);border-color:#55d6be38;background:linear-gradient(90deg,#55d6be24,#55d6be0a);box-shadow:inset -3px 0 var(--cyan)}.safety-note{display:flex;align-items:center;gap:10px;margin-top:auto;padding:14px 12px;border:1px solid rgba(85,214,190,.16);border-radius:13px;background:#55d6be0f;color:var(--cyan)}.safety-note strong,.safety-note small{display:block}.safety-note strong{font-size:.74rem}.safety-note small{font-size:.62rem;color:var(--muted);margin-top:3px}.main-column{min-width:0}.topbar{height:78px;padding:0 clamp(20px,4vw,56px);border-bottom:1px solid rgba(80,117,144,.25);display:flex;align-items:center;justify-content:space-between;background:#08111c8c;backdrop-filter:blur(16px)}.topbar-actions,.user-chip{display:flex;align-items:center;gap:12px}.user-chip .avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--cyan),#2c8d7c);color:#042019;font-weight:900}.user-chip strong,.user-chip small{display:block}.user-chip strong{font-size:.78rem}.user-chip small{font-size:.65rem;margin-top:3px}.icon-button{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#0e1c29;cursor:pointer}.icon-button:hover{border-color:var(--cyan)}.sync-pill{display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--line);border-radius:99px;background:#0d1925;color:var(--muted);font-size:.72rem}.sync-pill b{display:grid;place-items:center;min-width:19px;height:19px;border-radius:99px;background:var(--gold);color:#261b04}.status-dot{width:7px;height:7px;border-radius:50%;background:#72889a}.sync-pill.synced .status-dot{background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.sync-pill.syncing .status-dot{background:var(--gold);animation:pulse 1s infinite}.sync-pill.pending .status-dot,.sync-pill.offline .status-dot{background:var(--gold)}.sync-pill.error .status-dot{background:var(--red)}@keyframes pulse{50%{opacity:.35}}.global-message{margin:16px clamp(20px,4vw,56px) 0;padding:12px 15px;border:1px solid rgba(242,191,98,.4);border-radius:12px;background:#f2bf6217;color:#ffe4ae;font-size:.82rem}.page{width:min(1420px,100%);margin:0 auto;padding:38px clamp(20px,4vw,56px) 70px;min-width:0}.mobile-nav{display:none}.eyebrow{display:inline-flex;align-items:center;gap:6px;margin-bottom:9px;color:var(--cyan);font-size:.72rem;font-weight:800;letter-spacing:.03em}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-header p{max-width:720px;margin-bottom:0}.panel{min-width:0;border:1px solid rgba(72,108,135,.45);border-radius:18px;background:linear-gradient(145deg,#122333f0,#0b1824f0);box-shadow:0 12px 38px #0000001f}.primary-button,.secondary-button,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 18px;border-radius:11px;border:1px solid transparent;font-weight:800;font-size:.82rem;cursor:pointer}.primary-button{background:var(--cyan);color:#05231d;box-shadow:0 10px 25px #55d6be21}.primary-button:hover{background:#6ce8d1}.primary-button:disabled{opacity:.45;cursor:not-allowed}.primary-button.wide{width:100%}.secondary-button{background:#152638;border-color:var(--line)}.danger-button{color:#ffc0c5;border-color:#ff727d66;background:#ff727d14}.text-link,.back-link{display:inline-flex;align-items:center;gap:7px;color:var(--cyan);font-size:.78rem;font-weight:800}.back-link{margin-bottom:18px}.gold-text{color:var(--gold)}.muted-copy{color:var(--muted)}.dashboard-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;min-height:280px;padding:42px 50px;margin-bottom:22px;border:1px solid rgba(85,214,190,.22);border-radius:22px;background:radial-gradient(circle at 15% 70%,rgba(85,214,190,.11),transparent 32%),linear-gradient(120deg,#102638,#0c1926)}.dashboard-hero:after{content:"";position:absolute;left:7%;top:-55%;width:310px;height:310px;border:1px solid rgba(85,214,190,.14);border-radius:50%;box-shadow:0 0 0 35px #55d6be06,0 0 0 80px #55d6be05}.dashboard-hero>div{position:relative;z-index:1}.dashboard-hero h1{max-width:670px}.dashboard-hero p{max-width:600px}.hero-progress{display:grid;place-items:center}.progress-ring{--progress: 0deg;width:150px;height:150px;border-radius:50%;display:grid;place-items:center;align-content:center;background:radial-gradient(circle closest-side,#102231 77%,transparent 79%),conic-gradient(var(--cyan) var(--progress),rgba(85,214,190,.12) 0);box-shadow:0 0 50px #55d6be17}.progress-ring span{font-size:1.55rem;font-weight:900}.progress-ring small{font-size:.7rem;margin-top:3px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid article{display:flex;align-items:center;gap:13px;min-width:0;padding:17px 18px;border:1px solid rgba(72,108,135,.38);border-radius:15px;background:#0f1c2ab8}.metric-icon{flex:0 0 auto;display:grid;place-items:center;width:42px;height:42px;border-radius:12px}.metric-icon svg{width:20px}.metric-icon.cyan{color:var(--cyan);background:#55d6be1a}.metric-icon.gold{color:var(--gold);background:#f2bf621a}.metric-icon.violet{color:var(--violet);background:#a38bff1a}.metric-icon.coral{color:#ff8f98;background:#ff727d1a}.metric-grid small,.metric-grid strong{display:block}.metric-grid small{font-size:.67rem}.metric-grid strong{font-size:1.16rem;margin-top:4px}.metric-grid em{font-style:normal;font-size:.67rem;color:var(--muted);font-weight:500}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:18px}.two-column>.panel{padding:24px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-heading h2{margin-bottom:0}.progress-wrap{min-width:0;margin:16px 0}.progress-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:.68rem;color:var(--muted)}.progress-meta b{color:var(--text)}.progress-track{height:6px;overflow:hidden;border-radius:99px;background:#08131e}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2fae98,var(--cyan))}.roadmap{display:flex;gap:4px;margin-top:24px;direction:rtl}.roadmap>div{flex:1;min-width:0;display:flex;align-items:flex-start;gap:8px;position:relative}.roadmap>div:not(:last-child):after{content:"";height:1px;position:absolute;top:13px;right:28px;left:-3px;background:var(--line)}.roadmap>div>span{position:relative;z-index:1;display:grid;place-items:center;flex:0 0 27px;height:27px;border-radius:50%;background:#1a2b3a;border:1px solid var(--line);font-size:.65rem}.roadmap .active>span{background:var(--cyan);color:#042019}.roadmap p{position:relative;z-index:1;margin:34px -34px 0 0;line-height:1.3}.roadmap strong,.roadmap small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.roadmap strong{font-size:.65rem}.roadmap small{font-size:.58rem;margin-top:4px}.curriculum-summary{display:grid;grid-template-columns:repeat(3,120px) minmax(250px,1fr);gap:20px;align-items:center;padding:20px 24px;margin-bottom:24px}.curriculum-summary>div strong,.curriculum-summary>div span{display:block}.curriculum-summary>div strong{font-size:1.35rem;color:var(--cyan)}.curriculum-summary>div span{font-size:.68rem;color:var(--muted);margin-top:4px}.module-list{display:grid;gap:16px}.module-section{overflow:hidden;border:1px solid rgba(72,108,135,.45);border-radius:18px;background:#0c1926c7}.module-section>header{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px 24px}.module-number{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#55d6be1a;color:var(--cyan);font-weight:900}.module-title-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.module-title-line h2{margin-bottom:0}.module-section header p{margin:6px 0 0;font-size:.78rem;line-height:1.7}.module-count{font-size:.7rem;color:var(--muted)}.lesson-list{border-top:1px solid rgba(72,108,135,.3)}.lesson-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 20px;align-items:center;gap:12px;padding:15px 24px;border-bottom:1px solid rgba(72,108,135,.18);transition:.15s}.lesson-row:last-child{border-bottom:0}.lesson-row:hover:not(.locked){background:#55d6be0a}.lesson-state{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#152739;color:var(--cyan)}.lesson-row strong,.lesson-row small{display:block}.lesson-row strong{font-size:.82rem}.lesson-row small{margin-top:5px;font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lesson-row.locked{opacity:.64;cursor:not-allowed}.planned-module{display:flex;align-items:center;gap:10px;padding:16px 24px;border-top:1px solid var(--line);color:var(--gold);font-size:.78rem}.status-tag{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid var(--line);border-radius:99px;color:var(--muted);font-size:.62rem;white-space:nowrap}.status-supported,.status-available,.status-mastered,.status-passed,.status-proficient{color:var(--cyan);border-color:#55d6be59;background:#55d6be0f}.status-planned,.status-locked,.status-not_assessed{color:var(--gold);border-color:#f2bf624d;background:#f2bf620d}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.lesson-content,.lesson-action{padding:26px}.lesson-kicker{display:flex;gap:14px;padding:17px;margin-bottom:28px;border-radius:14px;background:#55d6be0f;color:var(--cyan)}.lesson-kicker strong,.lesson-kicker small{display:block}.lesson-kicker strong{color:var(--text);margin-top:5px}.lesson-content h2{margin:27px 0 13px}.key-points{display:grid;gap:10px;list-style:none;padding:0}.key-points li{display:flex;align-items:flex-start;gap:9px;line-height:1.8;color:#cbd9e1;font-size:.83rem}.key-points svg{flex:0 0 auto;width:17px;color:var(--cyan);margin-top:5px}.concept-chips,.journal-facts{display:flex;flex-wrap:wrap;gap:7px}.concept-chips span,.journal-facts span{padding:6px 9px;border:1px solid var(--line);border-radius:8px;background:#0b1723;color:#b7c9d5;font-size:.68rem}.lesson-action{position:sticky;top:98px}.big-stat{display:block;font-size:2.4rem;margin:8px 0 1px}.education-note{margin:18px 0 0;padding-top:16px;border-top:1px solid var(--line);font-size:.68rem}.locked-notice{display:flex;gap:8px;padding:12px;border:1px solid rgba(242,191,98,.3);border-radius:10px;color:var(--gold);font-size:.72rem}.exercise-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.exercise-head h1{font-size:1.45rem;max-width:900px}.privacy-badge{padding:7px 10px;border:1px solid rgba(85,214,190,.25);border-radius:99px;color:var(--cyan);font-size:.65rem;white-space:nowrap}.exercise-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.exercise-card{padding:18px}.chart-viewport{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:14px;background:#09141f}.candle-chart{display:block;min-width:720px;width:100%;height:auto}.grid-line{stroke:#294158;stroke-width:1;opacity:.55}.chart-candle{cursor:pointer;outline:none}.chart-candle line{stroke-width:2}.chart-candle.up line,.chart-candle.up rect{stroke:var(--cyan);fill:#247e71}.chart-candle.down line,.chart-candle.down rect{stroke:var(--red);fill:#9f3e49}.chart-candle.selected rect{stroke:var(--gold);stroke-width:4;filter:drop-shadow(0 0 5px rgba(242,191,98,.5))}.zone{cursor:pointer}.zone rect{fill:#73a9ff1a;stroke:#73a9ff;stroke-width:1.5}.zone text{fill:#9bc0ff;font-size:12px}.zone.selected rect{stroke:var(--gold);stroke-width:3;fill:#f2bf621f}.axis-label{fill:#91a9b9;font-size:11px}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:16px}.choice-grid button{min-width:0;padding:12px;white-space:normal;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:11px;background:#101f2e;cursor:pointer}.choice-grid button.selected{border-color:var(--gold);box-shadow:inset 0 0 0 2px #f2bf6247;background:#19283a}.exercise-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:17px;padding-top:17px;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem}.answer-card{padding:26px;position:sticky;top:98px}.answer-card.correct{border-color:#55d6be73}.answer-card.incorrect{border-color:#ff727d66}.answer-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:18px;border-radius:14px;background:#55d6be1a;color:var(--cyan)}.answer-card.incorrect .answer-icon{color:var(--red);background:#ff727d1a}.answer-card p{font-size:.8rem}.answer-value{padding:13px;margin:18px 0;border-radius:11px;background:#0a1722}.answer-value small,.answer-value strong{display:block}.answer-value strong{margin-top:5px;color:var(--gold)}.answer-card .secondary-button,.answer-card .text-link{width:100%;margin-top:10px}.loading-state,.app-loading,.configuration-error{min-height:60vh;display:grid;place-items:center;align-content:center;gap:10px;text-align:center}.loading-state svg{color:var(--cyan)}.empty-state{min-height:240px;display:grid;place-items:center;align-content:center;text-align:center;padding:30px;color:var(--gold)}.empty-state h3{color:var(--text);margin:12px 0 5px}.empty-state p{max-width:420px;font-size:.78rem}.form-error{padding:11px 13px;margin-top:12px;border:1px solid rgba(255,114,125,.4);border-radius:10px;background:#ff727d14;color:#ffc2c7;font-size:.72rem}.progress-list{display:grid}.progress-list>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,1fr);gap:24px;align-items:center;padding:15px 0;border-bottom:1px solid rgba(72,108,135,.22)}.progress-list strong,.progress-list small{display:block}.progress-list strong{font-size:.8rem}.progress-list small{font-size:.65rem;margin-top:5px}.topic-grid,.competency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:24px}.topic-grid article{display:flex;justify-content:space-between;padding:12px;border-radius:10px;background:#0b1723}.topic-grid strong{font-size:.7rem}.topic-grid span{color:var(--cyan);font-weight:900}.mastery-hero{display:flex;align-items:center;gap:22px;padding:25px;margin-bottom:18px}.mastery-hero>svg{width:48px;height:48px;color:var(--gold)}.mastery-hero>div{flex:1}.mastery-hero strong,.mastery-hero small{display:block}.mastery-hero strong{font-size:1.35rem;margin-top:4px}.competency-grid{margin-top:0}.competency-grid article{padding:20px}.competency-score{display:block;font-size:1.8rem;margin:20px 0 3px}.safety-banner{display:flex;align-items:center;gap:14px;margin-top:18px;padding:18px 20px;border:1px solid rgba(85,214,190,.25);border-radius:14px;background:#55d6be0d;color:var(--cyan)}.safety-banner strong{color:var(--text)}.safety-banner p{margin:4px 0 0;font-size:.7rem}.journal-form{padding:24px;margin-bottom:18px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0}.check-grid label{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:.75rem;cursor:pointer}.check-grid input{position:absolute;opacity:0}.check-grid label>span{display:grid;place-items:center;width:20px;height:20px;border:1px solid var(--line);border-radius:6px}.check-grid label>span svg{opacity:0}.check-grid label.checked{color:var(--text);border-color:#55d6be59;background:#55d6be0d}.check-grid label.checked>span{background:var(--cyan);color:#05231d}.check-grid label.checked>span svg{opacity:1}.form-actions{display:flex;justify-content:flex-end;gap:9px}.journal-list{display:grid;gap:10px}.journal-row{display:flex;align-items:flex-start;gap:14px;padding:18px}.journal-row>div{flex:1}.journal-row strong,.journal-row small{display:block}.journal-row small{display:flex;align-items:center;gap:5px;margin:5px 0 11px;font-size:.66rem}.list-footnote{text-align:center;font-size:.68rem;margin-top:18px}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.settings-card{display:flex;align-items:flex-start;gap:13px;padding:20px}.settings-card>div:nth-child(2){flex:1}.settings-card h2{margin-bottom:6px}.settings-card p{margin:0;font-size:.78rem;color:var(--text)}.settings-card small{font-size:.65rem;line-height:1.7}.settings-icon{display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:11px;background:#55d6be17;color:var(--cyan)}.privacy-panel{padding:25px;margin-top:16px}.privacy-panel ul{display:grid;gap:9px;color:#c3d2dc;font-size:.77rem;line-height:1.7}.privacy-panel .danger-button{margin-top:15px}.privacy-panel>small{display:block;margin-top:9px}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);overflow:hidden}.login-story{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,7vw,100px);background:radial-gradient(circle at 45% 35%,rgba(38,105,122,.3),transparent 34%),linear-gradient(145deg,#0b1c2b,#071019)}.login-brand{position:absolute;right:clamp(32px,6vw,90px);top:34px;font-weight:800}.login-story h1{position:relative;z-index:2;font-size:clamp(2.3rem,4.3vw,4.6rem);line-height:1.35;letter-spacing:-.04em}.login-story h1 em{font-style:normal;color:var(--cyan)}.login-story>p{position:relative;z-index:2;max-width:630px;font-size:.92rem}.hero-orbit{position:absolute;inset:80px 6% auto auto;width:min(52vw,690px);height:500px;opacity:.9}.orbit{position:absolute;border:1px solid rgba(85,214,190,.12);border-radius:50%;inset:15% 3%}.orbit.two{inset:3% 18%;border-color:#f2bf6217}.hero-chart{position:absolute;inset:18% 8%;direction:ltr}.hero-chart svg{width:100%;filter:drop-shadow(0 16px 26px rgba(0,0,0,.4))}.hero-chart path{fill:none;stroke:var(--cyan);stroke-width:3}.hero-chart circle{fill:#0b1c2b;stroke:var(--gold);stroke-width:3}.floating-card{position:absolute;left:22%;top:18%;display:grid;grid-template-columns:auto auto;gap:3px 8px;padding:11px 14px;border:1px solid rgba(85,214,190,.24);border-radius:12px;background:#0a1925d9;backdrop-filter:blur(12px);direction:rtl;box-shadow:var(--shadow)}.floating-card svg{grid-row:1/3;width:18px;color:var(--gold)}.floating-card span{font-size:.6rem;color:var(--muted)}.floating-card strong{font-size:.72rem}.trust-row{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:15px;margin-top:28px}.trust-row span{display:flex;align-items:center;gap:7px;color:#b7c9d4;font-size:.7rem}.trust-row svg{width:17px;color:var(--cyan)}.login-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;background:#0c1723}.login-card{width:min(390px,100%);padding:34px;border:1px solid rgba(72,108,135,.45);border-radius:20px;background:linear-gradient(145deg,#122334,#0d1b28);box-shadow:var(--shadow)}.login-card h2{font-size:1.55rem;line-height:1.6}.login-card>p{font-size:.8rem}.google-button{width:100%;display:grid;grid-template-columns:28px 1fr 24px;align-items:center;gap:10px;padding:12px 14px;margin-top:24px;border:1px solid #40586b;border-radius:11px;background:#f7fafc;color:#15212b;cursor:pointer;font-weight:800}.google-button:hover{background:#fff}.google-g{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-family:Arial;font-weight:900;color:#4285f4}.privacy-copy{display:flex;align-items:flex-start;gap:9px;padding-top:18px;margin-top:20px;border-top:1px solid var(--line);color:var(--cyan)}.privacy-copy p{margin:0;font-size:.66rem;line-height:1.8}.privacy-copy svg{flex:0 0 auto}.login-footer{margin-top:18px}.configuration-error{padding:30px}.ai-tutor-panel{margin-top:22px;min-width:0}.ai-tutor-panel>header{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.ai-tutor-panel h2,.ai-tutor-panel p{margin:0}.ai-tutor-panel header p{margin-top:4px;color:var(--muted)}.ai-tutor-icon{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border:1px solid rgba(64,211,218,.28);border-radius:12px;color:var(--cyan);background:#40d3da14}.ai-message{width:min(100%,720px);margin:10px 0;padding:13px 15px;border-radius:14px}.ai-message small{display:block;margin-bottom:5px;color:var(--muted)}.ai-message p{white-space:pre-wrap;overflow-wrap:anywhere}.learner-message{margin-right:auto;background:#748aa31f}.tutor-message{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-left:auto;border:1px solid rgba(64,211,218,.18);background:#40d3da0f}.tutor-message small,.tutor-message p,.tutor-message strong{flex-basis:100%}.ai-tutor-panel form{margin-top:18px}.ai-mode-picker{display:inline-flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#040b1459}.ai-mode-picker button{padding:7px 11px;border:0;border-radius:9px;color:var(--muted);background:transparent;cursor:pointer}.ai-mode-picker button.active{color:var(--text);background:#40d3da1f}.ai-tutor-panel label{display:block;margin-bottom:7px;color:var(--muted);font-size:.78rem}.ai-input-row{display:flex;align-items:stretch;gap:10px;min-width:0}.ai-input-row textarea{min-width:0;flex:1 1 auto;resize:vertical}.ai-error{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--danger)}.ai-error button{display:inline-flex;gap:6px;align-items:center;border:0;color:var(--cyan);background:transparent;cursor:pointer}@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}.login-page{grid-template-columns:1fr 400px}.hero-orbit{opacity:.55}.curriculum-summary{grid-template-columns:repeat(3,1fr)}.curriculum-summary .progress-wrap{grid-column:1/-1}}@media(max-width:800px){.app-shell{display:block}.sidebar{display:none}.topbar{height:66px;padding:0 16px}.user-chip div{display:none}.page{padding:24px 15px 90px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);right:0;bottom:0;left:0;height:68px;padding:7px 8px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#08111cf5;backdrop-filter:blur(16px);z-index:20}.mobile-nav a{display:grid;place-items:center;align-content:center;gap:4px;color:var(--muted);font-size:.58rem}.mobile-nav a.active{color:var(--cyan)}.dashboard-hero{grid-template-columns:1fr;padding:28px;min-height:auto}.hero-progress{display:none}.two-column,.lesson-layout,.exercise-layout{grid-template-columns:1fr}.lesson-action,.answer-card{position:static}.settings-grid,.login-page{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:24px}.progress-list>div{grid-template-columns:1fr;gap:0}.exercise-head{align-items:flex-start;flex-direction:column}.curriculum-summary{grid-template-columns:repeat(3,1fr)}.module-section>header{grid-template-columns:38px minmax(0,1fr)}.module-count{grid-column:2}.lesson-row{padding:14px;grid-template-columns:32px minmax(0,1fr) auto}.lesson-row>svg{display:none}}@media(max-width:520px){h1{font-size:1.65rem}.page-header{align-items:flex-start;flex-direction:column}.metric-grid,.metric-grid.three{grid-template-columns:1fr 1fr}.metric-grid article{padding:13px}.metric-grid small{font-size:.6rem}.two-column>.panel{padding:18px}.curriculum-summary{grid-template-columns:1fr 1fr;padding:16px}.curriculum-summary .progress-wrap{grid-column:1/-1}.module-section>header{padding:17px 14px}.lesson-row{grid-template-columns:30px minmax(0,1fr);gap:10px}.lesson-row .status-tag{grid-column:2}.check-grid{grid-template-columns:1fr}.exercise-submit{align-items:stretch;flex-direction:column}.exercise-submit .primary-button{width:100%}.privacy-badge{white-space:normal}.topbar .sync-pill span:nth-child(2){max-width:105px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.login-card{padding:25px 20px}.choice-grid{grid-template-columns:1fr}.mastery-hero{align-items:flex-start}.journal-row{padding:14px}.ai-input-row{flex-direction:column}.ai-input-row .primary-button{width:100%}.ai-error{align-items:flex-start;flex-direction:column}}@media(max-width:360px){.metric-grid,.metric-grid.three{grid-template-columns:1fr}.curriculum-summary{grid-template-columns:1fr 1fr}.topbar-actions{gap:6px}.topbar{padding:0 10px}.mobile-nav span{font-size:.52rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.pwa-update-notice{position:fixed;z-index:1000;inset-inline:16px;bottom:16px;display:flex;align-items:center;justify-content:center;gap:12px;max-width:620px;margin-inline:auto;padding:14px 16px;color:#e8f7ff;background:#102233;border:1px solid #2c6077;border-radius:14px;box-shadow:0 16px 45px #00000059}.pwa-update-notice span{min-width:0;flex:1}.pwa-update-notice button{min-height:40px;padding:8px 12px;color:inherit;background:#17384d;border:1px solid #3b7895;border-radius:9px;cursor:pointer}.pwa-update-notice button:first-of-type{color:#05202c;background:#5ee1f0;border-color:#5ee1f0;font-weight:700}.pwa-update-notice button:disabled{cursor:wait;opacity:.7}@media(max-width:520px){.pwa-update-notice{align-items:stretch;flex-wrap:wrap}.pwa-update-notice span{flex-basis:100%}}
