:root{--bg:#f4f6f8;--surface:#fff;--surface2:#f0f2f5;--text:#111827;--muted:#697386;--line:#e3e7ed;--accent:#6b4eff;--accent-soft:#eeeaff;--ok:#118560;--bad:#c43f4b;--warn:#b16b09;--navy:#0f172a;--shadow:0 18px 55px rgba(15,23,42,.07)}
[data-theme="dark"]{--bg:#0b0f16;--surface:#121823;--surface2:#1a2230;--text:#f6f8fb;--muted:#9ca8b8;--line:#273244;--accent:#9a85ff;--accent-soft:#26213f;--navy:#f7f8fb;--shadow:0 20px 60px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Vazirmatn,"Segoe UI",Tahoma,sans-serif;line-height:1.9}button,textarea{font:inherit}.boot-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:6px;background:var(--bg)}.boot-mark{font:700 82px Georgia;color:var(--accent);line-height:1}.boot-screen strong{font-size:26px}.boot-screen span{color:var(--muted);font-size:13px}.app-shell{display:grid;grid-template-columns:272px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:var(--surface);border-left:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:20px;z-index:20}.brand{border:0;background:none;color:var(--text);display:flex;align-items:center;gap:11px;text-align:right;cursor:pointer;padding:0}.brand-mark{width:43px;height:43px;border-radius:14px;background:var(--navy);color:var(--surface);display:grid;place-items:center;font:700 25px Georgia}.brand strong,.brand small{display:block}.brand strong{font-size:18px}.brand small{font-size:10px;color:var(--muted)}.course-card{padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,var(--accent-soft),var(--surface2))}.course-card>small{color:var(--muted);font-size:10px}.course-card h2{margin:0;font-size:27px}.course-card p{margin:0;color:var(--muted);font-size:11px}.progress-track{height:6px;background:var(--surface);border-radius:99px;margin:14px 0 4px;overflow:hidden}.progress-track i{display:block;height:100%;background:var(--accent);border-radius:99px}.chapter-list{display:grid;gap:6px}.nav-label{font-size:10px;color:var(--muted);padding:0 8px}.chapter-link{display:grid;grid-template-columns:32px 1fr;gap:9px;align-items:center;border:0;background:transparent;color:var(--text);padding:9px;border-radius:12px;text-align:right;cursor:pointer}.chapter-link:hover,.chapter-link.active{background:var(--surface2)}.chapter-link.locked{opacity:.42;cursor:not-allowed}.chapter-no{font:700 12px ui-monospace,monospace;color:var(--accent)}.chapter-link b,.chapter-link small{display:block}.chapter-link b{font-size:11px}.chapter-link small{font-size:9px;color:var(--muted)}.sidebar-foot{margin-top:auto;color:var(--muted);font-size:10px}.sidebar-foot small{display:block;margin-top:4px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--ok);margin-left:5px}.main-area{min-width:0}.topbar{height:72px;position:sticky;top:0;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 28px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(15px)}.mobile-title{display:flex;gap:7px;align-items:baseline}.mobile-title span{color:var(--muted);font-size:11px}.mode-switch{display:flex;gap:4px;background:var(--surface2);padding:4px;border-radius:13px}.mode-btn{border:0;background:transparent;color:var(--muted);padding:8px 11px;border-radius:10px;cursor:pointer;display:flex;gap:6px;align-items:center;font-size:11px}.mode-btn.active{background:var(--surface);color:var(--text);box-shadow:0 5px 14px rgba(0,0,0,.06)}.top-tools{display:flex;gap:7px}.top-tools button,.study-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);padding:8px 11px;border-radius:11px;cursor:pointer}.dashboard-page,.study-page{max-width:1440px;margin:auto;padding:32px}.dashboard-hero{min-height:360px;background:#0f172a;color:#fff;border-radius:30px;padding:45px;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;overflow:hidden}.dashboard-hero h1{font-size:clamp(34px,5vw,64px);line-height:1.3;margin:10px 0;max-width:850px}.dashboard-hero h1 em{font-style:normal;color:#a995ff}.dashboard-hero p{color:#b8c0cf;max-width:700px}.kicker{font-size:10px;font-weight:800;color:#a995ff}.hero-btn,.primary-btn{border:0;border-radius:12px;background:#fff;color:#0f172a;padding:11px 17px;font-weight:800;cursor:pointer}.hero-math{position:relative;height:260px;display:grid;place-items:center}.hero-math span{font:700 190px Georgia;color:#866cff}.hero-math i,.hero-math b{position:absolute;font-family:Georgia}.hero-math i{top:28px;left:30px;font-size:26px}.hero-math b{bottom:30px;right:15px;font-size:23px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}.metric,.dash-panel,.panel-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.metric{padding:19px;border-radius:18px}.metric small,.metric span{display:block;color:var(--muted);font-size:10px}.metric b{font-size:29px}.dashboard-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:14px;margin-top:14px}.dash-panel{border-radius:19px;padding:20px}.panel-title span,.panel-title b{display:block}.panel-title span{font-size:10px;color:var(--accent)}.roadmap{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:15px}.roadmap>div{padding:13px;border-radius:13px;background:var(--surface2)}.roadmap span{font:700 10px monospace;color:var(--accent)}.roadmap b,.roadmap small{display:block}.roadmap b{font-size:11px}.roadmap small{font-size:9px;color:var(--muted)}.weak-row{display:flex;justify-content:space-between;padding:10px 12px;background:var(--surface2);border-radius:11px;margin-top:8px;font-size:11px}.weak-row span{color:var(--bad)}.empty-panel{padding:28px 4px;color:var(--muted);font-size:11px}.study-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.study-heading h1{font-size:38px;margin:4px 0 0;line-height:1.4}.study-heading p{margin:0;color:var(--muted);font-size:11px}.study-actions{display:flex;gap:7px}.study-actions button.active{border-color:var(--accent);color:var(--accent)}.study-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px}.panel-card{border-radius:20px}.section-nav{height:max-content;position:sticky;top:90px;padding:12px}.section-nav>b{font-size:11px;padding:8px;display:block}.section-nav>button{width:100%;border:0;background:transparent;color:var(--text);display:grid;grid-template-columns:29px 1fr;gap:8px;align-items:center;text-align:right;padding:9px;border-radius:11px;cursor:pointer}.section-nav>button.active,.section-nav>button:hover{background:var(--surface2)}.section-nav>button>span{font:700 10px monospace;color:var(--accent)}.section-nav b,.section-nav small{display:block}.section-nav b{font-size:10px}.section-nav small{font-size:8px;color:var(--muted)}.section-nav hr{border:0;border-top:1px solid var(--line);margin:8px}.lesson-panel{padding:34px;min-height:720px}.lesson-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.lesson-meta>span,.content-intro>span{font-size:10px;font-weight:800;color:var(--accent)}.mode-badge{font-size:9px;background:var(--accent-soft);color:var(--accent);padding:5px 9px;border-radius:99px}.score-summary{padding:16px 18px;border-radius:15px;background:color-mix(in srgb,#f2ae36 12%,var(--surface));border:1px solid color-mix(in srgb,#f2ae36 35%,var(--line));margin-bottom:18px}.score-summary b{font-size:12px}.score-summary p{margin:4px 0 0;font-size:12px}.lesson-p{font-size:15px;max-width:900px;color:color-mix(in srgb,var(--text) 82%,var(--muted));margin:0 0 22px}.formula-card{margin:20px 0;padding:18px;border-radius:16px;background:var(--surface2);border:1px solid var(--line);text-align:center}.formula-text{font:500 21px Georgia,"Times New Roman",serif;direction:ltr}.formula-card small{display:block;margin-top:5px;color:var(--muted);font-size:10px;direction:rtl}.info-box{padding:17px 19px;border:1px solid var(--line);border-radius:15px;margin:18px 0;background:var(--surface2)}.info-box b{font-size:12px}.info-box p{margin:5px 0 0;font-size:12px}.info-box.deep{background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.info-box.deep b{color:var(--accent)}.info-box.exam{background:color-mix(in srgb,#f2ae36 10%,var(--surface));border-color:color-mix(in srgb,#f2ae36 35%,var(--line))}.steps-block{margin:24px 0}.steps-block h4{margin:0 0 10px;font-size:13px}.step{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:center;background:var(--surface2);border-radius:13px;padding:11px;margin:7px 0}.step>span{width:28px;height:28px;border-radius:9px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800}.step p{margin:0;font-size:11px}.example-card{border:1px solid var(--line);border-right:3px solid var(--accent);border-radius:16px;padding:18px;margin:20px 0}.example-top{display:flex;justify-content:space-between;align-items:center}.example-top span{font-size:9px;color:var(--accent);font-weight:800}.example-top b{font-size:12px}.example-prompt{font-size:13px;margin:13px 0}.hint,.solution{border-radius:12px;padding:12px 14px;margin:9px 0;background:var(--surface2)}.hint b,.solution b{font-size:10px;color:var(--accent)}.hint p,.solution p{margin:4px 0 0;font-size:11px}.solution p{font:500 15px Georgia,serif;direction:ltr;text-align:left}.reveal-row button,.checkpoint button,.lesson-footer-actions button{border:1px solid var(--line);background:var(--surface);color:var(--text);padding:8px 12px;border-radius:10px;cursor:pointer;font-size:10px}.mistakes{margin:20px 0;padding:16px;border:1px solid color-mix(in srgb,var(--bad) 30%,var(--line));background:color-mix(in srgb,var(--bad) 7%,var(--surface));border-radius:15px}.mistakes>b{display:block;color:var(--bad);font-size:11px;margin-bottom:6px}.mistakes div{font-size:11px}.checkpoint{padding:17px;border-radius:15px;border:1px dashed color-mix(in srgb,var(--accent) 55%,var(--line));margin:20px 0}.checkpoint>b{color:var(--accent);font-size:11px}.checkpoint p{font-size:12px}.check-answer{margin-top:9px;padding:10px;background:var(--surface2);border-radius:10px;font-size:11px}.table-wrap{overflow:auto;margin:20px 0;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;font-size:11px}th,td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:right}th{background:var(--surface2);font-size:10px}.lesson-footer-actions{margin-top:30px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:8px}.lesson-footer-actions>div{display:flex;gap:6px}.complete.done{border-color:var(--ok);color:var(--ok)}.content-intro{margin-bottom:20px}.content-intro h2{font-size:29px;margin:3px 0}.content-intro p{color:var(--muted);font-size:12px}.quiz-stack,.exam-area{display:grid;gap:12px}.quiz-card{padding:18px;border:1px solid var(--line);border-radius:15px}.question-no{font-size:9px;color:var(--accent);font-weight:800}.quiz-card h3{font-size:13px;margin:6px 0 13px}.options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.options button{border:1px solid var(--line);background:var(--surface2);color:var(--text);padding:10px;border-radius:10px;text-align:right;cursor:pointer;font-size:11px}.options button.selected{border-color:var(--accent);background:var(--accent-soft)}.options button.correct{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface))}.options button.wrong{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 9%,var(--surface))}.quiz-feedback{margin-top:10px;padding:10px 12px;border-radius:10px;background:var(--surface2);font-size:10px}.quiz-feedback b,.quiz-feedback span{display:block}.quiz-feedback.ok b{color:var(--ok)}.quiz-feedback.bad b{color:var(--bad)}.exam-banner{display:flex;justify-content:space-between;align-items:center;background:var(--navy);color:var(--surface);padding:17px;border-radius:15px}.exam-banner b,.exam-banner span{display:block}.exam-banner span{font-size:9px;opacity:.7}.exam-banner strong{font-size:20px}.primary-btn{background:var(--accent);color:#fff;width:max-content}.primary-btn:disabled{opacity:.4;cursor:not-allowed}.result-card{padding:17px;background:color-mix(in srgb,var(--ok) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--ok) 30%,var(--line));border-radius:14px}.result-card b,.result-card span{display:block}.result-card span{font-size:11px;margin-top:4px}.notes-area{width:100%;min-height:360px;resize:vertical;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--text);padding:16px;outline:none}.notes-area:focus{border-color:var(--accent)}.save-hint{color:var(--muted);font-size:9px}.lesson-blocks{max-width:980px}
@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.study-grid{grid-template-columns:1fr}.section-nav{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.section-nav>b,.section-nav hr{grid-column:1/-1}.dashboard-grid{grid-template-columns:1fr}.dashboard-hero{grid-template-columns:1fr}.hero-math{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.dashboard-page,.study-page{padding:15px}.topbar{height:auto;min-height:68px;padding:10px 14px;flex-wrap:wrap}.mobile-title{order:1}.mode-switch{order:3;width:100%;overflow:auto}.top-tools{order:2}.mode-btn{flex:1;justify-content:center;white-space:nowrap}.dashboard-hero{padding:26px;border-radius:22px;min-height:330px}.dashboard-hero h1{font-size:35px}.metric-grid{grid-template-columns:1fr 1fr}.roadmap{grid-template-columns:1fr 1fr}.study-heading h1{font-size:27px}.study-actions{display:none}.section-nav{grid-template-columns:1fr 1fr}.lesson-panel{padding:19px}.options{grid-template-columns:1fr}.lesson-footer-actions{flex-direction:column}.lesson-footer-actions>div{justify-content:space-between}.formula-text{font-size:17px}.dashboard-grid{display:block}.dash-panel{margin-top:12px}}

/* v0.3 — richer lesson architecture */
.lesson-subheading{margin:34px 0 16px;padding-top:8px;border-top:1px solid var(--line)}.lesson-subheading span{font-size:9px;font-weight:900;color:var(--accent)}.lesson-subheading h3{font-size:22px;line-height:1.5;margin:4px 0}.lesson-subheading p{margin:3px 0 0;color:var(--muted);font-size:11px;max-width:860px}.solution-plan,.answer-check{border-radius:12px;padding:12px 14px;margin:9px 0;background:color-mix(in srgb,var(--accent) 6%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line))}.solution-plan b,.answer-check b{font-size:10px;color:var(--accent)}.solution-plan p,.answer-check p{margin:4px 0 0;font-size:11px}.solution ol{margin:8px 0 0;padding-left:24px;direction:ltr;text-align:left}.solution li{padding:4px 0;font:500 14px Georgia,"Times New Roman",serif}.final-answer{margin-top:10px;padding:10px 12px;border-radius:9px;background:var(--surface);border:1px solid var(--line);font:700 15px Georgia,serif;text-align:left}.reveal-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.reveal-row small{font-size:9px;color:var(--muted)}.derivation-card{padding:18px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));margin:20px 0}.derivation-card>div:first-child span{display:block;color:var(--accent);font-size:9px;font-weight:900}.derivation-card>div:first-child b{display:block;font-size:12px;margin-top:2px}.derivation-card>div:first-child p{font-size:11px;color:var(--muted);margin:3px 0 9px}.derivation-card>button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:9px;padding:7px 10px;font-size:9px;cursor:pointer}.derivation-body{margin-top:12px;display:grid;gap:7px}.derive-step{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;background:var(--surface);border-radius:10px;padding:10px}.derive-step > .derive-no{width:24px;height:24px;border-radius:8px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:9px;font-weight:900}.derive-step p{margin:0;font-size:11px}.decision-block{margin:25px 0}.decision-head span{color:var(--accent);font-size:9px;font-weight:900}.decision-head h4{font-size:17px;margin:2px 0 10px}.decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.decision-card{padding:14px;border:1px solid var(--line);background:var(--surface2);border-radius:13px}.decision-card b{font-size:11px}.decision-card p{font-size:10px;margin:3px 0}.decision-card small{display:block;font:500 12px Georgia,serif;color:var(--muted);text-align:left}.quick-drill{margin:24px 0;border:1px solid var(--line);border-radius:16px;overflow:hidden}.quick-drill-head{padding:15px 17px;background:var(--surface2)}.quick-drill-head span{font-size:9px;color:var(--accent);font-weight:900}.quick-drill-head h4{font-size:14px;margin:1px 0}.quick-drill-head p{font-size:10px;color:var(--muted);margin:2px 0}.drill-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 15px;border-top:1px solid var(--line);align-items:center}.drill-row>div:first-child{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center}.drill-row>div:first-child span{font:700 9px monospace;color:var(--accent)}.drill-row p{margin:0;font-size:11px}.drill-row button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 9px;font-size:9px;cursor:pointer}.drill-answer{grid-column:1/-1;background:color-mix(in srgb,var(--ok) 8%,var(--surface));border-radius:9px;padding:9px 11px;font-size:10px}.visual-card{display:grid;grid-template-columns:1fr 1.15fr;gap:16px;align-items:center;margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:17px;background:var(--surface2)}.visual-copy span{color:var(--accent);font-size:9px;font-weight:900}.visual-copy b{display:block;font-size:12px}.visual-copy p{font-size:10px;color:var(--muted);margin:4px 0}.math-visual{width:100%;height:auto;direction:ltr}.math-visual line{stroke:color-mix(in srgb,var(--text) 35%,transparent);stroke-width:1.5}.math-visual .curve{fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round}.math-visual rect{fill:color-mix(in srgb,var(--accent) 17%,transparent);stroke:color-mix(in srgb,var(--accent) 50%,transparent);stroke-width:1}.math-visual .area-positive{fill:color-mix(in srgb,var(--ok) 20%,transparent);stroke:none}.math-visual .area-negative{fill:color-mix(in srgb,var(--bad) 17%,transparent);stroke:none}
@media(max-width:680px){.decision-grid{grid-template-columns:1fr}.visual-card{grid-template-columns:1fr}.lesson-subheading h3{font-size:19px}.drill-row{grid-template-columns:1fr auto}}

