:root{color-scheme:light;--paper:#f6f5f1;--card:#fff;--ink:#172c39;--muted:#51616c;--edge:#cbd5db;--accent:#145979;--tint:#e8f1f4}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 system-ui,sans-serif}body[data-theme=dark]{color-scheme:dark;--paper:#14212a;--card:#1c2d38;--ink:#ecf3f5;--muted:#c0d0d8;--edge:#526774;--accent:#91d9f6;--tint:#233f4d}header,main{max-width:1060px;margin:auto;padding:28px}header{padding-top:38px}h1{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.15;letter-spacing:-.04em;margin:22px 0}h2{font-size:clamp(1.6rem,4vw,2.1rem);line-height:1.25}h3{line-height:1.35}a{color:var(--accent)}p{margin:12px 0}.intro{font-size:1.25rem;max-width:650px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;color:var(--muted);font-weight:700}nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}nav a{padding:7px 12px;border:1px solid var(--edge);border-radius:8px;text-decoration:none}section{margin:24px 0 48px;scroll-margin-top:20px}article{padding:22px;border:1px solid var(--edge);background:var(--card);border-radius:12px;margin:16px 0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid article{margin:0}.example,.mission{border-left:4px solid var(--accent)}button{font:inherit;cursor:pointer;color:var(--ink);border:1px solid var(--edge);border-radius:8px;background:var(--card);padding:9px 16px}button:hover{background:var(--tint)}#theme{float:right;font-size:.85rem}.buttons{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.iso-plate{display:block;margin:24px 0;background:var(--card);border:1px solid var(--edge);border-radius:14px;padding:18px}.corners{display:flex;justify-content:space-between;gap:12px;font-size:.82rem;color:var(--muted)}.iso-stage{width:100%}.iso-svg{display:block;width:100%;height:auto}.lower{padding-bottom:12px;border-bottom:1px solid var(--edge)}figcaption{font-size:.84rem;color:var(--muted);padding-top:12px}.controls{padding:20px;border:1px solid var(--edge);border-radius:12px;background:var(--card)}label{display:block;font-weight:650}input[type=range]{display:block;width:100%;margin:18px 0;accent-color:var(--accent)}.tour{font-weight:400;font-size:.88rem}.notice{font-size:.88rem;color:var(--muted)}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.metrics>div{background:var(--tint);border-radius:10px;padding:14px;font-size:.82rem}.metrics strong{display:block;font-size:1.25rem;margin-top:8px}table{width:100%;border-collapse:collapse;background:var(--card);margin:22px 0}caption{text-align:left;font-weight:650;padding:8px}th,td{text-align:left;border:1px solid var(--edge);padding:10px}input[type=text],textarea{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--edge);border-radius:7px;padding:10px;max-width:100%;margin:8px 8px 8px 0}textarea{width:100%}.feedback{min-height:1.8em;font-size:.9rem}.feedback[data-state=ok]{color:var(--accent)}details{border-top:1px solid var(--edge);padding:12px 0;margin-top:10px}summary{cursor:pointer;font-weight:650}footer{font-size:.82rem;color:var(--muted);padding:20px 0;border-top:1px solid var(--edge)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}#print{margin-top:18px}[hidden]{display:none!important}
@media(max-width:600px){header,main{padding:18px}.grid{grid-template-columns:1fr}.iso-plate{padding:10px;margin-left:0;margin-right:0}.corners{font-size:.72rem}.metrics{grid-template-columns:1fr}.metrics>div{display:flex;align-items:center;justify-content:space-between}.metrics strong{margin:0}.exercise input{display:block;width:100%}th,td{padding:7px}#theme{float:none;margin-top:12px}h1 br{display:none}}
@media print{body,body[data-theme=dark]{--paper:white;--card:white;--ink:#111;--muted:#333;--edge:#aaa;--tint:#eee;background:white;color:#111;font-size:11pt}header,main{padding:0;max-width:none}nav,button,.controls,.skip-link,.btn-return-course{display:none!important}h1{font-size:26pt}.iso-plate{break-inside:avoid;max-width:650px;--anatomy-top:#fff;--anatomy-hi:#222;--anatomy-mid:#777;--anatomy-lo:#aaa}.exercise,details{break-inside:avoid}input[type=text],textarea{border:1px solid #aaa}.feedback:empty{display:none}section{margin:20px 0}a{color:#111}summary{list-style:none}.metrics{display:none}}

.iso-plate[data-theme=light]{--anatomy-lit-top:#c6e8f6;--anatomy-lit-shade:#79b9d4;--anatomy-lit:#145979}.iso-plate[data-theme=dark]{--anatomy-lit-top:#295d74;--anatomy-lit-shade:#1d4357;--anatomy-lit:#9bdefa}.lower{flex-wrap:wrap}#figure-readout{white-space:nowrap}
