@font-face{font-family:Vazirmatn;src:url(/fonts/vazirmatn-latin.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+2000-206f,u+2074,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215}@font-face{font-family:Vazirmatn;src:url(/fonts/vazirmatn-arabic.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:u+06??,u+0750-077f,u+08a0-08ff,u+200c-200e,u+fb50-fdff,u+fe70-feff}@font-face{font-family:Lalezar;src:url(/fonts/lalezar-arabic.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:u+06??,u+0750-077f,u+200c-200e,u+2010-2011,u+fb50-fdff,u+fe70-fefc}@font-face{font-family:Lalezar;src:url(/fonts/lalezar-latin.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+2000-206f,u+20ac,u+2122}@font-face{font-family:"Instrument Serif";src:url(/fonts/instrument-serif.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Instrument Serif";src:url(/fonts/instrument-serif-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}:root{--font-sans:"Vazirmatn",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-fa:"Vazirmatn",ui-sans-serif,system-ui,Tahoma,sans-serif;--font-brand:"Lalezar","Vazirmatn",system-ui,sans-serif;--font-serif:"Instrument Serif",Georgia,serif;--radius:18px;--radius-sm:13px;--ease:cubic-bezier(0.22,1,0.36,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--speed:0.45s}[data-theme=light]{--bg:#ffffff;--bg-tint:rgba(16,163,127,0.025);--surface:#ffffff;--surface-2:#f2f2f2;--surface-solid:#ffffff;--sheet-bg:#ffffff;--text:#0d0d0d;--text-soft:#5d5d63;--text-faint:#9b9ba3;--border:rgba(13,13,13,0.09);--border-strong:rgba(13,13,13,0.18);--accent:#10a37f;--accent-deep:#0c8265;--accent-soft:rgba(16,163,127,0.09);--on-accent:#ffffff;--inverse:#0d0d0d;--on-inverse:#ffffff;--red:#d6455d;--red-soft:rgba(214,69,93,0.09);--green:#16965e;--green-soft:rgba(22,150,94,0.1);--shadow:0 1px 2px rgba(13,13,13,0.04),0 12px 32px -16px rgba(13,13,13,0.12);--shadow-sm:0 1px 2px rgba(13,13,13,0.04),0 5px 16px -8px rgba(13,13,13,0.09);--orb-1:#41d1a4;--orb-2:#0e8f70;color-scheme:light}[data-theme=dark]{--bg:#212121;--bg-tint:rgba(64,208,165,0.03);--surface:#2b2b2b;--surface-2:#393939;--surface-solid:#2b2b2b;--sheet-bg:#171717;--text:#ececec;--text-soft:#b4b4b4;--text-faint:#7f7f87;--border:rgba(255,255,255,0.1);--border-strong:rgba(255,255,255,0.2);--accent:#2ebf94;--accent-deep:#239e7a;--accent-soft:rgba(46,191,148,0.13);--on-accent:#06251c;--inverse:#ececec;--on-inverse:#0d0d0d;--red:#ef7d82;--red-soft:rgba(239,125,130,0.13);--green:#4ade9c;--green-soft:rgba(74,222,156,0.12);--shadow:0 1px 2px rgba(0,0,0,0.25),0 10px 36px -14px rgba(0,0,0,0.5);--shadow-sm:0 1px 2px rgba(0,0,0,0.2),0 5px 16px -8px rgba(0,0,0,0.35);--orb-1:#4ad3a8;--orb-2:#1c8a6d;color-scheme:dark}[data-theme=paper]{--bg:#f3e7d3;--bg-tint:rgba(184,92,36,0.05);--surface:#fbf5e8;--surface-2:#ece1ca;--surface-solid:#fbf5e8;--sheet-bg:#f7efdd;--text:#382c1e;--text-soft:#84745a;--text-faint:#b3a283;--border:rgba(90,70,40,0.11);--border-strong:rgba(90,70,40,0.22);--accent:#b85c24;--accent-deep:#97481a;--accent-soft:rgba(184,92,36,0.1);--on-accent:#fff6ea;--red:#bb3a2e;--red-soft:rgba(187,58,46,0.1);--green:#5a7d3c;--green-soft:rgba(90,125,60,0.12);--inverse:#382c1e;--on-inverse:#fff6ea;--shadow:0 1px 2px rgba(90,70,40,0.05),0 10px 32px -14px rgba(90,70,40,0.14);--shadow-sm:0 1px 2px rgba(90,70,40,0.04),0 5px 16px -8px rgba(90,70,40,0.12);--orb-1:#e08a4c;--orb-2:#a34a17;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}html{-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background var(--speed) var(--ease),color var(--speed) var(--ease);overflow:hidden;overscroll-behavior:none;touch-action:pan-y}body:before{content:"";position:fixed;inset:0;background:radial-gradient(80% 50% at 50% -10%,var(--bg-tint),transparent 70%);z-index:-1;pointer-events:none;transition:background var(--speed) var(--ease)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;user-select:none;-webkit-user-select:none;touch-action:manipulation}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus,input:focus,textarea:focus{outline:none}input:focus-visible,textarea:focus-visible{outline:none}input,textarea{font-family:inherit;color:inherit}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}::-webkit-scrollbar-track{background:transparent}.grad-text{color:var(--accent)}.fade-word{display:inline-block;animation:word-in .4s var(--ease) both}@keyframes word-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fade-word{animation:none}}.app{height:100dvh;display:flex;flex-direction:column;max-width:720px;margin:0 auto;padding:env(safe-area-inset-top) 20px 0;position:relative}.topbar{justify-content:space-between;gap:10px;padding:18px 4px 10px;flex-shrink:0;animation:drop-in .55s var(--ease) both}.daily,.topbar{display:flex;align-items:center}.daily{gap:7px;padding:5px 12px 5px 6px;border-radius:999px;background:var(--surface);border:1px solid var(--border);text-decoration:none;color:var(--text);transition:transform .2s var(--ease),border-color .2s var(--ease)}.daily:hover{border-color:var(--border-strong)}.daily:active{transform:scale(.95)}.daily-ring{width:26px;height:26px;display:grid;place-items:center}.daily-ring svg{transform:rotate(-90deg)}.daily-ring .bgc{stroke:var(--surface-2)}.daily-ring .prc{stroke:var(--accent);transition:stroke-dashoffset .6s var(--ease)}.daily-n{font-family:var(--font-fa);font-size:13px;font-weight:700;display:flex;align-items:center;gap:3px}.daily.done .prc{stroke:var(--green)}.daily.done{animation:goal-pop .5s var(--ease-spring)}@keyframes goal-pop{0%{transform:scale(1)}40%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes drop-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.brand{display:flex;align-items:center;gap:11px;font-size:17px}.brand span{font-weight:800;font-size:17px;letter-spacing:-.01em;line-height:1}.brand small,.brand span{font-family:var(--font-fa)}.brand small{font-weight:400;color:var(--text-faint);font-size:12.5px}.topbar-actions{gap:8px}.topbar-actions,.topbar-side{display:flex;align-items:center}.topbar-side{gap:6px}.drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:70;display:flex;justify-content:flex-end}.drawer{width:min(320px,85vw);height:100%;background:var(--sheet-bg);border-inline-start:1px solid var(--border);display:flex;flex-direction:column;padding:14px 12px calc(14px + env(safe-area-inset-bottom));font-family:var(--font-fa)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:4px 10px 12px;font-size:16px;font-weight:800}.drawer-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.drawer-empty{color:var(--text-faint);font-size:13.5px;text-align:center;padding:40px 10px;line-height:1.8}.chat-row{display:flex;align-items:center;gap:8px;width:100%;padding:11px 12px;border-radius:12px;font-family:var(--font-fa);font-size:14px;color:var(--text);text-align:right;transition:background .15s var(--ease)}.chat-row.on,.chat-row:hover{background:var(--surface-2)}.chat-row-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-row-del{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;color:var(--text-faint);opacity:0;transition:opacity .15s var(--ease),color .15s var(--ease)}.chat-row.on .chat-row-del,.chat-row:hover .chat-row-del{opacity:1}.chat-row-del:hover{color:var(--red)}.drawer-foot{border-top:1px solid var(--border);padding-top:10px}.drawer-user{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border-radius:12px;font-family:var(--font-fa);font-size:14.5px;transition:background .15s var(--ease)}.drawer-user:hover{background:var(--surface-2)}.drawer-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:800;font-size:14px;flex-shrink:0}.drawer-username{flex:1;text-align:right;font-weight:700;color:var(--text)}.drawer-settings{font-size:12.5px;color:var(--text-faint)}.icon-btn{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:var(--text-soft);transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn:active{transform:scale(.92)}.orb{position:relative;flex-shrink:0;display:grid;place-items:center}.orb-glow{inset:-45%;background:radial-gradient(circle,var(--orb-1),transparent 60%);filter:blur(10px);z-index:-1}.orb-core,.orb-glow{position:absolute;border-radius:50%}.orb-core{inset:0;overflow:hidden;background:var(--orb-2);box-shadow:inset 0 2px 4px #ffffff55,0 10px 26px -8px var(--orb-2)}.orb-blob{position:absolute;inset:-10%;border-radius:50%;filter:blur(6px);transform-origin:center}.orb[data-size=lg] .orb-blob{filter:blur(16px)}.orb-blob.b1{background:radial-gradient(circle at 30% 32%,var(--orb-1),transparent 46%)}.orb-blob.b2{background:radial-gradient(circle at 72% 36%,var(--accent),transparent 48%)}.orb-blob.b3{background:radial-gradient(circle at 50% 76%,var(--orb-1),transparent 50%);opacity:.85}.orb-sheen{background:radial-gradient(circle at 32% 26%,#ffffffcc,transparent 42%);opacity:.7}.orb-ring,.orb-sheen{position:absolute;inset:0;border-radius:50%}.orb-ring{border:2px solid var(--orb-1);z-index:-1}.orb-stage{position:relative;display:grid;place-items:center}.orb-stage:before{content:"";position:absolute;inset:-45%;border-radius:50%;background:radial-gradient(circle,var(--accent-soft),transparent 62%);filter:blur(20px);pointer-events:none}.theme-switch{display:flex;gap:5px;padding:5px;background:var(--surface);border:1px solid var(--border);border-radius:999px}.theme-dot{width:18px;height:18px;border-radius:50%;position:relative;transition:transform .2s var(--ease)}.theme-dot:active{transform:scale(.85)}.theme-dot[data-on=true]{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--accent)}.theme-dot.t-light{background:linear-gradient(135deg,#ffffff,#e7e7e3)}.theme-dot.t-dark{background:linear-gradient(135deg,#252a36,#0d0f15)}.theme-dot.t-paper{background:linear-gradient(135deg,#fbf2dd,#d9a86b)}.chat{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;flex-direction:column;gap:18px;padding:18px 4px 20px;scroll-behavior:smooth}.chat,.row{display:flex}.row{gap:10px;align-items:flex-end}.row.me{justify-content:flex-end}.bubble{max-width:80%;line-height:1.65;font-size:16px;letter-spacing:-.003em}.bubble.ai{background:transparent;padding:2px 0;max-width:100%;color:var(--text);font-size:16.5px;line-height:1.75}.bubble.me{background:var(--surface-2);color:var(--text);padding:11px 16px;border-radius:18px;border-bottom-right-radius:6px}.correction{margin-top:8px;align-self:flex-end;max-width:78%;background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.correction-head{display:flex;align-items:center;gap:7px;padding:10px 14px 8px;font-size:12.5px;color:var(--text-soft);border-bottom:1px solid var(--border)}.correction-body{padding:12px 14px;gap:12px}.correction-body,.fix{display:flex;flex-direction:column}.fix{gap:5px}.fix-line{font-size:15px;line-height:1.5}.wrong{color:var(--red);text-decoration:line-through;text-decoration-color:var(--red);background:var(--red-soft)}.right,.wrong{padding:1px 6px;border-radius:6px}.right{color:var(--green);background:var(--green-soft);font-weight:500}.why{font-family:var(--font-fa);direction:rtl;font-size:13px;line-height:1.7}.tag,.why{color:var(--text-soft)}.tag{display:inline-block;font-size:11px;background:var(--surface-2);padding:2px 9px;border-radius:999px;align-self:flex-start}.perfect{margin-top:6px;align-self:flex-end;font-size:12.5px;font-family:var(--font-fa);color:var(--green);display:flex;align-items:center;gap:5px}.starters{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-start;max-width:92%;margin-top:2px}.starter-chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:10px 16px;font-size:14px;color:var(--text);transition:border-color .2s var(--ease),color .2s var(--ease)}.starter-chip:hover{border-color:var(--accent);color:var(--accent)}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:6px 4px 16px}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:18px 16px}.metric-n{font-size:32px;font-weight:800;letter-spacing:-.03em;line-height:1}.metric-l{font-family:var(--font-fa);font-size:13px;color:var(--text-soft);margin-top:7px}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px;margin:0 4px 14px}.chart-title{font-family:var(--font-fa);font-size:15px;font-weight:700;margin-bottom:16px}.chart-empty{font-size:13px;padding:20px;width:100%;text-align:center}.chart-empty,.chart-foot{font-family:var(--font-fa);color:var(--text-faint)}.chart-foot{font-size:12px;margin-top:14px;line-height:1.7}.bars{display:flex;align-items:flex-end;gap:5px;height:110px}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.bar-track{flex:1;width:100%;display:flex;align-items:flex-end;min-height:0}.bar-fill{width:100%;min-height:4px;border-radius:5px 5px 2px 2px;background:var(--accent)}.bar-lbl{font-size:10px;color:var(--text-faint)}.conc-list{display:flex;flex-direction:column;gap:11px}.conc-row{display:flex;align-items:center;gap:10px}.conc-name{font-size:12.5px;color:var(--text);width:38%;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}.conc-track{flex:1;height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.conc-fill{height:100%;border-radius:999px;background:var(--accent)}.conc-n{font-size:12px;font-weight:600;color:var(--text-soft);width:22px;text-align:center;flex-shrink:0}.pay-banner{font-family:var(--font-fa);font-size:14px;border-radius:14px;padding:13px 16px;margin:0 4px 14px;line-height:1.6}.pay-banner.good{background:var(--green-soft);color:var(--green)}.pay-banner.bad{background:var(--red-soft);color:var(--red)}.pay-active{display:flex;align-items:center;gap:8px;font-family:var(--font-fa);font-size:14px;color:var(--green);background:var(--green-soft);border-radius:14px;padding:12px 16px;margin:0 4px 14px}.scene-picker{align-self:stretch;margin-top:6px}.talk-cta{width:100%;display:flex;align-items:center;gap:14px;padding:13px 15px;border-radius:999px;background:linear-gradient(180deg,var(--accent),var(--accent-deep));color:var(--on-accent);margin-bottom:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 28px -12px var(--accent);transition:transform .18s var(--ease),box-shadow .25s var(--ease),filter .2s var(--ease)}.talk-cta:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 16px 34px -12px var(--accent)}.talk-cta:active{transform:scale(.985)}.talk-cta-ic{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;flex-shrink:0}.talk-cta span{font-family:var(--font-fa);font-size:17px;font-weight:800;display:flex;flex-direction:column;align-items:flex-start;line-height:1.35}.talk-cta small{font-weight:400;font-size:12.5px;opacity:.8}.scene-hint{font-family:var(--font-fa);font-size:13px;font-weight:600;color:var(--text-faint);text-align:right;margin:2px 4px 10px}.char-row{display:flex;gap:9px;margin-bottom:12px}.char{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;padding:13px 6px 11px;border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease),background .2s var(--ease),transform .18s var(--ease),box-shadow .2s var(--ease)}.char:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow)}.char.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent),var(--shadow-sm)}.char-dot{width:42px;height:42px;border-radius:50%;box-shadow:inset 0 3px 6px rgba(255,255,255,.45),inset 0 -5px 10px rgba(0,0,0,.18);transition:transform .25s var(--ease-spring)}.char.on .char-dot{transform:scale(1.08)}.char-name{font-weight:700;color:var(--text)}.char-bio,.char-name{font-family:var(--font-fa);font-size:12.5px}.char-bio{direction:rtl;color:var(--text-soft);line-height:1.8;margin:0 4px 16px;text-align:right;min-height:38px}.scene-grid{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;margin:0 -4px;padding:4px 4px 12px;scrollbar-width:none;touch-action:pan-x pan-y}.scene-grid::-webkit-scrollbar{display:none}.scene-card{--dot:var(--accent);scroll-snap-align:start;flex:0 0 auto;min-width:138px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 16px 13px;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm);text-align:right;transition:border-color .2s var(--ease),background .2s var(--ease),transform .18s var(--ease),box-shadow .2s var(--ease)}.scene-card:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dot);margin-bottom:7px}.scene-card:nth-child(4n+2){--dot:#f59e0b}.scene-card:nth-child(4n+3){--dot:#8b5cf6}.scene-card:nth-child(4n+4){--dot:#3b82f6}.scene-card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow)}.scene-card:active{transform:scale(.97)}.scene-card.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent),var(--shadow-sm)}.scene-title{font-family:var(--font-fa);font-size:14px;font-weight:700;color:var(--text);white-space:nowrap}.scene-en{font-size:11px;color:var(--text-faint);letter-spacing:.01em;white-space:nowrap}.scene-card.on .scene-en{color:var(--accent)}.scene-or{text-align:center;font-family:var(--font-fa);font-size:12.5px;color:var(--text-faint);margin-top:16px}.typing{display:flex;gap:4px;padding:14px 16px}.typing span{width:6px;height:6px;border-radius:50%;background:var(--text-faint);animation:blink 1.4s infinite both}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.composer{flex-shrink:0;padding:8px 0 calc(16px + env(safe-area-inset-bottom));animation:rise-up .55s var(--ease) .06s both}@keyframes rise-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.composer-inner{display:flex;align-items:flex-end;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:8px 8px 8px 18px;box-shadow:var(--shadow);transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}.composer-inner:focus-within{border-color:var(--accent)}.composer textarea{flex:1;border:none;outline:none;resize:none;background:transparent;font-size:16px;line-height:1.5;max-height:140px;padding:9px 0}.composer textarea::placeholder{color:var(--text-faint)}.send{width:42px;height:42px;border-radius:50%;background:var(--inverse);color:var(--on-inverse);display:grid;place-items:center;flex-shrink:0;transition:transform .2s var(--ease-spring),opacity .2s var(--ease),background .2s var(--ease)}.send:disabled{opacity:.25;cursor:default}.send:not(:disabled):hover{transform:scale(1.05)}.send:not(:disabled):active{transform:scale(.9)}.onboard{height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:22px;padding:24px;max-width:440px;margin:0 auto;position:relative}.onboard h1{font-size:32px;font-weight:800;letter-spacing:-.02em;line-height:1.45}.onboard p{color:var(--text-soft);font-size:15px;line-height:1.9;max-width:330px;margin:10px auto 0}.onboard .field{width:100%;display:flex;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:7px 7px 7px 8px;box-shadow:var(--shadow);transition:border-color .25s var(--ease);margin-top:6px}.onboard .field:focus-within{border-color:var(--accent)}.onboard input{flex:1;border:none;outline:none;background:transparent;font-size:16px;padding:13px 14px;min-width:0}.onboard input::placeholder{color:var(--text-faint)}.hero-points{list-style:none;display:flex;flex-direction:column;gap:9px;margin:16px auto 0;max-width:320px;text-align:right}.hero-points li{font-family:var(--font-fa);font-size:13.5px;color:var(--text-soft);line-height:1.7;display:flex;align-items:flex-start;gap:9px}.hero-points li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:8px}.hero-trust{font-size:12px}.hero-eyebrow,.hero-trust{font-family:var(--font-fa);color:var(--text-faint)}.hero-eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;margin-bottom:10px}.hero-eyebrow b{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:15px;letter-spacing:.02em;color:var(--accent)}.theme-corner{position:fixed;top:16px;inset-inline-start:16px;z-index:20}.btn-primary{background:var(--accent);color:var(--on-accent);border-radius:15px;padding:0 22px;font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:8px;height:48px;transition:transform .2s var(--ease),opacity .2s var(--ease),background .2s var(--ease)}.btn-primary:hover:not(:disabled){background:var(--accent-deep)}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.4}.page{height:100dvh;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;max-width:720px;margin:0 auto;padding:0 20px 60px}.page-head{padding:26px 4px 10px}.page-head h1{font-size:27px;font-weight:800;letter-spacing:-.02em;line-height:1.4}.page-head p{color:var(--text-soft);margin-top:6px;font-size:14.5px;line-height:1.8}.stats{display:flex;gap:12px;margin:18px 4px}.stat{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:16px}.stat .num{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1}.stat .lbl{font-size:12.5px;color:var(--text-soft);margin-top:5px}.lesson-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:19px;margin:0 4px 14px;transition:border-color .2s var(--ease),transform .18s var(--ease)}button.lesson-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.lesson-card .cat{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.lesson-card h3{font-size:17px;font-weight:700;letter-spacing:-.01em}.lesson-card .meta{font-size:13px;color:var(--text-soft);margin-top:4px}.bar{height:6px;background:var(--surface-2);overflow:hidden;margin-top:12px}.bar,.bar i{border-radius:999px}.bar i{display:block;height:100%;background:var(--accent);transition:width .6s var(--ease)}.plan-best{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),var(--shadow)}.plan-best .tag{background:var(--accent);color:var(--on-accent)}.empty{text-align:center;color:var(--text-soft);padding:60px 20px;line-height:1.7}.sheet-backdrop{position:fixed;inset:0;background:rgba(5,7,12,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--sheet-bg);width:100%;max-width:600px;max-height:92dvh;overflow-y:auto;border:1px solid var(--border);border-bottom:none;border-radius:26px 26px 0 0;padding:10px 22px 40px;box-shadow:0 -16px 60px rgba(0,0,0,.35)}.sheet-grip{width:40px;height:5px;border-radius:999px;background:var(--border-strong);margin:10px auto 18px}.sheet h2{font-size:22px;font-weight:800;letter-spacing:-.02em;margin-bottom:14px}.lesson-prose{font-size:15.5px;line-height:1.7;color:var(--text)}.lesson-prose .fa{font-family:var(--font-fa);direction:rtl;color:var(--text-soft);display:block;margin:6px 0 16px}.lesson-prose .ex{background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:11px 14px;margin:8px 0}.quiz-q{margin-top:22px}.quiz-q .q{font-size:16px;font-weight:600;margin-bottom:12px}.option{display:block;width:100%;text-align:left;background:var(--surface);border:1.5px solid var(--border);border-radius:14px;padding:13px 16px;margin-bottom:9px;font-size:15px;transition:border-color .2s var(--ease),background .2s var(--ease),transform .15s var(--ease)}.option:hover{border-color:var(--border-strong)}.option:active{transform:scale(.99)}.option[data-state=correct]{border-color:var(--green);background:var(--green-soft);color:var(--green)}.option[data-state=wrong]{border-color:var(--red);background:var(--red-soft);color:var(--red);animation:shake .4s var(--ease)}.option[data-state=picked]{border-color:var(--accent)}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.result{text-align:center;padding:30px 10px}.result .big{font-size:56px;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--accent)}.result .sub{color:var(--text-soft);margin-top:10px;margin-bottom:22px}.tabbar{display:none}.spinner{width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.center-load{display:grid;place-items:center;padding:60px}.spinner.sm{width:16px;height:16px;border-width:2px}.ai-row{align-items:center}.say-btn{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:var(--text-faint);flex-shrink:0;transition:color .2s var(--ease),background .2s var(--ease),transform .15s var(--ease)}.say-btn:hover{color:var(--accent);background:var(--accent-soft)}.say-btn:active{transform:scale(.88)}.corr{align-self:flex-end;max-width:82%;margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:16px;border-top-right-radius:6px;padding:12px 15px}.corr-orig{font-size:14px;line-height:1.7;color:var(--text-faint)}.corr-orig .bad{color:var(--red);border-radius:6px;padding:1px 5px;font:inherit;cursor:pointer;text-decoration:line-through;text-decoration-color:var(--red);text-decoration-thickness:1.5px}.corr-orig .bad.on{background:var(--red)!important;color:#fff;text-decoration:none}.corr-fix-row{display:flex;align-items:flex-start;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid var(--border)}.corr-arrow{line-height:1.5;flex-shrink:0}.corr-arrow,.corr-fix{color:var(--green);font-size:16px}.corr-fix{line-height:1.55;font-weight:600;letter-spacing:-.005em}.corr-why{overflow:hidden}.corr-why-inner{font-family:var(--font-fa);direction:rtl;font-size:13px;line-height:1.85;color:var(--text-soft);background:var(--surface-2);border-radius:11px;padding:10px 13px;display:flex;flex-direction:column;gap:4px}.corr-why-tag{color:var(--accent);font-weight:700;font-size:12px}.tool-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:var(--text-soft);flex-shrink:0;transition:color .2s var(--ease),background .2s var(--ease),transform .15s var(--ease)}.tool-btn:hover{background:var(--surface-2);color:var(--text)}.tool-btn:active{transform:scale(.9)}.tool-btn.on{background:var(--accent-soft);color:var(--accent)}.tool-btn.mic.live{background:var(--red);color:#fff;animation:pulse 1.3s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--red-soft)}50%{box-shadow:0 0 0 8px transparent}}.assist{overflow:hidden;margin-bottom:8px}.assist-head{font-family:var(--font-fa);direction:rtl;font-size:13.5px;color:var(--text-soft);padding:0 6px 8px}.assist-field{display:flex;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:6px;box-shadow:var(--shadow)}.assist-field input{flex:1;border:none;outline:none;background:transparent;font-family:var(--font-fa);font-size:16px;padding:8px 12px;min-width:0}.assist-go{background:var(--accent);color:var(--on-accent);border-radius:12px;padding:0 18px;height:40px;font-family:var(--font-fa);font-size:14px;font-weight:700;min-width:64px;display:grid;place-items:center}.assist-out{margin-top:10px;display:flex;flex-direction:column;gap:8px}.suggest{display:flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:4px 6px 4px 14px}.suggest-text{flex:1;text-align:left;font-size:15px;line-height:1.5;padding:8px 0;color:var(--text);cursor:pointer}.suggest-text:hover{color:var(--accent)}.icon-btn.sm{width:32px;height:32px}.assist-note{font-family:var(--font-fa);direction:rtl;font-size:12.5px;color:var(--text-faint);padding:2px 6px;line-height:1.7}.vocab-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 16px 14px;margin:0 4px 12px}.vocab-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.vocab-en{font-size:17px;font-weight:600;letter-spacing:-.01em;line-height:1.45}.vocab-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.learned-btn{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:var(--text-faint);border:1.5px solid var(--border-strong);transition:all .2s var(--ease)}.learned-btn.on{background:var(--green);border-color:var(--green);color:#fff}.learned-btn:active{transform:scale(.9)}.vocab-fa{font-size:14px;color:var(--text-soft);margin-top:8px}.vocab-fa,.vocab-note{font-family:var(--font-fa);line-height:1.7}.vocab-note{font-size:12.5px;margin-top:6px;padding-top:8px;border-top:1px solid var(--border)}.vocab-del,.vocab-note{color:var(--text-faint)}.vocab-del{position:absolute;bottom:10px;left:14px;font-family:var(--font-fa);font-size:12px;opacity:.7}.vocab-del:hover{color:var(--red);opacity:1}.call-btn{color:var(--accent)!important}.call-btn:hover{background:var(--accent-soft)!important}.call{position:fixed;inset:0;z-index:80;background:var(--bg);display:flex;flex-direction:column;align-items:center;padding:calc(16px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom));user-select:none}.call:before{content:"";position:absolute;inset:0;background:radial-gradient(70% 40% at 50% -5%,var(--accent-soft),transparent 70%);opacity:.6;pointer-events:none}.call-stage{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;padding:4vh 0 12px;z-index:1;cursor:pointer}.call-orb{position:relative;display:grid;place-items:center}.call-orb:before{content:"";inset:-50%;background:radial-gradient(circle,var(--accent-soft),transparent 62%);filter:blur(18px)}.call-orb:before,.call-ring{position:absolute;border-radius:50%}.call-ring{inset:0;border:1px solid var(--accent);opacity:0;animation:ring-out 2.6s ease-out infinite;pointer-events:none}.call-ring.r2{animation-delay:1.3s}.call-orb[data-phase=listening] .call-ring{animation-duration:3.4s}@keyframes ring-out{0%{transform:scale(1);opacity:.35}to{transform:scale(1.8);opacity:0}}.call-status{text-align:center;display:flex;flex-direction:column;gap:3px}.call-status b{font-family:var(--font-fa);font-size:22px;font-weight:800;letter-spacing:-.01em;line-height:1.2}.call-status small{font-family:var(--font-fa);font-size:13.5px;color:var(--text-soft)}.call-transcript{flex:1;width:100%;max-width:600px;overflow-y:auto;gap:12px;padding:18px 2px 14px;z-index:1;-webkit-mask-image:linear-gradient(180deg,transparent,#000 9%);mask-image:linear-gradient(180deg,transparent,#000 9%)}.call-transcript,.tturn{display:flex;flex-direction:column}.tturn{gap:5px}.tline{max-width:82%;padding:11px 15px;border-radius:17px;font-size:16px;line-height:1.55}.tline.assistant{align-self:flex-start;background:transparent;padding-left:0;color:var(--text);font-size:16.5px;line-height:1.7}.tline.user{align-self:flex-end;background:var(--accent-soft);color:var(--text);border-bottom-right-radius:7px}.tline.live{opacity:.78}.tline-fix{align-self:flex-end;max-width:82%;color:var(--green);background:var(--green-soft);border-radius:12px;padding:7px 13px;font-size:14.5px;font-weight:500}.call-foot{flex-direction:column;gap:12px;z-index:1;padding-top:6px}.call-foot,.call-listen-pill{display:flex;align-items:center}.call-listen-pill{gap:7px;font-family:var(--font-fa);font-size:13px;color:var(--accent);background:var(--accent-soft);padding:7px 14px;border-radius:999px}.call-hint{font-family:var(--font-fa);font-size:12.5px;color:var(--text-faint)}.hangup{width:64px;height:64px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;transition:transform .18s var(--ease)}.hangup:hover{transform:scale(1.04)}.hangup:active{transform:scale(.9)}.menu-sheet{background:var(--sheet-bg);width:100%;max-width:520px;border:1px solid var(--border);border-bottom:none;border-radius:24px 24px 0 0;padding:10px 18px calc(26px + env(safe-area-inset-bottom));box-shadow:0 -16px 60px rgba(0,0,0,.35);font-family:var(--font-fa)}.menu-head{padding:6px 6px 16px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.sheet-close{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--surface-2);color:var(--text-soft);flex-shrink:0;transition:background .2s var(--ease),color .2s var(--ease),transform .15s var(--ease)}.sheet-close:hover{color:var(--text)}.sheet-close:active{transform:scale(.9)}.menu-name{font-size:21px;font-weight:800;letter-spacing:-.01em}.menu-sub{font-size:13px;color:var(--text-soft);margin-top:3px}.menu-nav{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;margin-bottom:12px}.menu-row{display:flex;align-items:center;gap:12px;width:100%;padding:14px 15px;font-family:var(--font-fa);font-size:15.5px;color:var(--text);background:none;border:none;text-decoration:none;text-align:right;border-bottom:1px solid var(--border);transition:background .15s var(--ease)}.menu-nav .menu-row:last-child{border-bottom:none}.menu-row:not(.menu-row-static):active{background:var(--surface-2)}.mr-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--surface-2);color:var(--text-soft);flex-shrink:0}.mr-label{flex:1}.mr-ch{color:var(--text-faint);transform:scaleX(-1)}.mr-state{font-size:13px;color:var(--text-soft)}.voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.voice-chip{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;border:1.5px solid var(--border);background:var(--surface-2);font-family:var(--font-fa);font-size:14px;color:var(--text);transition:border-color .2s var(--ease),background .2s var(--ease)}.voice-chip small{color:var(--text-soft);font-size:11.5px}.voice-chip.on{border-color:var(--accent);background:var(--accent-soft)}.vc-flag{font-size:17px}.menu-danger{color:var(--red)}.menu-danger .mr-ic{background:var(--red-soft);color:var(--red)}