/* v0.4 — readability-first visual system */
html{font-size:17px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
html[data-reader="normal"]{font-size:16px}
html[data-reader="large"]{font-size:18px}
html[data-reader="xlarge"]{font-size:20px}
body{font-family:"Segoe UI",Tahoma,Arial,sans-serif;line-height:2.05;letter-spacing:0;background:var(--bg)}
button,textarea,input{font-family:inherit}

.app-shell{grid-template-columns:310px minmax(0,1fr)}
.sidebar{padding:26px 22px;gap:24px}
.brand-mark{width:50px;height:50px;font-size:29px;border-radius:16px}
.brand strong{font-size:1.15rem;line-height:1.5}.brand small{font-size:.72rem;line-height:1.6}
.course-card{padding:20px;border-radius:21px}.course-card>small{font-size:.72rem}.course-card h2{font-size:1.8rem;line-height:1.45}.course-card p{font-size:.82rem;line-height:1.7}
.progress-track{height:8px;margin-top:17px}
.nav-label{font-size:.75rem;padding:0 9px}.chapter-list{gap:8px}.chapter-link{grid-template-columns:40px 1fr;gap:11px;padding:12px 11px;border-radius:14px}.chapter-no{font-size:.8rem}.chapter-link b{font-size:.86rem;line-height:1.55}.chapter-link small{font-size:.72rem;line-height:1.55}.sidebar-foot{font-size:.72rem}.sidebar-foot small{font-size:.68rem}

.topbar{height:86px;padding:0 36px;gap:20px;background:color-mix(in srgb,var(--bg) 93%,transparent)}
.mobile-title{gap:10px}.mobile-title b{font-size:1.05rem}.mobile-title span{font-size:.8rem}
.mode-switch{gap:6px;padding:5px;border-radius:15px}.mode-btn{padding:10px 15px;border-radius:11px;font-size:.82rem;font-weight:650}.mode-btn.active{box-shadow:0 7px 18px rgba(0,0,0,.08)}
.top-tools{align-items:center;gap:9px}.top-tools button,.study-actions button{padding:10px 14px;border-radius:12px;font-size:.84rem;min-height:43px}.page-toggle{font-weight:700}
.font-controls{display:flex;align-items:center;gap:2px;background:var(--surface2);border:1px solid var(--line);border-radius:12px;padding:3px}.font-controls button{min-width:43px;border:0;background:transparent;padding:6px 8px;font-weight:800}.font-controls span{font-size:.7rem;color:var(--muted);padding:0 4px;white-space:nowrap}

.dashboard-page,.study-page{max-width:1540px;padding:42px 46px}
.dashboard-hero{min-height:410px;padding:54px;border-radius:32px}.dashboard-hero h1{font-size:clamp(2.6rem,4.6vw,4.35rem);line-height:1.32}.dashboard-hero p{font-size:1.02rem;line-height:2;max-width:760px}.kicker{font-size:.78rem;letter-spacing:.02em}.hero-btn,.primary-btn{padding:13px 21px;font-size:.9rem;border-radius:13px}
.metric-grid{gap:16px;margin-top:18px}.metric{padding:23px;border-radius:21px}.metric small,.metric span{font-size:.75rem}.metric b{font-size:2rem;line-height:1.35}
.dashboard-grid{gap:18px;margin-top:18px}.dash-panel{border-radius:22px;padding:25px}.panel-title span{font-size:.75rem}.panel-title b{font-size:1.05rem}.roadmap{gap:11px;margin-top:18px}.roadmap>div{padding:16px;border-radius:15px}.roadmap span{font-size:.72rem}.roadmap b{font-size:.84rem}.roadmap small{font-size:.72rem}.weak-row{padding:13px 15px;border-radius:13px;font-size:.84rem}.empty-panel{font-size:.84rem}

.study-heading{margin-bottom:25px;gap:20px}.study-heading h1{font-size:2.55rem;line-height:1.42;margin:5px 0}.study-heading p{font-size:.88rem;line-height:1.8}.study-actions button{font-size:1rem;min-width:46px}
.study-grid{grid-template-columns:300px minmax(0,1fr);gap:20px}.panel-card{border-radius:23px}.section-nav{top:104px;padding:16px}.section-nav>b{font-size:.88rem;padding:9px 10px}.section-nav>button{grid-template-columns:36px 1fr;gap:10px;padding:12px 10px;border-radius:13px}.section-nav>button>span{font-size:.76rem}.section-nav b{font-size:.82rem;line-height:1.55}.section-nav small{font-size:.7rem;line-height:1.5}
.lesson-panel{padding:46px 52px;min-height:760px}.lesson-blocks{max-width:1080px;margin:0 auto}.lesson-meta{margin-bottom:23px}.lesson-meta>span,.content-intro>span{font-size:.76rem}.mode-badge{font-size:.74rem;padding:6px 11px}
.score-summary{padding:20px 22px;border-radius:17px;margin-bottom:24px}.score-summary b{font-size:.9rem}.score-summary p{font-size:.92rem;line-height:1.95}

.lesson-p{font-size:1.08rem;line-height:2.18;max-width:74ch;margin:0 0 28px;color:color-mix(in srgb,var(--text) 92%,var(--muted))}
.lesson-subheading{margin:44px 0 21px;padding-top:14px}.lesson-subheading span{font-size:.72rem}.lesson-subheading h3{font-size:1.65rem;line-height:1.55;margin:6px 0}.lesson-subheading p{font-size:.94rem;line-height:2;max-width:76ch}
.formula-card{margin:26px 0;padding:24px;border-radius:18px}.formula-text{font-size:1.62rem;line-height:1.65}.formula-card small{font-size:.78rem;line-height:1.7;margin-top:8px}
.info-box{padding:21px 23px;border-radius:17px;margin:23px 0}.info-box b{font-size:.92rem}.info-box p{font-size:.95rem;line-height:2;margin-top:7px}
.steps-block{margin:30px 0}.steps-block h4{font-size:1.02rem;margin-bottom:14px}.step{grid-template-columns:42px 1fr;gap:14px;padding:14px 15px;margin:9px 0;border-radius:15px}.step>span{width:34px;height:34px;border-radius:10px;font-size:.78rem}.step p{font-size:.92rem;line-height:1.9}

.example-card{padding:24px 25px;margin:27px 0;border-radius:18px;border-right-width:4px}.example-top span{font-size:.74rem}.example-top b{font-size:.94rem}.example-prompt{font-size:1rem;line-height:2;margin:16px 0}.hint,.solution,.solution-plan,.answer-check{padding:16px 18px;margin:12px 0;border-radius:14px}.hint b,.solution b,.solution-plan b,.answer-check b{font-size:.8rem}.hint p,.solution-plan p,.answer-check p{font-size:.9rem;line-height:1.9}.solution p{font-size:1.12rem;line-height:1.85}.solution ol{margin-top:12px}.solution li{font-size:1.02rem;line-height:1.8;padding:5px 0}.final-answer{font-size:1.12rem;padding:13px 15px}.reveal-row button,.checkpoint button,.lesson-footer-actions button{padding:10px 14px;border-radius:11px;font-size:.82rem}.reveal-row small{font-size:.74rem}
.mistakes{margin:26px 0;padding:20px;border-radius:17px}.mistakes>b{font-size:.88rem;margin-bottom:9px}.mistakes div{font-size:.9rem;line-height:1.9;margin-top:4px}.checkpoint{padding:21px;border-radius:17px;margin:26px 0}.checkpoint>b{font-size:.88rem}.checkpoint p{font-size:.95rem;line-height:2}.check-answer{padding:13px 14px;font-size:.88rem;line-height:1.9}
.table-wrap{margin:26px 0;border-radius:16px}table{font-size:.9rem}th,td{padding:14px 16px;line-height:1.75}th{font-size:.82rem}
.lesson-footer-actions{margin-top:40px;padding-top:24px}.lesson-footer-actions>div{gap:9px}

.content-intro{margin-bottom:26px}.content-intro h2{font-size:2rem;line-height:1.45;margin:4px 0}.content-intro p{font-size:.94rem;line-height:2;max-width:78ch}.quiz-stack,.exam-area{gap:16px}.quiz-card{padding:23px;border-radius:18px}.question-no{font-size:.73rem}.quiz-card h3{font-size:1rem;line-height:1.9;margin:8px 0 16px}.options{gap:10px}.options button{padding:14px 15px;border-radius:12px;font-size:.9rem;line-height:1.8}.quiz-feedback{margin-top:13px;padding:13px 15px;border-radius:12px;font-size:.84rem;line-height:1.8}.exam-banner{padding:21px;border-radius:17px}.exam-banner span{font-size:.72rem}.exam-banner b{font-size:.92rem}.exam-banner strong{font-size:1.5rem}.result-card{padding:21px;border-radius:16px}.result-card span{font-size:.88rem}.notes-area{min-height:420px;padding:20px;font-size:1rem;line-height:2;border-radius:16px}.save-hint{font-size:.75rem}

.derivation-card{padding:23px;border-radius:18px;margin:26px 0}.derivation-card>div:first-child span{font-size:.72rem}.derivation-card>div:first-child b{font-size:.94rem}.derivation-card>div:first-child p{font-size:.88rem;line-height:1.9}.derivation-card>button{padding:9px 12px;font-size:.8rem}.derivation-body{gap:9px;margin-top:16px}.derive-step{grid-template-columns:35px 1fr;gap:11px;padding:13px;border-radius:12px}.derive-step > .derive-no{width:30px;height:30px;font-size:.72rem}.derive-step p{font-size:.9rem;line-height:1.9}
.decision-block{margin:32px 0}.decision-head span{font-size:.72rem}.decision-head h4{font-size:1.25rem;margin:4px 0 14px}.decision-grid{gap:11px}.decision-card{padding:18px;border-radius:15px}.decision-card b{font-size:.9rem}.decision-card p{font-size:.84rem;line-height:1.8}.decision-card small{font-size:.9rem;line-height:1.7}
.quick-drill{margin:30px 0;border-radius:18px}.quick-drill-head{padding:19px 21px}.quick-drill-head span{font-size:.72rem}.quick-drill-head h4{font-size:1.02rem}.quick-drill-head p{font-size:.82rem;line-height:1.8}.drill-row{padding:15px 18px;gap:10px}.drill-row>div:first-child{grid-template-columns:30px 1fr;gap:10px}.drill-row>div:first-child span{font-size:.72rem}.drill-row p{font-size:.9rem;line-height:1.85}.drill-row button{padding:8px 11px;font-size:.78rem}.drill-answer{padding:12px 14px;font-size:.88rem;line-height:1.8}
.visual-card{gap:22px;margin:30px 0;padding:23px;border-radius:19px}.visual-copy span{font-size:.72rem}.visual-copy b{font-size:.95rem}.visual-copy p{font-size:.85rem;line-height:1.9}

@media(max-width:1180px){.app-shell{grid-template-columns:280px 1fr}.dashboard-page,.study-page{padding:34px 30px}.study-grid{grid-template-columns:270px minmax(0,1fr)}.lesson-panel{padding:38px 34px}.topbar{padding:0 26px}}
@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.study-grid{grid-template-columns:1fr}.lesson-panel{padding:36px}.section-nav{display:grid;grid-template-columns:repeat(2,1fr);gap:4px}.topbar{height:auto;min-height:82px;padding:12px 22px}.font-controls span{display:none}}
@media(max-width:680px){html[data-reader="normal"]{font-size:16px}html[data-reader="large"]{font-size:17px}html[data-reader="xlarge"]{font-size:18px}.dashboard-page,.study-page{padding:18px 14px}.topbar{padding:10px 12px;gap:9px}.top-tools{gap:5px}.top-tools button{padding:8px 10px;min-height:40px}.page-toggle{font-size:.76rem}.font-controls button{min-width:38px;padding:5px}.mode-btn{font-size:.77rem;padding:9px 10px}.dashboard-hero{padding:30px 24px;min-height:350px}.dashboard-hero h1{font-size:2.2rem}.dashboard-hero p{font-size:.92rem}.metric{padding:18px}.metric b{font-size:1.7rem}.study-heading{align-items:flex-start}.study-heading h1{font-size:2rem}.study-heading p{font-size:.84rem}.section-nav{grid-template-columns:1fr 1fr;padding:10px}.section-nav>button{padding:10px 8px}.lesson-panel{padding:25px 19px}.lesson-p{font-size:1rem;line-height:2.1}.lesson-subheading h3{font-size:1.42rem}.formula-text{font-size:1.35rem}.info-box p,.step p,.example-prompt,.checkpoint p{font-size:.92rem}.options{grid-template-columns:1fr}.options button{font-size:.9rem}.content-intro h2{font-size:1.65rem}.visual-card{grid-template-columns:1fr}.decision-grid{grid-template-columns:1fr}.lesson-footer-actions{gap:10px}.lesson-footer-actions button{font-size:.8rem}}

