.movement-page .physics-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}
.swing-anatomy{--an-ink:#27483b;--an-muted:#56685e;--an-line:#d6dfd7;min-width:0;color:var(--an-ink)}
.swing-anatomy *{box-sizing:border-box}
.an-intro{display:flex;justify-content:space-between;gap:24px;align-items:center;margin:30px 0 22px}
.an-intro h2{font:400 clamp(28px,3vw,42px)/1.15 Georgia,serif;margin:10px 0 12px;letter-spacing:-.025em}
.an-intro p{margin:0;color:var(--an-muted);font-size:16px;line-height:1.55}
.an-handed{padding:12px 16px;border-left:2px solid #af8548;flex-shrink:0;font-size:15px;line-height:1.5}
.an-handed small{font-size:13px;color:var(--an-muted)}
.an-positions{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));border:1px solid var(--an-line);border-radius:12px;background:#fffefb;overflow:hidden}
.an-positions button{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:flex-start;border:0;border-right:1px solid var(--an-line);background:transparent;padding:15px 6px 13px;color:var(--an-muted);font:inherit;cursor:pointer;min-width:0}
.an-positions button:last-child{border-right:0}.an-positions b{font-size:16px}.an-positions span{font-size:12px;line-height:1.4;text-align:center;max-width:12ch}
.an-positions [aria-pressed=true]{background:#284b3e;color:white}
.an-stage-heading{display:flex;align-items:center;gap:16px;padding:22px 0}.an-stage-heading>div{flex:1}.an-stage-heading h3{font-size:21px;margin:0 0 6px}.an-stage-heading p{font-size:14px;line-height:1.5;margin:0;color:var(--an-muted)}
.an-icon{display:grid;place-items:center;width:40px;height:40px;border:1px solid #c9d6cc;border-radius:50%;background:#fffefb;color:var(--an-ink);flex-shrink:0;cursor:pointer}.an-icon svg{width:20px;height:20px}.an-icon:disabled{opacity:.35;cursor:default}
.an-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px}.an-model-area{min-width:0}
.an-views{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.an-view{margin:0;background:#edf0ee;border:1px solid var(--an-line);border-radius:14px;overflow:hidden;min-width:0}
.an-view figcaption{display:flex;justify-content:space-between;gap:12px;padding:16px 16px 0;font-size:14px}.an-view figcaption span{font-size:13px;color:var(--an-muted)}
.an-canvas-wrap{position:relative;height:510px}.an-canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:pan-y}
.an-view-note{font-size:12px;line-height:1.5;color:var(--an-muted);padding:0 16px;margin:8px 0 14px}
.an-loading{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:22px;font-size:15px;line-height:1.5;color:var(--an-muted);background:#edf0ee}.an-loading[hidden]{display:none}
.an-hover{position:absolute;max-width:210px;z-index:2;pointer-events:none;background:#244b3d;color:#fff;padding:9px 12px;border-radius:8px;font-size:13px;box-shadow:0 4px 16px #233c3220}.an-hover[hidden]{display:none}
.an-note{font-size:13px;line-height:1.55;color:var(--an-muted);margin:12px 2px 18px}
.an-select-label{display:block;font-size:14px;font-weight:700;margin:0 0 8px}.an-picker-row{display:flex;gap:8px;align-items:stretch}.an-picker-row select{width:100%;min-width:0;min-height:46px;padding:10px 36px 10px 13px;border:1px solid #b8cbbd;border-radius:8px;background:#fffefb;color:var(--an-ink);font:inherit;font-size:15px}.an-picker-row button{padding:10px 14px;font:inherit;font-size:14px;color:var(--an-ink);border:1px solid #c9d6cc;background:#fffefb;border-radius:8px;cursor:pointer}.an-picker-row button:disabled{opacity:.4;cursor:default}
.an-keyboard{font-size:12px;line-height:1.5;color:var(--an-muted);margin:10px 0}
.an-card{background:#fffefb;border:1px solid var(--an-line);border-radius:14px;padding:22px;position:sticky;top:20px;max-height:calc(100svh - 40px);overflow:auto;scrollbar-width:thin}
.an-card-kicker{font-size:12px;letter-spacing:.08em;font-weight:700;text-transform:uppercase;color:#8b6837}
.an-card h3{font:400 27px/1.15 Georgia,serif;margin:10px 0}.an-card p{font-size:15px;line-height:1.65;color:var(--an-muted);margin:10px 0}
.an-card h4{font-size:14px;margin:22px 0 8px;color:var(--an-ink)}
.an-card-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.an-card-head .an-icon{width:32px;height:32px}.an-card-head p{font-size:13px;line-height:1.5;margin:0}
.an-card-position{display:flex;gap:10px;align-items:center;border-top:1px solid var(--an-line);border-bottom:1px solid var(--an-line);padding:12px 0;margin:18px 0;font-size:18px;font-weight:700}.an-card-position span{font-size:13px;font-weight:400}
.an-card .an-group{font-size:13px;padding:10px 12px;background:#f0f3ed;border-radius:8px;line-height:1.55}
.an-role-list{display:flex;flex-wrap:wrap;gap:6px}.an-role-list span{border:1px solid #c9d8cc;border-radius:20px;padding:5px 9px;color:#39614c;font-size:12px}
.an-function{border-left:3px solid #af8548;padding-left:14px;margin-top:22px}.an-function h4{margin:0}.an-function p{color:var(--an-ink);font-size:16px}
.an-sources{margin-top:24px;border-top:1px solid var(--an-line);padding-top:16px}.an-sources summary{cursor:pointer;font-size:13px;line-height:1.5;font-weight:600}.an-sources p,.an-sources li{font-size:13px;line-height:1.6}.an-sources ul{padding-left:17px}.an-sources li{margin:12px 0}.an-sources li span{display:block;margin-top:5px;color:var(--an-muted)}.an-sources a{color:#28654e;text-underline-offset:3px}
.an-selection-key{display:flex;align-items:center;gap:10px;margin-top:26px;font-size:13px;line-height:1.5}.an-selection-key span{width:22px;height:22px;background:#397e68;border:3px solid #174c3b;border-radius:50%;flex-shrink:0}.an-card .an-small{font-size:13px}
.an-model-notes{margin-top:25px;border-top:1px solid var(--an-line);padding-top:16px}.an-model-notes summary{font-size:14px;cursor:pointer;font-weight:600}.an-model-notes p,.an-model-notes li{font-size:14px;line-height:1.7;color:var(--an-muted)}.an-model-notes a{color:#28654e}
.an-view-switch,.an-sheet-handle,.an-sheet-toggle{display:none}
.swing-anatomy button:focus-visible,.swing-anatomy select:focus-visible,.swing-anatomy canvas:focus-visible,.swing-anatomy summary:focus-visible{outline:3px solid #b27d36;outline-offset:3px}
@media(min-width:1500px){.an-workspace{grid-template-columns:minmax(0,1fr) 350px}.an-canvas-wrap{height:600px}}
@media(max-width:1050px){.an-workspace{grid-template-columns:minmax(0,1fr) 290px;gap:12px}.an-canvas-wrap{height:440px}.an-card{padding:18px}.an-positions span{font-size:12px}.an-intro{align-items:flex-start}}
@media(max-width:760px){
 .movement-page .physics-chapters{grid-template-columns:1fr 1fr}
 .an-intro{display:block;margin-top:24px}.an-intro h2{font-size:30px}.an-handed{display:block;margin-top:18px;padding:4px 12px}.an-handed br{display:none}.an-handed small{margin-left:8px}
 .an-positions{grid-template-columns:repeat(5,minmax(0,1fr));border-radius:10px}.an-positions button{padding:10px 3px;min-height:77px;gap:5px;border-bottom:1px solid var(--an-line)}.an-positions span{font-size:12px}.an-positions button:nth-child(5){border-right:0}.an-positions button:nth-child(n+6){border-bottom:0}
 .an-stage-heading{gap:10px;padding:18px 0}.an-stage-heading h3{font-size:19px}.an-stage-heading p{font-size:13px}.an-icon{width:38px;height:38px}
 .an-workspace{display:block}.an-view-switch{display:flex;gap:4px;padding:4px;background:#e2e9e2;border-radius:9px;margin-bottom:10px}.an-view-switch button{flex:1;padding:10px 6px;border:0;border-radius:6px;font:inherit;font-size:14px;background:transparent;color:#466351;min-height:44px;cursor:pointer}.an-view-switch [aria-pressed=true]{background:#fffefb;color:#203f32;box-shadow:0 2px 5px #294f3f12}
 .an-views{display:block}.an-view{display:none}.swing-anatomy[data-an-view=front] .an-view-front,.swing-anatomy[data-an-view=line] .an-view-line{display:block}.an-canvas-wrap{height:clamp(380px,58svh,520px)}.an-note{font-size:13px;margin-top:12px}
 .an-sheet-toggle{display:grid}.an-card-head>div{flex:1}.an-card.is-selected.is-collapsed{max-height:190px}.an-card.is-collapsed .an-card-position,.an-card.is-collapsed>p,.an-card.is-collapsed>.an-role-list,.an-card.is-collapsed>section,.an-card.is-collapsed>details{display:none}
 .an-card{position:static;margin-top:20px;max-height:none;padding:20px}.an-card.is-selected{position:fixed;bottom:0;left:0;right:0;top:auto;margin:0;border-radius:20px 20px 0 0;z-index:45;max-height:46svh;padding:12px 22px calc(18px + env(safe-area-inset-bottom));box-shadow:0 -12px 50px #213b3526;overscroll-behavior:contain}.an-sheet-handle{display:block;width:36px;height:4px;border-radius:4px;background:#c1cec5;margin:0 auto 14px}.an-card:not(.is-selected) .an-sheet-handle{display:none}.an-card h3{font-size:26px}.an-card-head .an-icon{width:40px;height:40px}.an-keyboard{display:none}.an-picker-row select{font-size:16px}.an-model-notes{margin-bottom:30px}
}
@media(prefers-reduced-motion:reduce){.swing-anatomy *{scroll-behavior:auto}}
