body{--accent:#137670;--accent-rgb:19,118,112;background:#f4f7f9}
.class-header{padding:74px 0 18px}.class-header h1{max-width:1100px;font-size:clamp(29px,3.4vw,43px);line-height:1.08}.class-header .lead{max-width:1040px;font-size:15px;margin-top:9px}.scope{margin-top:9px;color:#667580;font-size:12px;line-height:1.5}
.simulation-first,.continuous-deduction,.comparison-graphs{scroll-margin-top:76px}
.step-nav{display:flex;gap:5px;padding:6px;margin:0 0 14px;border:1px solid #d6e0e5;border-radius:15px;background:#e6ecef;flex-wrap:wrap}.step-nav button{flex:1;min-width:90px;min-height:43px;padding:9px 7px;border:0;border-radius:9px;background:transparent;color:#45545e;font-size:13px;font-weight:650}.step-nav button[aria-current=step]{background:var(--accent);color:white}
.experiment{min-width:0;background:white;border:1px solid #d6e0e5;border-radius:20px;overflow:hidden;box-shadow:0 18px 45px #1738490d}.experiment-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 18px;color:white;background:#101d2b}.experiment-head span{font-size:10px;color:#b2c3d3;letter-spacing:.08em}.experiment-head h3{margin:3px 0;font-size:18px}.jump-deduction{font-size:13px;color:#b9e3d8;white-space:nowrap;text-decoration:underline;text-underline-offset:4px}
.sim-main{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(270px,1fr)}.scene-area{min-width:0;background:#0a1421}.scene{position:relative;background:#0a1421;overflow:hidden}.scene svg{display:block;width:100%;height:auto;aspect-ratio:800/440}.scene text{font-family:var(--font)}.scene-description{margin:0;padding:12px 18px;background:#152432;color:#d1deea;font-size:13px;min-height:67px;line-height:1.55}.sim-panel{min-width:0;background:#fff}
.play-controls{padding:13px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #dce5e9;flex-wrap:wrap}.play-controls .button{font-size:13px;flex:1;white-space:nowrap;padding:0 9px}.play-controls .time-control{display:flex;align-items:center;gap:10px;width:100%;min-width:0}.play-controls output{font-size:12px;min-width:34px;color:#476171}
.parameter-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:13px;background:#f6f9fa}.parameter-controls label{font-size:12px;color:#4c616d;min-width:0}.parameter-controls .range-head{display:block;margin-bottom:4px;font-size:12px}.parameter-controls output{display:block;color:var(--accent);font-weight:650;margin-top:3px;font-variant-numeric:tabular-nums}.parameter-controls .n-control{grid-column:1/-1}.parameter-controls .button{grid-column:1/-1;font-size:12px}
.metrics{display:grid;grid-template-columns:1fr;border-top:1px solid #dce5e9}.metrics div{padding:9px 14px;border-bottom:1px solid #e8edf0;min-width:0}.metrics div:last-child{border-bottom:0}.metrics span{display:block;color:#647782;font-size:11px}.metrics strong{display:block;color:#264b55;font-size:17px;font-variant-numeric:tabular-nums}
.step-brief{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.6fr);gap:24px;margin-top:18px;padding:20px 24px;border:1px solid #d9e2e7;border-radius:16px;background:white}.step-brief h2{font-size:25px;line-height:1.15;letter-spacing:-.03em;margin:8px 0 0}.step-brief p{color:#53616d;line-height:1.6;margin:0 0 8px;font-size:14px}.step-brief .eyebrow{color:var(--accent);font-size:11px}.step-brief strong{color:#263d48}
.prediction-details{margin-top:14px;color:#314b57;font-size:14px}.prediction-details summary{cursor:pointer;font-weight:650}.prediction{border:0;margin:14px 0 0;padding:0;min-width:0;max-width:900px}.prediction legend{font-weight:650;color:#263d48;padding-bottom:10px}.answers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.answers button{border:1px solid #d7e0e5;border-radius:10px;padding:11px;text-align:left;font-size:14px;background:#fff;color:#354852}.answers button[aria-pressed=true]{border-color:var(--accent);background:#e5f4f0}.feedback{padding:12px;margin-top:10px;border-radius:10px;background:#edf7f5;color:#23584d;font-size:14px}.feedback.incorrect{background:#fff5e8;color:#80531e}
.lesson-navigation{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:18px 0 36px}.lesson-navigation span{font-size:13px;color:#637984}.lesson-navigation .button{font-size:14px}.button:disabled{opacity:.4;cursor:default;transform:none}
.continuous-deduction{padding:35px 0 20px;border-top:1px solid #d6e0e5}.continuous-deduction h2,.summary h2,.comparison-graphs h2{font-size:32px;line-height:1.1;margin:8px 0 16px;letter-spacing:-.035em}.deduction-intro{max-width:860px;color:#53616d;font-size:16px;line-height:1.65}.deduction-content{max-width:920px;margin:28px auto 0;font-size:16px;color:#344c57;line-height:1.75;font-weight:400;letter-spacing:0}
.deduction-paragraph{margin:0 0 10px;scroll-margin-top:80px;text-wrap:pretty}
.deduction-paragraph[id]:not(:first-of-type){margin-top:1.75em}
.deduction-lead{font-size:1em;font-weight:600;color:#2c454e}
.deduction-equation{margin:14px 0 28px;padding:4px 0;max-width:100%;overflow-x:auto;overflow-y:hidden;background:none;border:0;border-radius:0;box-shadow:none}
.deduction-equation .katex-display{margin:0;text-align:center}
.deduction-equation .katex{font-size:1.16em;font-weight:400}
.variable-key{display:flex;flex-wrap:wrap;column-gap:22px;row-gap:6px;margin:0 0 28px;color:#63747b;font-size:12px;line-height:1.7;letter-spacing:.005em}
.physics-speed{color:#2567a1}.physics-electric{color:#986000}.physics-magnetic{color:#187657}.physics-neutral{color:inherit}
.deduction-paragraph [class^="physics-"]{font-family:KaTeX_Math,Georgia,serif;font-style:italic}

.summary{padding:25px 0 35px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.summary article{padding:22px;background:white;border:1px solid #d6e0e5;border-radius:16px}.summary article h3{font-size:19px;margin:0 0 12px;color:#234d46}.summary article p{color:#53616d;font-size:15px;line-height:1.6}.table-scroll{overflow-x:auto;margin-top:15px;border:1px solid #d6e0e5;border-radius:14px;background:#fff}table{border-collapse:collapse;width:100%;font-size:14px;white-space:nowrap}caption{padding:14px;text-align:left;font-weight:650;color:#314b57}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #e4ebee}th{background:#edf3f5}tr:last-child td{border-bottom:0}
.notes,.data-details{color:#5b6c75;font-size:14px;line-height:1.65;border-top:1px solid #d6e0e5;padding-top:18px;margin-top:24px}.notes summary,.data-details summary{cursor:pointer;font-weight:650;color:#314b57}.notes a,.related a{color:var(--accent);text-decoration:underline}.related{display:flex;flex-wrap:wrap;gap:20px;margin-top:24px;font-size:14px}
.comparison-graphs{padding:30px 0 65px;border-top:1px solid #d6e0e5}.graph-parameters{font-size:14px;line-height:1.7;color:#53616d}.graph-crossings{display:block;max-width:520px;margin:18px 0 25px;font-size:14px;color:#314b57}.graph-crossings output{font-weight:750;color:var(--accent);margin-left:10px}.graph-crossings input{display:block;margin-top:8px}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.comparison-card{min-width:0;overflow:hidden;border-radius:18px;background:#0a1421;border:1px solid #d6e0e5}.comparison-card h3{padding:18px 20px 0;margin:0;color:#dce9f6;font-size:20px}.comparison-card svg{display:block;width:100%;height:auto;aspect-ratio:800/312}.comparison-card p{padding:12px 18px 18px;margin:0;color:#c1d2e2;font-size:14px;line-height:1.6}.graph-conclusion{margin-top:19px;padding:18px 21px;border-left:3px solid var(--accent);background:#e7f3ef;color:#234d46;font-size:16px;line-height:1.6}
*[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:3px solid #137670;outline-offset:3px}
@media(max-width:980px){.sim-main{grid-template-columns:minmax(0,1.7fr) minmax(255px,1fr)}.experiment-head h3{font-size:16px}.parameter-controls{gap:9px}.class-header h1{font-size:32px}.step-brief{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr}}
@media(max-width:760px){.class-header{padding-top:72px}.class-header h1{font-size:30px}.step-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.step-nav button{min-width:0;font-size:12px}.sim-main{grid-template-columns:1fr}.experiment-head{align-items:start;flex-direction:column;gap:9px}.jump-deduction{font-size:12px}.parameter-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics div{padding:10px 12px;border-bottom:0}.metrics strong{font-size:15px}.play-controls .button{flex:0 1 auto}.play-controls .time-control{flex:1;min-width:180px;width:auto}.answers{grid-template-columns:1fr}.comparison-grid{grid-template-columns:1fr}.step-brief{padding:18px}.continuous-deduction h2,.summary h2,.comparison-graphs h2{font-size:28px}.deduction-content{font-size:15px;line-height:1.75}.deduction-equation .katex{font-size:1.08em}.variable-key{column-gap:16px;font-size:11px}}
@media(max-width:430px){.parameter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics{grid-template-columns:1fr}.metrics div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px}.metrics span{max-width:55%}.metrics strong{font-size:14px}.play-controls .time-control{flex-basis:100%}.lesson-navigation .button{font-size:12px;padding:0 10px}}