/* v0.5 — prerequisite lesson upgrade */
.notation-guide{margin:30px 0;padding:26px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:24px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 72%,var(--surface)),var(--surface));box-shadow:var(--shadow)}
.notation-copy>span,.concept-cards-head>span,.layered-head>span{display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:800;color:var(--accent);margin-bottom:5px}
.notation-copy h4,.concept-cards-head h4,.layered-head h4{font-size:1.32rem;line-height:1.55;margin:0 0 6px}.notation-copy p,.concept-cards-head p,.layered-head p{font-size:.94rem;line-height:2;margin:0;color:var(--muted);max-width:82ch}
.notation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.notation-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.notation-card.primary{border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface))}.notation-card>small{display:block;font-size:.74rem;color:var(--muted);font-weight:750;margin-bottom:12px}.notation-card p{font-size:.88rem;line-height:1.95;margin:13px 0 0;color:var(--muted)}
.notation-example{display:flex;align-items:center;justify-content:center;gap:18px;min-height:82px;padding:14px;border-radius:14px;background:var(--surface2);font-family:"Segoe UI",Tahoma,sans-serif;font-size:1.4rem}.notation-example strong{font-size:1.5rem;color:var(--accent)}.fraction-example{gap:12px;flex-wrap:wrap}.math-frac{display:inline-grid;grid-template-rows:auto auto;text-align:center;line-height:1.08;vertical-align:middle;font-style:normal}.math-frac i{font-style:normal;padding:2px 6px}.math-frac i:first-child{border-bottom:2px solid currentColor}

