/* Chapter 3 only: atlas pages and small, explicitly illustrative experiments. */
.chapter-three { --ch-ink:#263c35; --ch-muted:#52675e; --ch-green:#176959; --ch-paper:#f7f6f0; --ch-line:#d5ddd3; background:var(--ch-paper); color:var(--ch-ink); line-height:1.7; }
.chapter-three header { position:relative; background:#f7f6f0; border-bottom:1px solid var(--ch-line); backdrop-filter:none; }
.chapter-three .chapter-top { max-width:1220px; margin:auto; padding:22px 30px; display:flex; flex-wrap:wrap; gap:20px; align-items:center; font-size:.83rem; }
.chapter-three .brand { color:var(--ch-green); font-weight:800; letter-spacing:.12em; text-decoration:none; }
.chapter-three .chapter-top>span { color:var(--ch-muted); border-left:1px solid var(--ch-line); padding-left:20px; }
.chapter-three nav { margin-left:auto; }
.chapter-three nav a { border:0; background:transparent; font-size:.86rem; padding:7px 8px; color:var(--ch-ink); }
.chapter-three a { color:#146557; text-underline-offset:3px; }
.chapter-three a:hover { text-decoration:underline; }
.chapter-three main { max-width:1180px; padding:0 28px; margin:auto; }
.chapter-three .hero { display:grid; grid-template-columns:1.3fr 1fr; align-items:center; gap:30px; padding:65px 0 45px; }
.chapter-three h1 { font-family:Georgia,serif; font-weight:400; font-size:clamp(2.5rem,4.5vw,4.7rem); line-height:1.08; letter-spacing:-.04em; margin:12px 0 24px; }
.chapter-three h2 { font-family:Georgia,serif; font-size:clamp(1.65rem,3vw,2.3rem); font-weight:400; line-height:1.2; margin:0 0 14px; letter-spacing:-.02em; }
.chapter-three h3 { font-size:1.1rem; line-height:1.4; margin:0 0 12px; color:var(--ch-ink); }
.chapter-three p { color:var(--ch-ink); margin:0 0 16px; }
.chapter-three .hero-intro { font-size:1.22rem; max-width:580px; }
.chapter-three .hero>div>p:not(.eyebrow):not(.hero-intro) { color:var(--ch-muted); }
.chapter-three .eyebrow { font-size:.74rem; font-weight:800; color:var(--ch-green); letter-spacing:.17em; }
.chapter-three .primary { display:inline-block; margin-top:12px; background:var(--ch-green); color:white; border-radius:5px; padding:12px 20px; font-weight:650; text-decoration:none; }
.chapter-three .hero-art { border-radius:50% 50% 8px 8px; background:#e9eee4; padding:25px 16px 20px; }
.chapter-three .art-caption { display:block; text-align:center; font-size:.78rem; color:var(--ch-muted); }
.chapter-three .reading-route { display:flex; flex-wrap:wrap; gap:8px 24px; padding:20px 0; border-top:1px solid var(--ch-line); border-bottom:1px solid var(--ch-line); font-size:.84rem; }
.chapter-three .reading-route a { text-decoration:none; }
.chapter-three .chapter-section { border:0; border-bottom:1px solid var(--ch-line); border-radius:0; box-shadow:none; background:transparent; margin:0; padding:54px 0; overflow:visible; scroll-margin-top:20px; }
.chapter-three .section-heading { display:flex; align-items:flex-start; gap:20px; margin-bottom:28px; }
.chapter-three .step { flex:0 0 44px; display:grid; place-items:center; height:44px; background:#e2eadd; border-radius:50%; font-size:.85rem; color:var(--ch-green); font-weight:750; }
.chapter-three .lead { max-width:880px; color:var(--ch-muted); font-size:1.08rem; margin-bottom:0; }
.chapter-three .two { display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; }
.chapter-three .three { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin:22px 0; }
.chapter-three .two>*, .chapter-three .three>* { min-width:0; }
.chapter-three figure { margin:0; min-width:0; }
.chapter-three figcaption { font-size:.83rem; line-height:1.6; color:var(--ch-muted); margin:12px 0; }
.chapter-three .diagram { display:block; width:100%; height:auto; border-radius:8px; background:#fff; }
.chapter-three .hero-art .diagram { background:transparent; }
.chapter-three .diagram text { font-family:system-ui,sans-serif; font-size:17px; fill:#334c40; }
.chapter-three .diagram text.small { font-size:13px; }
.chapter-three .diagram text.emphasis { font-weight:800; fill:#986518; }
.chapter-three .diagram .leader { stroke:#7c9183; stroke-width:1.5; fill:none; }
.chapter-three .diagram .bone { fill:#dce5dc; stroke:#788d7c; stroke-width:2; }
.chapter-three .diagram .axis { fill:none; stroke:#647f70; stroke-width:2; }
.chapter-three .wide-figure { background:white; border:1px solid var(--ch-line); border-radius:8px; padding:22px; margin-bottom:30px; }
.chapter-three .wide-figure .diagram { max-width:720px; margin:auto; }
.chapter-three .locator { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:var(--ch-muted); font-size:.85rem; }
.chapter-three .locator .diagram { width:34px; flex:none; background:transparent; }
.chapter-three .takeaway { border-left:4px solid var(--ch-green); border-radius:0 6px 6px 0; background:#eaf0e5; padding:20px 24px; margin:25px 0; font-size:1.04rem; }
.chapter-three .anatomy-list { padding-left:26px; margin:0; }
.chapter-three .anatomy-list li { padding-left:8px; margin-bottom:16px; }
.chapter-three .anatomy-list li::marker { color:var(--ch-green); font-weight:800; }
.chapter-three #segment>.atlas { margin-top:32px; max-width:620px; }
.chapter-three .caption-key { max-width:620px; font-size:.9rem; }
.chapter-three .atlas { background:white; border:1px solid var(--ch-line); border-radius:9px; padding:24px; }
.chapter-three .atlas-svg { max-height:600px; }
.chapter-three .atlas-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:20px 0 30px; align-items:start; }
.chapter-three .atlas-grid .atlas { height:100%; display:flex; flex-direction:column; }
.chapter-three .atlas-grid figcaption { margin-top:auto; padding-top:14px; }
.chapter-three .atlas-marker circle { fill:#125f53; stroke:white; stroke-width:3; }
.chapter-three .atlas-marker text { fill:white; font-size:18px; font-weight:800; }
.chapter-three .atlas-marker.active circle { fill:#a55a16; stroke:#f8d388; stroke-width:7; }
.chapter-three .structure-buttons, .chapter-three .actions { display:flex; gap:8px; flex-wrap:wrap; margin:15px 0; }
.chapter-three button { border:1px solid #9caf9f; border-radius:5px; padding:10px 14px; background:#fff; color:var(--ch-ink); min-height:44px; line-height:1.4; font-weight:550; }
.chapter-three button:hover { background:#edf2e8; }
.chapter-three button[aria-pressed="true"] { background:var(--ch-green); border-color:var(--ch-green); color:white; }
.chapter-three button:focus-visible, .chapter-three a:focus-visible, .chapter-three input:focus-visible, .chapter-three summary:focus-visible { outline:3px solid #b96b17; outline-offset:4px; }
.chapter-three .zoom { align-self:flex-start; font-size:.86rem; margin-top:6px; }
.chapter-three .muscle-cards { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.chapter-three .muscle-card { padding:24px; border:1px solid var(--ch-line); border-radius:6px; scroll-margin-top:20px; }
.chapter-three .muscle-card.active { background:#fff5e4; border-color:#b98636; }
.chapter-three .number { display:inline-grid; place-items:center; background:#166959; color:white; border-radius:50%; width:29px; height:29px; margin-right:9px; font:700 .86rem system-ui,sans-serif; }
.chapter-three .experiment { border:1px solid var(--ch-line); padding:28px; border-radius:10px; background:#fff; margin:26px 0; }
.chapter-three .slider { margin:22px 0; }
.chapter-three .slider label { display:flex; justify-content:space-between; gap:15px; font-weight:650; line-height:1.4; }
.chapter-three output { white-space:nowrap; font-variant-numeric:tabular-nums; color:var(--ch-green); }
.chapter-three input[type="range"] { display:block; width:100%; height:32px; margin:10px 0 3px; accent-color:var(--ch-green); cursor:pointer; }
.chapter-three .hint { font-size:.84rem; line-height:1.5; color:var(--ch-muted); margin-bottom:12px; }
.chapter-three .result { padding:17px 19px; border-radius:5px; border:1px solid #c9dccd; background:#eff5ec; font-size:.97rem; line-height:1.7; min-height:80px; margin-top:18px; }
.chapter-three details { border:1px solid var(--ch-line); border-radius:5px; padding:14px 18px; margin:18px 0; background:#fafbf7; }
.chapter-three details p:last-child { margin-bottom:0; }
.chapter-three summary { cursor:pointer; font-weight:600; }
.chapter-three details[open]>summary { margin-bottom:16px; }
.chapter-three .quiz { background:#eef1e6; border:1px solid var(--ch-line); border-radius:8px; padding:24px; margin-top:28px; }
.chapter-three .answers { display:flex; flex-direction:column; gap:10px; margin:15px 0; }
.chapter-three .answers button { text-align:left; background:#fff; }
.chapter-three .answers button[data-selected="true"] { border-width:2px; border-color:#245e4d; background:#e1eddd; }
.chapter-three .answers button[data-selected="true"][data-correct="false"] { border-color:#a46122; background:#fff1df; }
.chapter-three .feedback { min-height:28px; margin:0; font-size:.94rem; }
.chapter-three .study { border-left:2px solid #b8c9b8; padding:0 0 0 22px; margin:30px 0; }
.chapter-three .study a { font-size:.9rem; }
.chapter-three .checklist { margin-top:24px; padding:24px; background:white; border-radius:8px; }
.chapter-three .checklist ul { padding-left:22px; margin-bottom:0; }
.chapter-three .glossary { display:grid; grid-template-columns:1fr 1fr; gap:20px 30px; }
.chapter-three .glossary>div { border-bottom:1px solid var(--ch-line); padding-bottom:14px; }
.chapter-three dt { font-weight:700; }
.chapter-three dd { margin:5px 0 0; color:var(--ch-muted); }
.chapter-three .credits { padding:35px 0; border:0; border-radius:0; box-shadow:none; background:transparent; font-size:.85rem; }
.chapter-three .credits h2 { font-size:1.4rem; }
.chapter-three .chapter-bottom { display:flex; justify-content:space-between; margin:0 0 40px; gap:10px; }
.chapter-three footer { border-top:1px solid var(--ch-line); background:transparent; text-align:center; color:var(--ch-muted); padding:20px; font-size:.8rem; }
.chapter-three .vertebra-level { fill:#dce5dc; stroke:#809780; stroke-width:1.5; }
.chapter-three .vertebra-level text { fill:#314d39; stroke:none; font-weight:650; }
.chapter-three .vertebra-level.active { fill:#eccf91; stroke:#ae7921; stroke-width:3; }
.chapter-three .skip { position:absolute; left:15px; top:-100px; z-index:30; background:white; padding:12px; }
.chapter-three .skip:focus { top:10px; }
.chapter-three dialog { width:min(96vw,1080px); max-height:94vh; border:1px solid var(--ch-line); border-radius:10px; padding:22px; color:var(--ch-ink); background:#fff; }
.chapter-three dialog::backdrop { background:#173228b8; }
.chapter-three .dialog-bar { display:flex; gap:15px; justify-content:space-between; align-items:center; position:sticky; top:-22px; padding:12px 0; background:white; z-index:1; }
.chapter-three .dialog-bar h2 { font:600 1.1rem system-ui,sans-serif; margin:0; }
.chapter-three #dialog-content .atlas-svg { max-height:none; width:100%; min-width:550px; }
.chapter-three #dialog-content { overflow:auto; }
.chapter-three #dialog-content .atlas { border:0; padding:0; }
.chapter-three #dialog-content figcaption { max-width:800px; }
@media (max-width:760px) {
 .chapter-three main { padding:0 18px; }
 .chapter-three .chapter-top { padding:14px 18px; gap:8px 14px; }
 .chapter-three .chapter-top nav { width:100%; justify-content:flex-start; margin:0; gap:6px; }
 .chapter-three nav a { padding:6px 0; margin-right:12px; }
 .chapter-three .hero { grid-template-columns:1fr; padding-top:36px; }
 .chapter-three .hero-art { max-width:420px; width:100%; margin:auto; }
 .chapter-three .two, .chapter-three .three, .chapter-three .atlas-grid, .chapter-three .muscle-cards, .chapter-three .glossary { grid-template-columns:1fr; }
 .chapter-three .two { gap:22px; }
 .chapter-three .section-heading { gap:12px; }
 .chapter-three .step { flex-basis:34px; height:34px; font-size:.75rem; }
 .chapter-three .chapter-section { padding:36px 0; }
 .chapter-three .experiment { padding:18px 12px; }
 .chapter-three .atlas { padding:18px 12px; }
 .chapter-three .diagram text { font-size:18px; }
 .chapter-three .takeaway { padding:16px; }
 .chapter-three .structure-buttons button { font-size:.85rem; }
 .chapter-three .chapter-bottom { flex-wrap:wrap; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .chapter-three * { animation:none!important; transition:none!important; } }
@media print {
 .chapter-three header, .chapter-three .actions, .chapter-three .zoom, .chapter-three .structure-buttons, .chapter-three .skip, .chapter-three .chapter-bottom { display:none; }
 .chapter-three main { max-width:none; padding:0; }
 .chapter-three .hero { padding:10px 0; }
 .chapter-three .chapter-section { break-inside:auto; padding:20px 0; }
 .chapter-three figure, .chapter-three .muscle-card, .chapter-three .study { break-inside:avoid; }
 .chapter-three .atlas-grid { grid-template-columns:1fr 1fr; }
 .chapter-three .atlas-svg { max-height:430px; }
}
.chapter-three #dialog-content .diagram { max-height:none; width:100%; min-width:550px; }
.chapter-three .training-source, .chapter-three .training-examples { margin:32px 0; }
.chapter-three .source-note { font-size:.85rem; color:var(--ch-muted); }
.chapter-three .training-examples>.two { margin:22px 0; }
