:root{--bg:#eef3f8;--panel:#ffffff;--panel-soft:#f8fbff;--ink:#142033;--muted:#5d6b7e;--line:#d5dfec;--line-strong:#b9c8da;--accent:#2563eb;--accent-dark:#1e40af;--accent-weak:#eaf2ff;--green:#16825b;--green-weak:#e8f7ef;--danger:#d12f2f;--radius:8px;--shadow:0 14px 38px rgba(20,32,51,0.08)}*{box-sizing:border-box}html{min-height:100%;background:var(--bg);scroll-behavior:smooth}body{margin:0;color:var(--ink);background:linear-gradient(180deg,rgba(255,255,255,.8),rgba(238,243,248,0) 260px),var(--bg);font-family:Arial,Microsoft YaHei,sans-serif;font-size:16px}button,input{font:inherit}a,button{-webkit-tap-highlight-color:transparent}.app-shell{width:min(1180px,calc(100vw - 36px));margin:0 auto;padding:30px 0 56px}.lesson-hero{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:18px;gap:18px;align-items:stretch;margin-bottom:18px}.content-band,.lab,.lesson-meta,.lesson-title-band{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.94);box-shadow:var(--shadow)}.lesson-title-band{position:relative;overflow:hidden;padding:30px}.lesson-title-band:before{position:absolute;inset:0 auto 0 0;width:7px;background:linear-gradient(180deg,var(--accent),var(--green));content:""}.lesson-meta{display:grid;grid-gap:12px;gap:12px;padding:20px}.eyebrow{margin:0 0 8px;color:var(--accent-dark);font-size:14px;font-weight:700}h1,h2,h3{color:#07152b;letter-spacing:0}h1{margin:0 0 12px;font-size:40px;line-height:1.12}h2{margin:30px 0 14px;font-size:24px;line-height:1.25}h3{margin:22px 0 10px;font-size:18px;line-height:1.35}.lead,li,p{line-height:1.75}.lead{max-width:720px;margin:0;color:var(--muted);font-size:18px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--line-strong);border-radius:var(--radius);padding:9px 14px;color:var(--ink);background:#fff;font-weight:800;text-decoration:none}.hero-actions a:first-child{border-color:var(--accent);background:var(--accent);color:#fff}.meta-block{display:grid;grid-gap:6px;gap:6px;border:1px solid #e3eaf4;border-radius:var(--radius);padding:12px;background:var(--panel-soft)}.meta-block span{color:var(--muted);font-size:13px}.meta-block strong{font-size:15px;line-height:1.55}.content-band{padding:24px;margin:18px 0}.content-band>h2:first-child,.content-band>h3:first-child{margin-top:0}.knowledge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}.knowledge-tile{min-height:155px;border:1px solid #d9e5f3;border-radius:var(--radius);padding:16px;background:linear-gradient(180deg,#fff,#f8fbff)}.knowledge-tile h3{margin-top:0;color:var(--accent-dark)}code{padding:2px 6px;border:1px solid #dce5ef;border-radius:5px;background:#f1f5f9;color:#0f172a;font-family:Consolas,Courier New,monospace}pre{overflow-x:auto;border:1px solid #1e293b;border-radius:var(--radius);padding:15px;background:#111827;color:#eef6ff;line-height:1.7}pre code{border:0;padding:0;background:transparent;color:inherit}.example-list{display:grid;grid-gap:14px;gap:14px}.example{border:1px solid var(--line);border-radius:var(--radius);padding:18px;background:var(--panel-soft)}.example h3{margin-top:0}.related-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:10px;gap:10px;padding:0;list-style:none}.related-list li{border:1px solid #d9e5f3;border-radius:var(--radius);padding:13px;background:#fbfdff}.lab{padding:20px;margin:18px 0}.lab-header{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:16px}.lab-header h2{margin:0;font-size:27px}.badge{border:1px solid #a8c4ef;border-radius:999px;padding:7px 12px;background:var(--accent-weak);color:var(--accent-dark);font-size:13px;font-weight:800;white-space:nowrap}.lab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.panel{display:flex;min-height:420px;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px}.panel h3{margin-top:0}.muted{color:var(--muted)}.number-line-wrap{margin:6px 0 2px;padding:34px 16px 40px;border:1px solid #e2eaf5;border-radius:var(--radius);background:#fbfdff}.number-line{position:relative;height:3px;background:#21314a}.tick{position:absolute;top:-8px;transform:translateX(-50%);text-align:center}.tick:before{display:block;width:1px;height:18px;margin:0 auto 6px;background:#475569;content:""}.tick span{color:#475569;font-size:12px}.dot{position:absolute;top:-8px;width:18px;height:18px;border-radius:999px;transform:translateX(-50%);box-shadow:0 0 0 4px #fff,0 5px 12px rgba(15,23,42,.22)}.dot-blue{background:var(--accent)}.dot-red{background:var(--danger)}.control{display:grid;grid-gap:8px;gap:8px;margin-top:12px;font-weight:800}.control input[type=range]{width:100%;accent-color:var(--accent)}.control input[type=number]{width:100%;border:1px solid #cbd5e1;border-radius:var(--radius);padding:11px 12px;background:#fff;color:var(--ink);font-weight:800}.control input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}.fact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:14px}.fact,.solution,.sqrt-card{border:1px solid #d8e3ef;border-radius:var(--radius);padding:13px;background:#f8fbff}.fact span{display:block;color:var(--muted);font-size:12px;margin-bottom:5px}.fact strong{font-size:18px}.sqrt-card{margin-top:14px;border-color:#cfe1d6;background:var(--green-weak)}.sqrt-main{color:#0f5132;font-size:32px;font-weight:900}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.button-primary,.button-secondary{min-height:42px;border-radius:var(--radius);padding:10px 13px;font-weight:900;cursor:pointer}.button-primary{border:1px solid var(--accent-dark);background:var(--accent);color:#fff}.button-primary:hover{background:var(--accent-dark)}.button-secondary{border:1px solid #cbd5e1;background:#fff;color:var(--ink)}.button-secondary:hover{background:#f8fafc}.solution{margin-top:14px;border-color:#bbd8c6;background:var(--green-weak)}.answer{margin:0 0 8px;font-weight:900;color:var(--green)}.steps{margin:0;padding-left:22px}.steps li{line-height:1.8}@media (max-width:980px){.lab-grid,.lesson-hero{grid-template-columns:1fr}.panel{min-height:auto}}@media (max-width:760px){.app-shell{width:min(100vw - 20px,1180px);padding:12px 0 36px}.content-band,.lab,.lesson-meta,.lesson-title-band{padding:16px}h1{font-size:30px}.lab-header h2,h2{font-size:22px}.lab-header{align-items:flex-start;flex-direction:column}.fact-grid{grid-template-columns:1fr}.button-primary,.button-secondary,.hero-actions a{width:100%}}.site-sidebar{min-width:0}.sidebar-sticky{position:-webkit-sticky;position:sticky;top:24px;display:grid;grid-gap:14px;gap:14px}.sidebar-brand{border:1px solid var(--line);border-radius:var(--radius);padding:18px;background:#07152b;color:#fff;box-shadow:var(--shadow)}.sidebar-brand span{display:block;color:#bcd3ff;font-size:13px;font-weight:800;margin-bottom:6px}.sidebar-brand strong{font-size:22px;line-height:1.25}.lesson-nav{border:1px solid var(--line);border-radius:var(--radius);padding:12px;background:rgba(255,255,255,.94);box-shadow:var(--shadow)}.nav-label{margin:4px 4px 10px;color:var(--muted);font-size:13px;font-weight:800}.lesson-link{display:grid;grid-template-columns:38px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;border:1px solid transparent;border-radius:var(--radius);padding:10px;color:var(--ink);text-decoration:none}.lesson-link+.lesson-link{margin-top:6px}.lesson-link:hover{border-color:#d6e4f5;background:#f8fbff}.lesson-link.active{border-color:#a8c4ef;background:var(--accent-weak)}.lesson-index{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;background:#e8eef8;color:var(--accent-dark);font-weight:900}.lesson-link.active .lesson-index{background:var(--accent);color:#fff}.lesson-link strong{display:block;font-size:14px;line-height:1.45}.lesson-link em{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-style:normal;line-height:1.45}.algebra-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.formula-card{grid-gap:8px;gap:8px;border:1px solid #d8e3ef;border-radius:var(--radius);padding:14px;background:#f8fbff;margin:8px 0 12px}.formula-card span{color:var(--muted);font-size:13px;font-weight:800}.formula-card strong{font-size:26px;color:var(--accent-dark)}.fraction-card strong{font-size:22px}.compact-solution{margin-top:auto}.practice-panel{background:linear-gradient(180deg,#fff,#fbfdff)}@media (max-width:1180px){.app-frame{grid-template-columns:1fr}.sidebar-sticky{position:static}.lesson-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.nav-label{grid-column:1/-1}.lesson-link+.lesson-link{margin-top:0}.algebra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.app-frame{width:min(100vw - 20px,1180px);padding:12px 0 36px}.algebra-grid,.lesson-nav{grid-template-columns:1fr}}.app-frame{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:22px;gap:22px;width:min(1480px,calc(100vw - 36px));margin:0 auto;padding:30px 0 56px}.app-frame .app-shell{min-width:0;width:100%;margin:0;padding:0}@media (max-width:1180px){.app-frame{grid-template-columns:1fr}}@media (max-width:760px){.app-frame{width:min(100vw - 20px,1180px);padding:12px 0 36px}}.content-band,.lab,.lesson-meta,.lesson-title-band,.panel{min-width:0}code,h1,h2,h3,li,p,pre,strong{overflow-wrap:anywhere}.knowledge-map-section{overflow:hidden}.knowledge-map-figure{width:min(100%,860px);margin:12px auto 0}.knowledge-map-figure img{display:block;width:100%;max-height:520px;object-fit:contain;height:auto;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fff;box-shadow:0 10px 24px rgba(20,32,51,.08)}.knowledge-map-figure figcaption{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width:760px){.knowledge-map-figure{width:100%}.knowledge-map-figure img{max-height:none}}.example,.example-list{min-width:0;max-width:100%}pre{max-width:100%}@media (max-width:760px){pre{white-space:pre-wrap}}.equations-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.check-card{display:grid;grid-gap:8px;gap:8px;border:1px solid #d8e3ef;border-radius:var(--radius);padding:14px;background:#f8fbff;margin-top:12px}.check-card span{color:var(--muted);font-size:13px;font-weight:800}.check-card strong{color:var(--accent-dark);font-size:20px;line-height:1.55}@media (max-width:1180px){.equations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.equations-grid{grid-template-columns:1fr}}.inequalities-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.interval-line{position:relative;height:56px;margin:18px 2px 10px;border-radius:var(--radius);background:linear-gradient(180deg,#fff,#f8fbff)}.interval-line:before{left:0;right:0;top:27px;height:3px;background:#21314a;content:""}.interval-fill,.interval-line:before{position:absolute;border-radius:999px}.interval-fill{top:22px;height:13px;background:rgba(37,99,235,.25)}.interval-point{position:absolute;top:18px;width:20px;height:20px;border:3px solid var(--accent);border-radius:999px;transform:translateX(-50%);background:#fff;z-index:1}.interval-point.closed{background:var(--accent)}@media (max-width:1180px){.inequalities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.inequalities-grid{grid-template-columns:1fr}}.functions-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.graph-panel{min-height:560px}.function-svg{width:100%;aspect-ratio:1/1;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.function-svg rect{fill:#fbfdff}.function-svg text{fill:#5d6b7e;font-size:12px;font-weight:800}.axis-line{stroke:#21314a;stroke-width:1.4}.function-path{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@media (max-width:1180px){.functions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.functions-grid{grid-template-columns:1fr}.graph-panel{min-height:auto}}.geometry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.geometry-practice{grid-column:span 4;min-height:auto}.geometry-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.geometry-svg text{fill:#1e40af;font-size:14px;font-weight:900}.geo-dash,.geo-line{stroke:#21314a;stroke-width:4;stroke-linecap:round}.geo-line.active{stroke:var(--accent)}.geo-dash{stroke-dasharray:7 6;stroke-width:3}.geo-arc{fill:none;stroke:var(--green);stroke-width:4;stroke-linecap:round}.geo-point{fill:var(--accent)}.geo-circle,.geo-shape{fill:rgba(37,99,235,.08);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.geo-shape.quad{fill:rgba(22,130,91,.1);stroke:var(--green)}.geo-circle{fill:rgba(37,99,235,.06)}@media (max-width:1180px){.geometry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.geometry-practice{grid-column:span 2}}@media (max-width:760px){.geometry-grid{grid-template-columns:1fr}.geometry-practice{grid-column:auto}}.lines-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.lines-panel{min-height:500px}.lines-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.lines-svg text{fill:#1e40af;font-size:13px;font-weight:900}.line-main{stroke:#21314a;stroke-width:4;stroke-linecap:round}.line-main.accent{stroke:var(--accent)}.angle-mark{fill:none;stroke:var(--green);stroke-width:4;stroke-linecap:round}.line-point{fill:var(--accent)}.mode-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;margin:10px 0 12px}.mode-button{min-height:38px;border:1px solid #cbd5e1;border-radius:var(--radius);background:#fff;color:var(--ink);font-weight:900;cursor:pointer}.mode-button.active{border-color:var(--accent);background:var(--accent-weak);color:var(--accent-dark)}@media (max-width:1180px){.lines-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.lines-grid{grid-template-columns:1fr}.lines-panel{min-height:auto}.mode-buttons{grid-template-columns:1fr}}.triangles-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.triangle-panel{min-height:560px}.triangle-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.triangle-svg text{fill:#1e40af;font-size:13px;font-weight:900}.tri-shape{fill:rgba(37,99,235,.08);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.tri-shape.invalid{fill:rgba(209,47,47,.08);stroke:var(--danger);stroke-dasharray:7 6}.tri-shape.area{fill:rgba(22,130,91,.1);stroke:var(--green)}.tri-dash{stroke:#21314a;stroke-width:3;stroke-linecap:round;stroke-dasharray:7 6}@media (max-width:1180px){.triangles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.triangles-grid{grid-template-columns:1fr}.triangle-panel{min-height:auto}}.congruence-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.congruence-panel{min-height:560px}.congruence-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.congruence-svg text{fill:#1e40af;font-size:13px;font-weight:900}.cong-shape,.sim-shape{fill:rgba(37,99,235,.08);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.cong-shape.pair,.sim-shape.large{fill:rgba(22,130,91,.1);stroke:var(--green)}@media (max-width:1180px){.congruence-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.congruence-grid{grid-template-columns:1fr}.congruence-panel{min-height:auto}}.quadrilaterals-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quadrilateral-panel{min-height:560px}.quadrilateral-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.quadrilateral-svg text{fill:#1e40af;font-size:13px;font-weight:900}.quad-shape{fill:rgba(37,99,235,.08);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.quad-shape.special{fill:rgba(22,130,91,.1);stroke:var(--green)}.quad-shape.trapezoid{fill:rgba(238,151,43,.12);stroke:#b45309}.quad-dash{stroke:#21314a;stroke-width:3;stroke-linecap:round;stroke-dasharray:7 6}@media (max-width:1180px){.quadrilaterals-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.quadrilaterals-grid{grid-template-columns:1fr}.quadrilateral-panel{min-height:auto}}.circle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.circle-panel{min-height:545px}.circle-practice{grid-column:span 4}.circle-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.circle-svg text{fill:#1e40af;font-size:13px;font-weight:900}.circle-outline,.circle-shape{fill:rgba(37,99,235,.06);stroke:var(--accent);stroke-width:4}.circle-outline{fill:none}.sector-shape{fill:rgba(238,151,43,.24);stroke:#b45309;stroke-width:3}.circle-radius{stroke:#21314a;stroke-width:3;stroke-linecap:round}.circle-diameter{stroke:var(--green);stroke-width:3;stroke-linecap:round;stroke-dasharray:7 6}.circle-chord{stroke:#21314a;stroke-width:3;stroke-linecap:round}.circle-chord.thick{stroke:var(--accent);stroke-width:5}.circle-point{fill:var(--accent)}.circle-point.center{fill:var(--green)}@media (max-width:1180px){.circle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.circle-practice{grid-column:span 2}}@media (max-width:760px){.circle-grid{grid-template-columns:1fr}.circle-panel{min-height:auto}.circle-practice{grid-column:auto}}.pythagorean-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pythagorean-panel{min-height:555px}.pythagorean-practice{grid-column:span 4}.pythagorean-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.pythagorean-svg text{fill:#1e40af;font-size:13px;font-weight:900}.py-triangle{fill:rgba(37,99,235,.12);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.py-triangle.dynamic{fill:rgba(22,130,91,.1);stroke:var(--green)}.py-square{stroke-width:3;stroke-linejoin:round}.py-square.small{fill:rgba(37,99,235,.12);stroke:var(--accent)}.py-square.medium{fill:rgba(22,130,91,.12);stroke:var(--green)}.py-square.large{fill:rgba(238,151,43,.16);stroke:#b45309}.py-leg{stroke:#21314a;stroke-width:4;stroke-linecap:round}.py-hypotenuse{stroke:#b45309;stroke-width:4;stroke-linecap:round}@media (max-width:1180px){.pythagorean-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pythagorean-practice{grid-column:span 2}}@media (max-width:760px){.pythagorean-grid{grid-template-columns:1fr}.pythagorean-panel{min-height:auto}.pythagorean-practice{grid-column:auto}}.right-angle-mark{fill:none;stroke:#21314a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.trigonometry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.trigonometry-panel{min-height:570px}.trigonometry-practice{grid-column:span 4}.trigonometry-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.trigonometry-svg text{fill:#1e40af;font-size:13px;font-weight:900}.trig-triangle{fill:rgba(37,99,235,.1);stroke:var(--accent);stroke-width:4;stroke-linejoin:round}.trig-angle-arc{fill:none;stroke:#b45309;stroke-width:4;stroke-linecap:round}.trig-ground,.trig-height,.trig-sight{fill:none;stroke:#21314a;stroke-width:4;stroke-linecap:round}.trig-height{stroke:var(--green)}.trig-sight{stroke:#b45309}.trig-ratio-list,.trig-table{display:grid;grid-gap:8px;gap:8px}.trig-ratio-list{grid-template-columns:repeat(3,minmax(0,1fr))}.trig-ratio-list span,.trig-table div{border:1px solid #d8e3ef;border-radius:var(--radius);background:#fff;padding:10px;font-weight:900;color:var(--accent-dark);text-align:center}.trig-table div{display:flex;justify-content:space-between;gap:10px;text-align:left}.trig-table span{color:var(--muted);font-weight:800}.trig-table strong{color:var(--accent-dark)}.trig-mode-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1180px){.trigonometry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trigonometry-practice{grid-column:span 2}}@media (max-width:760px){.trigonometry-grid{grid-template-columns:1fr}.trigonometry-panel{min-height:auto}.trigonometry-practice{grid-column:auto}.trig-mode-buttons,.trig-ratio-list{grid-template-columns:1fr}}.trig-label-line{stroke:#64748b;stroke-width:2;stroke-linecap:round;stroke-dasharray:4 4}.trigonometry-svg .trig-side-label{fill:#0f172a;font-size:12px}.transformations-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.transformations-panel{min-height:570px}.transformations-practice{grid-column:span 4}.transformations-svg{width:100%;aspect-ratio:11/8;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.transformations-svg text{fill:#1e40af;font-size:12px;font-weight:900}.transform-grid-lines line{stroke:#e2e8f0;stroke-width:1}.transform-grid-lines .axis{stroke:#64748b;stroke-width:2}.transform-shape{stroke-width:4;stroke-linejoin:round}.transform-shape.original{fill:rgba(37,99,235,.1);stroke:var(--accent)}.transform-shape.dilated,.transform-shape.moved,.transform-shape.rotated{fill:rgba(22,130,91,.12);stroke:var(--green)}.transform-shape.reflected{fill:rgba(238,151,43,.14);stroke:#b45309}.dilation-ray,.transform-vector{stroke:#b45309;stroke-width:3;stroke-linecap:round;stroke-dasharray:7 6}.dilation-ray{stroke:#64748b;stroke-width:2}.transform-center{fill:#b45309}.rotation-guide{fill:none;stroke:#cbd5e1;stroke-width:2;stroke-dasharray:6 6}.transform-mode-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1180px){.transformations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transformations-practice{grid-column:span 2}}@media (max-width:760px){.transformations-grid{grid-template-columns:1fr}.transformations-panel{min-height:auto}.transformations-practice{grid-column:auto}.transform-mode-buttons{grid-template-columns:1fr}}.data-collection-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.data-collection-panel{min-height:545px}.data-collection-practice{grid-column:span 4}.data-mode-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.frequency-table,.population-box,.survey-card{border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.survey-card{display:grid;grid-gap:10px;gap:10px;padding:14px;margin:10px 0 12px}.survey-card strong{color:var(--ink);font-size:1rem}.survey-card span{color:var(--muted);font-weight:800}.sample-visual{margin:10px 0 12px}.population-box{display:grid;grid-template-columns:repeat(10,1fr);grid-gap:6px;gap:6px;padding:12px}.sample-dot{aspect-ratio:1;border-radius:50%;background:#d8e3ef}.sample-dot.active{background:var(--accent)}.represent-meter{height:18px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin:16px 0}.represent-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--accent))}.frequency-table{display:grid;overflow:hidden;margin:10px 0 12px}.frequency-table div{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-gap:8px;gap:8px;padding:10px 12px;border-bottom:1px solid #e2e8f0}.frequency-table div:last-child{border-bottom:0}.frequency-table div:first-child{background:var(--accent-weak);color:var(--accent-dark)}.frequency-table span,.frequency-table strong{font-weight:900}@media (max-width:1180px){.data-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-collection-practice{grid-column:span 2}}@media (max-width:760px){.data-collection-grid{grid-template-columns:1fr}.data-collection-panel{min-height:auto}.data-collection-practice{grid-column:auto}.data-mode-buttons{grid-template-columns:1fr}}.statistical-charts-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.statistical-charts-panel{min-height:545px}.chart-panel-wide{grid-column:span 2}.statistical-charts-practice{grid-column:span 4}.chart-mode-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}.statistics-svg{width:100%;aspect-ratio:12/7;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.statistics-svg text{fill:#1e40af;font-size:12px;font-weight:900}.chart-axis{stroke:#475569;stroke-width:3;stroke-linecap:round}.bar-rect,.histogram-rect,.pie-slice{stroke:#fff;stroke-width:2}.histogram-rect{fill:rgba(37,99,235,.75)}.line-chart-line{fill:none;stroke:var(--green);stroke-width:4;stroke-linejoin:round;stroke-linecap:round}.line-chart-point{fill:var(--green);stroke:#fff;stroke-width:2}.completion-card{display:grid;grid-gap:8px;gap:8px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff;padding:12px;margin:10px 0 12px}.completion-card span,.completion-card strong{font-weight:900}.completion-card strong{color:var(--accent-dark)}.percent-disc{width:min(160px,65%);aspect-ratio:1;border-radius:50%;margin:14px auto;border:8px solid #fff;box-shadow:0 0 0 1px #d8e3ef}@media (max-width:1180px){.statistical-charts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statistical-charts-practice{grid-column:span 2}}@media (max-width:760px){.statistical-charts-grid{grid-template-columns:1fr}.chart-panel-wide,.statistical-charts-panel,.statistical-charts-practice{grid-column:auto;min-height:auto}.chart-mode-buttons{grid-template-columns:1fr}}.data-trends-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.data-trends-panel{min-height:520px}.data-trends-wide{grid-column:span 2}.data-trends-practice{grid-column:span 4}.data-dot-plot{width:100%;aspect-ratio:16/6;margin:8px 0 12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff}.data-dot-plot text{fill:#334155;font-size:12px;font-weight:900}.data-axis{stroke:#64748b;stroke-width:3;stroke-linecap:round}.data-tick{stroke:#94a3b8;stroke-width:2}.data-list-card,.formula-card,.recommend-card,.tip-card{border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff;padding:12px;font-weight:900}.stat-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.mini-stat{display:grid;grid-gap:4px;gap:4px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fff;padding:12px}.formula-card span,.mini-stat span,.recommend-card span{color:var(--muted);font-size:12px;font-weight:900}.formula-card strong,.mini-stat strong,.recommend-card strong{color:var(--accent-dark);font-size:28px;line-height:1.1}.mini-stat em{color:var(--muted);font-size:12px;font-style:normal}.formula-card{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.formula-card code{white-space:normal}.variance-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.variance-compare>div{display:grid;grid-gap:6px;gap:6px;min-width:0}.variance-compare span,.variance-compare strong{font-weight:900}.variance-compare span{color:var(--muted)}.tip-card{margin-top:10px;color:var(--green-dark)}.scenario-buttons{grid-template-columns:1fr}.recommend-card{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.recommend-card p{margin:0;color:var(--text);font-weight:700}@media (max-width:1180px){.data-trends-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-trends-practice{grid-column:span 2}}@media (max-width:760px){.data-trends-grid,.stat-card-grid,.variance-compare{grid-template-columns:1fr}.data-trends-panel,.data-trends-practice,.data-trends-wide{grid-column:auto;min-height:auto}.formula-card strong,.mini-stat strong,.recommend-card strong{font-size:24px}}.probability-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.probability-panel{min-height:500px}.probability-wide{grid-column:span 2}.probability-practice{grid-column:span 4}.event-buttons{grid-template-columns:1fr}.event-card{display:grid;grid-gap:9px;gap:9px;margin-top:12px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff;padding:14px}.event-card span,.event-card strong{font-weight:900}.event-card span{color:var(--muted)}.event-card strong{color:var(--accent-dark);font-size:30px;line-height:1.1}.event-card p{margin:0;font-weight:750}.dice-sim-row{display:grid;grid-template-columns:128px minmax(0,1fr);grid-gap:14px;gap:14px;align-items:stretch;margin:10px 0 12px}.dice-face{width:128px;aspect-ratio:1}.dice-face rect{fill:#fff;stroke:#2563eb;stroke-width:5}.dice-face circle{fill:#1e293b}.probability-result-card{margin:0;align-content:center}.ball-row{display:flex;flex-wrap:wrap;gap:8px;min-height:58px;margin:10px 0 12px;align-content:flex-start}.ball{width:24px;height:24px;border-radius:50%;box-shadow:inset 0 2px 4px rgba(255,255,255,.75),0 1px 3px rgba(15,23,42,.18)}.ball.red{background:#dc2626}.ball.blue{background:#2563eb}.ball.green{background:#16a34a}.tree-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:12px 0}.tree-outcome{border:1px solid #d8e3ef;border-radius:var(--radius);background:#fff;padding:18px 10px;color:var(--muted);font-size:22px;font-weight:950;text-align:center}.tree-outcome.win{border-color:rgba(22,163,74,.4);background:rgba(22,163,74,.1);color:var(--green-dark)}@media (max-width:1180px){.probability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.probability-practice{grid-column:span 2}}@media (max-width:760px){.probability-grid,.tree-grid{grid-template-columns:1fr}.probability-panel,.probability-practice,.probability-wide{grid-column:auto;min-height:auto}.dice-sim-row{grid-template-columns:1fr}.dice-face{width:min(128px,100%)}}.modeling-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.modeling-panel{min-height:500px}.modeling-wide{grid-column:span 2}.modeling-practice{grid-column:span 4}.modeling-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin:10px 0 12px}.modeling-step{display:grid;justify-items:center;grid-gap:6px;gap:6px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fff;padding:10px 8px;color:var(--muted);font-weight:900;cursor:pointer}.modeling-step span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#e2e8f0;color:#334155}.modeling-step.active{border-color:rgba(37,99,235,.45);background:rgba(37,99,235,.08);color:var(--accent-dark)}.modeling-step.active span{background:var(--accent);color:#fff}.modeling-step-card{margin-top:0}.route-visual{position:relative;height:34px;margin:12px 0;border:1px solid #d8e3ef;border-radius:999px;background:repeating-linear-gradient(90deg,#f8fafc,#f8fafc 22px,#e2e8f0 0,#e2e8f0 24px);overflow:hidden}.route-visual span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#16a34a)}@media (max-width:1180px){.modeling-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.modeling-practice{grid-column:span 2}.modeling-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.modeling-grid,.modeling-steps{grid-template-columns:1fr}.modeling-panel,.modeling-practice,.modeling-wide{grid-column:auto;min-height:auto}}.plan-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:10px 0 12px}.plan-rule-card{display:grid;grid-gap:5px;gap:5px;border:1px solid #d8e3ef;border-radius:var(--radius);background:#fbfdff;padding:12px}.plan-rule-card em,.plan-rule-card span,.plan-rule-card strong{font-weight:900}.plan-rule-card span{color:var(--muted);font-size:12px}.plan-rule-card strong{color:var(--accent-dark);line-height:1.25}.plan-rule-card em{color:var(--muted);font-size:12px;font-style:normal}@media (max-width:760px){.plan-rule-grid{grid-template-columns:1fr}}.sidebar-sticky{max-height:calc(100vh - 48px);grid-template-rows:auto minmax(0,1fr)}.lesson-nav{min-height:0;max-height:100%;overflow-y:auto;scrollbar-gutter:stable;overscroll-behavior:contain}.lesson-nav::-webkit-scrollbar{width:10px}.lesson-nav::-webkit-scrollbar-track{background:#eef3f8;border-radius:999px}.lesson-nav::-webkit-scrollbar-thumb{border:2px solid #eef3f8;border-radius:999px;background:#9fb3ce}.lesson-nav::-webkit-scrollbar-thumb:hover{background:#7892b2}@media (max-width:1180px){.sidebar-sticky{max-height:none}.lesson-nav{max-height:min(58vh,560px)}}