.derivative-atlas{margin:28px 0 34px;display:grid;gap:22px}.derivative-group{border:1px solid var(--line);border-radius:22px;background:var(--surface);overflow:hidden}.derivative-group-head{padding:19px 21px 4px}.derivative-group-head span{display:block;font-size:.7rem;color:var(--accent);font-weight:800}.derivative-group-head h4{font-size:1.18rem;margin:3px 0 10px}.derivative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:12px 18px 20px}.derivative-card{position:relative;min-height:190px;padding:18px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface2) 62%,var(--surface)));transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.derivative-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 34%,var(--line));box-shadow:0 12px 32px rgba(15,23,42,.07)}.derivative-card>small{display:block;font-size:.72rem;color:var(--muted);font-weight:800}.derivative-function,.derivative-result{font-family:"Segoe UI",Tahoma,sans-serif;text-align:center;padding:9px 8px;border-radius:11px;word-break:break-word}.derivative-function{font-size:1.12rem;margin-top:9px;background:var(--surface2)}.derivative-arrow{text-align:center;font-size:.68rem;color:var(--muted);margin:5px 0}.derivative-result{font-size:1.22rem;font-weight:800;color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface))}.derivative-card p{font-size:.76rem;line-height:1.75;color:var(--muted);margin:10px 0 0}

