:root{--navy:#19273c;--ink:#182b43;--muted:#5b6a7c;--blue:#245fe5;--teal:#007e70;--mint:#5de4ce;--line:#dce3ed;--paper:#f4f7fb;--white:#fff;--orange:#a84b18;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang HK","Noto Sans CJK TC",sans-serif;color:var(--ink);font-size:16px;line-height:1.65}*{box-sizing:border-box}body{margin:0;background:var(--paper)}button,input,select{font:inherit}button,a,select,input{ -webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #13a5be;outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:2.6rem;letter-spacing:-.04em;line-height:1.3}h2{font-size:1.2rem;line-height:1.55}h3{font-size:1rem}p+p{margin-top:.7rem}small{font-size:.75rem}i{font-family:"Times New Roman",serif}.skip{position:fixed;top:-100px;z-index:10;background:#fff;padding:12px}.skip:focus{top:4px}.sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:var(--navy);color:#fff;padding:28px 22px;overflow-y:auto}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:white;font-size:1.05rem;font-weight:650}.brand small{display:block;font-size:.65rem;letter-spacing:.1em;color:#b0bed1;margin-top:1px}.brand-icon{border:1px solid #6a8099;border-radius:8px;padding:2px 8px;font-size:1.55rem;letter-spacing:-.06em}.brand-icon span{color:var(--mint)}.chapter-stamp{margin:38px 9px 28px}.chapter-stamp>span,.nav-label{font-size:.75rem;letter-spacing:.12em;color:#a4b2c8}.chapter-stamp strong{display:block;font-size:4.4rem;line-height:1.15;letter-spacing:-.06em;font-weight:500;color:var(--mint);margin:5px 0 15px}.chapter-stamp strong span{font-size:1rem;letter-spacing:0;color:#a4b2c8}.chapter-stamp h2{font-size:1.3rem}.chapter-stamp p{font-size:.8rem;line-height:1.6;color:#aebed2;margin-top:6px}.nav-label{margin:0 10px 10px}nav{display:flex;flex-direction:column;gap:5px}nav a{color:#c4d0e1;text-decoration:none;padding:10px 12px;display:flex;gap:14px;align-items:center;font-size:.9rem;border-radius:6px}nav a span{font-variant-numeric:tabular-nums;font-size:.78rem;opacity:.75}nav a:hover{background:#243851;color:white}nav a.active{background:#30435c;color:#fff;box-shadow:inset 3px 0 var(--mint)}nav a.active span{color:var(--mint);opacity:1}.sidebar-note{border-top:1px solid #3a4b63;margin:30px 10px 0;padding-top:20px}.sidebar-note>span{font-size:.75rem;color:#aebed2}.sidebar-note p{font-size:1.06rem;color:#dfe8f2;margin-top:7px}.mini-interval{display:flex;align-items:center;background:var(--mint);height:2px;width:110px;margin:28px 0 12px;justify-content:space-between}.mini-interval i{height:14px;width:2px;background:var(--mint)}.mini-interval b{width:8px;height:8px;background:var(--mint);border-radius:50%}.workspace{margin-left:258px}.topbar{height:72px;padding:0 44px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.divider{color:#a5b3c5;margin:0 14px}.topnote{font-size:.75rem;letter-spacing:.08em;color:var(--muted)}.pill{display:inline-block;font-size:.75rem;letter-spacing:0;margin-left:18px;background:#edf5f3;color:var(--teal);padding:4px 11px;border-radius:4px}main{max-width:1410px;margin:auto;padding:34px 44px 60px;outline:none;min-height:calc(100vh - 140px)}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.eyebrow{font-size:.75rem;letter-spacing:.14em;color:var(--blue);font-weight:650;margin-bottom:10px}.page-heading p:not(.eyebrow){color:var(--muted);margin-top:12px;font-size:1rem}.section-tag{font-size:.8rem;color:var(--muted);white-space:nowrap;border:1px solid var(--line);padding:6px 10px;border-radius:5px}.lab{display:grid;grid-template-columns:minmax(0,1fr) 260px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.lab-main{padding:26px 30px}.section-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.small-label{font-size:.75rem;color:var(--muted)}.formula{font-family:"Times New Roman",serif;font-size:2.7rem;display:flex;gap:.35em;justify-content:center;align-items:center;padding:24px 0 5px}.fraction{display:inline-flex;flex-direction:column;vertical-align:middle;align-items:center;font-size:.76em;line-height:1.3;text-align:center}.fraction>span{padding:0 .2em}.fraction>span:first-child{border-bottom:1px solid currentColor;width:100%;padding-bottom:3px}.fraction>span:last-child{padding-top:3px}.lab svg{display:block;width:100%;height:auto;overflow:visible}.lab-controls{background:#f8fafc;border-left:1px solid var(--line);padding:26px 25px}.lab-controls h3{margin-bottom:20px}.lab-controls label{display:flex;justify-content:space-between;gap:8px;font-size:.875rem;margin-top:20px;margin-bottom:8px}.lab-controls output{color:var(--blue);font-weight:650;font-variant-numeric:tabular-nums}.lab-controls select{width:100%;padding:7px 10px;border:1px solid #c2cfe0;border-radius:5px;background:#fff;color:var(--ink)}input[type=range]{width:100%;accent-color:var(--blue);margin:4px 0;min-height:24px}.range-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted)}.control-note{font-size:.8rem;color:var(--muted);line-height:1.7;margin-top:20px}.text-button{border:0;background:transparent;color:var(--blue);padding:8px 0;font-size:.875rem;margin-top:7px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);padding-top:17px;gap:12px}.metric span{display:block;font-size:.8rem;color:var(--muted)}.metric strong{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums}.metric.highlight strong{color:var(--blue)}.takeaway{border-left:3px solid var(--teal);display:flex;gap:22px;margin:22px 0 32px;padding:14px 18px;background:#e8f4f1}.takeaway>span{color:var(--teal);font-size:.8rem;white-space:nowrap;padding-top:3px;font-weight:650}.takeaway p{font-size:.95rem}.math-inline,.math{font-family:"Times New Roman",serif}.math{font-size:1.25rem;line-height:1.8;overflow-wrap:anywhere}.math-block{font-family:"Times New Roman",serif;font-size:1.4rem;line-height:1.85;background:#f2f6fc;padding:16px 20px;border-radius:7px;margin:14px 0;overflow-x:auto}.content-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,1fr);gap:22px;margin:24px 0}.card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:25px}.card h2{margin-bottom:14px}.card p,.card li{font-size:.95rem}.card ul,.card ol{padding-left:22px}.subtle{color:var(--muted)}.kicker{color:var(--blue);font-size:.75rem;font-weight:700;letter-spacing:.1em;margin-bottom:8px;display:block}.steps{counter-reset:steps;list-style:none;padding:0!important;margin:16px 0 0}.steps li{counter-increment:steps;position:relative;padding:0 0 20px 39px}.steps li:last-child{padding-bottom:0}.steps li:before{content:counter(steps);position:absolute;left:0;top:0;background:#eaf0fd;border-radius:50%;width:26px;height:26px;color:var(--blue);text-align:center;font-size:.8rem;line-height:26px;font-weight:700}.steps p{color:var(--muted);margin-top:4px}.answer{display:block;color:#006b5b;background:#e9f6f1;border-radius:5px;padding:11px 14px;margin-top:10px;font-weight:650}.trap{border-top:1px solid var(--line);padding:14px 0}.trap:first-of-type{border-top:0}.trap b{font-size:.95rem}.trap p{margin-top:5px;color:var(--muted);font-size:.875rem}.trap .wrong{color:#a44426}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem;margin:12px 0}th{text-align:left;color:var(--muted);font-weight:500;font-size:.8rem;background:#f5f7fa}th,td{padding:11px 12px;border-bottom:1px solid var(--line)}caption{text-align:left;font-size:.8rem;color:var(--muted);margin-bottom:8px}.button{background:var(--blue);color:white;border:1px solid var(--blue);border-radius:6px;padding:9px 16px;font-size:.9rem;font-weight:600}.button.secondary{background:white;border-color:#b8c8dc;color:var(--ink)}.button:hover{filter:brightness(.95)}.button:disabled{opacity:.5;cursor:default}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:15px}.actions span{font-size:.8rem;color:var(--muted)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:32px 0 16px}.section-heading h2{font-size:1.35rem}.section-heading span{font-size:.8rem;color:var(--muted)}.full{margin:24px 0}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.field label{display:block;font-size:.85rem;margin-bottom:6px}.field input,.field select,.quiz-input{min-width:0;width:100%;background:white;color:var(--ink);border:1px solid #b9c7d9;border-radius:6px;padding:8px 10px}.field small{display:block;color:var(--muted);margin-top:5px}.result-panel{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.result-panel strong{font-size:1.4rem;color:var(--blue)}.error{color:#ae2e2e!important;background:#fff2f1;padding:10px;border-radius:5px}.feedback{margin-top:12px;font-size:.9rem}.feedback.good{color:#006654;background:#e9f6f1;padding:12px;border-radius:5px}.feedback.bad{color:#97371a;background:#fff1e8;padding:12px;border-radius:5px}details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}summary{cursor:pointer;color:var(--blue);font-size:.9rem}details .math-block{font-size:1.2rem}.choice-group{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.choice-group button{padding:7px 14px;background:#fff;border:1px solid #c1cfe0;color:var(--muted);border-radius:5px;font-size:.85rem}.choice-group button[aria-pressed=true]{background:#eaf0ff;border-color:var(--blue);color:var(--blue)}.sample-key{display:flex;gap:18px;font-size:.8rem;color:var(--muted);margin:10px 0}.sample-key span:before{content:"";display:inline-block;width:8px;height:8px;background:var(--blue);border-radius:50%;margin-right:7px}.sample-key span:last-child:before{background:#bb5530}.coverage-chart{max-height:380px;overflow:hidden}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:14px}.quiz-number{font-size:.8rem;color:var(--blue);font-weight:650}.quiz-answer-row{display:flex;gap:10px;margin-top:16px;align-items:center}.quiz-input{max-width:200px}.quiz-question{font-size:1rem!important;line-height:1.85}.quiz-progress{font-size:.85rem;color:var(--teal);background:#e7f3ef;padding:5px 10px;border-radius:5px}.quiz-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quiz-grid .card{margin:0}.radio-options{border:0;padding:0;margin:15px 0 0}.radio-options label{display:flex;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:5px;margin:6px 0;font-size:.9rem;align-items:start}.radio-options input{accent-color:var(--blue);margin-top:5px}.source-note{font-size:.8rem;color:var(--muted);margin:20px 0}.next-lesson{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:35px;font-size:.9rem;gap:15px}.next-lesson a{text-decoration:none}footer{display:flex;justify-content:space-between;margin:0 44px;padding:20px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.75rem;gap:20px}[hidden]{display:none!important}@media(min-width:1600px){main{padding-top:45px}.lab-main{padding:30px 40px}.lab{grid-template-columns:minmax(0,1fr) 290px}}@media(max-width:1180px){.sidebar{width:225px;padding:25px 16px}.workspace{margin-left:225px}main{padding:28px}.topbar{padding:0 28px}.lab{grid-template-columns:minmax(0,1fr) 225px}.lab-main{padding:22px}.lab-controls{padding:22px 18px}.section-top{align-items:start;flex-direction:column;gap:4px}.content-grid{grid-template-columns:1.3fr 1fr}.section-tag{display:none}}@media(max-width:900px){.sidebar{position:static;width:auto;padding:16px 22px}.brand{font-size:1rem}.brand small{display:none}.chapter-stamp,.sidebar-note,.nav-label{display:none}nav{flex-direction:row;overflow-x:auto;margin-top:16px;gap:7px;padding-bottom:4px}nav a{white-space:nowrap;padding:8px 12px;font-size:.85rem}nav a span{display:none}nav a.active{box-shadow:inset 0 -2px var(--mint)}.workspace{margin-left:0}.topbar{height:55px}.content-grid{grid-template-columns:1fr 1fr}h1{font-size:2.2rem}.lab{grid-template-columns:minmax(0,1fr) 225px}.topnote{font-size:.7rem}.page-heading{margin-bottom:22px}}@media(max-width:640px){main{padding:24px 18px 40px}.topbar{padding:0 18px}.topnote{letter-spacing:0}.pill{margin-left:8px}.sidebar{padding:14px 18px}h1{font-size:2rem}.page-heading p:not(.eyebrow){font-size:.95rem}.lab{grid-template-columns:1fr}.lab-main{padding:20px 18px}.lab-controls{border-left:0;border-top:1px solid var(--line);padding:20px}.lab-controls h3{margin-bottom:8px}.lab-controls label{margin-top:14px}.content-grid,.quiz-grid{grid-template-columns:1fr}.takeaway{display:block;padding:12px 15px}.takeaway p{margin-top:6px}.formula{font-size:2.4rem}.metrics{gap:8px}.metric strong{font-size:1.25rem}.metric span{font-size:.75rem}.field-grid{grid-template-columns:1fr 1fr}.card{padding:20px}.quiz-answer-row{flex-wrap:wrap}.quiz-input{max-width:none;flex:1 1 120px}.section-heading{align-items:start}.section-heading span{max-width:130px;text-align:right}footer{margin:0 18px;flex-direction:column;gap:3px}.next-lesson{font-size:.8rem}.small-label{font-size:.75rem}}@media(prefers-reduced-motion:no-preference){main{animation:appear .25s ease}@keyframes appear{from{opacity:.6;transform:translateY(3px)}to{opacity:1;transform:none}}} @media print{.sidebar,.topbar,footer,.lab-controls,.button,.text-button,.next-lesson{display:none}.workspace{margin:0}main{padding:0;max-width:none}.card,.lab{break-inside:avoid}.lab{display:block}details{display:block}.content-grid{display:block}.card{margin:20px 0}}
.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}.card>svg,#width-chart svg{width:100%;height:auto;display:block}.new-interval{animation:interval-in .25s ease-out}.hist-bar{transition:y .12s,height .12s}@keyframes interval-in{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.new-interval{animation:none}.hist-bar{transition:none}}@media(max-width:640px){svg text{font-size:24px}.metrics{overflow-wrap:anywhere}.math-block{font-size:1.2rem}.field-grid{grid-template-columns:1fr 1fr}}@media(max-width:380px){.field-grid{grid-template-columns:1fr}.topnote>.pill{display:none}}
.coverage-chart{max-height:none}.brand small{font-size:.75rem}