.concept-cards-block{margin:31px 0}.concept-cards-head{margin-bottom:15px}.concept-cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.concept-mini-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.concept-mini-card h5{font-size:.96rem;margin:0 0 9px}.concept-formula{padding:11px 13px;border-radius:11px;background:var(--surface2);font-size:1.05rem;text-align:center;margin-bottom:10px;font-family:"Segoe UI",Tahoma,sans-serif}.concept-mini-card p{font-size:.87rem;line-height:1.9;margin:0;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.concept-mini-card small{display:block;margin-top:10px;padding-top:10px;border-top:1px dashed var(--line);font-size:.82rem;color:var(--accent);line-height:1.7}

.layered-rule{margin:30px 0;padding:25px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line));border-radius:24px;background:color-mix(in srgb,var(--accent-soft) 28%,var(--surface))}.layered-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.layer-card{position:relative;padding:20px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}.layer-card>span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:28px;padding:0 9px;border-radius:99px;background:var(--accent-soft);color:var(--accent);font-size:.7rem;font-weight:850}.layer-card h5{font-size:.94rem;margin:10px 0 8px}.layer-expression{padding:13px;border-radius:12px;background:var(--surface2);font-size:1.12rem;text-align:center;font-family:"Segoe UI",Tahoma,sans-serif}.layer-card p{font-size:.8rem;line-height:1.8;color:var(--muted);margin:10px 0 0}.layer-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px;padding:17px 19px;border-radius:16px;background:var(--navy);color:var(--surface)}.layer-result small{font-size:.75rem;opacity:.72}.layer-result strong{font-size:1.35rem;font-family:"Segoe UI",Tahoma,sans-serif}

.info-box.warning{border-color:color-mix(in srgb,#d58a17 44%,var(--line));background:color-mix(in srgb,#fff3d9 58%,var(--surface))}.info-box.warning b{color:#9b5d00}
[data-theme="dark"] .info-box.warning{background:color-mix(in srgb,#3a2d15 62%,var(--surface));border-color:#5d4924}[data-theme="dark"] .info-box.warning b{color:#f2bd62}

@media(max-width:1100px){.derivative-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layered-grid{grid-template-columns:1fr}.layer-result{align-items:flex-start;flex-direction:column}.layer-result strong{font-size:1.2rem}}
@media(max-width:760px){.notation-grid,.concept-cards-grid{grid-template-columns:1fr}.notation-guide,.layered-rule{padding:19px;border-radius:19px}.derivative-grid{grid-template-columns:1fr;padding:10px 13px 15px}.derivative-card{min-height:0}.derivative-function,.derivative-result{font-size:1.08rem}.notation-example{font-size:1.18rem;min-height:72px}.notation-example strong{font-size:1.25rem}.layer-result strong{font-size:1.08rem}.concept-mini-card{padding:17px}}

/* v0.6 — Root RTL/LTR math isolation
   Every inline mathematical or Latin run inside Persian text is rendered inside
   <bdi dir="ltr">. This prevents Unicode BiDi from moving ∫, bounds, powers,
   variables or dx to the wrong visual position. */
.bidi-text{unicode-bidi:isolate;}
.math-inline{
  direction:ltr;
  unicode-bidi:isolate;
  display:inline-block;
  white-space:nowrap;
  text-align:left;
  font-family:"Segoe UI",Tahoma,"Times New Roman",serif;
  font-variant-numeric:lining-nums tabular-nums;
  margin-inline:.08em;
}
[dir="ltr"],.formula-text,.concept-formula,.derivative-function,.derivative-result,.layer-expression,.final-answer{
  direction:ltr;
  unicode-bidi:isolate;
}
.formula-text,.concept-formula,.derivative-function,.derivative-result,.layer-expression,.final-answer{
  text-align:left;
}


/* v0.7 — readable mixed RTL/LTR blocks + redesigned quick drills */
.bidi-text{
  direction:rtl;
  unicode-bidi:isolate;
  text-align:right;
  display:inline;
}
.bidi-text .fa-run{font-family:inherit;}
.math-inline{
  direction:ltr;
  unicode-bidi:isolate;
  display:inline-block;
  white-space:nowrap;
  text-align:left;
  font-family:"Times New Roman",Georgia,serif;
  font-size:1.02em;
  font-weight:600;
  line-height:1.45;
  letter-spacing:0;
  margin-inline:.16em;
}

/* Derivation steps: never inherit LTR for the whole Persian sentence. */
.derivation-body{display:grid;gap:10px;margin-top:15px;}
.derive-step{
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  gap:12px;
  align-items:start;
  min-height:58px;
  padding:13px 14px;
  overflow:visible;
}
.derive-step .derive-no{
  width:34px;
  height:34px;
  border-radius:11px;
  font-size:.82rem;
  flex:none;
}
.derive-copy{
  min-width:0;
  width:100%;
  direction:rtl;
  text-align:right;
  font-size:.96rem;
  line-height:2;
  padding-top:1px;
  overflow-wrap:anywhere;
}
.derive-copy .math-inline{
  font-size:1.05em;
  color:var(--accent);
}

/* Quick drills are reading cards, not tiny table rows. */
.quick-drill{
  margin:34px 0;
  border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));
  border-radius:24px;
  overflow:hidden;
  background:var(--surface);
  box-shadow:0 12px 34px rgba(15,23,42,.045);
  font-family:Vazirmatn,"Segoe UI",Tahoma,Arial,sans-serif;
}
.quick-drill-head{
  padding:22px 24px 20px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent-soft) 62%,var(--surface2)),var(--surface2));
  border-bottom:1px solid var(--line);
}
.quick-drill-head span{
  display:block;
  font-size:.78rem;
  color:var(--accent);
  font-weight:850;
  margin-bottom:3px;
}
.quick-drill-head h4{
  margin:0;
  font-size:1.22rem;
  line-height:1.65;
  letter-spacing:-.01em;
}
.quick-drill-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.94rem;
  line-height:1.9;
}
.drill-list{display:grid;}
.drill-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px 18px;
  align-items:center;
  padding:18px 20px;
  border-top:1px solid var(--line);
  background:var(--surface);
}
.drill-list .drill-row:first-child{border-top:0;}
.drill-row:hover{background:color-mix(in srgb,var(--accent) 2.5%,var(--surface));}
.drill-question{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:13px;
  align-items:start;
  min-width:0;
}
.drill-no{
  width:36px;
  height:36px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:var(--accent-soft);
  color:var(--accent);
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.84rem;
  font-weight:850;
  line-height:1;
}
.drill-question p{
  margin:0;
  min-width:0;
  direction:rtl;
  text-align:right;
  font-family:Vazirmatn,"Segoe UI",Tahoma,Arial,sans-serif;
  font-size:1.03rem;
  font-weight:650;
  line-height:2;
  color:var(--text);
}
.quick-drill .math-inline{
  padding:.05em .34em .08em;
  margin-inline:.18em;
  border-radius:7px;
  background:color-mix(in srgb,var(--accent) 7%,var(--surface2));
  color:var(--accent);
  font-family:"Times New Roman",Georgia,serif;
  font-size:1.08em;
  font-weight:700;
  line-height:1.5;
}
.drill-toggle{
  border:1px solid var(--line);
  background:var(--surface2);
  color:var(--text);
  border-radius:11px;
  padding:9px 13px;
  min-width:92px;
  font-size:.84rem;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}
.drill-toggle:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));color:var(--accent);}
.drill-answer{
  grid-column:1/-1;
  margin-top:-2px;
  padding:14px 16px;
  border:1px solid color-mix(in srgb,var(--ok) 22%,var(--line));
  border-radius:13px;
  background:color-mix(in srgb,var(--ok) 7%,var(--surface));
  direction:rtl;
  text-align:right;
  font-family:Vazirmatn,"Segoe UI",Tahoma,Arial,sans-serif;
  font-size:.95rem;
  line-height:1.95;
}
.drill-answer.answer-ltr{
  direction:ltr;
  text-align:left;
}
.answer-math{
  display:block;
  font-family:"Times New Roman",Georgia,serif;
  font-size:1.05rem;
  font-weight:650;
  unicode-bidi:isolate;
}

@media(max-width:680px){
  .quick-drill{border-radius:18px;margin:26px 0;}
  .quick-drill-head{padding:18px 17px;}
  .quick-drill-head h4{font-size:1.08rem;}
  .quick-drill-head p{font-size:.9rem;}
  .drill-row{grid-template-columns:1fr;padding:16px 15px;gap:12px;}
  .drill-question{grid-template-columns:34px minmax(0,1fr);gap:10px;}
  .drill-no{width:32px;height:32px;border-radius:10px;font-size:.78rem;}
  .drill-question p{font-size:.98rem;line-height:1.95;}
  .drill-toggle{justify-self:start;min-width:100px;}
  .derive-step{grid-template-columns:34px minmax(0,1fr);padding:12px;gap:10px;}
  .derive-step .derive-no{width:30px;height:30px;}
  .derive-copy{font-size:.92rem;line-height:1.95;}
}


/* v0.8 — derivation layout root fix
   Previous generic .derive-step span rules also styled BidiText's internal spans,
   collapsing the explanation into ~30px columns. Only the step number may be a badge. */
.derive-step > .derive-no{
  grid-column:1;
  align-self:start;
}
.derive-copy{
  grid-column:2;
  min-width:0;
  width:auto;
  max-width:100%;
  direction:rtl;
  text-align:right;
}
.derive-copy > .bidi-text{
  display:inline;
  width:auto;
  height:auto;
  min-width:0;
  max-width:100%;
  background:transparent;
  border-radius:0;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}
.derive-copy .fa-run{
  display:inline;
  width:auto;
  height:auto;
  background:transparent;
  border-radius:0;
  color:inherit;
  font:inherit;
}
.derive-copy .math-inline{
  display:inline-block;
  width:auto;
  height:auto;
  background:transparent;
  border-radius:0;
  place-items:initial;
  font-size:1.06em;
  font-weight:700;
  color:var(--accent);
  vertical-align:baseline;
}
@media(max-width:680px){
  .derive-step{grid-template-columns:34px minmax(0,1fr);}
}

/* v0.9 — matrix + chapter 2 learning blocks */
.matrix-demo{margin:1.5rem 0;padding:1.35rem;border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,var(--card),color-mix(in srgb,var(--card) 94%,var(--accent) 6%));}
.matrix-demo-head span,.video-link-card span{font-size:.82rem;font-weight:800;color:var(--accent);}
.matrix-demo-head h4,.video-link-card h4{margin:.35rem 0 1rem;font-size:1.15em;}
.matrix-demo-grid{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:center;justify-content:center;direction:ltr;}
.matrix-item{display:flex;align-items:center;gap:.7rem;font-size:1.08em;}
.matrix-item>b{min-width:2rem;text-align:center;}
.matrix-bracket{position:relative;padding:.35rem .75rem;}
.matrix-bracket:before,.matrix-bracket:after{content:"";position:absolute;top:0;bottom:0;width:8px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;opacity:.8;}
.matrix-bracket:before{left:0;border-left:2px solid currentColor;}
.matrix-bracket:after{right:0;border-right:2px solid currentColor;}
.matrix-bracket table{border-collapse:separate;border-spacing:.8rem .45rem;font-variant-numeric:tabular-nums;}
.matrix-bracket td{min-width:1.8rem;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.03em;font-weight:700;}
.matrix-demo>p{margin:1rem 0 0;text-align:center;line-height:1.9;}
.video-link-card{margin:1.5rem 0;padding:1.25rem 1.35rem;border:1px solid var(--line);border-radius:22px;background:var(--card);display:flex;gap:1rem;align-items:center;justify-content:space-between;}
.video-link-card h4{margin-bottom:.4rem;}
.video-link-card p{margin:0;line-height:1.8;color:var(--muted);}
.video-link-card a{flex:0 0 auto;text-decoration:none;border:1px solid var(--line);background:var(--surface);padding:.8rem 1rem;border-radius:14px;font-weight:800;color:var(--text);}
.video-link-card a:hover{border-color:var(--accent);color:var(--accent);}
@media(max-width:760px){.matrix-demo-grid{gap:.8rem}.matrix-bracket table{border-spacing:.55rem .35rem}.video-link-card{align-items:stretch;flex-direction:column}.video-link-card a{text-align:center}}

/* v1.0 — structural matrix renderer (rows/columns stay two-dimensional) */
.rich-bidi{unicode-bidi:isolate;}
.matrix-view{display:inline-flex;align-items:center;gap:.55em;direction:ltr;unicode-bidi:isolate;vertical-align:middle;max-width:100%;}
.matrix-label{font-weight:900;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap;}
.matrix-shell{position:relative;display:inline-flex;padding:.34em .72em;line-height:1.2;color:var(--text);}
.matrix-shell::before,.matrix-shell::after{content:"";position:absolute;top:0;bottom:0;width:.42em;border-top:2px solid currentColor;border-bottom:2px solid currentColor;}
.matrix-shell::before{left:0;border-left:2px solid currentColor;border-radius:3px 0 0 3px;}
.matrix-shell::after{right:0;border-right:2px solid currentColor;border-radius:0 3px 3px 0;}
.matrix-grid{display:grid;gap:.38em .72em;align-items:center;justify-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant-numeric:tabular-nums;font-weight:750;}
.matrix-cell{display:block;min-width:1.1em;text-align:center;white-space:nowrap;}
.matrix-compact{margin:.08em .18em;}
.matrix-compact .matrix-shell{padding:.22em .55em;font-size:.94em;}
.matrix-compact .matrix-grid{gap:.22em .48em;}
.matrix-demo-grid{direction:ltr;}
.matrix-demo .matrix-view{font-size:1.1em;}
.matrix-item{display:flex;align-items:center;justify-content:center;}
/* retire the old table-based matrix brackets */
.matrix-bracket{display:none!important;}
.table-wrap td .matrix-view{font-size:1.02em;}
.example-prompt .matrix-view,.quiz-card .matrix-view,.drill-row .matrix-view{margin-inline:.25em;}
@media(max-width:680px){
  .matrix-view{gap:.35em;}
  .matrix-shell{padding:.28em .58em;}
  .matrix-grid{gap:.3em .5em;}
}
