/* PGA learning studio: technical hierarchy and original illustrative assets. */
:root{--ink:#29312d;--muted:#515a4f;--paper:#f1f2ed;--white:#fffef9;--line:#dce0d6;--green:#566147;--lime:#e4c79c;--studio-accent:#a86635;--text-earth:#674823;--surface-ink:#344033;--text-on-dark:#fff8e9;--text-on-dark-muted:#e0e5d6;--studio-font:'Avenir Next',Avenir,system-ui,-apple-system,'Segoe UI',sans-serif}
body{font-family:var(--studio-font);background:var(--paper)}.main{padding-inline:28px}.topbar{min-height:74px;border-bottom:1px solid #dce0d6}.breadcrumb{font-size:13px;color:#758071}.breadcrumb b{color:#454f42;font-weight:500}.page-head{padding:28px 0 24px}.page-head h1{font:600 clamp(28px,2.7vw,40px)/1.15 var(--studio-font);letter-spacing:-.045em}.page-head .eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;color:#9a693e}.page-head p{font-size:15px;color:#69716b;max-width:64ch}.status-chip{border-radius:6px;font-size:13px;border-color:#d6decd;background:#e9ede2;color:#526046}
.card{border-color:#dce0d6;border-radius:12px;box-shadow:0 3px 12px #22322404}.card h2,.card h3{font-family:var(--studio-font);font-weight:600}.stage-head{padding:22px 24px;background:#fffef9}.stage-head h2{font-size:23px;letter-spacing:-.03em}.step-badge{border-radius:7px;background:#e5eadc;color:#536044}.stage-body{padding:24px}.choice,.btn,.preset{border-radius:7px}.choice{background:#fdfdf8;border-color:#d4dbc9}.choice.active,.btn.primary{background:#58664b;border-color:#58664b}.preset{background:#eee7d9;border-color:#d9c9b0}.segmented{border-radius:7px;background:#e7eadf;border-color:#d5dccb}.segmented button{border-radius:5px}.segmented button.active{background:#fffef8}.input-provenance,.delivery-source,.route-context-banner{background:#edf0e6;border-color:#d6dfcc}.visual-panel{border:1px solid #d4dcc9;background:#edf0e7;color:#33432c;border-radius:12px}.visual-panel:before{display:none}.visual-title span,.visual-title>span{color:#6d775e}.visual-title strong{font:600 25px/1.2 var(--studio-font);letter-spacing:-.035em;color:#37462f}.visual-legend{color:#5e6a50}.observed-plot{background:#fdfef8;border-color:#dce3d2;border-radius:8px}.insight-card .insight-kicker,.insight-kicker{font-size:12px;letter-spacing:.06em;color:#657153}.insight-card h3{font-size:23px;line-height:1.25;letter-spacing:-.035em}.insight-card p{color:#697361}.card.evidence{background:#344033;border-color:#435241}.evidence-item b{color:#dcbf91}.evidence-item span{color:#e0e5d6}.stage-footer{border-radius:9px;border-color:#d4dacb;background:#fffef8f7;box-shadow:0 4px 20px #25301b0a}.learning-details{background:#f5f6ef;border-color:#dce2d2;border-radius:9px}.learning-details>summary{font-size:15px;font-weight:600}.vertical-flight-module{background:#f8f9f3;border-color:#dde2d5}.flight-derived-card{background:#f2f4eb;border-color:#dbe2cf}.flight-derived-card strong{font:600 29px/1.1 var(--studio-font);color:#35422c}.flight-derived-card>span,.flight-metric-control label{font-weight:500}.flight-metric-control output{color:#8b643d}.flight-model-selector{border-color:#dbe1d0}.vertical-flight-head p{font-size:14px;color:#6d7667}.vertical-flight-visual{background:#344033;border-color:#435340;border-radius:12px;padding:24px}.flight-chart-heading h3{font:500 30px/1.2 var(--studio-font);letter-spacing:-.04em}.flight-chart-heading strong{font:500 44px/1 var(--studio-font);letter-spacing:-.045em}.flight-chart-stats b{font-size:21px;font-weight:500}.flight-chart-heading>div:first-child>span{font-size:12px;letter-spacing:.06em}.plot-caption{color:#647159}.matrix-cell{border-radius:8px;border-color:#d7decb;background:#fafcf4}.matrix-cell strong{font-weight:600}.matrix-cell:hover{background:#e8efdc}
/* Clear plate hierarchy; artwork is subordinate to the measured vectors. */
.precision-chart{--chart-ink:#28382c;--chart-muted:#687461;--chart-face:#ae632e;--chart-path:#4c7457;--chart-flight:#9b6e39;background:linear-gradient(155deg,#fffffb,#f4f6ee);border-color:#d8dece;border-radius:10px;padding:22px 20px 18px;box-shadow:0 5px 15px #19361705;position:relative}.chart-meta{display:flex;align-items:center;gap:12px;min-height:36px;margin:0 2px 10px;font-size:12px;letter-spacing:.04em;color:#647255}.chart-meta>span:first-child{margin-right:auto}.chart-view{font-size:12px;letter-spacing:0;text-transform:none;border:0;border-radius:0;padding:0;color:#657158}.chart-expand{display:inline-flex;flex-shrink:0;align-items:center;gap:6px;border:1px solid #d5ddc9;border-radius:6px;background:#fffef8;color:#536449;padding:6px 9px;font-size:12px;min-height:38px;cursor:pointer}.chart-expand:hover{border-color:#879976;background:#edf3e5}.chart-expand svg{width:17px;height:17px;display:block}.chart-heading{align-items:flex-start;margin-bottom:14px;gap:18px}.chart-heading h4{font:600 21px/1.3 var(--studio-font);letter-spacing:-.025em;color:#2d3f30;max-width:21ch;margin-top:4px}.chart-value{font:500 43px/1 var(--studio-font);letter-spacing:-.055em;color:#936333;font-variant-numeric:tabular-nums}.chart-value small{font-family:var(--studio-font);color:#6e7b62;font-size:13px;letter-spacing:0}.chart-axis-title,.chart-axis-bottom,.chart-tick{color:#69775e}.chart-flight{stroke-width:2.6}.chart-clubpath,.chart-face{stroke-width:2.7}.chart-face-plane{stroke:#566652;stroke-width:5}.chart-face-edge{stroke:#a36939;stroke-width:1;stroke-opacity:.75}.chart-ruler{stroke:#a1ad8c;stroke-opacity:.28}.chart-sector{fill:#c69a4620}.chart-angle{stroke:#ae7c3e;stroke-width:1.25}.chart-origin-ring{fill:#f7faee;stroke:#6e865e;stroke-opacity:.5}.chart-start{stroke:#56744e}.chart-target{stroke:#778970}.chart-grid{stroke:#a8b69c;stroke-opacity:.23}.chart-guide{stroke:#8b9c77}.chart-legend{font-size:13px;gap:10px 20px;color:#55684b;margin-top:16px}.chart-note{font-size:13px;line-height:1.6;color:#657158;border-color:#dce3d2}.chart-ball-illustration,.chart-club-illustration{pointer-events:none}.chart-club-illustration{opacity:.92}.chart-impact-mark{fill:#b8743c;stroke-width:2.5}.chart-impact-halo{fill:#c8964120;stroke:#b57c34}.chart-impact-axis{stroke:#60764f;stroke-width:1}.diagram-readings{gap:12px;margin-bottom:16px}.diagram-readings>div{background:#eef3e7;border-color:#d6e0c9;border-radius:7px;padding:13px 16px}.diagram-readings span{font-size:13px}.diagram-readings b{font:500 24px/1.2 var(--studio-font);letter-spacing:-.035em}.chart-explorer{border-color:#7f956045;background:#ffffff05;border-radius:8px}.chart-explorer label{font-size:14px}.chart-explorer-values{font-size:13px}.chart-data-grid>div{background:#fbfdf5;border-color:#dbe5ce;border-radius:8px}.chart-data-grid strong{font:500 34px/1.2 var(--studio-font);color:#926438}.chart-data-grid span{font-size:13px}
/* Parameter navigation and the laboratory use the same technical workspace. */
.glossary-layout{grid-template-columns:220px minmax(0,1fr);gap:22px}.glossary-index{padding:18px 12px;background:transparent;border-color:transparent;box-shadow:none;position:sticky;top:20px;max-height:calc(100dvh - 40px)}.glossary-index-head{display:block;padding:0 10px}.glossary-index-head span{display:block;font-size:14px;font-weight:600;color:#4d5d46}.glossary-index-head small{font-size:12px}.glossary-index h2{font-size:12px;font-weight:500;color:#708160;letter-spacing:.06em;margin:0 10px 10px}.glossary-index section+section{border-color:#d8dfcf;margin-top:18px;padding-top:18px}.glossary-term-button{min-height:44px;border-radius:6px;padding:10px;font-size:14px;font-weight:500;color:#56614f;border:1px solid transparent;background:transparent}.glossary-term-button small{font-size:12px;color:#657158}.glossary-term-button.active{background:#dde6d1;border-color:#c6d3b5;color:#3f5637;box-shadow:inset 3px 0 #778d55}.glossary-term-button.active small{color:#5c7250}.glossary-term-button:hover{background:#e6ecde}.glossary-detail{container-type:inline-size;border-color:#d9e0d1;border-radius:12px}.glossary-detail-head{padding:24px 28px 22px;background:#fffef9;border-bottom:1px solid #e2e6d9;align-items:center}.glossary-detail-head h2{font:600 clamp(27px,3vw,38px)/1.12 var(--studio-font);letter-spacing:-.05em;margin-top:6px}.glossary-badges{gap:7px}.glossary-badges span{font-size:12px;font-weight:500;border-radius:5px;letter-spacing:.02em}.glossary-badges .measured{background:#e8eddf;color:#586b45}.glossary-badges .derived{background:#ede5d2;color:#8b6d3a}.glossary-chart{background:#edf1e5;color:#34472f;padding:22px;display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.chart-source{font-size:13px;color:#637653;margin:0;line-height:1.5}.chart-source::before{background:#91a672;flex-basis:6px;width:6px;height:6px}.glossary-chart .precision-chart{padding:22px;border-radius:10px;margin:0;min-width:0}.glossary-chart .chart-value{font:500 50px/1 var(--studio-font);letter-spacing:-.055em;color:#966633}.glossary-chart .chart-heading h4{font:600 23px/1.25 var(--studio-font);letter-spacing:-.03em}.glossary-chart .schematic-canvas{max-width:650px;margin-inline:auto}.glossary-chart-reading{font-size:14px;color:#627451;margin:0 4px}.glossary-chart-reading b{font-size:12px;color:#4e633c}.glossary-definition{background:#f9fbf3;color:#364a2e;border-top:1px solid #dce4d2;padding:22px 28px}.glossary-definition span,.glossary-detail-grid span{font-size:12px;font-weight:600;color:#657158;letter-spacing:.07em}.glossary-definition p{font-size:17px;color:#495a3f;line-height:1.65}.glossary-detail-grid{background:#e0e6d7;gap:1px}.glossary-detail-grid section{background:#fffef9;padding:24px 28px}.glossary-detail-grid p{font-size:15px;color:#637059}.glossary-detail-grid .glossary-caution{background:#f6f0e3}.glossary-method{border-radius:8px;background:#eef2e5}.glossary-method p{color:#647258}.glossary-method b{font-size:12px;color:#596d45}.glossary-detail>.source-link{font-size:13px;color:#7d613c}.trademark-note{font-size:12px;color:#657158}
.diagram-lab{background:#f9fcf2;border-color:#d5e0c6;border-radius:9px;color:#415932;margin:0}.diagram-lab>summary{font-size:14px;font-weight:600;color:#4c613b;padding:16px}.diagram-lab>summary::after{color:#8e743e}.diagram-lab>div{padding:0 16px 18px}.diagram-lab-intro{font-size:13px;line-height:1.6;color:#657158;margin-bottom:18px}.diagram-lab-controls{gap:18px 24px}.diagram-lab-control label{font-size:14px;color:#4c653b;font-weight:500;margin-bottom:9px}.diagram-lab-control output{font-size:13px;font-weight:400;color:#916a3e}.diagram-lab input[type=range]{accent-color:#889b61;min-height:38px}.diagram-lab .metric-inputs input[type=number]{background:#fffef9;border-color:#bfcfac;color:#415c30;border-radius:6px;width:84px;flex-basis:84px}.diagram-lab-footer{border-color:#dbe4d0;margin-top:20px;align-items:flex-start}.diagram-lab-footer span{font-size:12px;color:#657158;line-height:1.5}.diagram-reset{background:#fdfef8;border-color:#c3d0b3;color:#62744e;border-radius:6px;min-height:40px;font-size:12px;white-space:nowrap}.diagram-reset:hover:not(:disabled){background:#e9f0dc}.diagram-reset:disabled{opacity:.65}
/* Native dialog: the graph and controls stay live without modifying case evidence. */
.chart-modal-open{overflow:hidden}.chart-dialog{width:min(1220px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:0;border:1px solid #c3cfb4;border-radius:14px;background:#f3f6ec;color:#35482c;box-shadow:0 26px 100px #152a1c40}.chart-dialog::backdrop{background:#1d302ba6;backdrop-filter:blur(5px)}.chart-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 26px;background:#fbfdf6;border-bottom:1px solid #dbe4ce;position:sticky;top:0;z-index:3}.chart-dialog-header span{font-size:12px;color:#657158}.chart-dialog-header h2{font:600 24px/1.2 var(--studio-font);letter-spacing:-.035em;margin:5px 0 0}.chart-dialog-close{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:9px 13px;border:1px solid #c4d0b4;border-radius:7px;min-height:44px;background:#fffef9;color:#607348;font-size:14px;cursor:pointer}.chart-dialog-close span{font-size:22px;color:inherit;line-height:1}.chart-dialog-content{padding:24px}.expanded-chart-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}.expanded-chart-layout:has(.diagram-lab){grid-template-columns:minmax(0,1fr) 280px}.expanded-chart-layout>.precision-chart{padding:24px;background:#fffffb;min-width:0}.expanded-chart-layout .chart-expand{display:none}.expanded-chart-layout .chart-value{font-size:56px}.expanded-chart-layout .chart-canvas{max-width:740px;margin-inline:auto}.expanded-chart-layout .diagram-lab-controls{grid-template-columns:1fr}.expanded-chart-layout .diagram-lab-footer{display:block}.expanded-chart-layout .diagram-reset{margin-top:12px}.expanded-chart-layout .diagram-lab{position:sticky;top:0}.expanded-chart-layout .chart-explorer{grid-column:1/-1;background:#35442e;color:#ecf4df;max-width:740px;width:100%;justify-self:center;margin:0}.expanded-chart-origin{font-size:13px;color:#657158;margin:16px 0 0}
@container(min-width:940px){.glossary-chart{grid-template-columns:minmax(0,1fr) 260px;align-items:start}.glossary-chart>.chart-source{grid-column:1/-1}.glossary-chart>.precision-chart{grid-column:1;grid-row:2}.glossary-chart>.diagram-lab{grid-column:2;grid-row:2}.glossary-chart>.diagram-lab .diagram-lab-controls{grid-template-columns:1fr}.glossary-chart>.diagram-lab .diagram-lab-footer{display:block}.glossary-chart>.diagram-lab .diagram-reset{margin-top:12px}.glossary-chart>.glossary-chart-reading{grid-column:1/-1}}
@media(min-width:1650px){.glossary-layout{grid-template-columns:230px minmax(0,1fr)}.glossary-chart .chart-value{font-size:54px}}
@media(max-width:1100px){.glossary-layout{grid-template-columns:200px minmax(0,1fr);gap:16px}.glossary-index{padding:14px 7px;max-height:calc(100dvh - 40px)}.glossary-index section>div{grid-template-columns:1fr}.main{padding-inline:22px}.chart-dialog{width:calc(100vw - 28px);max-height:calc(100dvh - 28px)}.expanded-chart-layout:has(.diagram-lab){grid-template-columns:minmax(0,1fr) 250px}}
@media(max-width:800px){.glossary-layout{grid-template-columns:1fr}.glossary-index{position:static;max-height:210px;border:1px solid #d7dfca;background:#f8faf1;border-radius:9px;padding:14px}.glossary-index-head{display:none}.glossary-index section>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.glossary-index h2{font-size:12px}.expanded-chart-layout:has(.diagram-lab){grid-template-columns:1fr}.expanded-chart-layout .diagram-lab{position:static}.expanded-chart-layout .diagram-lab-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.chart-dialog-content{padding:16px}}
@media(max-width:600px){.main{padding-inline:14px}.topbar{padding:14px 0}.page-head{padding:20px 0}.page-head h1{font-size:29px}.page-head p{font-size:14px}.stage-body{padding:16px}.stage-head{padding:18px}.glossary-detail-head{padding:20px;flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:14px}.glossary-detail-head h2{font-size:30px}.glossary-badges{max-width:100%}.glossary-index{max-height:180px}.glossary-term-button{font-size:13px;padding:8px 6px}.glossary-chart{padding:12px;gap:14px}.glossary-chart .precision-chart{padding:14px 10px}.precision-chart{padding:14px 8px}.chart-meta{gap:8px;font-size:12px;margin-bottom:12px;min-height:40px}.chart-meta>span:first-child{display:none}.chart-view{margin-right:auto;font-size:12px}.chart-expand{min-height:40px;min-width:40px;justify-content:center;padding:8px}.chart-expand>span{display:none}.chart-heading{gap:10px}.chart-heading h4,.glossary-chart .chart-heading h4{font-size:20px;font-weight:500;max-width:14ch}.chart-value,.glossary-chart .chart-value{font-size:38px}.chart-value small{font-size:12px}.chart-note{font-size:13px}.chart-legend{font-size:12px;gap:9px 13px}.glossary-chart .schematic-canvas{min-height:210px}.diagram-readings{gap:8px;margin-inline:0}.diagram-readings>div{padding:10px}.diagram-readings span{font-size:12px}.diagram-readings b{font-size:22px}.diagram-lab-controls{grid-template-columns:1fr}.diagram-lab>summary{padding:14px 12px}.diagram-lab>div{padding:0 12px 16px}.diagram-lab-control label{font-size:14px}.diagram-lab-footer{flex-wrap:wrap;gap:12px}.diagram-lab-footer span{max-width:none}.glossary-definition{padding:20px}.glossary-definition p{font-size:16px}.glossary-detail-grid section{padding:20px}.glossary-detail-grid{padding:0}.vertical-flight-visual{padding:18px 6px}.flight-chart-heading h3{font-size:24px}.flight-chart-heading strong{font-size:35px}.flight-chart-stats b{font-size:20px}.chart-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:10px}.chart-dialog-header{padding:14px 16px;gap:12px}.chart-dialog-header h2{font-size:21px}.chart-dialog-header>div>span{font-size:12px}.chart-dialog-close{font-size:13px;padding:8px 10px}.chart-dialog-close>span{display:none}.chart-dialog-content{padding:10px}.expanded-chart-layout{gap:12px}.expanded-chart-layout>.precision-chart{padding:16px 10px}.expanded-chart-layout .chart-value{font-size:42px}.expanded-chart-layout .diagram-lab-controls{grid-template-columns:1fr}.expanded-chart-origin{padding:0 6px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.chart-dialog::backdrop{backdrop-filter:none}}
@media print{.chart-expand,.chart-dialog{display:none!important}.chart-modal-open{overflow:visible}.glossary-index{position:static;max-height:none}}
/* Contact-to-flight laboratory. */
.glossary-chart.impact-laboratory{display:block;padding:22px;background:#edf1e5}.impact-intro{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:22px}.impact-intro h3{font:600 28px/1.2 var(--studio-font);letter-spacing:-.035em;margin:8px 0}.impact-intro p{font-size:16px;margin:0;color:#5b6c50}.impact-model-badge{font-size:12px;border:1px solid #d2c19c;color:#7b592f;background:#f4ead7;border-radius:5px;padding:7px 9px;white-space:nowrap}.impact-equipment{display:flex;gap:18px 30px;flex-wrap:wrap;padding:18px;background:#fffef8;border:1px solid #d8e0cc;border-radius:9px}.impact-selector>span{display:block;font-size:14px;font-weight:600;color:#516345;margin-bottom:9px}.impact-selector>div,.impact-view-switch{display:flex;gap:6px;flex-wrap:wrap}.impact-selector button,.impact-view-switch button,.impact-zone-picker button{font:500 14px/1.3 var(--studio-font);min-height:44px;border:1px solid #c7d3b8;border-radius:6px;background:#f7faef;color:#4e633f;padding:10px 13px;cursor:pointer}.impact-selector button.active,.impact-view-switch button.active{background:#566647;color:#fffef8;border-color:#566647}.impact-reference{font-size:13px;color:#606e55;line-height:1.6;margin:14px 2px 20px}.impact-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:18px;align-items:start}.impact-contact-column,.impact-result-column{min-width:0;display:grid;gap:14px}.impact-laboratory .precision-chart{padding:17px 13px}.impact-laboratory .chart-heading h4{font-size:21px}.impact-laboratory .chart-value{font-size:36px}.impact-laboratory .chart-value small{font-size:12px;max-width:12ch}.impact-laboratory .chart-heading{gap:12px}.impact-laboratory .chart-meta>span:first-child{display:none}.impact-laboratory .chart-view{margin-right:auto}.impact-laboratory .chart-canvas{margin-inline:0;min-height:0}.impact-laboratory .diagram-lab-controls{grid-template-columns:1fr}.impact-laboratory .diagram-lab-intro{display:none}.impact-laboratory .diagram-lab-footer{flex-wrap:wrap;gap:12px}.impact-laboratory [data-impact-surface]{touch-action:none;cursor:crosshair;user-select:none}.impact-laboratory .chart-impact-mark{cursor:grab}.impact-laboratory .chart-impact-mark:active{cursor:grabbing}.impact-live{padding:13px 15px;border:1px solid #c9d4ba;background:#e1e9d5;border-radius:7px;display:grid;gap:5px}.impact-live strong{font-size:15px;font-weight:600;color:#3d5331}.impact-live>span{font-size:15px;color:#54663f}.impact-live small{font-size:13px}.impact-view-switch{justify-content:flex-end}.chart-reference{fill:none;stroke:#859478;stroke-width:2;stroke-dasharray:6 6}.chart-reference-end{fill:#fffef9;stroke:#798969;stroke-width:1.5}.chart-legend .legend-reference{border-color:#859478;border-top-style:dashed}.impact-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.impact-metrics>div{padding:14px 12px;border:1px solid #d6dfc9;border-radius:7px;background:#fffef9;min-width:0}.impact-metrics>div>span{display:block;font-size:13px;line-height:1.5;color:#617052}.impact-metrics>div>span:first-child{font-size:14px;color:#4e603f}.impact-metrics strong{display:block;font:500 28px/1.25 var(--studio-font);letter-spacing:-.035em;color:#8d6238;margin:7px 0}.impact-metrics strong small{font-size:13px;letter-spacing:0;margin-left:5px}.impact-model-note,.impact-lab-footnote{font-size:13px;color:#617052;line-height:1.65;margin:0}.impact-explanation,.impact-head-comparison{margin-top:28px}.impact-section-head h3,.impact-head-comparison>h3{font:600 23px/1.25 var(--studio-font);letter-spacing:-.025em;margin:0 0 12px}.impact-section-head>p{font-size:16px;line-height:1.7;color:#4d6140;margin:0 0 18px}.impact-effects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.impact-effects article{padding:19px;background:#fffef9;border:1px solid #d7e0cb;border-radius:8px}.impact-effects h4{font-size:16px;font-weight:600;margin:0 0 10px;color:#435a34}.impact-effects p,.impact-head-comparison p{font-size:15px;line-height:1.7;color:#536548;margin:0}.impact-hosel-note{font-size:14px;padding:14px;background:#f2e8d6;color:#765732;border:1px solid #dfccb0;border-radius:7px;line-height:1.6}.impact-head-comparison>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.impact-head-comparison article{padding:17px;background:#f8faf1;border:1px solid #d5dfc7;border-radius:8px;display:flex;flex-direction:column;gap:12px}.impact-head-comparison article.selected{border-color:#8da174;background:#e3ecd6}.impact-head-comparison h4{font-size:16px;margin:0;color:#445b36;display:flex;flex-wrap:wrap;gap:6px}.impact-head-comparison h4 span{font-size:12px;font-weight:400;border:1px solid #bccfa6;padding:3px 5px;border-radius:4px}.impact-head-comparison button{margin-top:auto;font-size:14px;min-height:44px;background:#fffef8;color:#526841;border:1px solid #becdaf;padding:9px;border-radius:6px;cursor:pointer}.impact-zone-picker,.impact-zone-guide{border:1px solid #d2ddc3;background:#f8fbf0;border-radius:8px}.impact-zone-picker>summary,.impact-zone-guide>summary{padding:15px;font-size:14px;font-weight:600;cursor:pointer;color:#4c623b}.impact-zone-picker>div{padding:0 12px 12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.impact-zone-picker button{font-size:13px;padding:10px 5px}.impact-zone-guide{margin:24px 0 16px}.impact-table-scroll{overflow:auto;padding:0 15px 15px}.impact-zone-guide table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;line-height:1.7}.impact-zone-guide th,.impact-zone-guide td{padding:13px 12px;border-bottom:1px solid #d8e1cd;vertical-align:top;color:#536648}.impact-zone-guide thead th{color:#405a32;background:#e6eddc}.impact-zone-guide tbody th{min-width:90px;color:#425c34}.impact-sources{display:flex;gap:10px 18px;flex-wrap:wrap;padding-top:18px;font-size:13px;color:#60734f}.impact-sources a{color:#6e5431;text-underline-offset:3px}.impact-sources>span{font-weight:600}.chart-dialog .chart-expand{display:none}.chart-dialog .impact-laboratory{padding:0}.chart-dialog .impact-intro h3{font-size:25px}.chart-dialog .impact-model-badge{display:none}
@container(max-width:760px){.impact-workbench{grid-template-columns:1fr}.impact-laboratory .diagram-lab-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-head-comparison>div{grid-template-columns:1fr}.impact-head-comparison article{padding:18px}.impact-effects{grid-template-columns:1fr}.impact-head-comparison button{align-self:start;padding-inline:15px}.impact-laboratory .precision-chart{padding:18px}.impact-laboratory .chart-canvas{max-width:600px;margin-inline:auto}}
@media(max-width:800px){.chart-dialog .impact-workbench{grid-template-columns:1fr}.chart-dialog .impact-head-comparison>div{grid-template-columns:1fr}}
@media(max-width:600px){.glossary-chart.impact-laboratory{padding:12px}.impact-intro{display:block}.impact-intro h3{font-size:25px}.impact-intro p{font-size:15px}.impact-model-badge{display:inline-block;margin-top:12px}.impact-equipment{padding:13px;gap:17px}.impact-selector button{font-size:14px;padding:10px}.impact-laboratory .diagram-lab-controls{grid-template-columns:1fr}.impact-laboratory .precision-chart{padding:14px 10px}.impact-laboratory .chart-value{font-size:32px}.impact-laboratory .chart-heading h4{font-size:20px}.impact-workbench,.impact-effects{grid-template-columns:1fr}.impact-metrics strong{font-size:26px}.impact-metrics>div{padding:12px 10px}.impact-table-scroll{padding-inline:8px}.impact-zone-guide table{min-width:620px}.impact-lab-footnote{font-size:13px}.chart-dialog .impact-effects{grid-template-columns:1fr}}
.impact-direction-reading{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.impact-direction-reading>div{padding:12px 10px;background:#f8fbf1;border:1px solid #d0dcc1;border-radius:7px;min-width:0}.impact-direction-reading span,.impact-direction-reading small{display:block;font-size:12px;color:#607252;line-height:1.5}.impact-direction-reading strong{display:block;font-size:15px;font-weight:600;color:#425a35;margin:7px 0}.impact-direction-reading>div:nth-child(2){background:#f3e9d7;border-color:#d5bf96}.impact-direction-reading>div:nth-child(2) strong{color:#83582b}.chart-launch-reference{stroke:#89907c;stroke-width:1.4;stroke-dasharray:2 6;fill:none}.chart-legend .legend-launch-reference{border-color:#89907c;border-top-style:dotted}
@media(max-width:600px){.impact-direction-reading{grid-template-columns:1fr}.impact-direction-reading>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px}.impact-direction-reading strong{margin:0}.impact-direction-reading small{grid-column:1/-1}}
.glossary-translation{font-size:17px;color:#647258;margin:8px 0 0}.gear-guide{padding:24px 28px;background:#edf1e5}.gear-guide-intro{font-size:14px;color:#526844;margin:0 0 14px;font-weight:600}.gear-examples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gear-examples article{padding:22px;background:#fffef9;border:1px solid #d1dcc4;border-radius:9px}.gear-examples h3{font-size:21px;letter-spacing:-.02em;color:#3d5432;margin:0 0 18px}.gear-examples p{font-size:16px;line-height:1.65;color:#526444;margin:14px 0 0}.gear-examples p span{display:block;font-size:13px;color:#647353;margin-bottom:4px}.gear-examples strong{color:#8a5e2e;font-weight:600}.gear-guide-note{font-size:15px;line-height:1.7;color:#566b49;margin:18px 0}.gear-lab-link{min-height:44px;gap:12px;white-space:normal;line-height:1.5}.gear-learn-link{font:500 14px/1.5 var(--studio-font);color:#65502f;background:transparent;border:0;padding:8px 0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.impact-sources:has(.gear-learn-link){align-items:center}.gear-learn-link{flex-basis:100%;text-align:left}
@media(max-width:600px){.gear-guide{padding:20px}.gear-examples{grid-template-columns:1fr}.gear-examples article{padding:18px}.gear-examples h3{font-size:20px}.gear-lab-link{width:100%;text-align:left}.glossary-translation{font-size:16px}}

/* The meshing wheels explain counterrotation; labels stay outside the scaled SVG. */
.gear-motion{container-type:inline-size;background:#faf7ee;border:1px solid #d5ccb8;border-radius:12px;padding:24px;color:#3d4836;margin:0 0 20px;min-width:0}
.impact-teaching-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.impact-teaching-nav button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:76px;padding:16px 20px;border:1px solid #cad2bf;border-radius:14px;background:#fffef9;color:#34503c;text-align:left;cursor:pointer}
.impact-teaching-nav button strong{font-size:1.125rem}.impact-teaching-nav button span{font-size:.875rem;line-height:1.45}
.impact-teaching-nav button[aria-pressed=true]{background:#304e39;border-color:#304e39;color:#fffef5}
.impact-teaching-nav button:focus-visible,.impact-gear-clubs button:focus-visible,.gear-teaching-reading>summary:focus-visible{outline:3px solid #a88350;outline-offset:3px}
.impact-gear-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:20px}.impact-gear-intro h2{font-size:1.6rem;margin:0 0 8px}.impact-gear-intro p{font-size:1rem;line-height:1.55;margin:0;max-width:64ch}
.impact-gear-clubs{display:flex;gap:6px;flex-wrap:wrap}.impact-gear-clubs button{min-height:44px;padding:10px 16px;border:1px solid #bec9b2;border-radius:9px;background:#fffef9;color:#36523c;font-size:.9375rem;cursor:pointer}.impact-gear-clubs button[aria-pressed=true]{background:#e3ead8;border-color:#577244;font-weight:700}
.gear-motion.gear-teaching{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.6fr);grid-template-areas:'heading heading' 'zones visual' 'display visual' 'playback visual' 'instruction visual' 'rotation visual' 'curve visual' 'clarifier clarifier';gap:16px 32px;align-items:start;background:#fffef9;padding:26px;border-radius:18px}
.gear-teaching>.gear-motion-heading{grid-area:heading}.gear-teaching>.gear-zone-controls{grid-area:zones;margin:0}.gear-teaching>.gear-display-controls{grid-area:display;margin:0}.gear-teaching>.gear-playback{grid-area:playback;flex-wrap:wrap;gap:12px;margin:0;padding:0;border:0}.gear-teaching>.gear-playback>div{flex-basis:100%}
.gear-teaching>.gear-play-instruction{grid-area:instruction;margin:0;font-size:.9375rem;line-height:1.55}.gear-teaching>.gear-mechanism{grid-area:visual;margin:0;min-width:0}.gear-teaching>.gear-rotation-key{grid-area:rotation;grid-template-columns:1fr;gap:14px}.gear-teaching>.gear-curve-reading{grid-area:curve;margin:0}.gear-teaching>.gear-clarifier{grid-area:clarifier;margin:0;border-top:1px solid #dfe2d5;padding-top:16px}
.gear-teaching .gear-mechanism svg{max-width:880px;max-height:none}.gear-teaching .gear-zone-controls button{flex:1;padding-inline:12px;font-size:1rem;font-weight:600}.gear-teaching .gear-playback>button{width:100%;background:#304e39;border-color:#304e39;color:#fffef5;font-size:1rem;min-height:48px}.gear-teaching .gear-face-ends{margin-bottom:10px}.gear-teaching .gear-spin-reading{margin-bottom:10px;font-size:1rem}.gear-teaching .gear-flight-reading{font-size:.9375rem}.gear-teaching .gear-flight-reading strong{font-size:1rem}
.gear-teaching .gear-mechanism svg{width:100%;height:clamp(360px,52vh,580px)}
.chart-dialog:has(.impact-gear-lesson){width:calc(100vw - 32px);max-width:1400px;height:calc(100dvh - 32px);max-height:none}
.chart-dialog .impact-gear-intro>div:first-child{display:none}.chart-dialog .impact-gear-intro{margin:0 0 14px}.chart-dialog .gear-teaching{padding:18px}.chart-dialog .gear-teaching .gear-mechanism svg{height:clamp(360px,55vh,650px)}
.gear-teaching-reading{margin:16px 0 0}.gear-teaching-reading>summary{font-size:.9375rem;font-weight:600;cursor:pointer;min-height:44px;padding:10px 0}.gear-teaching-reading .gear-top-note{font-size:.875rem;line-height:1.6}
@media(max-width:800px){.impact-teaching-nav{gap:8px;margin-bottom:18px}.impact-teaching-nav button{padding:13px;min-height:78px}.impact-teaching-nav button span{font-size:.875rem}.impact-gear-intro{gap:14px}.gear-motion.gear-teaching{grid-template-columns:1fr;grid-template-areas:'heading' 'zones' 'playback' 'visual' 'display' 'instruction' 'rotation' 'curve' 'clarifier';gap:18px;padding:16px}.gear-teaching>.gear-rotation-key{grid-template-columns:repeat(2,minmax(0,1fr))}.gear-teaching .gear-top-mechanism svg{width:100%;max-width:620px}.gear-teaching>.gear-playback{padding:0;margin:0}.impact-gear-clubs{width:100%}.impact-gear-clubs button{flex:1}}
.gear-in-lab{padding:18px;margin:0}
.gear-motion-heading{display:flex;align-items:start;justify-content:space-between;gap:14px;flex-wrap:wrap}
.gear-eyebrow{font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:#796342}
.gear-motion-heading h3{font:500 28px/1.2 var(--studio-font);letter-spacing:-.035em;margin:7px 0 0;color:#374731}
.gear-view{font-size:13px;line-height:1.5;color:#68715d;border:1px solid #d8d4c3;border-radius:5px;padding:5px 8px}
.gear-linked{font-size:14px;line-height:1.6;color:#616d55;margin:14px 0 0}
.gear-zone-controls{display:flex;gap:6px;margin-top:20px}
.gear-zone-controls button,.gear-playback button{min-height:44px;font:500 14px/1.4 var(--studio-font);cursor:pointer;border-radius:6px;border:1px solid #b7bda7;padding:10px 16px;color:#43563a;background:#fffdf6}
.gear-zone-controls button[aria-pressed="true"]{color:#fffdf3;background:#4e6042;border-color:#4e6042}
.gear-motion button:focus-visible,.gear-motion input:focus-visible{outline:3px solid #a4643d;outline-offset:3px}
.gear-motion button:disabled,.gear-motion input:disabled{opacity:.5;cursor:default}
.gear-mechanism{margin:10px 0 18px;padding:0}
.gear-mechanism svg{display:block;width:100%;max-width:550px;height:auto;margin:auto;overflow:visible}
.gear-mechanism figcaption{font-size:12px;line-height:1.5;text-align:center;color:#71735f}
.gear-axis{stroke:#c6c4ad;stroke-width:1;stroke-dasharray:3 6}
.gear-rotor{transform-box:fill-box;transform-origin:center;stroke-width:1.5;stroke-linejoin:round}
.gear-head{fill:#657454;stroke:#405139}
.gear-ball{fill:#c39962;stroke:#926638}
.gear-rotor>circle:not(.gear-hub){fill:none;stroke:#faf4df;stroke-opacity:.65}
.gear-rotor .gear-spoke{fill:none;stroke:#faf4df;stroke-width:2;stroke-linecap:round;opacity:.8}
.gear-rotor .gear-hub{fill:#faf7ee;stroke:none}
.gear-contact{fill:#f7ecce;stroke:#98683a;stroke-width:1.5}
.gear-rotation-key{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gear-rotation-key>div{display:flex;gap:12px;align-items:center}
.gear-turn{font:400 44px/1 var(--studio-font);flex:0 0 36px;text-align:center}
.gear-turn-head{color:#536543}.gear-turn-ball{color:#986334}
.gear-rotation-key p{margin:0;font-size:14px;line-height:1.55}
.gear-rotation-key strong,.gear-rotation-key p>span{display:block}
.gear-rotation-key p>span{color:#68735d;margin-top:4px}
.gear-playback{display:flex;gap:20px;align-items:center;margin-top:23px;padding-top:18px;border-top:1px solid #ddd5c4}
.gear-playback>div{flex:1;min-width:0}
.gear-playback label{display:flex;justify-content:space-between;gap:10px;font-size:14px;color:#5e6b51}
.gear-playback output{font-variant-numeric:tabular-nums;font-size:13px;white-space:nowrap}
.gear-playback input{display:block;width:100%;height:28px;margin:5px 0 0;accent-color:#8b6239;cursor:pointer}
.gear-curve-reading{display:flex;align-items:center;gap:14px;font-size:16px;line-height:1.5;color:#65482d;background:#eee4d1;padding:13px 16px;border-radius:6px;margin:20px 0 12px}
.gear-curve-reading>span{font-size:26px;line-height:1}
.gear-clarifier{font-size:14px;line-height:1.7;color:#647058;margin:0}
@container(max-width:460px){.gear-motion-heading h3{font-size:24px}.gear-playback{flex-wrap:wrap;gap:12px}.gear-playback>div{flex-basis:100%}.gear-rotation-key{gap:12px}.gear-rotation-key>div{gap:6px;align-items:start}.gear-turn{font-size:34px;flex-basis:26px}.gear-rotation-key p{font-size:14px}.gear-view{font-size:12px}.gear-curve-reading{padding:12px;font-size:15px}}
@media(max-width:600px){.gear-motion{padding:16px}.gear-zone-controls button{flex:1;padding-inline:10px}}
@media print{.gear-playback{display:none}}

.gear-display-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.gear-display-controls>div{display:flex;gap:4px;padding:4px;background:#eae6d9;border-radius:8px}
.gear-display-controls button{font:500 14px/1.4 var(--studio-font);border:1px solid transparent;border-radius:5px;min-height:44px;padding:9px 12px;cursor:pointer;color:#5c684e;background:transparent}
.gear-display-controls button[aria-pressed="true"]{background:#fffdf7;border-color:#d4d0bc;color:#35482e}
.gear-display-controls .gear-layer-toggle{border:1px solid #c8cbb8;font-size:13px;background:transparent}
.gear-top-mechanism{margin-top:22px}
.gear-top-mechanism svg{max-width:660px;overflow:hidden}
.gear-club-art{mix-blend-mode:multiply}
.gear-driver-cutout{mix-blend-mode:normal}
.gear-face-ends{display:flex;justify-content:space-between;width:50%;max-width:330px;margin:0 auto 22px;font-size:14px;line-height:1.5;color:#68745b}
.gear-target-line{fill:none;stroke:#9fa58e;stroke-width:1.2;stroke-dasharray:4 6}
.gear-face-before{display:none;fill:none;stroke:#9b9f89;stroke-width:1;stroke-dasharray:4 5}
.with-gears .gear-face-before{display:block}
.gear-face-edge{fill:none;stroke:#9a6539;stroke-width:1.2;stroke-opacity:.6;stroke-linecap:round}
.gear-flight-line{fill:none;stroke:#ad6037;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gear-launch-line{fill:none;stroke:#426b50;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.gear-pivot{display:none;fill:#49603c;stroke:#faf6e8;stroke-width:1.5}
.with-gears .gear-pivot{display:block}
.gear-overlay-wheel{display:none;stroke-width:1.3;stroke-linejoin:round}
.with-gears .gear-overlay-wheel{display:block}
.gear-overlay-head{fill:#65745422;stroke:#72825b8c}
.gear-overlay-ball{fill:#b48b4f26;stroke:#9a653978}
.gear-overlay-wheel circle{fill:none}
.gear-ball-spin-cue{fill:none;stroke:#7d5834;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.gear-spin-direction{pointer-events:none}
.gear-spin-direction path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.gear-spin-halo{stroke:#fffdf7;stroke-width:4.2}
.gear-spin-arrow{stroke:#914324;stroke-width:2}
.gear-spin-marker{fill:#914324;stroke:#fffdf7;stroke-width:1.5}
.gear-spin-reading{display:flex;align-items:center;justify-content:center;gap:10px;color:#753d25;font-size:14px;font-weight:650;line-height:1.5;margin:0 0 18px}
.gear-spin-reading>span{font-size:27px;line-height:1}
.gear-face-contact{fill:#9a6539;stroke:#fff9e6;stroke-width:1.7}
.gear-top-mechanism figcaption{display:flex;flex-wrap:wrap;justify-content:center;gap:9px 15px;text-align:left}
.gear-top-mechanism figcaption>span{display:flex;align-items:center;gap:7px}
.gear-top-mechanism figcaption i{display:inline-block;width:16px;border-top:2px solid #9a6539}
.gear-top-mechanism figcaption .gear-key-before{border-color:#9b9f89;border-top-style:dashed}
.gear-top-mechanism figcaption .gear-key-pivot{width:7px;height:7px;background:#49603c;border:0;border-radius:50%}
.gear-top-mechanism .gear-flight-reading{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 0;border-block:1px solid #ddd5c4;text-align:left;font-size:13px;line-height:1.5}
.gear-flight-reading>span{align-items:start!important;gap:10px!important}
.gear-flight-reading strong{display:block;color:#394833;font-size:15px;font-weight:600;margin-top:3px}
.gear-top-mechanism .gear-flight-reading i{border:0;width:26px;flex:0 0 26px;height:30px;font-size:29px;line-height:1;font-style:normal}
.gear-top-mechanism .gear-key-launch{color:#426b50}.gear-top-mechanism .gear-key-flight{color:#ad6037}
.gear-flight-context{font-size:12px!important;color:#515a4f!important}
.gear-top-note{font-size:13px;line-height:1.6;color:#70745f;margin:13px 0 0}
@container(max-width:460px){.gear-display-controls{gap:8px}.gear-display-controls>div{width:100%}.gear-display-controls>div button{flex:1}.gear-top-mechanism{margin-top:17px}.gear-top-mechanism figcaption{justify-content:start;font-size:12px}.gear-face-ends{padding-inline:5px}.gear-top-note{font-size:13px}}

.chart-ball-placeholder{fill:#f8f7ef;stroke:#7f8b71;stroke-width:1.5}.chart-contact-placeholder{fill:#e7e9dc;stroke:#839274;stroke-width:1.5}.chart-asset-fallback{pointer-events:none}

/* Initial direction is distinct from a speculative near-ground flight. */
.grazing-launch-chart .chart-value{font-size:36px}.grazing-launch-chart .chart-value small{max-width:16ch;line-height:1.4}
.launch-initial-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:22px;color:#586a48}
.launch-initial-heading strong{font-size:30px;font-weight:500;color:#9e6538}
.launch-initial-canvas svg{display:block;width:100%;height:auto}.chart-launch-initial{stroke:#a45f31;stroke-width:3;fill:none}
.launch-conditions{display:flex;flex-wrap:wrap;gap:12px 22px;padding:16px 0;border-top:1px solid #d8ddcf;border-bottom:1px solid #d8ddcf;color:#68745e;font-size:12px}
.launch-conditions b{display:block;color:#3e5237;font-size:16px;font-weight:500;margin-top:4px}
.grazing-launch-note{padding:18px;margin-top:18px;background:#f3eadb;border:1px solid #dfcbb1;border-radius:8px;color:#66533e}
.grazing-launch-note strong{font-size:18px;font-weight:500}.grazing-launch-note p{font-size:14px;line-height:1.6;margin:9px 0 0}
.launch-model-source{font-size:12px;color:#727765;line-height:1.6}.launch-model-source a{color:#77562d;text-underline-offset:3px}
.grazing-launch-theory{border:1px solid #d7d9ca;border-radius:8px;background:#f9faf4;margin:14px 0}
.grazing-launch-theory>summary{padding:16px;color:#586646;cursor:pointer;font-size:14px;line-height:1.5}.grazing-launch-theory>div{padding:0 16px 16px}.grazing-launch-theory>div>p{font-size:14px;line-height:1.6;color:#72755e}
@media(max-width:600px){.grazing-launch-chart .chart-value{font-size:28px}.grazing-launch-chart .chart-value small{font-size:11px}.launch-initial-heading{font-size:13px}.launch-initial-heading strong{font-size:24px}.grazing-launch-note{padding:14px}.grazing-launch-note strong{font-size:16px}.launch-conditions{gap:10px 18px}}
/* Observation order: preparation first, movement second. */
.work-grid>.workspace-card{min-width:0}
.flight-check-stage{margin-top:20px;padding-top:20px;border-top:1px solid #dcd8c9}
.flight-check-stage>header{display:flex;gap:13px;align-items:flex-start;margin-bottom:15px}
.flight-check-stage>header>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #bbc7a8;background:#e5ecdb;border-radius:7px;color:#506442;font:500 17px/1 var(--studio-font)}
.flight-check-stage[data-check-stage="dynamic"]>header>span{background:#efe2ce;border-color:#cfb998;color:#8a6339}
.flight-check-stage h4{font:500 22px/1.25 var(--studio-font);letter-spacing:-.025em;margin:0 0 5px;color:#3e4d35}
.flight-check-stage header p{font-size:14px;line-height:1.55;margin:0;color:#6c725e}
.flight-check-stage .flight-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.flight-check-stage .flight-check-card{display:flex;flex-direction:column;border-radius:9px;box-shadow:none;background:#fffdf6;border-color:#d9d1bd;padding:18px;cursor:default}
.flight-check-stage .flight-check-card:hover{transform:none;box-shadow:none}
.flight-check-card h5{font:500 20px/1.3 var(--studio-font);letter-spacing:-.02em;color:#334d37;margin:2px 0 10px}
.flight-check-task{font-size:14px;line-height:1.65;color:#626b59;margin:0 0 14px}
.flight-check-explanation{border-top:1px solid #e1e0d4;margin-bottom:15px;color:#586646}
.flight-check-explanation>summary{cursor:pointer;padding:12px 0;font-size:13px;font-weight:500;line-height:1.5}
.flight-check-explanation>p{font-size:13px;line-height:1.7;margin:0 0 10px;color:#69705e}
.flight-check-record,.flight-check-notice{font-size:12px;line-height:1.65;margin:0 0 15px;padding:10px 12px;border-radius:6px;background:#f0f3e8;color:#536144}
.flight-check-notice{background:#f4e8d9;color:#85582f}
.flight-check-action{display:flex;gap:12px;align-items:center;justify-content:space-between;text-align:left;width:100%;margin-top:auto;padding:11px 13px;min-height:44px;border:1px solid #cfd6bf;border-radius:6px;background:#edf2e4;color:#435837;font:500 13px/1.45 var(--studio-font);cursor:pointer}
.flight-check-action:hover{border-color:#85916a;background:#e5ecd9}
.flight-check-stage .flight-check-card strong{font-size:16px;line-height:1.4;font-weight:600}
.flight-check-stage .flight-check-card small{font-size:13px;line-height:1.6}
.body-check-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 12px}
.body-check-selector button{min-width:0;text-align:left;border:1px solid #d4d9c8;border-radius:8px;background:#fbfcf6;color:#536447;padding:15px 17px;cursor:pointer;font-family:var(--studio-font)}
.body-check-selector button[aria-pressed="true"]{border-color:#677850;background:#e8efdd;box-shadow:inset 0 0 0 1px #677850}
.body-check-selector button[data-body-check-phase="dynamic"][aria-pressed="true"]{border-color:#a77b4d;background:#f0e5d2;box-shadow:inset 0 0 0 1px #a77b4d}
.body-check-selector span{display:block;font-size:17px;line-height:1.4;font-weight:500}.body-check-selector small{display:block;font-size:12px;line-height:1.5;margin-top:6px;color:#6d735e}
.body-check-context{font-size:13px;line-height:1.65;color:#677257;margin:0 0 18px}
.body-check-badge{display:inline-block;border:1px solid #d7dccb;border-radius:4px;padding:3px 6px;margin-top:9px;font:500 11px/1.4 var(--studio-font);color:#697454;background:#f0f3e8}
.body-observation-when{padding:16px;border:1px solid #d5d9c4;border-left:3px solid #8a936c;border-radius:7px;background:#f3f3e8;margin-bottom:16px}
.body-observation-when span{display:block;font-size:12px;font-weight:500;color:#63734d}.body-observation-when p{font-size:14px;line-height:1.6;margin:7px 0 0;color:#4c5e3e}
@media(max-width:600px){.flight-check-stage .flight-check-grid{grid-template-columns:1fr}.flight-check-stage .flight-check-card{padding:16px}.flight-check-stage h4{font-size:20px}.body-library-head{flex-direction:column;gap:12px}.body-count{display:flex;align-items:center;gap:10px;padding:9px 12px}.body-check-selector{grid-template-columns:1fr;gap:9px}.body-check-selector button{padding:12px}.body-check-selector span{font-size:15px}.body-check-selector small{font-size:11px}}
/* Two connected angle components: controls stay beside the view they affect. */
.angle-orientation{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:#66745b;margin:0 4px 6px;line-height:1.5}
.angle-side-plate .chart-face-plane{stroke:#9d7149;stroke-width:8;stroke-linecap:round}
.angle-top-plate .chart-face-plane{stroke:#9d7149;stroke-width:2.5}
.angle-plate .chart-target{stroke-width:1.2;stroke-dasharray:4 6}
.angle-plate .chart-face{stroke-width:3}.angle-plate .chart-clubpath{stroke-width:3}
.glossary-chart.spin-loft-laboratory{display:block;background:#efece2;padding:22px}
.spin-loft-summary{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:28px;padding:24px;margin:16px 0 20px;background:#414d3b;color:#fff8e9;border-radius:10px;position:sticky;top:12px;z-index:1}
.spin-loft-summary>div>span{display:block;font-size:14px;color:#e4d7bc;line-height:1.5}
.spin-loft-summary strong{display:block;font:500 52px/1.1 var(--studio-font);letter-spacing:-.05em;font-variant-numeric:tabular-nums;margin-top:6px;color:#f2ddba}
.spin-loft-summary strong small{font-size:30px;margin-left:3px}
.spin-loft-summary p{font-size:15px;line-height:1.65;margin:0;color:#ede9dc;max-width:55ch}
.spin-loft-planes{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.spin-loft-plane{min-width:0;border:1px solid #d8d3c2;border-radius:10px;background:#fffdf7;overflow:hidden}
.spin-loft-laboratory .precision-chart{border:0;border-radius:0;background:#fffdf7;box-shadow:none;padding:20px 18px 14px}
.spin-loft-laboratory .chart-heading{align-items:center;gap:14px}
.spin-loft-laboratory .chart-heading h4{font-size:21px;max-width:18ch}
.spin-loft-laboratory .chart-value{font-size:36px}
.spin-loft-laboratory .chart-meta>span:first-child{display:none}
.spin-loft-laboratory .chart-view{margin-right:auto;font-size:14px;color:#59654e}
.spin-loft-laboratory .schematic-canvas{min-height:0;max-width:480px}
.spin-loft-laboratory .angle-orientation{font-size:14px}
.spin-loft-laboratory .chart-legend{font-size:14px;gap:8px 16px;margin-top:10px}
.spin-loft-laboratory .chart-note{font-size:14px;line-height:1.6}
.spin-loft-dimension-arc{fill:none;stroke:#51432e;stroke-width:3.2}
.spin-loft-dimension-tick{stroke:#51432e;stroke-width:2.2}
.spin-loft-dimension-leader{stroke:#8a7657;stroke-width:1.25}
.spin-loft-dimension-anchor{fill:#51432e;stroke:#fffaf0;stroke-width:1}
.spin-loft-dimension-label{position:absolute;left:63%;right:2%;top:12%;background:#f4ecd9;border:1px solid #d5c4a3;border-radius:7px;padding:9px 11px;color:#51432e;box-shadow:0 3px 9px #5848290a}
.spin-loft-dimension-label>span{display:block;font:500 12px/1.4 var(--studio-font)}
.spin-loft-dimension-label>strong{display:block;font:500 26px/1.3 var(--studio-font);letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin:3px 0}
.spin-loft-dimension-label>small{display:block;font:400 11px/1.4 var(--studio-font);color:#6e5c3c}
.chart-legend .legend-spinloft{border-color:#51432e;border-top-width:3px}
@media(max-width:600px){.spin-loft-dimension-label{padding:7px}.spin-loft-dimension-label>strong{font-size:21px}.spin-loft-dimension-label>span,.spin-loft-dimension-label>small{font-size:10px}}
.spin-loft-laboratory .spin-plane-controls{border:0;border-top:1px solid #e2dbc9;border-radius:0;background:#f4f1e7;padding:18px}
.spin-plane-controls .diagram-lab-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;padding:0}
.spin-plane-controls .diagram-control-help{font-size:14px;line-height:1.5;color:#6b6e5d;margin:8px 0 0}
.spin-plane-controls [data-control-field="m.face"] input[type=range],.spin-plane-controls [data-control-field="m.loft"] input[type=range]{accent-color:#ae632e}
.spin-plane-controls [data-control-field="m.path"] input[type=range],.spin-plane-controls [data-control-field="m.attack"] input[type=range]{accent-color:#4c7457}
.spin-loft-explanation{padding:20px 2px 0;color:#46543b;font-size:15px;line-height:1.6}
.spin-loft-explanation strong{font-weight:600}.spin-loft-explanation p{margin:6px 0 0;color:#626e53}
.spin-loft-advanced{margin-top:20px;border:1px solid #d4ceb9;border-radius:9px;background:#f7f3e8;color:#4e5c40}
.spin-loft-advanced>summary{font-size:14px;font-weight:500;line-height:1.5;cursor:pointer;padding:17px 18px;min-height:44px}
.spin-loft-advanced>summary:focus-visible{outline:3px solid #986030;outline-offset:3px}
.spin-loft-advanced>div{padding:0 16px 16px}.spin-loft-advanced>div>p{font-size:14px;line-height:1.65;margin:0 0 16px;color:#677155}
.spin-loft-laboratory>.diagram-lab-footer{margin-top:20px}
.spin-loft-laboratory>.diagram-lab-footer>span{font-size:13px}
.chart-dialog .spin-loft-laboratory{padding:0;background:transparent}
.chart-dialog .spin-loft-summary{position:static}
/* Published face/path references; percentages are independent of the simulator. */
.centered-flight-reading{background:#f6f0e2;border:1px solid #d8cbb0;border-left:3px solid #ab713f;border-radius:8px;padding:20px;margin-bottom:22px;color:#414e37}
.centered-flight-reading header>span{font:500 11px/1.5 var(--studio-font);letter-spacing:.07em;text-transform:uppercase;color:#816443}
.centered-flight-reading h4{font:400 24px/1.2 Georgia,serif;color:#3d4832;margin:7px 0 14px;letter-spacing:-.02em}
.centered-flight-reading .centered-flight-story{font:500 19px/1.5 var(--studio-font);color:#35492f;margin:0}
.centered-flight-reading .centered-flight-shape{display:inline-block;font-size:12px;line-height:1.5;color:#6e522d;border:1px solid #d8c8a6;border-radius:4px;background:#eee3cb;padding:5px 8px;margin:10px 0 0}
.centered-flight-reading .centered-flight-relation{font-size:14px;line-height:1.6;color:#536147;margin:14px 0 0}
.centered-flight-reading .centered-flight-start{font-size:12px;line-height:1.7;color:#6c684e;margin:10px 0 0;font-variant-numeric:tabular-nums}
.centered-flight-reading .centered-flight-limit{font-size:12px;line-height:1.65;color:#706e59;border-top:1px solid #ded4bf;padding-top:12px;margin:14px 0 0}
@media(max-width:600px){.centered-flight-reading{padding:16px 14px}.centered-flight-reading .centered-flight-story{font-size:17px}}
.launch-influence{container-type:inline-size;background:#faf7ee;color:#424b38;border:1px solid #d8d1bd;border-radius:10px;padding:24px;margin-top:20px;font-family:var(--studio-font)}
.launch-influence-kicker{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#72755f}
.launch-influence h4{font:400 28px/1.2 Georgia,serif;letter-spacing:-.025em;color:#394330;margin:10px 0}
.launch-influence p{font-size:14px;line-height:1.65;color:#616852;margin:0}
.launch-reference-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.launch-reference{min-width:0;background:#fffdf7;border:1px solid #dfd8c5;border-radius:8px;padding:20px}
.launch-reference>header>span{font-size:12px;color:#727460}.launch-reference h5{font-size:18px;font-weight:500;color:#3d4733;margin:5px 0 20px}
.launch-share-values{display:flex;justify-content:space-between;gap:10px;font-size:13px}
.launch-share-values b{display:block;font-size:29px;font-weight:500;line-height:1.2;letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-top:5px}
.launch-share-values small{font-size:17px;margin-left:2px}.launch-share-face{color:#985729}.launch-share-path{color:#416149;text-align:right}
.launch-share-bar{display:flex;gap:3px;height:9px;overflow:hidden;border-radius:4px;margin:14px 0 20px}.launch-share-bar i:first-child{background:#ae6939}.launch-share-bar i:last-child{background:#4b7255}
.launch-reference-result{border-top:1px solid #e7e0cd;padding-top:16px}.launch-reference-result span{font-size:12px;display:block;color:#666e59;line-height:1.5}
.launch-reference-result strong{display:block;color:#3b4932;font-size:32px;line-height:1.3;font-weight:500;font-variant-numeric:tabular-nums;margin-top:4px;letter-spacing:-.035em}
.launch-reference-result small{display:block;color:#66715a;font-size:12px;margin-top:3px}
.launch-reference .launch-reference-sensitivity{font-size:12px;line-height:1.6;margin-top:16px;color:#6c6d5a}
.launch-reference-example{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid #ded7c4;margin-bottom:16px}
.launch-reference-example b,.launch-reference-example span{display:block}.launch-reference-example b{font-weight:500;color:#47563b;margin-bottom:4px}
.launch-reference-demo{flex-shrink:0;max-width:100%;border:1px solid #ac9d7c;background:#eeeadb;color:#4f553e;border-radius:6px;min-height:44px;padding:10px 13px;font:500 13px/1.5 var(--studio-font);cursor:pointer}
.launch-reference-demo:hover{background:#e7e0cb}.launch-reference-demo:focus-visible,.launch-reference-research summary:focus-visible{outline:3px solid #986030;outline-offset:3px}
.launch-influence .launch-reference-method,.launch-influence .launch-reference-source{font-size:12px;line-height:1.7}.launch-influence .launch-reference-source{margin-top:8px}
.launch-influence a{color:#81552f;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.launch-reference-research{margin-top:18px;border-top:1px solid #ded7c4;padding-top:4px}.launch-reference-research summary{font-size:14px;line-height:1.5;color:#46563a;font-weight:500;cursor:pointer;min-height:44px;padding-block:14px}
.launch-reference-research>div{padding-top:2px}.launch-reference-research p{margin:0 0 14px;font-size:13px}.launch-reference-research a{display:block;font-size:12px;line-height:1.6;margin-top:10px}
.expanded-chart-layout>.launch-influence{grid-column:1/-1}
.expanded-chart-layout:has(>.launch-influence){grid-template-columns:minmax(0,1fr)}
.expanded-chart-layout:has(>.launch-influence)>.diagram-lab{position:static;margin-top:0}
@media(min-width:601px){.expanded-chart-layout:has(>.launch-influence) .diagram-lab-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container(max-width:480px){.launch-reference-grid{grid-template-columns:1fr;gap:12px}.launch-reference{padding:18px}.launch-reference-example{flex-direction:column;align-items:flex-start;gap:14px}.launch-reference-demo{width:100%}.launch-influence h4{font-size:25px}}
@media(max-width:600px){.launch-influence{padding:18px 14px}.launch-reference-result strong{font-size:30px}}
@media(max-width:600px){.glossary-chart.spin-loft-laboratory{padding:12px}.spin-loft-summary{grid-template-columns:1fr;gap:14px;padding:18px;margin:14px 0;position:static}.spin-loft-summary strong{font-size:44px}.spin-loft-summary p{font-size:15px}.spin-loft-laboratory .precision-chart{padding:16px 12px 12px}.spin-loft-laboratory .chart-heading h4{font-size:20px}.spin-loft-laboratory .chart-value{font-size:32px}.spin-loft-laboratory .chart-view{font-size:13px;max-width:24ch}.spin-loft-laboratory .angle-orientation{font-size:13px;gap:10px}.spin-plane-controls .diagram-lab-controls{grid-template-columns:1fr}.spin-loft-laboratory .chart-legend{font-size:13px}.chart-dialog .spin-loft-laboratory{padding:0}}

/* Contrast pairs are explicit: dark olive text on light earth surfaces,
   ivory text on solid dark surfaces. Sand is reserved for inverse accents. */
.breadcrumb,.page-head p,.segmented button,.range-scale{color:var(--muted)}
.page-head .eyebrow{color:var(--text-earth)}
.stage-footer{background:#fffef9}
.choice,.btn,.preset,.hypothesis-controls button{color:var(--ink)}
.choice.active,.btn.primary,.hypothesis-controls button[aria-pressed="true"]{background:#4e5e40;border-color:#4e5e40;color:#fffef9}
.choice.active:hover,.btn.primary:hover,.hypothesis-controls button[aria-pressed="true"]:hover{background:#3d4e32;border-color:#3d4e32;color:#fffef9}
.choice:not(.active):hover,.hypothesis-controls button:not([aria-pressed="true"]):hover{background:#eee7d9;color:var(--ink);border-color:#8a795d}
.btn:disabled{opacity:1;background:#e8e9e2;border-color:#c7cbbe;color:#62675b;cursor:not-allowed}

/* Guided checks and body hypotheses retain their text color in every state. */
.flight-check-head p,.flight-check-stage header p,.body-check-context{color:var(--muted)}
.flight-check-task,.flight-check-explanation>p{color:#41483d;font-size:1rem;line-height:1.65}
.flight-check-explanation>summary,.flight-check-action{color:#35482e;font-size:.875rem}
.flight-check-record,.flight-check-notice{font-size:.875rem}
.body-check-selector button{color:#35482e}
.body-check-selector small,.body-pattern-summary small{color:var(--muted)}
.body-check-selector small{font-size:.875rem}
.body-check-badge{font-size:.75rem;color:#46543b;background:#edf0e4;border-color:#adb89b}
.body-pattern-card{background:#fffdf6;color:var(--ink);border-color:#c5b99f}
.body-pattern-card.flight-suggested,.body-pattern-card.flight-suggested.expanded{background:#f5ead5;color:var(--ink);border-color:#997241}
.body-pattern-card.selected,.body-pattern-card.selected.flight-suggested.expanded{border-color:#526640;box-shadow:inset 4px 0 #526640}
.body-pattern-summary{color:var(--ink)}
.body-pattern-summary b{color:var(--ink)}
.body-phase-tabs button.active{background:#4e5e40;color:#fffef9}
.body-phase-tabs button.active span{background:#e4c79c;color:var(--ink)}
.body-observation-when{background:#f0f2e7;border-color:#a8b38f}
.body-observation-when span,.body-observation-when p{color:#3f5033}
.quick-fix{background:#efe1c8;color:#3d3525;border:1px solid #c5ab7d}
.quick-fix>strong{color:#3d3525}
.quick-fix>span,.quick-fix>small{color:#57462e;font-size:.875rem}
.body-flight-link{background:#f8f7f0;border-color:#bfbba9}
.body-flight-card,.body-flight-evidence>div,.pressure-guide>div{background:#f8f1e5;color:var(--ink);border-color:#c5b99f}
.body-flight-after,.pressure-guide .pressure-compete{background:#e8edde;border-color:#a6b394}
.body-flight-before,.pressure-guide .pressure-doubt{background:#f4e8d3;border-color:#c5aa7e}
.body-pattern-detail .body-detail-grid>div{background:#f2eadb;color:var(--ink)}
.body-flight-card p,.body-flight-evidence p,.body-detail-grid p,.pressure-guide p{color:#41483d;font-size:1rem;line-height:1.65}
.body-flight-title b,.body-flight-card span,.body-pattern-detail .body-detail-grid span,.pressure-guide span{color:#51422c}
.body-trackman-check small{color:var(--muted)}
.short-term-rule{background:var(--surface-ink);color:var(--text-on-dark);font-size:.875rem;line-height:1.65}
.short-term-rule strong{color:#f2d4a4}
.warning,.audit-note{color:#574127}
.warning strong,.audit-note b{color:#48351d}

/* Panels changed from dark to light must not inherit white metric labels. */
.visual-panel .visual-title span,.visual-panel .visual-legend,.visual-panel .legend{color:#515a4f}
.visual-panel .legend i{background:#85572d}
.visual-panel .legend i.dashed{height:0;background:transparent;border-top:2px dashed #56634a}
.qualitative-summary>div,.mini-metric{background:#fffdf6;border:1px solid #bfc8b0;color:var(--ink)}
.qualitative-summary span,.mini-metric span{color:#515a4f;font-size:.875rem}
.qualitative-summary b,.mini-metric b{color:var(--ink);font-size:1rem}
.spin-loft-equation{background:var(--surface-ink);border-color:#56654c;color:var(--text-on-dark)}
.spin-loft-equation small{color:var(--text-on-dark-muted);font-size:.75rem}
.spin-loft-equation b,.spin-loft-equation i{color:var(--text-on-dark)}
.spin-loft-equation .equation-result{background:#e4c79c}
.spin-loft-equation .equation-result small,.spin-loft-equation .equation-result b{color:#29312d}
.delivery-source.measured{background:var(--surface-ink);color:var(--text-on-dark)}
.delivery-source.measured span{color:#f2d4a4}
.delivery-source.estimated{background:#e9eddf;color:var(--ink)}
.delivery-source.estimated span{color:#3f5033}
.card.evidence,.field-evidence-strip,.priority-card{background:var(--surface-ink);color:var(--text-on-dark)}
.card.evidence p,.priority-card p{color:var(--text-on-dark-muted)}
.field-evidence-strip span,.priority-card .rank{color:#f2d4a4}

/* Secondary chart text stays readable across the light gradient stops. */
.chart-meta,.chart-view,.chart-value small,.chart-axis-title,.chart-axis-bottom,.chart-tick,.chart-note,.chart-source,.plot-caption{color:var(--muted)}
.precision-chart{--chart-muted:#515a4f;background-color:#f4f6ee}
.glossary-badges .derived{color:var(--text-earth);background:#ede5d2}
.glossary-chart-reading,.glossary-method p,.glossary-detail-grid p{color:var(--muted)}
.flight-check-stage[data-check-stage="dynamic"]>header>span{color:var(--text-earth)}
.vertical-flight-head p{color:var(--muted)}
.flight-factor-detail{background:var(--surface-ink);color:var(--text-on-dark)}
.flight-factor-detail-head span,.flight-factor-detail-grid section>span,.flight-factor-detail-grid .flight-factor-limit>span{color:#f2d4a4}
.flight-factor-detail-head b,.flight-factor-summary,.flight-factor-detail-grid p{color:var(--text-on-dark-muted)}
.impact-context-grid>div{background:var(--surface-ink);color:var(--text-on-dark)}
.impact-context-grid span{color:#f2d4a4}
.impact-context-grid p{color:var(--text-on-dark-muted)}
.trackman-source-row .source-link,.measurement-source-row .source-link{color:#f2d4a4;text-decoration:underline;text-underline-offset:3px}
.trackman-source-row .source-link:hover,.measurement-source-row .source-link:hover{color:#fff8e9}
.glossary-index h2,.glossary-term-button.active small,.diagram-lab-footer>span{color:var(--muted)}
.diagram-lab-controls output{color:var(--text-earth)}

/* Trajectory and ground-contact teaching cards: explicit high-contrast earth pairs. */
.flight-lessons{margin:24px 0;padding:clamp(18px,3vw,30px);border:1px solid #bcb49e;border-radius:20px;background:#f7f3e9;color:#303b30;min-width:0}
.flight-lessons header{max-width:850px}.flight-lessons h3{font-size:clamp(23px,2.5vw,30px);line-height:1.2;margin:8px 0 12px;color:#303b30}.flight-lessons p,.flight-lessons dd{font-size:16px;line-height:1.65;color:#46503f}.flight-lessons .insight-kicker{color:#596247}
.flight-lesson-choices{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.flight-lesson-choices button{font:inherit;font-size:16px;font-weight:600;min-height:46px;padding:11px 17px;border:1px solid #8a907c;border-radius:10px;background:#fffdf7;color:#35442f;cursor:pointer}.flight-lesson-choices button:hover{background:#e5e8dc}.flight-lesson-choices button[aria-pressed="true"]{background:#49583c;color:#fff8e8;border-color:#49583c}.flight-lessons button:focus-visible,.flight-lessons a:focus-visible,.flight-lessons summary:focus-visible{outline:3px solid #995329;outline-offset:3px}
.flight-lessons .flight-lesson-scope{font-size:14px;color:#596247;margin:12px 0 20px}.flight-lesson-content{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:26px;align-items:start}.flight-lesson-graph{margin:0;min-width:0;padding:18px;background:#fffdf7;border:1px solid #d4ccb9;border-radius:14px}.flight-lesson-graph-label{display:grid;gap:7px;font-size:16px;color:#35442f}.flight-lesson-graph-label span{font-size:14px;color:#596247}.flight-lesson-graph svg{width:100%;height:auto;display:block;margin:20px 0 8px;overflow:visible}.flight-lesson-graph svg text{font:28px system-ui,sans-serif;fill:#46503f}.flight-lesson-graph figcaption{font-size:14px;line-height:1.6;color:#596247;border-top:1px solid #d4ccb9;padding-top:14px}
.flight-lesson-reading h4{font-size:23px;line-height:1.3;margin:0 0 12px;color:#303b30}.flight-lesson-reading dl{margin:20px 0}.flight-lesson-reading dt{font-size:16px;font-weight:700;color:#303b30;margin:16px 0 5px}.flight-lesson-reading dd{margin:0}.flight-lessons .flight-lesson-limit{padding:14px 16px;border-left:3px solid #995329;background:#eee6d7;color:#4e3e2a;border-radius:0 8px 8px 0}.flight-lessons .btn.secondary{background:#fffdf7;color:#35442f;border:1px solid #8a907c;white-space:normal;font-size:16px;min-height:44px}.flight-lessons footer{margin-top:22px;border-top:1px solid #d4ccb9;padding-top:20px}.flight-lessons footer details{margin-top:18px;font-size:16px;color:#46503f}.flight-lessons footer summary{cursor:pointer;min-height:44px;align-content:center;font-weight:600}.flight-lessons footer a{display:block;color:#744320;text-decoration:underline;padding:6px 0;font-size:14px}
@media(max-width:1000px){.flight-lesson-content{grid-template-columns:1fr}.flight-lesson-graph{max-width:680px;width:100%;box-sizing:border-box}}
@media(max-width:520px){.flight-lessons{padding:16px;border-radius:14px}.flight-lesson-choices{display:grid;grid-template-columns:1fr 1fr}.flight-lesson-choices button{padding:10px;font-size:16px}.flight-lesson-graph{padding:12px}.flight-lesson-reading h4{font-size:21px}}

/* Teaching diagrams: full-width drawing, labels outside the movement path. */
.flight-lesson-content{display:block}.flight-lesson-graph-premium{max-width:none;width:100%;box-sizing:border-box;padding:clamp(16px,2.5vw,28px);border-color:#d2cab8;border-radius:18px;background:#fffdf8;box-shadow:0 12px 28px -24px #56493680}
.flight-lesson-graph-premium .flight-lesson-graph-label{display:flex;align-items:start;justify-content:space-between;gap:16px}.flight-lesson-graph-label>div{display:grid;gap:7px}.flight-lesson-graph-premium .lesson-figure-kicker{font-size:14px;letter-spacing:.04em;color:#657054}.flight-lesson-graph-premium .flight-lesson-graph-label b{font-size:23px;font-weight:650;color:#303b30;line-height:1.25}.flight-lesson-graph-premium .lesson-direction{display:grid;gap:6px;text-align:right;font-size:14px;color:#657054;flex-shrink:0}.lesson-direction strong{font-size:16px;color:#46503f;font-weight:600}
.lesson-diagram-canvas{max-width:980px;margin:0 auto}.flight-lesson-graph-premium svg{margin:6px 0 0;overflow:hidden}.flight-lesson-graph-premium svg .lesson-svg-label{font:22px system-ui,sans-serif;fill:#46503f}.lesson-sequence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dfd8c8;border-bottom:1px solid #dfd8c8;margin:0 0 17px;padding:17px 0;gap:18px}.lesson-sequence>div{display:flex;align-items:start;gap:10px;min-width:0}.lesson-sequence span{color:#8c512a;font:500 14px/1.7 system-ui,sans-serif}.lesson-sequence strong{font-size:16px;line-height:1.5;font-weight:600;color:#38452f}.flight-lesson-graph-premium figcaption{border:0;padding:0}.lesson-line-key{display:flex;flex-wrap:wrap;gap:12px 22px;margin-bottom:9px;color:#46503f;font-size:14px}.lesson-line-key span{display:flex;align-items:center;gap:9px}.lesson-line-key i{width:25px;height:0;border-top:3px solid #995329}.lesson-line-key i.ground{border-color:#66724f}.lesson-line-key i.reference{border-color:#879079;border-top-style:dashed}
.flight-lesson-reading{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;column-gap:32px}.flight-lesson-reading h4,.flight-lesson-reading>p:first-of-type{grid-column:1/-1}.flight-lesson-reading>p:first-of-type{margin-top:0;max-width:900px}.flight-lesson-reading dl{margin:0}.flight-lesson-reading dt:first-child{margin-top:0}.flight-lesson-reading .flight-lesson-limit{margin-top:0;align-self:start}.flight-lesson-reading>.btn{justify-self:start;margin-top:18px;grid-column:1/-1}
@media(max-width:650px){.flight-lesson-graph-premium .flight-lesson-graph-label b{font-size:20px}.flight-lesson-graph-premium .flight-lesson-graph-label{flex-wrap:wrap}.flight-lesson-graph-premium .lesson-direction{text-align:left;display:flex;gap:12px}.flight-lesson-graph-premium svg .lesson-svg-label{font-size:32px}.lesson-sequence{grid-template-columns:1fr;gap:10px;padding:14px 0}.flight-lesson-reading{display:block}.flight-lesson-reading .flight-lesson-limit{margin-top:20px}.flight-lesson-graph-premium{padding:14px}.flight-lesson-choices{grid-template-columns:1fr}.flight-lesson-choices button{text-align:left}}

.contact-causes{margin:28px 0;padding:clamp(18px,2.6vw,30px);border:1px solid #c9c3b0;border-radius:16px;background:#f8f5ed;color:#303b30;min-width:0}.contact-causes header>span{display:block;font-size:14px;font-weight:650;line-height:1.6;color:#685136;letter-spacing:.04em}.contact-causes h3{margin:9px 0 12px;font-size:clamp(23px,2.5vw,28px);line-height:1.3;color:#303b30}.contact-causes p{font-size:16px;line-height:1.65;color:#46503f}.contact-causes header p{max-width:850px}.contact-cause-phases{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.contact-cause-phases h4{margin:0;color:#384a30;font-size:19px}.contact-causes .contact-cause-when{font-size:14px;margin:7px 0 16px;color:#596247}.contact-cause-phases article{padding:18px;margin-bottom:12px;border:1px solid #d9d1c0;border-radius:12px;background:#fffdf8}.contact-cause-phases h5{font-size:17px;line-height:1.45;margin:0 0 9px;color:#303b30}.contact-cause-phases article>p{margin:0}.contact-causes summary{font-size:16px;font-weight:600;line-height:1.5;min-height:44px;padding-top:12px;cursor:pointer;color:#714222}.contact-causes details p{margin:7px 0}.contact-causes summary:focus-visible,.contact-causes a:focus-visible{outline:3px solid #995329;outline-offset:3px}.contact-causes .contact-cause-context{padding:16px;border-left:3px solid #957243;background:#eee6d7;color:#4e3e2a}.contact-causes .contact-cause-rule{margin-bottom:0}.contact-cause-sources{margin-top:16px;border-top:1px solid #d9d1c0}.contact-cause-sources a{display:block;padding:7px 0;color:#714222;text-decoration:underline;font-size:14px}.contact-causes-centered{padding:18px 22px}.contact-causes-centered h3{font-size:21px}.contact-causes-centered p{margin-bottom:0}
@media(max-width:760px){.contact-cause-phases{grid-template-columns:1fr;gap:18px}.contact-cause-phases article{padding:16px}}

/* The photographic targets are the single native-button strike selector. */
.impact-zone .strike-point:focus-visible{outline:3px solid #995329;outline-offset:5px;z-index:3}.impact-zone .strike-point{line-height:1;appearance:none;-webkit-appearance:none}.impact-zone .strike-point:active{transform:translate(-50%,-50%) scale(.96)}

/* FlightLab signature and introductory cover. Native text keeps the identity sharp. */
.brand-home{border:0;background:transparent;text-align:left;cursor:pointer;color:inherit;padding:0}.brand-home:focus-visible{outline:3px solid #d9bc86;outline-offset:6px}.brand-home .brand-copy strong{font-family:"Avenir Next",Avenir,system-ui,sans-serif;letter-spacing:-.055em}.brand-home .brand-copy strong i{font-family:Georgia,"Times New Roman",serif;font-weight:400}.brand-home .brand-copy>span{font-size:14px;line-height:1.5;color:#eee4ce}.mobile-brand.brand-home{align-items:center}
.welcome-page{min-height:100svh;background:#f2ede2;color:#303b30;padding:clamp(20px,3.5vw,56px);font-family:"Avenir Next",Avenir,system-ui,sans-serif}.welcome-topbar,.welcome-layout,.welcome-footer{max-width:1440px;margin-inline:auto}.welcome-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.welcome-pga{display:flex;align-items:center;gap:14px}.welcome-pga img{width:52px;height:52px;object-fit:contain}.welcome-pga>span{font-size:14px;line-height:1.55;color:#596247}.welcome-pga strong{display:block;font-size:16px;font-weight:600;color:#35432e}.welcome-edition{font-size:14px;color:#685c47;letter-spacing:.02em}
.welcome-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);border:1px solid #c8bdab;border-radius:22px;overflow:hidden;background:#fcf9f1;box-shadow:0 28px 60px -48px #342c21a0}.welcome-cover{background:#303e2f;color:#fff5df;padding:clamp(30px,4.4vw,68px);display:flex;flex-direction:column;min-width:0}.welcome-eyebrow{display:block;font-size:14px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase}.welcome-cover .welcome-eyebrow{color:#d0bc95}.flightlab-wordmark{display:flex;align-items:baseline;margin:28px 0 12px;font-size:clamp(74px,9.2vw,146px);line-height:1;letter-spacing:-.075em;color:#fff5df;font-weight:400;white-space:nowrap}.flightlab-wordmark>span{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;letter-spacing:-.065em}.flightlab-wordmark>b{font-family:"Avenir Next",Avenir,system-ui,sans-serif;font-weight:300;color:#d8b98b;letter-spacing:-.075em}.welcome-signature{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;padding-top:18px;margin-top:22px;border-top:1px solid #6a7157}.welcome-signature>span{font-family:Georgia,serif;font-style:italic;font-size:20px;color:#d0bc95}.welcome-signature strong{font-size:clamp(17px,1.7vw,24px);font-weight:500;letter-spacing:.01em;color:#fff5df}.welcome-signature em{font-family:Georgia,serif;font-size:1.15em;font-weight:400;color:#d8b98b;padding:0 8px}
.welcome-message{margin:clamp(36px,4vw,62px) 0 30px;max-width:560px}.welcome-message h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(28px,3vw,39px);line-height:1.2;color:#fff5df;letter-spacing:-.035em;margin:0 0 17px}.welcome-message p{color:#e0d8c4;font-size:18px;line-height:1.75;margin:0}.welcome-entry{margin-top:auto}.welcome-start{display:flex;align-items:center;justify-content:space-between;gap:26px;width:100%;max-width:440px;min-height:60px;background:#e4c798;color:#273326;border:1px solid #e4c798;border-radius:9px;padding:17px 23px;font-size:17px;font-weight:650;text-align:left;cursor:pointer}.welcome-start:hover{background:#f0d7ac;border-color:#f0d7ac}.welcome-start:focus-visible{outline:3px solid #fff5df;outline-offset:5px}.welcome-start>span{font-size:25px;font-weight:400}.welcome-entry>p{font-size:14px;color:#d0c6b1;margin:14px 0 0}.welcome-cover-foot{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:42px;padding-top:20px;border-top:1px solid #626e56;font-size:14px;line-height:1.6;color:#ded2b9}
.welcome-route{padding:clamp(30px,3.5vw,52px);min-width:0}.welcome-route>.welcome-eyebrow{color:#77562f}.welcome-route>h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,3vw,43px);font-weight:400;letter-spacing:-.035em;line-height:1.12;margin:18px 0;color:#303e2f}.welcome-route>p{font-size:16px;line-height:1.65;color:#5c6653;margin:0 0 27px}.welcome-route ol{list-style:none;padding:0;margin:0;display:grid;gap:0}.welcome-route li{display:flex;gap:17px;padding:16px 0;border-top:1px solid #ded6c7}.welcome-route li>span{font-family:Georgia,serif;font-style:italic;font-size:18px;color:#956434;min-width:24px;padding-top:2px}.welcome-route li h3{font-size:17px;font-weight:650;line-height:1.4;color:#303e2f;margin:0 0 5px}.welcome-route li p{font-size:15px;line-height:1.6;color:#5b634f;margin:0}.welcome-route-note{font-size:14px;line-height:1.6;color:#665b47;border-top:1px solid #ded6c7;padding-top:18px;margin-top:10px}.welcome-footer{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-top:22px;font-size:14px;line-height:1.6;color:#665b47}
@media(max-width:1000px){.welcome-layout{grid-template-columns:1fr}.welcome-cover{padding:40px}.flightlab-wordmark{font-size:clamp(76px,15vw,130px)}.welcome-route{padding:32px 40px}.welcome-route ol{grid-template-columns:1fr 1fr;gap:0 28px}.welcome-route li:last-child{grid-column:1/-1}.welcome-message{margin-top:36px}.welcome-cover-foot{margin-top:30px}}
@media(max-width:520px){.welcome-page{padding:18px 14px}.welcome-topbar{margin-bottom:20px}.welcome-edition{display:none}.welcome-pga img{width:45px;height:45px}.welcome-cover{padding:28px 23px}.welcome-layout{border-radius:16px}.flightlab-wordmark{font-size:clamp(62px,18.5vw,96px);margin-top:25px}.welcome-cover .welcome-eyebrow{font-size:12px;letter-spacing:.09em}.welcome-signature{gap:7px;margin-top:18px}.welcome-signature strong{font-size:16px}.welcome-signature em{padding:0 3px}.welcome-message h2{font-size:29px}.welcome-message p{font-size:16px}.welcome-start{font-size:16px;padding:15px 17px;min-height:56px;gap:12px}.welcome-cover-foot{gap:8px 16px}.welcome-route{padding:29px 23px}.welcome-route ol{grid-template-columns:1fr}.welcome-route li:last-child{grid-column:auto}.welcome-footer{font-size:13px}}

/* Club explanation: two projections of one delivery, with HTML-sized labels. */
.pattern-delivery{margin:20px 0 28px;border:1px solid #c9c6b8;border-radius:22px;background:#f6f3eb;overflow:hidden;color:#293c30}
.pattern-delivery-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;background:#303e32;color:#fff9e9}
.pattern-delivery-head .eyebrow{color:#e2c698;font-size:.8rem;letter-spacing:.1em}
.pattern-delivery-head h2{margin:10px 0 8px;font-size:2.2rem;line-height:1.15;color:inherit}
.pattern-delivery-head p{margin:0;color:#eee8da;font-size:1rem}
.pattern-delivery-head .btn{background:#eee4cf;color:#293c30;border-color:#eee4cf;flex-shrink:0}
.pattern-assumptions{display:flex;flex-wrap:wrap;gap:10px 24px;padding:16px 28px;border-bottom:1px solid #d7d0c2;font-size:.9rem;color:#4e594a}
.delivery-planes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:24px}
.delivery-plane{min-width:0;background:#fffdf8;border:1px solid #d7d0c2;border-radius:16px;overflow:hidden}
.delivery-plane>header{padding:20px 20px 12px}
.delivery-plane>header>span{font-size:.8rem;letter-spacing:.1em;color:#5c654e;font-weight:700}
.delivery-plane h3{margin:7px 0;font-size:1.35rem;color:#293c30}
.delivery-plane header p{font-size:.9rem;margin:0;color:#555c50;line-height:1.5}
.delivery-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 20px;gap:12px;border-top:1px solid #e1dcce;border-bottom:1px solid #e1dcce}
.delivery-number{min-width:0;display:flex;flex-direction:column;gap:8px;color:#293c30}
.delivery-number>span{font-size:.875rem;line-height:1.35}
.delivery-number strong{font-size:1.75rem;line-height:1.2;font-weight:650;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.delivery-number small{font-size:.875rem;letter-spacing:0;margin-left:4px;font-weight:500}
.delivery-number.face{color:#9b4d25}.delivery-number.path{color:#35644a}
.pattern-delivery .delivery-plane .precision-chart,.manual-delivery-visual .delivery-plane .precision-chart{border:0;border-radius:0;box-shadow:none;margin:0;background:transparent}
.delivery-forecast{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:0 24px;padding:22px;background:#e9e0ce;border-radius:14px;border:1px solid #d2c4a7}
.pattern-flight-reading{padding:22px 28px 4px}.pattern-flight-reading h3{font-size:1.3rem;margin:0 0 10px}.pattern-flight-reading p{font-size:1rem;line-height:1.65;margin:8px 0;color:#424f41}
.pattern-delivery>.learning-details{margin:18px 24px}
.pattern-model-note,.pattern-model-sources{margin:16px 28px 24px;font-size:.9rem;line-height:1.65;color:#555b50}.pattern-model-sources a{color:#824821;text-decoration:underline;text-underline-offset:3px}
.manual-delivery-visual{min-width:0}.manual-delivery-visual .delivery-planes{grid-template-columns:1fr;padding:0}.manual-delivery-visual .delivery-forecast{grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0}
@media(max-width:1250px){.delivery-planes{grid-template-columns:1fr}.delivery-forecast{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.pattern-delivery-head{padding:22px 18px;align-items:flex-start;flex-direction:column;gap:16px}.pattern-delivery-head h2{font-size:1.8rem}.pattern-assumptions{padding:16px 18px}.delivery-planes{padding:14px;gap:14px}.delivery-plane>header{padding:18px 14px 12px}.delivery-numbers{padding:14px;gap:8px}.delivery-number strong{font-size:1.4rem}.delivery-forecast{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 14px;padding:18px 14px}.pattern-flight-reading{padding:18px}.pattern-model-note,.pattern-model-sources{margin:16px 18px}.pattern-delivery>.learning-details{margin:16px 14px}}

.delivery-plane .chart-heading{display:none}.delivery-plane .chart-meta>span{display:none}.delivery-plane .chart-meta{justify-content:flex-end;margin-bottom:10px}.delivery-plane .precision-chart{padding:14px 18px 18px}.delivery-plane .chart-legend,.delivery-plane .chart-note{font-size:.875rem}.delivery-plane .angle-orientation{font-size:.875rem}

.delivery-workspace{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.4fr);gap:24px;padding:24px;align-items:start}
.delivery-adjustments,.delivery-live-flight{min-width:0;border:1px solid #d7d0c2;border-radius:16px;background:#fffdf8;padding:22px}
.delivery-workspace h3{font-size:1.25rem;color:#293c30;margin:0 0 10px}.delivery-workspace p{font-size:1rem;line-height:1.55;color:#4e594a}
.delivery-experiment-control{margin:20px 0}.delivery-experiment-control label{display:block;font-size:.95rem;font-weight:650;color:#293c30;margin-bottom:10px}.delivery-experiment-control .metric-inputs{display:grid;grid-template-columns:minmax(80px,1fr) 82px auto;gap:10px;align-items:center}.delivery-experiment-control input[type=range]{min-width:0;width:100%;accent-color:#995127;min-height:36px;cursor:ew-resize}.delivery-experiment-control input[type=number]{min-width:0;width:100%;padding:10px 8px;font-size:1rem;border:1px solid #9caa8b;border-radius:8px;background:#fffdf8;color:#293c30}.delivery-experiment-control small{display:block;font-size:.875rem;line-height:1.5;color:#59634f;margin-top:6px}.delivery-experiment-control input:focus-visible{outline:3px solid #9b4d25;outline-offset:3px}
.delivery-flight-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;align-items:center}.delivery-flight-toolbar h3{margin:0}.delivery-flight-toolbar .segmented{flex-wrap:wrap}.delivery-live-flight .precision-chart{padding:16px 6px;border:0;box-shadow:none}.delivery-flight-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border-top:1px solid #d7d0c2;padding-top:18px}.delivery-flight-totals span{font-size:.875rem;color:#535e4c}.delivery-flight-totals strong{display:block;font-size:1.45rem;color:#293c30;margin-top:6px;font-variant-numeric:tabular-nums}.delivery-workspace .delivery-experiment-note{font-size:.875rem;margin:14px 0 0}
@media(max-width:1100px){.delivery-workspace{grid-template-columns:1fr}.delivery-adjustments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}.delivery-adjustments>h3,.delivery-adjustments>p,.delivery-adjustments>button{grid-column:1/-1}.delivery-adjustments>button{justify-self:start}}
@media(max-width:600px){.delivery-workspace{padding:14px;gap:14px}.delivery-adjustments,.delivery-live-flight{padding:16px}.delivery-adjustments{display:block}.delivery-flight-totals strong{font-size:1.15rem}.delivery-experiment-control .metric-inputs{grid-template-columns:minmax(60px,1fr) 76px auto}}

/* A readable landing verdict and a measured link back to the target line. */
.intuitive-flight-chart .chart-heading{display:none}.intuitive-flight-chart .chart-meta>span{display:none}.intuitive-flight-chart .chart-meta{justify-content:flex-end;margin-bottom:12px}
.flight-landing-verdict{padding:20px;border-radius:14px;background:#303e32;color:#fff9e9;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.flight-landing-verdict>span{font-size:.9rem;color:#e6cc9e}.flight-landing-verdict strong{font-size:clamp(1.45rem,2.1vw,2.4rem);line-height:1.2;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.flight-landing-verdict small{font-size:.875rem;line-height:1.5;color:#ece5d5}
.flight-reading-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 22px}.flight-reading-steps>div{padding:12px 14px;background:#f0eee4;border-radius:10px;border:1px solid #d7d0c2}.flight-reading-steps span{display:block;font-size:.875rem;color:#5a6154;margin-bottom:6px}.flight-reading-steps strong{display:block;font-size:1rem;line-height:1.4;color:#293c30}
.intuitive-flight-chart .chart-flight{stroke:#a55a26;stroke-width:4;fill:none;stroke-linecap:round}.intuitive-flight-chart .chart-target{stroke:#4b5f49;stroke-width:2;stroke-dasharray:7 6}.intuitive-flight-chart .chart-land{fill:#a55a26;stroke:#fffdf8;stroke-width:2}
.flight-deviation-area{fill:#b8753014;stroke:none}.flight-initial-projection{stroke:#3d7082;stroke-width:1.8;stroke-dasharray:3 5;fill:none}.flight-deviation-dimension,.flight-deviation-tick{stroke:#9d3c32;stroke-width:2.5;fill:none}.flight-deviation-dimension{stroke-dasharray:5 3}.flight-target-intersection{fill:#fffdf8;stroke:#4b5f49;stroke-width:2}.flight-landing-halo{fill:#b8692625;stroke:#a55a26;stroke-width:1.5}
.flight-landing-label{position:absolute;transform:translate(-50%,-100%);padding:4px 8px;background:#fffdf8;border:1px solid #b98551;border-radius:6px;color:#70401e;font:600 .875rem/1.2 'Avenir Next',system-ui,sans-serif;white-space:nowrap;box-shadow:0 2px 6px #51422810}
.legend-initial{border-top:2px dotted #3d7082;background:none!important}.legend-deviation{border-top:2px dashed #9d3c32;background:none!important}.intuitive-flight-chart .chart-note,.intuitive-flight-chart .chart-legend{font-size:.875rem}
@media(max-width:600px){.flight-landing-verdict{padding:16px}.flight-reading-steps{gap:8px}.flight-reading-steps>div{padding:10px}.flight-landing-label{font-size:.8rem}}
.flight-deviation-label{position:absolute;transform:translate(-50%,0);padding:4px 7px;border-radius:5px;background:#fff8f2;border:1px solid #d8ac9e;color:#8b382e;font:650 .875rem/1.2 'Avenir Next',system-ui,sans-serif;white-space:nowrap;font-variant-numeric:tabular-nums}

.delivery-fold-toolbar{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:16px 24px 0}.delivery-fold-toolbar .btn{font-size:.875rem;min-height:42px}
.pattern-delivery>[data-details^="delivery-"]{background:#fffdf8;border:1px solid #cecaba;border-radius:12px;overflow:hidden;margin:16px 24px}
.pattern-delivery>[data-details^="delivery-"]>summary{min-height:60px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;cursor:pointer;color:#293c30;font-size:1rem;font-weight:650}
.pattern-delivery>[data-details^="delivery-"]>summary::-webkit-details-marker{display:none}.pattern-delivery>[data-details^="delivery-"]>summary::after{content:'+';font-size:1.6rem;font-weight:400;color:#87451f}.pattern-delivery>[data-details^="delivery-"][open]>summary::after{content:'−'}
.pattern-delivery>[data-details^="delivery-"][open]>summary{border-bottom:1px solid #ded8ca;background:#efeee4}.pattern-delivery>[data-details^="delivery-"]>summary:focus-visible{outline:3px solid #9b4d25;outline-offset:-4px}
.pattern-delivery>[data-details^="delivery-"]>.details-content{padding:0}.pattern-delivery>[data-details="delivery-geometry"] .delivery-forecast{margin-bottom:24px}.pattern-delivery>[data-details="delivery-reading"] .pattern-flight-reading{padding-bottom:20px}
@media(max-width:600px){.delivery-fold-toolbar{padding:14px 14px 0}.pattern-delivery>[data-details^="delivery-"]{margin:14px}.pattern-delivery>[data-details^="delivery-"]>summary{padding:14px;font-size:.95rem}}

/* Preserve the equal world scale on mobile and in expanded charts. */
.equal-scale-flight .chart-canvas{aspect-ratio:520/320;min-height:0;height:auto}.equal-scale-flight .chart-canvas>.precision-svg{width:100%;height:100%;min-height:0;max-height:none}

/* One small group of controls beside the live result, sized to the panel itself. */
[data-details="delivery-interactive"]{container:delivery-lab / inline-size}
.delivery-workspace{grid-template-columns:minmax(240px,.8fr) minmax(0,1.35fr);gap:16px;padding:16px}
.delivery-workspace .delivery-adjustments{display:block;padding:18px;position:sticky;top:18px}.delivery-workspace .delivery-live-flight{padding:18px}
.delivery-adjustments-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.delivery-adjustments-heading h3{margin:0;font-size:1.15rem}
.delivery-reset-small{border:0;background:transparent;color:#844621;text-decoration:underline;text-underline-offset:3px;font-size:.875rem;min-height:44px;cursor:pointer;padding:4px}
.delivery-group-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;gap:3px;background:#ebe9dd;border-radius:10px}.delivery-group-nav button{border:0;border-radius:7px;padding:10px 5px;min-height:44px;background:transparent;color:#43513d;font-size:.875rem;font-weight:600;cursor:pointer}.delivery-group-nav button[aria-pressed="true"]{background:#3d4d37;color:#fff9ed;box-shadow:0 2px 5px #28352020}.delivery-group-nav button:focus-visible,.delivery-reset-small:focus-visible{outline:3px solid #9b4d25;outline-offset:2px}
.delivery-control-group[hidden]{display:none!important}.delivery-workspace .delivery-group-hint{font-size:.875rem;line-height:1.45;margin:14px 0;color:#53604d}
.delivery-adjustments .delivery-experiment-control{margin:18px 0}.delivery-adjustments .delivery-experiment-control label{margin-bottom:8px}.delivery-adjustments .delivery-experiment-control small{font-size:.875rem;line-height:1.4}.delivery-adjustments .delivery-experiment-control .metric-inputs{grid-template-columns:minmax(60px,1fr) 76px auto;gap:8px}
.delivery-live-flight .intuitive-flight-chart .chart-meta{margin:0;min-height:0}.delivery-live-flight .intuitive-flight-chart .chart-meta .chart-expand{margin-bottom:8px}
.delivery-live-flight .flight-landing-verdict{padding:14px 16px;gap:5px;margin-bottom:10px}.delivery-live-flight .flight-landing-verdict strong{font-size:1.45rem}.delivery-live-flight .flight-reading-steps{margin-bottom:12px;gap:8px}.delivery-live-flight .flight-reading-steps>div{padding:9px 12px}
.delivery-live-flight .chart-reading-help{border-top:1px solid #ded8ca;margin-top:16px}.chart-reading-help>summary{cursor:pointer;padding:12px 2px;color:#4d5c43;font-size:.875rem;min-height:44px}.chart-reading-help .chart-legend{margin-top:8px}
@container delivery-lab (max-width:720px){.delivery-workspace{grid-template-columns:1fr;padding:12px;gap:12px}.delivery-workspace .delivery-live-flight{order:-1;padding:14px}.delivery-workspace .delivery-adjustments{position:static;padding:14px}.delivery-control-group:not([hidden]){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.delivery-control-group>.delivery-group-hint{grid-column:1/-1}.delivery-adjustments .delivery-experiment-control{margin:10px 0}.delivery-live-flight .precision-chart{padding-top:8px;padding-bottom:4px}.delivery-flight-totals{padding-top:12px}.delivery-live-flight .flight-landing-verdict small{display:none}}
@container delivery-lab (max-width:440px){.delivery-control-group:not([hidden]){display:block}.delivery-adjustments .delivery-experiment-control{margin:14px 0}.delivery-live-flight .flight-landing-verdict strong{font-size:1.25rem}.delivery-live-flight .chart-meta .chart-expand{padding:5px 8px;min-height:36px}}

.chart-neutral-shaft{stroke:#5b635c;stroke-width:5;stroke-linecap:round;fill:none}.chart-face-vertical-reference{stroke:#7b8576;stroke-width:1;stroke-dasharray:3 5;fill:none;opacity:.6}.chart-neutral-shaft-label{position:absolute;transform:translate(-50%,-100%);font:500 .875rem/1.25 'Avenir Next',system-ui,sans-serif;color:#465641;white-space:nowrap;background:#fffdf8;padding:4px 7px;border-radius:5px}.chart-legend .legend-shaft{border-top:4px solid #5b635c}

/* Keep the real 32° iron reference and its controls in the same panel. */
.calibrated-iron-plate .chart-canvas{background:#efefef;border-radius:12px;overflow:hidden}
.chart-registered-face{stroke:#a45b2c;stroke-width:2;stroke-linecap:round;fill:none}
.delivery-workspace{grid-template-columns:minmax(320px,1.05fr) minmax(320px,1fr)}
.delivery-workspace .delivery-adjustments{position:static;container:club-controls / inline-size}
.delivery-workspace .delivery-live-flight{position:sticky;top:18px}
.delivery-attached-diagram .precision-chart{margin:14px 0 0;padding:0;border:0;box-shadow:none;background:transparent}
.delivery-attached-diagram .chart-meta{margin-bottom:8px;gap:8px}
.delivery-attached-diagram .chart-meta .chart-view{display:none}
.delivery-attached-diagram .chart-heading{margin-bottom:10px;gap:10px}
.delivery-attached-diagram .chart-heading h4{font-size:1.1rem}
.delivery-attached-diagram .chart-value{font-size:1.5rem}
.delivery-attached-diagram .angle-orientation{font-size:.8rem;margin-bottom:8px}
.delivery-attached-diagram .chart-canvas{min-height:0;aspect-ratio:520/320}
.delivery-attached-diagram .chart-reading-help{margin:0;border:0}
.delivery-attached-diagram .chart-reading-help>summary{padding:8px 0}
.delivery-attached-diagram .chart-legend,.delivery-attached-diagram .chart-note{font-size:.85rem}
.delivery-stock-reference{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f1eadc;border:1px solid #d5c4a7;border-radius:10px;padding:12px;margin:4px 0 12px;color:#4d422f}
.delivery-stock-reference span,.delivery-stock-reference small{display:block;font-size:.8rem;line-height:1.4}
.delivery-stock-reference strong{display:block;font-size:1.65rem;line-height:1.25;margin:3px 0;font-weight:600;font-variant-numeric:tabular-nums;color:#603f21}
.delivery-stock-reference button{grid-column:1/-1;justify-self:start;background:#fffdf8;border:1px solid #ac8b62;border-radius:6px;color:#603f21;min-height:44px;padding:7px 12px;font-size:.875rem;cursor:pointer}
.delivery-stock-reference button:focus-visible{outline:3px solid #9b4d25;outline-offset:2px}
.delivery-control-group:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:0 14px;border-top:1px solid #d7d0c2}
.delivery-control-group>.delivery-group-hint{grid-column:1/-1;margin:12px 0 0}
.delivery-adjustments .delivery-experiment-control label{font-size:.875rem}
.delivery-adjustments .delivery-experiment-control .metric-inputs{grid-template-columns:minmax(30px,1fr) 68px auto;gap:6px}
@container club-controls (max-width:450px){.delivery-control-group:not([hidden]){display:block}.delivery-adjustments .delivery-experiment-control{margin:12px 0}.delivery-attached-diagram .spin-loft-dimension-label{padding:7px 9px;min-width:0}.delivery-attached-diagram .spin-loft-dimension-label span,.delivery-attached-diagram .spin-loft-dimension-label small{font-size:.7rem}.delivery-attached-diagram .spin-loft-dimension-label strong{font-size:1.3rem}}
@container delivery-lab (max-width:850px){.delivery-workspace{grid-template-columns:minmax(0,1fr)}.delivery-workspace .delivery-live-flight{order:0;position:static}.delivery-workspace .delivery-adjustments{position:static}}

.delivery-fixed-scale{border-top:1px solid #d7d0c2;padding:10px 0;color:#4e594a;font-size:.8rem;line-height:1.5}.delivery-fixed-scale span{display:block}.delivery-fixed-scale p{font-size:.875rem;margin:8px 0}.delivery-fixed-scale .btn{min-height:44px;font-size:.8rem;margin:6px 8px 0 0}

.delivery-values{grid-template-columns:repeat(3,minmax(0,1fr));margin:16px}@media(max-width:600px){.delivery-values{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px}}

/* Speaker introduction and session outline: a compact, three-part presentation. */
.welcome-presentation{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:440px;min-height:54px;margin-bottom:12px;padding:14px 22px;border:1px solid #b5a585;border-radius:9px;background:transparent;color:#fff5df;font-size:16px;font-weight:500;text-align:left;cursor:pointer}.welcome-presentation:hover{background:#44513b}.welcome-presentation:focus-visible{outline:3px solid #e4c798;outline-offset:4px}
.presentation-page{padding:clamp(16px,3vw,40px)}.talk-wrap{max-width:1200px;margin:auto}.talk-topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.talk-brand{display:flex;align-items:center;gap:13px;background:transparent;border:0;padding:0;color:#303e2f;text-align:left;cursor:pointer}.talk-brand img{object-fit:contain}.talk-brand>span{font:400 32px/1 Georgia,serif;letter-spacing:-.05em}.talk-brand small{display:block;font:500 12px/1.5 "Avenir Next",system-ui,sans-serif;letter-spacing:0;margin-top:6px;color:#596247}.talk-return,.talk-next{min-height:48px;border-radius:8px;padding:12px 17px;cursor:pointer;font:600 14px/1.5 "Avenir Next",system-ui,sans-serif}.talk-return{border:1px solid #b8b09e;background:#fcf9f1;color:#3b4934}.talk-next{border:1px solid #3d4c34;background:#3d4c34;color:#fff6e3}.presentation-page button:focus-visible,.talk-source:focus-visible{outline:3px solid #a15a2e;outline-offset:4px}
.talk-intro{border-radius:18px;background:#303e2f;color:#fff5df;padding:clamp(24px,3.5vw,44px);border:1px solid #46563c}.talk-intro>span{font-size:12px;letter-spacing:.12em;color:#e0c69f}.talk-intro h1{font:400 clamp(32px,4.1vw,52px)/1.12 Georgia,serif;letter-spacing:-.03em;margin:14px 0;color:#fff5df}.talk-intro p{max-width:760px;font-size:17px;line-height:1.65;color:#e9deca;margin:0}
.talk-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;margin:22px 0;background:#e4dfd2;border-radius:12px;position:sticky;top:8px;z-index:5;border:1px solid #cdc4b2}.talk-tabs button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 10px;border:0;border-radius:8px;color:#46513c;background:transparent;font:600 15px/1.35 "Avenir Next",system-ui,sans-serif;cursor:pointer}.talk-tabs button>span{font:400 17px/1 Georgia,serif;color:#78502c}.talk-tabs button[aria-pressed="true"]{background:#fffdf8;color:#303e2f;box-shadow:0 2px 7px #40352518}.talk-tabs button:hover{background:#f7f2e8}
.talk-panel{scroll-margin-top:94px}.talk-section-heading{margin:28px 0 22px}.talk-section-heading>span{font-size:12px;letter-spacing:.1em;color:#77623f;font-weight:650}.talk-section-heading h2{font:400 clamp(26px,3vw,36px)/1.2 Georgia,serif;letter-spacing:-.025em;color:#303e2f;margin:10px 0}.talk-section-heading p{max-width:830px;margin:0;font-size:16px;line-height:1.65;color:#515c49}
.talk-speakers{display:grid;grid-template-columns:1fr 1fr;gap:20px}.talk-speaker{background:#fffdf8;border:1px solid #cfc5b5;border-radius:16px;padding:clamp(22px,2.7vw,34px);box-shadow:0 12px 34px -29px #58462b55}.talk-speaker-heading{display:flex;align-items:center;gap:18px;margin-bottom:22px}.talk-monogram{display:block;flex:0 0 auto;font:600 22px/1.2 Arial,sans-serif;letter-spacing:.06em;color:#906036;padding:5px 0;border:0;border-bottom:2px solid #b89362;border-radius:0;background:none}.talk-speaker-heading h3{font:400 clamp(26px,2.7vw,34px)/1.2 Georgia,serif;color:#303e2f;margin:0 0 7px}.talk-speaker-heading p{font-size:13px;line-height:1.5;color:#64573e;margin:0}.talk-speaker>p{font-size:16px;line-height:1.75;color:#4a5546;margin:14px 0}.talk-speaker-focus{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 16px}.talk-speaker-focus span{padding:6px 9px;border-radius:5px;background:#ecefe5;color:#44513b;font-size:12px;line-height:1.5}.talk-source{display:block;width:fit-content;color:#78502c;font-size:12px;line-height:1.6;text-underline-offset:3px;margin-top:8px}
.talk-program{list-style:none;margin:0;padding:0;background:#fffdf8;border:1px solid #cfc5b5;border-radius:16px;overflow:hidden}.talk-program li{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:20px 26px;border-bottom:1px solid #ded6c7}.talk-program li:last-child{border-bottom:0}.talk-program li>span{font:italic 26px/1.5 Georgia,serif;color:#946532}.talk-program h3{font-size:18px;font-weight:650;line-height:1.4;color:#303e2f;margin:0 0 6px}.talk-program p{font-size:15px;line-height:1.65;color:#515c49;margin:0;max-width:950px}
.talk-outcomes{display:grid;grid-template-columns:1fr 1fr;gap:18px}.talk-outcomes article{background:#fffdf8;border:1px solid #cfc5b5;border-radius:12px;padding:24px}.talk-outcomes article>span{font:italic 24px/1 Georgia,serif;color:#97632f}.talk-outcomes h3{font-size:19px;line-height:1.3;color:#303e2f;margin:14px 0 9px}.talk-outcomes p{font-size:15px;line-height:1.7;margin:0;color:#515c49}.talk-takeaway{background:#e7ddc9;border-left:4px solid #9b6030;padding:22px 26px;margin-top:22px;border-radius:0 10px 10px 0;color:#4e412b}.talk-takeaway strong{font-size:13px}.talk-takeaway p{font:400 24px/1.4 Georgia,serif;margin:12px 0}.talk-takeaway small{display:block;font-size:13px;line-height:1.6}
.talk-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:24px;padding:20px 0;border-top:1px solid #cdc4b2}.talk-footer>span{font-size:13px;color:#5b624e}.talk-footer>div{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:700px){.talk-speakers,.talk-outcomes{grid-template-columns:1fr}.talk-topbar{gap:12px}.talk-topbar>.talk-return{font-size:12px;padding:10px;max-width:145px}.talk-brand>span{font-size:27px}.talk-brand small{max-width:150px;font-size:11px}.talk-brand img{width:36px;height:36px}.talk-tabs button{font-size:12px;gap:5px;padding:10px 5px;flex-direction:column}.talk-panel{scroll-margin-top:105px}.talk-program li{padding:18px;gap:8px;grid-template-columns:30px 1fr}.talk-footer>div{width:100%}.talk-footer .talk-next{flex:1}.talk-intro p{font-size:15px}.talk-speaker>p{font-size:15px}}

/* Stable chart axes: explicit scale actions stay next to every metric plot. */
.chart-fixed-scale{margin-top:1rem;padding:.8rem 1rem;border:1px solid #c8cbbc;border-radius:10px;background:#f4f3ec;color:#334638;font-size:.85rem;line-height:1.5}
.chart-fixed-scale>div{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.chart-fixed-scale .btn{padding:.45rem .7rem;font-size:.8rem}
.chart-fixed-scale p{margin:.5rem 0;color:#803b24;font-weight:600}

/* Short chapter introductions, each linked to its existing working screen. */
.phase-intro-page{max-width:1120px;margin:0 auto 32px;color:#304132}.phase-intro-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 14px}.phase-intro-nav button{flex:1;display:flex;gap:9px;align-items:center;justify-content:center;min-height:48px;white-space:nowrap;border:1px solid #c8c5b7;border-radius:8px;background:#fffdf8;color:#344633;padding:10px 14px;font-size:14px;cursor:pointer}.phase-intro-nav button span{color:#85562e;font-size:12px}.phase-intro-nav button[aria-current="page"]{background:#354833;color:#fff8e8;border-color:#354833}.phase-intro-nav button[aria-current="page"] span{color:#ecd2a8}.phase-intro-card{background:#fffdf8;border:1px solid #cec8b9;border-radius:18px;padding:clamp(22px,3vw,42px)}.phase-intro-kicker{font-size:12px;font-weight:700;letter-spacing:.09em;color:#78512d}.phase-intro-card h1{font:400 clamp(29px,3.2vw,44px)/1.16 Georgia,serif;margin:14px 0;color:#304132}.phase-intro-definition{font-size:18px;line-height:1.65;max-width:840px;color:#485646;margin:0}.phase-intro-layout{display:grid;grid-template-columns:minmax(180px,.75fr) 1.25fr;gap:30px;align-items:center;margin:24px 0}.phase-intro-layout figure{margin:0;padding:12px 20px;background:#f0f1e9;border-radius:12px}.phase-intro-graphic{display:block;width:100%;max-height:240px}.phase-intro-layout figcaption{font-size:12px;line-height:1.5;text-align:center;color:#52604c;margin:8px 0}.phase-intro-learning h2{font-size:20px;line-height:1.4;margin:0 0 16px}.phase-intro-learning h3{font-size:16px;margin:14px 0 5px}.phase-intro-learning p,.phase-intro-example p,.phase-intro-bridge,.phase-intro-route p{font-size:15px;line-height:1.65;margin:0;color:#485646}.phase-intro-example{background:#f2e8d8;border-left:3px solid #a46a36;border-radius:0 9px 9px 0;padding:16px 20px}.phase-intro-example strong{font-size:13px;color:#704a2b}.phase-intro-example p{margin-top:5px;color:#514a3a}.phase-intro-bridge{margin:18px 0}.phase-intro-card footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px solid #d7d5c8}.phase-intro-card footer>span{font-size:12px;color:#56634e}.phase-intro-card footer .btn{min-height:48px}.phase-intro-route{padding:16px 4px}.phase-intro-route summary{cursor:pointer;font-size:14px;color:#3d5039}.phase-intro-route p{margin-top:12px;max-width:900px}.phase-intro-nav button:focus-visible{outline:3px solid #a66332;outline-offset:2px}
@media(max-width:700px){.phase-intro-layout{grid-template-columns:1fr;gap:20px}.phase-intro-graphic{max-height:155px}.phase-intro-definition{font-size:16px}.phase-intro-nav button{font-size:12px;padding:10px}.phase-intro-card footer .btn{width:100%}.phase-intro-card footer>span{order:2}.stage-head{flex-wrap:wrap}}

.phase-intro-diagram-labels{display:flex;justify-content:space-around;gap:8px;flex-wrap:wrap;font-size:12px;font-weight:600;color:#3c513b}.phase-intro-diagram-labels span{padding:3px 0}

.supplied-direction-iron .chart-canvas{background:#f6f6f6;border-radius:12px;overflow:hidden}

.supplied-direction-iron .chart-canvas{aspect-ratio:520/380;min-height:0}.direction-loft-reading{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:8px 0 12px;font-size:13px;line-height:1.5;color:#495940}.direction-loft-reading strong{color:#83512c}.direction-loft-reading span{font-size:12px}

/* Face/path teaching stays next to the delivery controls. */
.launch-context{grid-column:1/-1;padding:16px;margin-top:14px;border:1px solid #c6cbbd;border-radius:12px;background:#f0f2e9;color:#2d3e30;font-family:var(--studio-font)}
.launch-context h4{font:700 1rem/1.4 var(--studio-font);margin:0 0 12px;color:#2d3e30}
.launch-context p,.launch-influence .launch-context p{font-size:13px;line-height:1.6;color:#3e4b38;margin:0 0 10px}
.launch-context-references{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.launch-context-references p{background:#fffef9;border-radius:8px;padding:10px;border:1px solid #d4d6c9}
.launch-context-references b,.launch-context-references span{display:block}
.launch-context-references span{margin-top:4px;font-variant-numeric:tabular-nums}
.launch-context a{color:#77421e;text-decoration:underline;text-underline-offset:3px;line-height:1.6;font-size:12px}
.launch-context-details summary{cursor:pointer;font-size:13px;font-weight:700;line-height:1.5;padding:12px 0;min-height:44px;color:#2d3e30}
.launch-context-details summary:focus-visible{outline:3px solid #986030;outline-offset:3px}
.launch-context-details>div{padding-top:8px}.launch-context-details a{display:block;margin:10px 0}
@container club-controls (max-width:450px){.launch-context-references{grid-template-columns:1fr}.launch-context{padding:12px}}

.chart-ball-launch{stroke:#176782;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:7 4}
.chart-legend .legend-ball-launch{border-color:#176782;background:#176782}
.angle-ball-launch{background:#eaf3f7;border:1px solid #b5ced7;border-left:4px solid #176782;border-radius:9px;padding:12px 14px;margin:12px 0;color:#174b5e;font-family:var(--studio-font)}
.angle-ball-launch span,.angle-ball-launch strong,.angle-ball-launch small{display:block}
.angle-ball-launch span{font-size:12px}.angle-ball-launch strong{font-size:20px;line-height:1.4;margin:3px 0}
.angle-ball-launch p{font-size:13px;line-height:1.5;margin:6px 0;color:#174b5e}.angle-ball-launch small{font-size:12px;line-height:1.5;color:#345463}

/* Flight observation: compact controls and a single, high-contrast flight plate. */
.flight-observer{container:flight-observer / inline-size;color:#263b30;margin-bottom:28px;font-family:var(--studio-font)}
.flight-observer-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.flight-observer-kicker{font-size:10px;font-weight:750;letter-spacing:.15em;color:#796340}
.flight-observer-heading h3{font-size:clamp(25px,2.5vw,34px);line-height:1.2;letter-spacing:-.04em;margin:7px 0 8px;color:#263b30}
.flight-observer-heading p{font-size:14px;line-height:1.6;color:#5d665b;margin:0;max-width:62ch}
.flight-observer-view{font-size:12px;white-space:nowrap;color:#5d665b;border-bottom:1px solid #c5b593;padding:8px 0}
.flight-observer-view>span{color:#8a643b;margin-left:8px;font-size:18px}
.flight-intent{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:14px 18px;background:#f3f1e9;border:1px solid #ded9ca;border-radius:13px;margin-bottom:20px}
.flight-intent strong,.flight-intent>div>span{display:block}.flight-intent strong{font-size:13px}.flight-intent>div>span{font-size:12px;color:#626b5d;margin-top:3px}
.flight-intent .choice-row{width:min(440px,60%);padding:4px;border:1px solid #d8d5c8;background:#e8e9df;border-radius:10px;gap:4px}
.flight-intent .choice{min-height:38px;border:0;background:transparent;border-radius:7px;font-size:12px}
.flight-intent .choice.active{background:#fffef9;color:#263b30;box-shadow:0 2px 7px #24382e12}
.flight-observer-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:24px}
.flight-observer-controls{container:flight-options / inline-size;min-width:0}
.flight-question-grid{display:grid;grid-template-columns:1fr;gap:12px}
.flight-question{border:1px solid #dedbd0;border-radius:13px;padding:16px;background:#fffefa}
.flight-question header{display:flex;gap:10px;align-items:center;margin-bottom:14px}
.flight-question-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:#eeece2;color:#796340;display:grid;place-items:center;font-size:10px;font-weight:750}
.flight-question h4{font-size:14px;line-height:1.4;margin:0;font-weight:700;color:#263b30}
.flight-question p{font-size:11px;line-height:1.5;margin:3px 0 0;color:#626b5d}
.flight-question .choice-row{gap:7px}
.flight-question .choice{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:55px;padding:9px 6px;border:1px solid #dce0d4;border-radius:9px;background:#f6f7f0;box-shadow:none;color:#41513d;font-size:12px;font-weight:650}
.flight-question .choice svg{width:30px;height:30px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.flight-question .flight-option-baseline{stroke-width:1;opacity:.25}
.flight-question .choice.active{background:#e9eee2;border-color:#6f805c;color:#2e482f;box-shadow:inset 0 0 0 1px #6f805c}
.flight-question .choice:not(.active):hover{background:#edf0e5;border-color:#9caa8c;color:#263b30}
.flight-question .choice.active:hover{background:#e1e8d8;color:#263b30;border-color:#6f805c}
.flight-choice-check{position:absolute;right:5px;top:2px;font:700 10px/1.3 var(--studio-font);display:none}.choice.active .flight-choice-check{display:block}
.flight-observer button:focus-visible,.flight-pattern-help summary:focus-visible{outline:3px solid #946b38;outline-offset:3px}
.flight-quick-patterns{margin-top:18px;padding:17px 0 0;border-top:1px solid #dbd8cb}
.flight-quick-patterns>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:12px}
.flight-quick-patterns strong{font-size:13px}.flight-quick-patterns>div>span{font-size:11px;color:#626b5d}
.flight-quick-patterns .preset-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.flight-quick-patterns .preset{display:flex;justify-content:space-between;align-items:center;gap:7px;min-height:42px;background:#f4f0e5;border:1px solid #d6c9ae;color:#59482f;border-radius:8px;font-size:12px;font-weight:650;padding:8px 10px}
.flight-quick-patterns .preset>span{font-size:15px;font-weight:400;color:#8a6b42}.flight-quick-patterns .preset:hover{background:#ebe2ce;border-color:#ac8c5a}
.flight-pattern-help{margin-top:10px}.flight-pattern-help summary{padding:12px 0;min-height:44px;cursor:pointer;color:#52634c;font-size:12px;font-weight:650}.flight-pattern-help p{margin:0;font-size:13px;line-height:1.65;color:#5d665b}
.flight-preview-premium{background:radial-gradient(ellipse at 80% 35%,#365041 0%,#253b30 65%);border:1px solid #324d3b;border-radius:18px;padding:24px;box-shadow:0 10px 25px #24382e12;color:#fffdf2;overflow:hidden;min-width:0}
.flight-preview-premium>header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.flight-preview-eyebrow{font-size:9px;letter-spacing:.14em;font-weight:650;color:#d8c79f}
.flight-preview-premium h3{font:400 clamp(29px,3vw,42px)/1.15 Georgia,serif;letter-spacing:-.03em;color:#fffdf2;margin:8px 0 0}
.flight-preview-hand{font-size:10px;color:#e5e9dc;border:1px solid #71846d;border-radius:20px;padding:5px 10px}
.flight-preview-story{font-size:13px;line-height:1.65;color:#e1e7d8;margin:12px 0 0}
.flight-preview-premium .observed-plot{background:transparent;border:0;padding:0;margin-top:16px;color:#e1e7d8}
.flight-preview-premium .chart-axis-title{color:#d9e1d1;font-size:11px;padding-top:12px;border-top:1px solid #65785f70}
.flight-preview-premium .observed-plot .chart-canvas{max-width:none;width:100%;aspect-ratio:520/355;margin:0 auto;min-height:0}
.flight-preview-premium .chart-flight{stroke:#e2bd7f;stroke-width:3.5;filter:drop-shadow(0 0 5px #dfb76a25)}
.flight-preview-premium .chart-target{stroke:#bdcdb3;stroke-width:1.3;stroke-dasharray:5 6;opacity:.75}
.flight-preview-premium .chart-start{fill:#fffdf2;stroke:#e2bd7f;stroke-width:2}
.flight-preview-premium .chart-land{fill:#e2bd7f;stroke:#fff3d7;stroke-width:2}
.flight-preview-premium .observed-plot .chart-note{color:#d4decb;font-size:10px;line-height:1.6;margin:0;padding-top:8px;border-top:0;text-align:center}
.flight-preview-legend{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:12px 0 20px;font-size:10px;color:#e1e7d8}
.flight-preview-legend span{display:flex;gap:7px;align-items:center}.flight-preview-legend i{width:18px;border-top:2px solid #e2bd7f}.flight-preview-legend i.target{border-top:2px dashed #bdcdb3}
.flight-preview-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding-top:17px;border-top:1px solid #65785f70}
.flight-preview-facts dt{font-size:10px;color:#cbd6c1;margin-bottom:6px}.flight-preview-facts dd{font-size:12px;font-weight:650;color:#fffdf2;margin:0;overflow-wrap:anywhere}
@container flight-options (min-width:580px){.flight-question-grid{grid-template-columns:1fr 1fr}.flight-question .choice{flex-direction:column;gap:4px}}
@container flight-options (max-width:390px){.flight-question .choice{flex-direction:column;gap:4px}.flight-quick-patterns>div:first-child{display:block}.flight-quick-patterns>div>span{display:block;margin-top:4px}}
@container flight-observer (max-width:760px){.flight-observer-grid{grid-template-columns:1fr;gap:18px}.flight-preview-premium{padding:22px}.flight-preview-premium .observed-plot .chart-canvas{max-width:420px;aspect-ratio:520/300}.flight-observer-view{display:none}.flight-intent{gap:12px}.flight-preview-premium h3{font-size:34px}}
@container flight-observer (max-width:440px){.flight-observer-heading h3{font-size:26px}.flight-intent{display:block;padding:12px}.flight-intent .choice-row{width:100%;margin-top:10px}.flight-preview-premium{padding:18px}.flight-observer-heading{margin-bottom:16px}.flight-preview-facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:14px}}

/* A case-driven course: choices, evidence and individual practice results. */
.course-route,.course-exercises{background:#faf8f0;border:1px solid #d6d4c6;border-radius:15px;padding:24px;margin:0 0 24px;color:#293d2d;min-width:0;font-family:var(--studio-font)}
.course-route>header>span,.course-exercises>header>span{font-size:.75rem;letter-spacing:.09em;font-weight:700;color:#725638}
.course-route h3,.course-exercises h3{font-size:1.5rem;line-height:1.3;margin:8px 0 12px;color:#293d2d}
.course-route p,.course-exercises p,.course-route li{font-size:1rem;line-height:1.65;color:#485540}
.course-route a{color:#754821;text-decoration:underline}.course-route summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:.875rem;color:#364b31}
.course-delivery-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}
.course-delivery-options button{display:flex;flex-direction:column;text-align:left;gap:9px;padding:18px;border:1px solid #bac4af;border-radius:10px;background:#fffef9;color:#30452d;cursor:pointer;font-family:inherit}
.course-delivery-options button[aria-pressed=true]{background:#e3ebd9;border:2px solid #5f774e;padding:17px}
.course-delivery-options b{font-size:1rem}.course-delivery-options span{font-size:.875rem;line-height:1.5}.course-delivery-options small{font-size:.8125rem;line-height:1.5;color:#55614b}.course-delivery-options em{font-style:normal;font-weight:650;font-size:.875rem;margin-top:auto;color:#654d2c}
.course-check-stages{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}.course-check-stages article{background:#fffef9;border:1px solid #d8d9ce;border-radius:10px;padding:16px}.course-check-stages h4{margin:0 0 12px;font-size:1.05rem;color:#30452d}.course-check-stages button{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e1e4d8;background:transparent;min-height:44px;padding:10px 0;font:500 .875rem/1.5 var(--studio-font);color:#415937;cursor:pointer}
.course-selection-list{border-top:1px solid #d6d9c9;padding-top:16px}.course-case-lock,.course-empty{background:#eef2e6;padding:18px;border:1px solid #c6d0b7;border-radius:10px;color:#34472c}
.course-drill-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}
.course-drill-grid article{position:relative;background:#fffef9;border:1px solid #d0d4c3;border-radius:12px;padding:20px;min-width:0}.course-drill-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e9e2cf;color:#785938;font-weight:700;font-size:.875rem}
.course-drill-grid h4{font-size:1.2rem;line-height:1.4;color:#2b402f;margin:16px 0 10px}.course-drill-grid .course-drill-reason{font-size:.875rem;line-height:1.6;padding-bottom:14px;border-bottom:1px solid #dbe0d0;color:#526348}
.course-drill-grid dt{font-size:.875rem;font-weight:750;margin-top:16px;color:#304b32}.course-drill-grid dd{margin:6px 0 0;font-size:1rem;line-height:1.65;color:#4b5843}
.course-result-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.course-result-buttons button,.course-route li button{min-height:44px;padding:8px 10px;border:1px solid #a9b89c;border-radius:7px;background:#eef2e6;color:#324b2e;cursor:pointer;font-size:.875rem}
.course-work-queue{margin-top:20px;border-top:1px solid #ced6c3}.course-work-queue summary{padding:16px 0;cursor:pointer;font-size:1rem;font-weight:700;color:#304b32}.course-work-queue>div{border-bottom:1px solid #dce1d3;padding:14px 0}.course-work-queue>div>span{display:block;margin-top:6px;font-size:.875rem;color:#635337}.course-work-queue p{margin:8px 0}
.course-route button:focus-visible,.course-exercises button:focus-visible,.course-exercises summary:focus-visible{outline:3px solid #956739;outline-offset:3px}
@media(max-width:850px){.course-delivery-options{grid-template-columns:1fr}.course-check-stages{grid-template-columns:1fr}.course-route,.course-exercises{padding:18px}}
@media print{.course-result-buttons{display:none}.course-route,.course-exercises,.course-drill-grid article{box-shadow:none}.course-drill-grid article{break-inside:avoid}}

/* Contact explanations live beside the selected face; free simulation is a separate task. */
.selected-contact-feedback{padding:24px;margin:24px 0;border:1px solid #c8cdbc;background:#fffef9;border-radius:18px;color:#283a2d}
.selected-contact-feedback h3{font-size:1.6rem;margin:8px 0 22px}.selected-contact-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.selected-contact-explanation h4{font-size:1.125rem;margin:8px 0}.selected-contact-explanation p{font-size:1rem;line-height:1.65;color:#485540}.selected-contact-actions{display:flex;gap:10px;flex-wrap:wrap}.selected-contact-feedback .gear-motion{margin:0}.selected-contact-feedback .gear-top-mechanism svg{max-height:330px}
.simulator-page{font-family:var(--studio-font);color:#293b2e;max-width:1480px;margin:auto}.simulator-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0 24px}.simulator-header h1{font-size:2.3rem;margin:6px 0}.simulator-header p{font-size:1rem;line-height:1.6;max-width:680px}.simulator-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px}.simulator-toolbar>div,.simulator-plane-toggle{display:flex;gap:6px}.simulator-toolbar button,.simulator-plane-toggle button,.simulator-contact button{padding:10px 14px;min-height:44px;border:1px solid #aebaa2;border-radius:8px;color:#30452f;background:#fffef9;font:600 .875rem var(--studio-font);cursor:pointer}.simulator-page button[aria-pressed=true]{background:#354c38;border-color:#354c38;color:#fff}.simulator-toolbar label{display:flex;align-items:center;gap:10px;font-size:.875rem}.simulator-toolbar select{padding:10px;min-height:44px;border:1px solid #aebaa2;border-radius:8px;background:#fffef9;color:#30452f;font:inherit}.simulator-toolbar>span{font-size:.875rem}
.simulator-outcomes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:20px 22px;background:#2d4132;color:#fffdf4;border-radius:14px;margin:16px 0 24px}.simulator-outcomes span{display:block;font-size:.875rem;color:#e5e8da}.simulator-outcomes strong{display:block;font-size:1.7rem;line-height:1.35;margin-top:8px;font-variant-numeric:tabular-nums}.simulator-outcomes small{font-size:.875rem;margin-left:5px;font-weight:400}
.simulator-workspace{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,1.05fr);gap:24px;align-items:start}.simulator-adjustments,.simulator-flights{background:#fffef9;border:1px solid #d2d5c6;border-radius:16px;padding:20px;min-width:0}.simulator-page h2{font-size:1.35rem;margin:0 0 18px}.simulator-page .precision-chart{padding:12px;border-radius:10px}.simulator-adjustments .precision-chart{margin-top:16px}.simulator-adjustments .chart-value{font-size:1.75rem}.simulator-page .chart-heading h4{font-size:1.05rem}.simulator-page .chart-meta{font-size:.875rem}.simulator-page .chart-note{font-size:.875rem}.simulator-page .chart-heading{margin:12px 0}.simulator-page .flight-landing-verdict strong{font-size:1.25rem}.simulator-page .flight-landing-steps{display:none}
.simulator-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px;margin-top:20px}.simulator-control label{display:block;font-weight:650;font-size:1rem;margin-bottom:10px}.simulator-control .metric-inputs{display:grid;grid-template-columns:minmax(50px,1fr) 75px auto;gap:8px;align-items:center}.simulator-control input[type=number]{width:100%;min-height:44px;padding:8px;font-size:1rem}.simulator-control input[type=range]{width:100%;accent-color:#aa602d;min-width:0}.simulator-control small{display:block;font-size:.875rem;line-height:1.5;color:#52604b;margin-top:8px}.simulator-contact{margin-top:20px;border-top:1px solid #d2d5c6;padding-top:12px}.simulator-contact summary,.simulator-method summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:600;font-size:1rem}.simulator-contact>div{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.simulator-contact button{font-size:.875rem;padding:8px}
.simulator-ball-data{padding:24px 0}.simulator-ball-data p,.simulator-method p{font-size:1rem;line-height:1.65}.simulator-ball-data .simulator-outcomes{background:#e9edde;color:#293b2e}.simulator-ball-data .simulator-outcomes span{color:#48563e}.simulator-method{border:1px solid #cdd3c0;border-radius:12px;padding:14px 20px;background:#faf9f2}.simulator-method table{border-collapse:collapse;width:100%;font-size:.875rem;text-align:left}.simulator-method th,.simulator-method td{padding:12px;border-bottom:1px solid #cdd3c0}.simulator-method a{color:#774b29;text-decoration:underline}.simulator-page :is(button,input,select,summary):focus-visible{outline:3px solid #aa602d;outline-offset:3px}
@media(max-width:1050px){.simulator-control-grid{grid-template-columns:1fr}.simulator-workspace{grid-template-columns:minmax(280px,1fr) minmax(320px,1fr)}}
@media(max-width:760px){.selected-contact-columns,.simulator-workspace{grid-template-columns:1fr}.selected-contact-feedback{padding:18px}.simulator-header{align-items:start;flex-direction:column}.simulator-outcomes{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.simulator-outcomes strong{font-size:1.4rem}.simulator-toolbar>div{width:100%}.simulator-toolbar>div>button{flex:1}.simulator-adjustments,.simulator-flights{padding:14px}.simulator-control-grid{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.simulator-control-grid{grid-template-columns:1fr}.simulator-header h1{font-size:1.9rem}}

.case-consistency{margin:0 0 24px;padding:24px;border:2px solid #9b4527;border-left-width:6px;border-radius:14px;background:#fff5ec;color:#432d24}.case-consistency .eyebrow{color:#823a22}.case-consistency h3{margin:8px 0 12px;color:#662d1e;font-size:1.4rem}.case-consistency p,.case-consistency li{font-size:1rem;line-height:1.6}.case-consistency ul{padding-left:22px}.case-consistency li+li{margin-top:8px}.case-consistency .btn{background:#fff;color:#562f22;border-color:#a56b4c;min-height:44px}.case-consistency .btn:focus-visible{outline:3px solid #562f22;outline-offset:3px}@media(max-width:600px){.case-consistency{padding:18px}.case-consistency .selected-contact-actions{display:grid}}
.gear-motion .gear-playback{margin-top:16px;margin-bottom:10px;padding:14px;border:1px solid #c2c8b5;border-radius:10px;background:#fffdf6;flex-wrap:wrap;gap:12px}.gear-motion .gear-playback button{background:#374f3f;color:#fff;border-color:#374f3f;font-weight:700;font-size:16px;min-height:48px}.gear-play-instruction{font-size:14px;line-height:1.6;color:#48563f;margin:8px 0 16px}.gear-flight-guide{fill:none;stroke:#ad6037;stroke-width:1.8;stroke-opacity:.22;stroke-linecap:round}.gear-flight-line{stroke-width:2.5}

.delivery-review-controls{margin-top:18px;padding:18px;border:1px solid var(--line,#d6d5c6);border-radius:12px;background:#f7f6ee;flex-basis:100%}
.delivery-review-controls p{font-size:14px;line-height:1.5;margin:0 0 12px}
.delivery-review-controls [role="status"]{margin:12px 0 0;font-weight:600}
@media print{.delivery-review-controls{display:none}}

/* Course entry: the result first, then context, delivery and player. */
.course-entry{max-width:1360px;margin:0 auto;padding:12px 0 40px}
.course-map-hero{padding:36px 40px;border-radius:24px;background:#243e32;color:#faf7e9;position:relative;overflow:hidden}
.course-map-hero:after{content:'';position:absolute;width:320px;height:320px;border:1px solid #d9c39855;border-radius:50%;right:-60px;top:20px;pointer-events:none}
.course-map-hero .eyebrow{color:#dfc99e;font-size:12px;letter-spacing:.14em}
.course-map-hero h1{font-family:Georgia,serif;font-size:clamp(32px,4.2vw,58px);font-weight:500;line-height:1.05;max-width:720px;margin:18px 0}
.course-map-hero p{max-width:700px;color:#d7dfd2;font-size:17px;line-height:1.55}
.course-map-hero .btn.primary{background:#e7d4aa;color:#263d30;border-color:#e7d4aa;margin-top:12px}
.course-timeline{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:course}
.course-timeline li{min-width:0;position:relative}
.course-timeline-card{width:100%;height:100%;padding:23px;text-align:left;background:#fffef9;border:1px solid #d5d4c4;border-radius:18px;display:grid;grid-template-columns:42px 1fr 16px;gap:14px;color:#2d4031;cursor:pointer;transition:border-color .15s,box-shadow .15s}
.course-timeline-card:hover{border-color:#607757;box-shadow:0 8px 22px #293c2c0d}
.course-timeline-number{border-radius:50%;width:40px;height:40px;display:grid;place-items:center;background:#eaeadd;font-family:Georgia,serif;font-size:21px}
.course-timeline-copy{display:flex;flex-direction:column;gap:12px;min-width:0}
.course-timeline-state{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#74745e}
.course-timeline-copy strong{font-size:22px;line-height:1.15}
.course-timeline-copy>span:not(.course-timeline-state){font-size:14px;line-height:1.5;color:#626c5e}
.course-timeline-copy small{font-size:12px;color:#875b31;padding-top:12px;border-top:1px solid #e6e4d8;margin-top:auto}
.course-timeline-arrow{font-size:20px;color:#907447}
.course-map-priority{padding:22px 26px;border-left:3px solid #ad8250;background:#efefe4;border-radius:0 12px 12px 0}
.course-map-priority>span{display:block;font-size:10px;letter-spacing:.12em;color:#7a6541}
.course-map-priority strong{display:block;font-size:21px;margin:9px 0;color:#304232}
.course-map-priority p{margin:0;color:#65705f;font-size:14px;line-height:1.5}
.course-map-back{margin-bottom:22px}
.course-section-head{max-width:880px;margin-bottom:24px}
.course-section-head h1{font-family:Georgia,serif;font-size:clamp(30px,3.5vw,46px);line-height:1.13;margin:12px 0;color:#293e30}
.course-section-head p{font-size:17px;line-height:1.5;color:#66705e}
.flight-reading-nav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin:0 0 24px;border-bottom:1px solid #d8d8cb;padding-bottom:14px}
.flight-reading-nav button{padding:12px 5px;background:transparent;border:1px solid transparent;border-radius:10px;color:#5a6652;cursor:pointer;font-size:13px;font-weight:650}
.flight-reading-nav button span{display:block;font-size:11px;font-weight:400;margin-bottom:8px;color:#8a7957}
.flight-reading-nav button[aria-current="step"]{background:#304b37;color:#fff9e9;border-color:#304b37}
.flight-reading-nav button[aria-current="step"] span{color:#e8d2a7}
.course-flight-page .flight-intent{margin:0 0 20px;padding:16px 20px}
.course-flight-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:24px;align-items:start}
.course-topic{padding:28px;background:#fffef9;border:1px solid #dad7c8;border-radius:20px;min-width:0}
.course-topic header>span{font-size:11px;letter-spacing:.13em;color:#8b6a3d}
.course-topic h2{font-size:28px;margin:12px 0}
.course-topic header p{font-size:16px;line-height:1.6;color:#616c5b;margin-bottom:24px}
.course-topic .flight-visual-choice{min-height:106px}
.course-topic-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px;padding-top:20px;border-top:1px solid #e1ded0}
.course-priority-help{font-size:13px;color:#717865;line-height:1.5}
.course-topic-graphic{min-width:0}
.course-topic-graphic .flight-preview-premium{padding:24px;position:static}
.course-topic-graphic .flight-preview-premium h3{font-family:Georgia,serif;font-size:36px;margin:14px 0}
.course-topic-graphic .chart{margin:0}
.course-topic-graphic .chart-canvas{max-height:460px}
.course-topic-graphic .chart-fixed-scale{font-size:12px}
.course-topic-graphic .chart-axis-title,.course-topic-graphic .chart-axis-bottom{font-size:12px}
.course-topic-graphic .chart-fixed-scale button{font-size:11px;padding:7px}
.course-flight-page>.learning-details{margin-top:20px}
.course-page-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;border-top:1px solid #d7d6c8;margin-top:24px;padding-top:20px}
.course-page-footer>span{font-size:12px;color:#6b755f;text-align:center}
.course-condition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.course-condition-grid button,.course-capacity-options button{background:#fffef9;text-align:left;border:1px solid #d4d4c3;border-radius:16px;padding:24px;color:#304432;cursor:pointer}
.course-condition-grid button>span,.course-capacity-options button>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#87734e;margin-bottom:12px}
.course-condition-grid strong,.course-capacity-options strong{font-size:22px;display:block}
.course-condition-grid p,.course-capacity-options p{font-size:15px;line-height:1.6;color:#626f5d;margin-bottom:0}
.course-condition-grid [aria-pressed="true"],.course-capacity-options [aria-pressed="true"]{border:2px solid #58734a;background:#eff2e6;padding:23px}
.course-capacity-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.course-capacity-note{font-size:13px;color:#737765;line-height:1.5;margin-top:20px}
.course-decision-context{padding:26px;background:#ecefe2;border:1px solid #d0d6c2;border-radius:18px;margin-bottom:24px}
.course-decision-context .course-map-back{display:block}
.course-decision-context dl{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.course-decision-context dt{font-size:12px;color:#67755a}
.course-decision-context dd{font-size:18px;margin:8px 0}
.course-entry button:focus-visible{outline:3px solid #aa6a39;outline-offset:3px}
@media(max-width:1100px){.course-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.flight-reading-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.course-capacity-options{grid-template-columns:1fr}.course-flight-layout{gap:16px}.course-topic{padding:20px}}
@media(max-width:700px){.course-entry{padding-top:0}.course-map-hero{padding:26px 22px}.course-map-hero:after{display:none}.course-timeline{grid-template-columns:1fr;gap:0;margin-left:18px;border-left:1px solid #c8cabb;padding-left:20px}.course-timeline li{margin-bottom:16px}.course-timeline-card{padding:18px;grid-template-columns:32px 1fr 16px}.course-timeline-number{width:32px;height:32px;font-size:17px}.course-timeline-copy strong{font-size:21px}.course-flight-layout{grid-template-columns:1fr}.course-condition-grid{grid-template-columns:1fr}.course-page-footer{flex-wrap:wrap}.course-page-footer>span{order:3;width:100%}.course-page-footer .btn{font-size:12px;max-width:65%}.flight-reading-nav{gap:3px}.flight-reading-nav button{font-size:12px}.course-topic-graphic .chart-canvas{max-height:none}.course-decision-context dl{grid-template-columns:1fr}}
.course-priority-order{padding:24px;background:#eeefe4;border-radius:16px;margin-top:24px}
.course-priority-order h2{font-size:22px;margin:0 0 10px}
.course-priority-order p{font-size:14px;line-height:1.5;color:#65715e}
.course-priority-order ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.course-priority-order li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #d4d8c8;border-radius:10px;background:#fffef9}
.course-priority-order li>span{color:#997648;font-family:Georgia,serif;font-size:24px}
.course-priority-order li strong{flex:1;font-size:14px}
.course-priority-order li>div{display:flex;gap:4px}
.course-priority-order li .btn{padding:6px 9px;min-width:32px}
.course-map-hero>.btn:not(.primary){color:#eee8d4;border-color:#c9ccb299}
@media(max-width:700px){.course-priority-order{padding:18px}.course-priority-order ol{grid-template-columns:1fr}}

/* Ordered course route, with one uninterrupted reading direction. */
.course-map-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.35fr);gap:36px;align-items:start}
.course-map-hero{position:sticky;top:24px;padding:32px 28px;border-radius:22px;background:#263e32;box-shadow:0 18px 45px #243b3010}
.course-map-hero:after{width:210px;height:210px;top:auto;bottom:-155px;right:-50px}
.course-map-hero h1{font-size:clamp(33px,3.2vw,49px);line-height:1.12;letter-spacing:-.035em}
.course-map-hero p{font-size:15px;line-height:1.65;color:#d9dfd0}
.course-map-hero>.btn{display:flex;width:100%;justify-content:space-between;margin-top:14px;font-size:13px}
.course-timeline{display:flex;flex-direction:column;gap:0;margin:0;padding:0;border:0;position:relative}
.course-timeline:before{content:'';position:absolute;left:26px;top:38px;bottom:40px;width:1px;background:linear-gradient(#a68b55,#c8c8b8);pointer-events:none}
.course-timeline li{margin:0;padding:0 0 12px}
.course-timeline li:last-child{padding-bottom:0}
.course-timeline-card{grid-template-columns:52px minmax(0,1fr) 28px;align-items:center;gap:18px;border:0;background:transparent;border-radius:14px;padding:14px 12px 14px 0;min-height:106px;box-shadow:none}
.course-timeline-card:hover{background:#f0f1e8;box-shadow:none}
.course-timeline-number{width:52px;height:52px;border:1px solid #c9c8b3;background:#fbfaf4;z-index:1;font-size:24px;color:#937044}
.course-timeline-copy{gap:7px;padding-bottom:12px;border-bottom:1px solid #dfdfd1}
.course-timeline-copy strong{font-family:Georgia,serif;font-size:25px;font-weight:500;letter-spacing:-.02em}
.course-timeline-copy>span:not(.course-timeline-state){font-size:13px;line-height:1.45;max-width:540px}
.course-timeline-state{font-size:9px;letter-spacing:.1em}
.course-timeline-copy small{display:none}
.course-timeline-arrow{height:28px;width:28px;display:grid;place-items:center;border-radius:50%;border:1px solid #dbd9c8;font-size:15px}
.course-timeline-card.is-recorded .course-timeline-number{background:#344e3c;border-color:#344e3c;color:#f4e5c5}
.course-map-priority{margin-top:24px;padding:19px 24px;display:grid;grid-template-columns:1fr 1.5fr;gap:8px 28px;background:#efefe4;border-left:2px solid #a88954}
.course-map-priority strong{font-size:18px;grid-column:1;margin:0}
.course-map-priority p{grid-column:2;grid-row:1 / span 2;align-self:center;font-size:13px}
.club-entry-premium{max-width:1160px;margin:20px auto}
.club-observation-choice{margin-bottom:26px}
.club-observation-choice>header{max-width:780px;margin:10px 0 26px}
.club-observation-choice h2{font-family:Georgia,serif;font-size:clamp(28px,3.2vw,43px);font-weight:500;letter-spacing:-.025em;line-height:1.15;margin:14px 0;color:#2c4131}
.club-observation-choice>header p{color:#69715e;line-height:1.6;font-size:16px}
.club-observation-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.club-observation-options button{position:relative;display:flex;flex-direction:column;text-align:left;align-items:stretch;padding:28px;border:1px solid #cecfbd;border-radius:20px;background:linear-gradient(140deg,#fffef9,#f2f2e8);color:#415738;cursor:pointer;transition:background .18s,border-color .18s}
.club-observation-options svg{height:146px;width:100%;margin-bottom:22px;color:#926d3f}
.club-observation-label{display:flex;flex-direction:column;gap:11px}
.club-observation-label small{text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:#7d7e66}
.club-observation-label strong{font-family:Georgia,serif;font-weight:500;font-size:38px;line-height:1}
.club-observation-label>span{font-size:13px;line-height:1.5;font-weight:650}
.club-observation-label em{font-style:normal;font-size:14px;color:#757e69;line-height:1.5}
.club-observation-check{position:absolute;right:25px;top:25px;font-size:22px}
.club-observation-options button:hover{border-color:#5f7853}
.club-observation-options button[aria-pressed="true"]{background:#2c4634;border-color:#2c4634;color:#fcf6e5;box-shadow:0 10px 28px #263b3012}
.club-observation-options button[aria-pressed="true"] :is(small,em,svg){color:#d6d8bc}
.club-observation-options button:focus-visible{outline:3px solid #a96937;outline-offset:4px}
.club-observation-choice.has-selection .club-observation-options{gap:12px}
.club-observation-choice.has-selection .club-observation-options button{padding:18px 22px;flex-direction:row;gap:18px;align-items:center}
.club-observation-choice.has-selection .club-observation-options svg{width:72px;height:64px;margin:0;flex-shrink:0}
.club-observation-choice.has-selection .club-observation-label{gap:7px;padding-right:22px}
.club-observation-choice.has-selection .club-observation-label strong{font-size:27px}
.club-observation-choice.has-selection .club-observation-label em{display:none}
.club-observation-choice.has-selection>header h2{font-size:30px}
.club-observation-choice.has-selection>header p{font-size:14px}
.delivery-view-caption{display:flex;flex-direction:column;gap:6px;padding:0 0 14px;border-bottom:1px solid #dedfcf;margin-bottom:15px}
.delivery-view-caption>span{font-size:10px;letter-spacing:.12em;color:#927341}
.delivery-view-caption strong{font-size:19px;color:#304432}
.delivery-review-controls details{margin-bottom:12px}
.delivery-review-controls details summary{font-size:13px;cursor:pointer;margin-bottom:10px}
@media(max-width:1000px){.course-map-layout{grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr);gap:22px}.course-map-hero{padding:25px 21px}.course-map-hero h1{font-size:34px}.course-timeline-copy strong{font-size:22px}.club-observation-choice.has-selection .club-observation-options svg{display:none}}
@media(max-width:700px){.course-map-layout{grid-template-columns:1fr;gap:22px}.course-map-hero{position:static}.course-map-hero h1{font-size:37px}.course-timeline{margin:0;padding:0;border:0}.course-timeline-card{grid-template-columns:42px minmax(0,1fr) 24px;gap:14px;min-height:110px}.course-timeline:before{left:21px}.course-timeline-number{width:42px;height:42px;font-size:21px}.course-map-priority{display:block}.course-map-priority strong{margin:9px 0}.club-observation-options{gap:12px}.club-observation-options button{padding:19px 16px}.club-observation-options svg{height:100px;margin-bottom:16px}.club-observation-label strong{font-size:29px}.club-observation-check{top:17px;right:15px;font-size:17px}.club-observation-label>span{font-size:12px}.club-observation-label em{font-size:12px}.club-observation-choice.has-selection .club-observation-options button{padding:16px 14px}.club-observation-choice.has-selection .club-observation-label strong{font-size:22px}.club-observation-choice.has-selection .club-observation-label>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.club-observation-options button{transition:none}}

/* Self-contained visual choices: the same diagrams in every flight screen. */
.flight-visual-options .choice{--flight-card-surface:#fffef9;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;padding:20px 10px 18px;border:1px solid #d7dacd;border-radius:16px;background:var(--flight-card-surface);color:#304b3d;box-shadow:0 3px 12px #243b3005;overflow:hidden}
.flight-visual-options .choice .flight-choice-diagram{display:block;width:100%;max-width:132px;height:120px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;margin:0 0 10px}
.flight-visual-options .flight-option-baseline{stroke:#94a18e;stroke-width:1;opacity:.65}
.flight-visual-options .flight-option-route{fill:none;stroke:#a67840}
.flight-visual-options .flight-option-end{fill:#a67840}
.flight-visual-options .flight-choice-label{font-size:17px;line-height:1.25;font-weight:650;letter-spacing:-.015em}
.flight-visual-options .flight-choice-hint{font-size:11px;line-height:1.5;color:#707969;font-weight:400}
.flight-visual-options .choice.active{--flight-card-surface:#eaf0e5;background:var(--flight-card-surface);color:#294c37;border:1px solid #738a63;box-shadow:inset 0 0 0 1px #738a63,0 5px 14px #334c3510}
.flight-visual-options .choice.active .flight-option-route{stroke:#3e6345}
.flight-visual-options .choice.active .flight-option-end{fill:#3e6345}
.flight-visual-options .choice .flight-choice-check{right:12px;top:12px;width:20px;height:20px;border-radius:50%;background:#3e6345;color:#fffef4;place-items:center;font:600 12px/1 sans-serif}
.flight-visual-options .choice.active .flight-choice-check{display:grid}
.flight-visual-options .choice:not(.active):hover{background:#f5f6ef;border-color:#96a186;color:#304b3d;box-shadow:0 5px 16px #334c350d}
.flight-visual-options .choice.active:hover{background:#eaf0e5;color:#294c37;border-color:#738a63}
.flight-visual-options .choice:focus-visible{outline:3px solid #b68b51;outline-offset:3px}
.course-topic>.flight-visual-options{gap:12px;margin:8px 0 22px}
.course-topic h2{font-family:Georgia,serif;font-size:clamp(29px,2.8vw,38px);font-weight:500;letter-spacing:-.03em;line-height:1.15}
.course-topic header p{font-size:14px;line-height:1.65;max-width:54ch}
.flight-question .flight-visual-options .choice{padding:12px 6px;min-height:110px;border-radius:12px}
.flight-question .flight-visual-options .flight-choice-diagram{height:60px;max-width:68px;margin:0 0 4px}
.flight-question .flight-choice-label{font-size:12px}
.flight-question .flight-choice-hint{display:none}
@media(max-width:480px){.course-topic>.flight-visual-options{gap:7px}.flight-visual-options .choice{padding:17px 6px 14px;border-radius:12px}.flight-visual-options .choice .flight-choice-diagram{height:93px;margin-bottom:6px}.flight-visual-options .flight-choice-label{font-size:14px}.flight-visual-options .flight-choice-hint{font-size:10px}.flight-visual-options .choice .flight-choice-check{right:8px;top:8px;width:16px;height:16px;font-size:10px}}

/* A single workspace keeps related landing controls within sight of the flight. */
.roll-laboratory{background:#fffef9;border:1px solid #d6d8c8;border-radius:22px;padding:24px;min-width:0}
.roll-laboratory>header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}
.roll-laboratory h2{font:500 clamp(25px,2.4vw,35px)/1.15 Georgia,serif;color:#304834;margin:10px 0}
.roll-laboratory>header p{font-size:14px;color:#707865;margin:0}
.roll-workspace{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(290px,1fr);gap:24px;align-items:start}
.roll-plot{position:sticky;top:16px;min-width:0;background:#f5f6ee;border:1px solid #e0e3d6;border-radius:16px;padding:16px}
.roll-plot .precision-chart{padding:0;margin:0;border:0;background:transparent;box-shadow:none}
.roll-plot .chart-meta{font-size:10px;margin-bottom:8px}.roll-plot .chart-expand{padding:6px 9px;font-size:11px}
.roll-plot .chart-heading{margin:4px 0 10px;min-height:0}.roll-plot .chart-heading h4{font-size:20px}.roll-plot .chart-value{font-size:32px}.roll-plot .chart-value small{font-size:12px}
.roll-plot .chart-canvas{max-width:560px;margin:auto}
.roll-plot .chart-axis-title,.roll-plot .chart-axis-bottom{font-size:11px;margin:6px 0}
.roll-plot .chart-fixed-scale{padding:8px 10px;margin:6px 0;font-size:10px;gap:6px}.roll-plot .chart-fixed-scale button{font-size:10px;padding:5px 7px;min-height:30px}
.roll-plot .chart-note{display:none}.roll-plot figcaption{padding:5px 0;margin:0;border:0}.roll-plot .chart-legend{font-size:10px;gap:10px}
.roll-flight-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #d7ddcb;margin-top:10px;padding-top:12px;gap:9px}
.roll-flight-facts span{font-size:10px;color:#718066}.roll-flight-facts b{display:block;font-size:18px;font-weight:600;color:#304b36;margin-top:4px}
.roll-live-controls{display:grid;gap:12px;min-width:0}.roll-adjust{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#536449}
.roll-adjust>div{display:flex;background:#eef0e6;padding:3px;border-radius:9px}
.roll-adjust button,.roll-conditions button{border:1px solid transparent;border-radius:7px;background:transparent;color:#59684f;padding:9px 13px;min-height:36px;cursor:pointer}
.roll-adjust button[aria-pressed=true],.roll-conditions button[aria-pressed=true]{background:#344e3a;color:#fffbed;border-color:#344e3a}
.roll-control{padding:14px 16px;background:#f7f8f1;border:1px solid #dce1d2;border-radius:13px}
.roll-control>div:first-child{display:flex;justify-content:space-between;font-size:14px;color:#314b36;font-weight:650}.roll-control>div:first-child>span{font-size:11px;color:#79826c;font-weight:400}
.roll-control-inputs{display:grid;grid-template-columns:minmax(0,1fr) 82px;gap:14px;align-items:center;margin:9px 0}
.roll-control input[type=range]{width:100%;min-width:0;height:28px;accent-color:#58734b;cursor:pointer}.roll-control input[type=number],.roll-conditions input{width:100%;min-width:0;background:#fffef9;border:1px solid #b9c5a9;border-radius:8px;padding:8px;font-size:17px;color:#304b36}
.roll-control small{font-size:11px;line-height:1.4;color:#717c66;display:block}
.roll-feedback{font-size:12px;color:#76603d;margin:0;line-height:1.4;min-height:32px}
.roll-conditions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;border-top:1px solid #e1e2d6;margin-top:18px;padding-top:14px;align-items:center;font-size:12px;color:#647058}
.roll-conditions>label,.roll-conditions>div{display:flex;gap:8px;align-items:center}.roll-conditions input{width:76px;font-size:14px}
.roll-laboratory>footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px}.roll-laboratory>footer p{font-size:12px;line-height:1.5;color:#768069;max-width:65ch}.roll-laboratory>footer button{flex-shrink:0;font-size:12px}
.roll-context{font-size:12px;color:#6e795f;line-height:1.6}.roll-context summary{padding:12px 0;cursor:pointer}.roll-laboratory .course-topic-actions{margin-top:8px;padding-top:14px}
.roll-laboratory :is(button,input,summary):focus-visible{outline:3px solid #ac8045;outline-offset:3px}
.chart-dialog-content .roll-laboratory .chart-expand{display:none}
@media(max-width:800px){.roll-laboratory{padding:16px}.roll-workspace{grid-template-columns:1fr;gap:16px}.roll-plot{position:static;padding:12px}.roll-plot .chart-canvas{max-width:420px}.roll-live-controls{grid-template-columns:1fr;gap:8px}.roll-control{padding:10px 12px}.roll-control-inputs{margin:4px 0}.roll-laboratory>footer{display:block}.roll-laboratory>footer p{max-width:none}.roll-plot .chart-meta>span,.roll-plot .chart-view{display:none}.roll-plot .chart-heading{margin:0 0 4px}.roll-plot .chart-canvas{max-width:360px}.roll-flight-facts{padding-top:8px;margin-top:5px}.roll-flight-facts b{font-size:16px}.roll-plot .chart-fixed-scale{padding:5px;font-size:9px}.roll-laboratory>header{margin-bottom:12px}.roll-laboratory .eyebrow{font-size:10px}}

.flight-metric-guide{margin:0 0 18px;border:1px solid #d0d8c5;border-radius:13px;background:#f8f9f1;overflow:hidden}
.flight-metric-guide>summary{display:flex;align-items:center;gap:13px;padding:15px 18px;cursor:pointer;list-style:none;color:#304834}
.flight-metric-guide>summary::-webkit-details-marker{display:none}
.metric-guide-symbol{display:grid;place-items:center;width:32px;height:32px;border:1px solid #cbd3bd;border-radius:50%;color:#947443;flex-shrink:0;font-size:21px}
.flight-metric-guide>summary strong{display:block;font-size:15px;font-weight:650}
.flight-metric-guide>summary small{display:block;font-size:12px;line-height:1.5;color:#738065;margin-top:3px}
.metric-guide-toggle{margin-left:auto;font-size:24px;font-weight:400;color:#8c744c;transition:transform .15s}.flight-metric-guide[open] .metric-guide-toggle{transform:rotate(45deg)}
.metric-guide-content{padding:0 22px 20px;border-top:1px solid #e0e4d6}
.metric-guide-method{font-size:12px;color:#738065;margin:15px 0}
.metric-guide-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.metric-guide-columns h3{font-size:10px;letter-spacing:.13em;color:#917346;font-weight:650;margin:8px 0 14px}
.metric-guide-columns dl{margin:0}.metric-guide-columns dl>div{padding:10px 0;border-top:1px solid #e0e5d5}
.metric-guide-columns dt{font-size:14px;color:#304834}.metric-guide-columns dd{font-size:12px;line-height:1.6;margin:5px 0 0;color:#6b765f}
.metric-guide-content button{padding:0;border:0;background:transparent;color:#365b40;text-align:left;font:600 14px/1.4 var(--studio-font);cursor:pointer}.metric-guide-content button:hover{text-decoration:underline;text-underline-offset:4px}.metric-guide-content button span{font-size:12px;color:#96784e}
.metric-guide-note{border-left:2px solid #ac8c5b;padding:10px 14px;background:#f0f1e5;font-size:12px;line-height:1.6;color:#646e58;margin:16px 0}
.metric-guide-related{display:flex;flex-wrap:wrap;align-items:center;gap:9px 16px;font-size:11px;color:#81896f}.metric-guide-related button{font-size:12px}
.metric-guide-content footer{margin-top:17px;border-top:1px solid #dfe4d3;padding-top:12px;font-size:10px;line-height:1.6;color:#78816b}.metric-guide-content footer>div{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:7px}.metric-guide-content footer a{color:#897047;font-size:11px}
.flight-metric-guide :is(summary,button,a):focus-visible{outline:3px solid #ae8752;outline-offset:4px}
@media(max-width:700px){.metric-guide-columns{grid-template-columns:1fr;gap:16px}.flight-metric-guide>summary{padding:12px;gap:10px}.flight-metric-guide>summary strong{font-size:14px}.flight-metric-guide>summary small{font-size:11px}.metric-guide-content{padding:0 15px 16px}}
@media(prefers-reduced-motion:reduce){.metric-guide-toggle{transition:none}}
.roll-control .roll-bounds{display:flex;justify-content:space-between;gap:8px;margin:2px 0 6px;font-size:10px;color:#879075}.roll-bounds b{font-weight:600;color:#8c683c}.roll-control.at-limit{border-color:#bda980}.roll-control input:disabled{opacity:.45;cursor:not-allowed}

/* Face geometry lesson: shared by the selected contact and the independent laboratory. */
.face-curvature-lesson{color:#334a39;background:#faf9f1;border:1px solid #d8d7c7;border-radius:24px;padding:clamp(20px,3vw,36px);margin:24px 0}
.face-curvature-lesson>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.face-curvature-lesson h3{font:400 clamp(26px,3vw,36px)/1.15 Georgia,serif;color:#294233;margin:8px 0 12px}.face-curvature-lesson p{font-size:14px;line-height:1.7;color:#65705e;margin:10px 0}.face-curvature-lesson>header p{max-width:64ch}.face-contact-badge{flex-shrink:0;border:1px solid #d5c9ac;background:#eee7d5;border-radius:24px;padding:9px 14px;font-size:12px;color:#765c38;max-width:230px}
.face-curvature-pair,.face-spin-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.face-curvature-pair>article{padding:20px;background:#fffef9;border:1px solid #e0e0d4;border-radius:18px}.face-curvature-lesson h4{font-size:19px;line-height:1.35;color:#304a38;margin:8px 0 12px}.face-lesson-number{font-size:11px;letter-spacing:.09em;color:#947749}
.face-section-diagram{border-block:1px solid #e5e6da;padding:5px 0 12px;margin:15px 0}.face-section-diagram svg{display:block;width:100%;height:180px;max-width:270px;margin:auto;overflow:visible}.face-section-labels{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#6b765f}.face-curvature-lesson .face-diagram-key{font-size:11px;color:#81866f;margin:12px 0 22px}
.face-selected-reading{padding:18px 22px;background:#304b39;border-radius:16px;margin:20px 0}.face-selected-reading strong{font-size:12px;letter-spacing:.06em;color:#ead9af}.face-selected-reading p{color:#f4f2e6;margin:7px 0 0;font-size:15px}
.face-contact-table{overflow-x:auto}.face-contact-table table{width:100%;border-collapse:collapse;min-width:610px;font-size:13px;line-height:1.6;color:#596752}.face-contact-table caption{text-align:left;font:600 17px/1.4 var(--studio-font);color:#344b39;padding:10px 0 16px}.face-contact-table :is(th,td){padding:15px 12px;text-align:left;border-bottom:1px solid #dce0d0;vertical-align:top}.face-contact-table thead th{font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#858972;font-weight:500}.face-contact-table tbody th{color:#344c36;min-width:85px}.face-contact-table td:last-child{width:43%}.face-contact-table .is-current{background:#eaf0e0}.face-contact-table th small{display:block;font-size:10px;font-weight:400;color:#687a56}
.face-curvature-lesson .face-mechanism-note{border-left:3px solid #af8d54;padding:12px 17px;background:#f3eddf;margin:22px 0;font-size:13px}.face-lesson-detail{border-top:1px solid #dadfd0;padding:0;margin:0}.face-lesson-detail>summary{padding:20px 0;font-size:16px;font-weight:600;color:#334b38;cursor:pointer}.face-lesson-detail[open]{padding-bottom:20px}.face-spin-pair>article{padding:16px 20px;background:#eff1e6;border-radius:14px}.face-spin-pair h4{font-size:17px}.face-curvature-lesson .face-source-line{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:18px}.face-source-line a{font-size:11px;color:#8a653b;text-underline-offset:3px}.face-metric-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.face-metric-links .btn{padding:8px 12px;font-size:12px;min-height:40px}.face-curvature-lesson :is(summary,button,a):focus-visible{outline:3px solid #ae8752;outline-offset:4px}
@media(max-width:700px){.face-curvature-lesson>header{display:block}.face-contact-badge{display:inline-block;margin-top:8px}.face-curvature-pair,.face-spin-pair{grid-template-columns:1fr}.face-contact-table table{min-width:0}.face-contact-table :is(thead,caption){display:none}.face-contact-table :is(tbody,tr,th,td){display:block;width:100%!important}.face-contact-table tr{border:1px solid #dce0d0;padding:12px;border-radius:12px;margin:10px 0}.face-contact-table :is(th,td){padding:7px;border:0}.face-contact-table td:nth-child(2)::before{content:'Forma de la cara · ';font-weight:600}.face-contact-table td:nth-child(3)::before{content:'Engranaje vertical · ';font-weight:600}.face-contact-table tbody th{font-size:17px}.face-contact-table th small{display:inline;margin-left:8px}}

/* Compact two-view photo comparison, with all supporting teaching content one click away. */
.face-curvature-lesson{padding:22px;margin:20px 0}.face-curvature-lesson>header{margin-bottom:16px}.face-curvature-lesson h3{font-size:28px;margin:5px 0 8px}.face-curvature-lesson>header p{font-size:12px;line-height:1.5;max-width:85ch;margin:0}.face-curvature-lesson .face-photo-pair{gap:16px;align-items:stretch}.face-photo-pair>article{display:grid;grid-template-rows:60px 190px 1fr;padding:16px;min-width:0}.face-photo-heading h4{font-size:18px;margin:5px 0 0}.face-photo-stage{display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:#f1f1f1;isolation:isolate}.face-photo-stage .face-reference-photo{display:block;width:100%;height:100%;max-width:360px;overflow:hidden;mix-blend-mode:multiply}.face-photo-pair>article>p{font-size:13px;line-height:1.6;margin:12px 0 0;max-width:60ch}.face-curvature-lesson .face-photo-reference{font-size:10px;line-height:1.4;margin:8px 0;color:#838976}.face-curvature-lesson .face-selected-reading{padding:12px 16px;margin:12px 0}.face-curvature-lesson .face-selected-reading p{font-size:13px;line-height:1.6;margin:5px 0 0}
.face-lesson-more{border-top:1px solid #d9ddcf;margin-top:14px}.face-lesson-more>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0 0;cursor:pointer;color:#3b503a;font-size:14px;font-weight:600}.face-lesson-more>summary::after{content:'+';font-size:22px;color:#947449}.face-lesson-more[open]>summary::after{content:'−'}.face-lesson-more>summary small{margin-left:auto;font-size:11px;font-weight:400;color:#80886e}.face-lesson-more-content{padding-top:18px}
@media(min-width:1000px) and (max-height:850px){.face-photo-pair>article{grid-template-rows:54px 155px 1fr}.face-curvature-lesson{padding:18px}.face-curvature-lesson h3{font-size:25px}}
@media(max-width:700px){.face-photo-pair>article{grid-template-rows:54px 190px 1fr}.face-lesson-more>summary{flex-wrap:wrap}.face-lesson-more>summary small{display:none}.face-lesson-more>summary::after{margin-left:auto}}

/* Keep one impact explanation visible, with aligned views and compact controls. */
.impact-lesson-workspace{margin:20px 0;border:1px solid #d8ddce;border-radius:20px;background:#faf9f1;overflow:hidden}
.impact-lesson-workspace>nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px;background:#eaece1}
.impact-lesson-workspace>nav button{min-height:44px;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;color:#5e6c54;font-size:14px;font-weight:600;cursor:pointer}
.impact-lesson-workspace>nav button[aria-pressed=true]{background:#fffef9;border-color:#d6d2bf;color:#2e4938;box-shadow:0 2px 6px #243c2810}
.impact-lesson-content>.face-curvature-lesson{margin:0;border:0;border-radius:0;padding:18px}
.impact-lesson-content>.selected-contact-feedback{margin:0}
.impact-lesson-content>.face-curvature-lesson .face-photo-pair>article{grid-template-rows:48px 150px 1fr;padding:12px}
.impact-lesson-content .face-photo-heading h4{font-size:16px}
.impact-lesson-content .face-photo-pair>article>p{font-size:12px;line-height:1.5;margin-top:8px}
.impact-lesson-content .face-selected-reading{margin:8px 0;padding:10px 14px}
.impact-extra-reading{border-top:1px solid #d9ddcf;margin:16px 0}.impact-extra-reading>summary{cursor:pointer;padding:16px 0;font-weight:600;color:#485c42}
.delivery-allowed-range{display:block;color:#82643a;margin-top:4px;font-variant-numeric:tabular-nums}
.delivery-experiment-control input:disabled{opacity:.5;cursor:not-allowed}
.delivery-preview-notice{border-left:3px solid #ac8855;padding:10px 15px;background:#f3eedf;font-size:13px;line-height:1.5;color:#635b45}
.impact-lesson-workspace :is(button,summary):focus-visible{outline:3px solid #a88350;outline-offset:2px}
@media(max-width:700px){.impact-lesson-workspace>nav{gap:3px;padding:5px}.impact-lesson-workspace>nav button{font-size:11px;padding:8px 5px}.impact-lesson-content>.face-curvature-lesson{padding:12px}.impact-lesson-content .face-photo-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.impact-lesson-content>.face-curvature-lesson .face-photo-pair>article{grid-template-rows:64px 120px 1fr;padding:9px}.impact-lesson-content .face-photo-heading h4{font-size:13px}.impact-lesson-content .face-photo-pair>article>p{font-size:11px}.impact-lesson-content .face-lesson-number{font-size:9px}}
.impact-equipment-details{border-block:1px solid #d7ddcd;margin:12px 0}.impact-equipment-details>summary{padding:14px 0;cursor:pointer;color:#42583d;font-size:14px;font-weight:600}.impact-equipment-details[open]>.control-block{margin:12px 0}
.impact-module>.strike-layout .clubface-photo{max-width:420px;margin-inline:auto}.impact-module>.strike-layout .impact-result{margin-top:12px}.impact-module>.strike-layout .impact-result p{font-size:14px;line-height:1.5}
.delivery-stock-reference button:disabled{opacity:.45;cursor:not-allowed}

/* Photo annotations share the card's white surface: no inset grey rectangle. */
.face-curvature-lesson .face-photo-pair>article{background:#fff;grid-template-rows:52px 245px auto}
.impact-lesson-content>.face-curvature-lesson .face-photo-pair>article{grid-template-rows:52px 245px auto}
.face-curvature-lesson .face-photo-stage{background:#fff;border-radius:0;isolation:auto}
.face-curvature-lesson .face-reference-photo{max-width:none;mix-blend-mode:normal}
.face-curvature-lesson .annotated-face .face-reference-photo{overflow:visible}
.annotated-face text{font:16px var(--studio-font);fill:#3f5c46}.face-curvature-trace{fill:none;stroke:#b9823f;stroke-width:4;stroke-linecap:round}.face-flat-reference{fill:none;stroke:#919e88;stroke-width:1.5;stroke-dasharray:5 5}
.face-curvature-lesson .face-photo-pair>article>p{font-size:14px;line-height:1.55;margin-top:8px}
.face-design-reasons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:14px}.face-design-reasons>article{padding:14px 16px;background:#edf1e6;border-radius:12px}.face-curvature-lesson .face-design-reasons h4{font-size:16px;margin:0 0 6px}.face-curvature-lesson .face-design-reasons p{font-size:14px;line-height:1.6;margin:0}
.face-curvature-lesson .face-annotation-key{display:flex;flex-wrap:wrap;gap:10px 20px;font-size:12px;margin:13px 0 5px}.face-annotation-key span:first-child{color:#a57235}.face-annotation-key span:nth-child(2){color:#42765a}
@media(max-width:700px){.impact-lesson-content .face-photo-pair,.face-design-reasons{grid-template-columns:1fr}.impact-lesson-content>.face-curvature-lesson .face-photo-pair>article{grid-template-rows:46px 235px auto}.impact-lesson-content .face-photo-heading h4{font-size:17px}.impact-lesson-content .face-lesson-number{font-size:12px}.face-curvature-lesson .face-photo-pair>article>p{font-size:14px}}
.delivery-flight-lock{padding:10px 14px;border:1px solid #cbd7bc;background:#edf3e6;border-radius:10px;color:#36513b;font-size:14px;line-height:1.5}.slider-row input:disabled{opacity:.5;cursor:not-allowed}

.supplied-direction-driver .chart-canvas{background:#f6f6f6;border-radius:12px;overflow:hidden;aspect-ratio:520/380;min-height:0}
.angle-face-path{border:1px solid #d4ddcd;border-radius:9px;background:#f6f8f1;padding:12px 14px;margin:12px 0;color:#304c38;font-family:var(--studio-font)}
.angle-face-path>span,.angle-face-path>strong,.angle-face-path>small{display:block}.angle-face-path>span{font-size:12px}.angle-face-path>strong{font-size:20px;line-height:1.4;margin:4px 0;font-variant-numeric:tabular-nums}.angle-face-path p{font-size:13px;line-height:1.5;margin:7px 0}.angle-face-path>small{font-size:12px;line-height:1.5;color:#596b51}.angle-contact-effect{border-top:1px solid #d4ddcd;padding-top:9px}

.angle-reading-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px;align-items:stretch}.angle-reading-pair>div{margin:8px 0}
/* Shared diagnostic workbench: the same delivery feeds every result. */
.connected-diagnosis{border:1px solid #d6ddce;border-radius:20px;padding:22px;background:#fffefa;margin:20px 0;color:#304936}
.connected-diagnosis>header{display:flex;justify-content:space-between;align-items:start;gap:16px}.connected-diagnosis h2{font:600 1.75rem Georgia,serif;margin:7px 0}.connected-diagnosis header p,.connected-diagnosis footer p{font-size:.85rem;line-height:1.5;margin:6px 0;color:#66705e}.connected-diagnosis .eyebrow{font-size:.65rem}
.connected-chain{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:13px 0;margin:9px 0 15px;border-bottom:1px solid #dce0d4;font-size:.75rem}.connected-chain span{background:#eff2e8;padding:7px 10px;border-radius:7px}.connected-chain b{color:#a17842}
.connected-workspace{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.7fr);gap:22px;align-items:start}.connected-diagnosis h3{font-size:1rem;margin:0 0 13px}.connected-input{margin:0 0 12px}.connected-input label{display:flex;justify-content:space-between;gap:8px;font-size:.82rem;font-weight:650;margin:0 0 4px}.connected-input label span{font-weight:400;color:#718068}.connected-input>div,.connected-target-input{display:grid;grid-template-columns:minmax(0,1fr) 83px;align-items:center;gap:10px}.connected-input input[type=number],.connected-target input[type=number]{width:100%;min-width:0;font-size:.93rem;padding:8px;border:1px solid #bdc9b0;border-radius:8px;color:#304936;background:white}.connected-diagnosis input[type=range]{width:100%;min-width:0;height:30px;accent-color:#526a43}.connected-diagnosis input:disabled{opacity:.4;cursor:not-allowed}
.connected-diagnosis details summary{font-size:.83rem;padding:8px 0;cursor:pointer;font-weight:600}.connected-contact,.connected-ground{display:flex;flex-wrap:wrap;gap:5px}.connected-contact .btn,.connected-ground .btn{padding:7px 10px;font-size:.73rem;min-height:36px}.connected-diagnosis [aria-pressed=true]{background:#344f3c;color:#fffdf4;border-color:#344f3c}
.connected-target{padding:15px;border-radius:12px;background:#f0f2e9;margin-top:16px}.connected-target p,.connected-target small{display:block;font-size:.75rem;line-height:1.45;color:#627059}.connected-target label{font-size:.82rem;font-weight:600}.connected-driver-options{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.connected-driver-options button,.connected-plot-heading button{border:1px solid #c7cebe;background:#fffefa;border-radius:7px;padding:7px 9px;font-size:.73rem;cursor:pointer}
.connected-plot-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.connected-plot-heading>div{display:flex;gap:5px}.connected-plot .precision-chart{padding:12px;margin:0}.connected-plot .chart-canvas{max-height:285px;min-height:0}.connected-plot .chart-canvas svg{max-height:285px}.connected-plot .chart-heading{display:none}.connected-plot .chart-value{font-size:1.6rem}.connected-plot .chart-fixed-scale{padding:8px;font-size:.72rem}.connected-plot .chart-note,.connected-plot .plot-caption{font-size:.72rem}
.connected-results{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.connected-results h4{font-size:.8rem;margin:0 0 8px}.connected-results section>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}.connected-result{appearance:none;min-width:0;text-align:left;border:1px solid #dce0d4;border-radius:9px;background:#f8f9f3;padding:9px;cursor:pointer;color:#304936}.connected-result>span{display:block;font-size:.68rem;line-height:1.25}.connected-result strong{display:block;font-size:1.05rem;margin:4px 0;font-variant-numeric:tabular-nums}.connected-result small{font-size:.68rem;font-weight:400}.connected-result em{display:block;font-size:.65rem;font-style:normal}.connected-result .unchanged{opacity:.65}.connected-result .changed{font-weight:700}.connected-result.is-target{outline:2px solid #9d7948;outline-offset:0}.connected-result[aria-pressed=true] em{color:inherit}
.connected-explanation{background:#f5eddd;border-left:3px solid #a27740;padding:12px 15px;margin:18px 0;border-radius:0 10px 10px 0}.connected-explanation b{font-size:.86rem}.connected-explanation p,.connected-method p{font-size:.81rem;line-height:1.55;margin:6px 0}.connected-method a{font-size:.78rem}.connected-observation{margin:10px 0}.connected-diagnosis footer .delivery-review-controls{margin-top:9px}.connected-diagnosis footer .delivery-review-controls>p{font-size:.78rem}.connected-diagnosis button:focus-visible{outline:3px solid #b2773d;outline-offset:3px}
@media(max-width:900px){.connected-workspace{grid-template-columns:1fr}.connected-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.connected-controls>h3,.connected-controls>details,.connected-target{grid-column:1/-1}.connected-target{margin-top:0}.connected-diagnosis{padding:15px}.connected-diagnosis>header{flex-wrap:wrap}.connected-results{gap:8px}}
@media(max-width:520px){.connected-results{grid-template-columns:1fr}.connected-controls{display:block}.connected-input>div{grid-template-columns:minmax(0,1fr) 78px}.connected-chain{gap:5px}.connected-chain span{padding:5px;font-size:.68rem}}

.connected-club-diagram{margin:12px 0}.connected-club-diagram .chart-canvas{max-width:620px;margin-inline:auto}.connected-club-diagram .chart-canvas svg{max-height:340px}

.connected-controls{position:sticky;top:14px}.connected-plot .chart-meta{margin:0 0 5px;min-height:32px}.connected-plot .chart-meta>span{font-size:.68rem}.connected-plot .chart-axis-title,.connected-plot .chart-axis-bottom{font-size:.72rem;margin:4px 0}.connected-plot .chart-canvas{height:clamp(180px,20vw,260px)}.connected-plot .chart-canvas svg{height:100%;width:100%}.connected-plot .equal-scale-flight .chart-canvas{width:min(100%,422.5px);height:auto;aspect-ratio:520/320;margin-inline:auto}.connected-plot .chart-fixed-scale{margin-top:8px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.connected-plot .chart-fixed-scale>div{display:flex;gap:5px}.connected-plot .chart-fixed-scale .btn{padding:5px 8px;min-height:32px;font-size:.67rem}.connected-plot .chart-legend{margin-top:7px;font-size:.7rem}.connected-plot .chart-note{padding-top:7px;margin-top:7px}
@media(max-width:900px){.connected-controls{position:static}}

.connected-club-selector{display:flex;align-items:center;gap:16px;margin:12px 0;padding:12px;background:#eff2e9;border-radius:12px}.connected-club-selector>div{display:flex;gap:6px;flex-shrink:0}.connected-club-selector button{border:1px solid #aab99d;background:#fffefa;padding:11px 18px;border-radius:8px;font-weight:650;cursor:pointer}.connected-club-selector small{font-size:.76rem;color:#54634b;line-height:1.5}.connected-direction-reading{padding:12px;border:1px solid #d6ddce;border-radius:9px;background:#f7f8f2;margin:10px 0}.connected-direction-reading strong{font-size:.81rem;line-height:1.5}.connected-direction-reading p,.connected-direction-reading small,.connected-direction-reading a{font-size:.72rem;line-height:1.5;display:block;margin:7px 0}.connected-direction-reading .btn{padding:8px;font-size:.75rem}.connected-direction-reading.gear-dependent{background:#fff2dd;border-color:#be9150}
@media(max-width:900px){.connected-direction-reading{grid-column:1/-1}.connected-club-selector{flex-wrap:wrap}}

/* Portrait target corridor: 300 m ahead, 75 m either side, equal metre scale. */
.connected-plot .portrait-flight .chart-canvas{width:min(100%,360px);height:auto;max-height:none;aspect-ratio:520/960;margin-inline:auto}.connected-plot .portrait-flight .chart-canvas svg{width:100%;height:100%;max-height:none}.connected-plot .portrait-flight .flight-landing-label,.connected-plot .portrait-flight .flight-deviation-label{font-size:.8rem;padding:4px 7px}.connected-plot .portrait-flight .chart-tick{font-size:.72rem}

.expanded-chart-layout .portrait-flight .chart-canvas{width:min(100%,440px);height:auto;max-height:none;aspect-ratio:520/960;margin-inline:auto}.expanded-chart-layout .portrait-flight .chart-canvas svg{height:100%;max-height:none}
/* Alternative deliveries, kept separate from observed evidence until applied. */
.combination-page{max-width:1250px;margin:auto;color:#304936}.combination-page>header{padding:25px 0 12px}.combination-page h1{font:600 clamp(1.8rem,3vw,2.7rem)/1.15 Georgia,serif;max-width:24ch;margin:10px 0}.combination-page h2{font-size:1.2rem;margin:12px 0}.combination-page h3{font-size:1rem}.combination-page p{font-size:.85rem;line-height:1.6;color:#607058}.combination-page button{cursor:pointer}.combination-page button:disabled{opacity:.45;cursor:not-allowed}.combination-page [aria-pressed=true]{background:#34543d;color:#fffdf2;border-color:#34543d}.combination-page button:focus-visible{outline:3px solid #b08246;outline-offset:3px}.combination-modes,.combination-views,.combination-contact{display:flex;gap:7px;flex-wrap:wrap}.combination-modes button,.combination-views button,.combination-contact button{padding:10px 14px;background:#fffdf7;border:1px solid #c6cebc;border-radius:9px;font-weight:600}.combination-tolerance{padding:12px;border:1px solid #d2d8c8;border-radius:10px;background:#f1f3e9}
.combination-workspace{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.5fr);gap:20px;align-items:start}.combination-workspace>section{background:#fffdf7;border:1px solid #d6ddce;border-radius:16px;padding:20px}.combination-input{padding:12px 0;border-bottom:1px solid #e1e5d8}.combination-input label{display:flex;justify-content:space-between;gap:8px;font-size:.8rem}.combination-input>div{display:grid;grid-template-columns:minmax(0,1fr) 80px;align-items:center;gap:10px;margin-top:7px}.combination-input input[type=range]{width:100%;min-width:0;accent-color:#547043;height:32px}.combination-input input[type=number]{width:100%;padding:7px;border:1px solid #aebc9e;border-radius:7px;font-size:.9rem}.combination-input button{background:#f2f4ed;border:1px solid #d1d9c8;border-radius:6px;font-size:.7rem;padding:5px 9px}.combination-status{padding:12px 16px;border-radius:10px;background:#f7ead5;border:1px solid #c8a97b}.combination-status.matched{background:#eaf1e5;border-color:#a5b99a}.combination-status h2{font-size:1.05rem;margin:0}.combination-status p{font-size:.78rem;margin:7px 0}.combination-table{overflow-x:auto;margin:14px 0}.combination-table table{width:100%;border-collapse:collapse;font-size:.78rem;font-variant-numeric:tabular-nums}.combination-table th{text-align:left}.combination-table td{text-align:right;white-space:nowrap}.combination-table th,.combination-table td{padding:8px 6px;border-bottom:1px solid #dde3d4}.combination-objective{background:#edf3e7}.combination-adjustments{font-size:.78rem}.combination-result>.btn{font-size:.78rem;padding:10px;margin:5px 5px 18px 0}.combination-diagram .precision-chart{padding:12px;margin-top:12px}.combination-diagram .chart-canvas{max-width:430px;margin:auto}.combination-diagram .chart-heading{display:none}.combination-diagram .angle-reading-pair{display:none}.combination-front{margin:10px 0}.combination-front svg{width:100%;max-height:300px}.combination-front figcaption{font-size:.76rem;line-height:1.5}
.combination-tech,.combination-library{padding:22px;border:1px solid #d4dccc;border-radius:16px;margin:20px 0;background:#f8f8f0}.combination-tech summary{font-size:1.1rem;font-weight:650;cursor:pointer}.combination-tech>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.combination-tech section button{width:100%;padding:9px 12px;margin:3px 0;border:1px solid #bccab0;border-radius:8px;text-align:left;background:#fffdf6;font-size:.82rem}.combination-tech button small{display:block;font-size:.68rem;line-height:1.4;margin-top:4px;opacity:.8}.combination-alternatives{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:15px}.combination-alternatives button{border:1px solid #b7c4a9;border-radius:10px;padding:14px;text-align:left;color:#304936;background:#fffefa}.combination-alternatives strong,.combination-alternatives span,.combination-alternatives small{display:block;line-height:1.5}.combination-alternatives span{font-size:.78rem;margin:6px 0}.combination-alternatives small{font-size:.73rem;color:#65715c}
@media(max-width:800px){.combination-workspace{grid-template-columns:1fr}.combination-workspace>section{padding:15px}.combination-table table{font-size:.7rem}.combination-tech,.combination-library{padding:15px}.combination-modes button{flex:1;font-size:.8rem}.combination-views button{font-size:.75rem;padding:8px}}

.combination-setup-top{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:12px;margin:12px 0;background:#f4f5ed;border-radius:10px;padding:10px}.combination-setup-top svg{width:100%;max-height:160px}.combination-setup-top figcaption{font-size:.72rem;line-height:1.5}.combination-flights{margin-top:20px}.combination-flights summary{cursor:pointer;font-weight:650}.combination-flights>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.combination-flights .precision-chart{padding:12px}.combination-flights .chart-heading h4{font-size:1rem}.combination-flights .chart-value{font-size:1.7rem}
@media(max-width:700px){.combination-flights>div{grid-template-columns:1fr}}

/* Comparison gallery: ten readable options alongside one shared visual. */
.combination-premium{max-width:1440px}.combination-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.combination-hero h1{font-size:clamp(1.6rem,2.7vw,2.5rem);max-width:30ch}.combination-hero .connected-club-selector{max-width:310px;flex-shrink:0}.combination-reference-strip{display:flex;gap:22px;align-items:center;flex-wrap:wrap;background:#284735;color:#f6efdc;border-radius:16px;padding:18px 22px}.combination-reference-strip>strong{font-size:10px;letter-spacing:.14em;max-width:90px}.combination-reference-strip span{font-size:11px;color:#d0dac5}.combination-reference-strip b{display:block;font-size:22px;color:#f3d8a9}.combination-reference-strip>small{font-size:11px;flex-basis:100%;color:#dce4d5}.combination-premium .combination-tolerance{font-size:12px;margin:12px 0 20px;padding:0;border:0;background:none}
.combination-gallery-layout{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.25fr);gap:22px;align-items:start}.combination-ten{display:grid;grid-template-columns:1fr 1fr;gap:9px}.combination-ten button{display:flex;align-items:flex-start;gap:9px;min-height:112px;text-align:left;border:1px solid #cdd8c4;border-radius:13px;background:#fffdf7;padding:13px;color:#2f4e39}.combination-number{font:italic 19px Georgia,serif;opacity:.7}.combination-ten strong{display:block;font-size:13px;line-height:1.35}.combination-ten small{display:block;font-size:11px;line-height:1.4;margin-top:8px}.combination-ten em{display:block;font-size:10px;font-style:normal;opacity:.8;margin-top:4px}.combination-ten button[aria-pressed=true]{box-shadow:0 4px 15px #2b473422}.combination-options>small{font-size:11px;display:block;margin-top:10px;color:#6c7862}.combination-selected{position:sticky;top:16px;background:#fffef9;border:1px solid #d0d9c8;border-radius:20px;padding:22px;box-shadow:0 10px 35px #31482d09}.combination-selected h2{font:600 23px Georgia,serif}.combination-match{display:inline-block;border-radius:20px;padding:5px 10px;font-size:11px;background:#f6e5d2;color:#815430}.combination-match.matched{background:#edf3e7;color:#47643f}.combination-delivery-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;border-block:1px solid #e0e5d8;margin:15px 0 8px;padding:12px 0}.combination-delivery-strip>span{font-size:10px;color:#64725e}.combination-delivery-strip b{display:block;font-size:21px;font-weight:600;color:#304d38}.combination-delivery-strip b small{font-size:10px;margin-left:2px}.combination-current-contact{font-size:11px!important;margin:7px 0 15px}.combination-premium .combination-views button{font-size:11px;padding:8px 10px;flex:1}.combination-overlay,.combination-contact-view{margin:15px 0 10px;background:#f6f8f1;border-radius:12px;padding:8px}.combination-overlay svg,.combination-contact-view svg{width:100%;display:block}.combination-contact-view svg{max-height:265px}.combination-overlay text,.combination-contact-view text{font:10px system-ui;fill:#62725c}.combination-overlay figcaption,.combination-contact-view figcaption{font-size:10px;line-height:1.5;padding:5px}.combination-overlay figcaption span{margin-right:12px;color:#677c69}.combination-overlay figcaption span+span{color:#a67231}.combination-score{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.combination-score>div{background:#f0f4e9;padding:10px;border-radius:10px}.combination-score span,.combination-score small{display:block;font-size:10px;line-height:1.4;color:#68765e}.combination-score b{font-size:18px;display:block;margin:4px 0}.combination-actions{display:flex;gap:8px}.combination-actions .btn{font-size:12px;padding:10px 12px}.combination-club-detail{margin-top:15px;font-size:12px}.combination-club-detail .chart-canvas{max-width:370px;margin:auto}.combination-editor,.combination-audit{border:1px solid #d3dbc9;border-radius:16px;background:#fbfcf6;padding:18px;margin:22px 0}.combination-editor>summary,.combination-audit>summary{cursor:pointer;font-weight:600}.combination-mode-notice{background:#eef1e6;padding:12px;border-radius:10px}
@media(max-width:1000px){.combination-gallery-layout{grid-template-columns:minmax(270px,.8fr) minmax(0,1.2fr)}.combination-ten{grid-template-columns:1fr}.combination-ten button{min-height:78px}.combination-selected{padding:15px}.combination-hero{align-items:flex-start}.combination-hero .connected-club-selector{max-width:250px}}
@media(max-width:720px){.combination-hero{display:block}.combination-hero .connected-club-selector{max-width:none}.combination-gallery-layout{grid-template-columns:1fr}.combination-ten{grid-template-columns:1fr 1fr}.combination-ten button{min-height:106px}.combination-selected{position:static}.combination-reference-strip{gap:15px;padding:15px}.combination-reference-strip>strong{flex-basis:100%;max-width:none}.combination-score{grid-template-columns:1fr 1fr}.combination-delivery-strip b{font-size:17px}.combination-premium .combination-workspace{grid-template-columns:1fr}}

.combination-pattern-selector{margin:10px 0 20px;padding:18px 20px;border:1px solid #cfd8c5;border-radius:16px;background:#fffef9}.combination-pattern-selector header{display:flex;justify-content:space-between;align-items:center}.combination-pattern-selector header span{font-size:12px;color:#697a5d}.combination-pattern-primary,.combination-pattern-secondary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.combination-pattern-secondary{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:10px}.combination-pattern-selector button{display:flex;align-items:center;gap:10px;position:relative;padding:9px 14px;border:1px solid #ccd6c2;border-radius:11px;background:#f5f7ef;color:#34513b;text-align:left;font-size:14px;font-weight:650}.combination-pattern-selector button svg{width:40px;height:40px;flex-shrink:0}.combination-pattern-selector button b{margin-left:auto}.combination-pattern-selector details{margin-top:12px}.combination-pattern-selector summary{cursor:pointer;font-size:12px;padding:6px 0}.combination-pattern-selector p{font-size:12px;margin:12px 0 0}.combination-pattern-selector button[aria-pressed=true]{background:#304f3b;color:#fff8e9;box-shadow:0 3px 9px #2e46331a}
@media(max-width:950px){.combination-pattern-secondary{grid-template-columns:repeat(3,1fr)}.combination-pattern-selector button{padding:8px;gap:5px}.combination-pattern-selector button svg{width:28px}}
@media(max-width:600px){.combination-pattern-primary{grid-template-columns:repeat(3,1fr)}.combination-pattern-secondary{grid-template-columns:repeat(2,1fr)}.combination-pattern-selector{padding:12px}.combination-pattern-selector button{font-size:13px}}

.connected-contact-face{grid-column:1/-1;min-width:0;margin:10px 0;padding:14px;border:1px solid #cbd5c3;border-radius:16px;background:#fffdf7;color:#304d38}
.connected-contact-face>header{display:flex;justify-content:space-between;gap:12px;align-items:center}.connected-contact-face>header h3{margin:0}.connected-contact-face>header strong{font-size:.8rem}
.connected-contact-face>p{font-size:.78rem;line-height:1.5;margin:8px 0}
.contact-distance-photo{position:relative;max-width:480px;margin:auto;overflow:hidden;border-radius:12px;background:#f0f0f0;line-height:0}
.contact-distance-photo>img{display:block;width:100%;height:auto}.contact-distance-photo>img.mirrored{transform:scaleX(-1)}
.contact-distance-photo>button{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:30px;height:30px;min-height:30px;padding:0;border-radius:50%;border:2px solid white;background:#294a3ee8;color:white;font:700 12px/1 system-ui;box-shadow:0 1px 6px #0004;z-index:2}
.contact-distance-photo>button[aria-pressed=true]{background:#ad642f;border-color:#ffdf8d}.contact-distance-photo>button:focus-visible{outline:3px solid #ce8134;outline-offset:3px}
.contact-distance-marker{position:absolute;width:40px;height:40px;transform:translate(-50%,-50%);border:3px solid #f7c570;border-radius:50%;box-shadow:0 0 0 2px #6b4729;pointer-events:none;z-index:3}
.contact-distance-key{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:.66rem;color:#64745e;margin:7px 0}
.contact-distance-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:12px 0}.contact-distance-results>div{display:flex;flex-direction:column;gap:4px;background:#edf1e6;border-radius:9px;padding:9px 7px}.contact-distance-results span{display:block;flex:1;font-size:.64rem;line-height:1.3}.contact-distance-results b{display:block;line-height:1.2;font-size:clamp(.95rem,1.7vw,1.45rem);font-variant-numeric:tabular-nums;white-space:nowrap}.contact-distance-results .contact-distance-delta{background:#f5e8d9;color:#8a4f26}
.connected-contact-face>.btn{min-height:42px;height:auto;width:100%;font-size:.8rem;padding:10px;margin-top:6px}
@media(min-width:521px) and (max-width:900px){.connected-controls>.smash-transfer,.connected-controls>.connected-direction-reading{grid-column:1/-1}}

.simulator-flights .portrait-flight .chart-canvas{width:min(100%,360px);height:auto;max-height:none;aspect-ratio:520/960;margin-inline:auto}
.simulator-flights .portrait-flight .chart-canvas svg{width:100%;height:100%;max-height:none}
.simulator-flights .portrait-flight .flight-landing-label,.simulator-flights .portrait-flight .flight-deviation-label{font-size:.8rem;padding:4px 7px}
.simulator-flights .portrait-flight .chart-tick{font-size:.72rem}

.connected-input>.direction-nudges,.direction-nudges{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px}
.direction-nudges>button{min-height:34px;padding:5px 12px;border:1px solid #bdc9b0;border-radius:8px;background:#fffdf6;color:#304936;font-size:.8rem}.direction-nudges>small{color:#67745e;font-size:.7rem}
.path-distance-reading{grid-column:1/-1;border:1px solid #d0d8c8;border-radius:12px;background:#f3f6ec;padding:12px;margin:10px 0;color:#304936;font-size:.77rem;line-height:1.5}
.path-distance-reading>header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px}.path-distance-reading>header>span{color:#84613c;font-variant-numeric:tabular-nums}
.path-distance-reading>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.path-distance-reading article{padding:8px;background:#fffdf7;border-radius:8px}.path-distance-reading article>*{display:block}.path-distance-reading article>span{font-size:.7rem;color:#62735c}.path-distance-reading article>strong{margin-top:4px}
.path-distance-reading p{font-size:.77rem;line-height:1.5;margin:8px 0}.path-distance-reading .path-extreme{border-left:3px solid #ad7039;padding-left:9px}.path-distance-reading summary{cursor:pointer}

/* Independent ball and club workspaces share a compact input / response layout. */
.independent-page{max-width:1440px;margin:auto;color:#294333}
.independent-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 24px}
.independent-nav button{border:1px solid #d6ddcc;border-radius:14px;padding:12px 16px;background:#fafbf5;color:#37513e;text-align:left;font-weight:750}
.independent-nav small{display:block;font-size:12px;font-weight:400;margin-top:3px}
.independent-nav [aria-current=page]{background:#2f4d39;color:#fff9ea;border-color:#2f4d39}
.independent-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:20px 0}
.independent-heading h1{font-size:clamp(28px,3vw,44px);margin:6px 0 10px;line-height:1.1}
.independent-heading p{max-width:750px;font-size:16px;line-height:1.5;margin:0;color:#63725e}
.independent-view-tabs{display:flex;gap:8px;padding:8px;background:#e9eddf;border-radius:16px;margin:16px 0}
.independent-view-tabs button{flex:1;border:0;border-radius:10px;padding:13px;color:#435940;background:transparent;font-weight:700}
.independent-view-tabs [aria-pressed=true]{color:#fff9ea;background:#304d39}
.independent-workspace{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}
.independent-controls,.independent-result{background:#fffefa;border:1px solid #d8decd;border-radius:22px;padding:22px;min-width:0}
.independent-controls h2,.independent-result h2{font-size:24px;line-height:1.2;margin:8px 0 16px}
.independent-controls p,.independent-result p{font-size:14px;line-height:1.5;color:#65725d}
.independent-controls .simulator-control-grid{grid-template-columns:1fr;gap:14px}
.independent-controls .simulator-control{margin:0;padding:0;border:0}
.independent-controls .simulator-control label{font-size:16px}
.independent-controls .metric-inputs{grid-template-columns:minmax(80px,1fr) 94px auto;gap:12px}
.independent-controls input[type=range]{min-width:0;width:100%}
.independent-controls input[type=number]{max-width:110px;font-size:18px}
.independent-controls .flight-metric-slider{padding:16px;margin:12px 0}
.independent-controls .direction-nudges{margin-bottom:8px}
.independent-secondary{padding:16px 0;border-top:1px solid #dce2d1;margin-top:18px}
.independent-page summary{font-size:15px;font-weight:650;cursor:pointer;padding:8px 0}
.independent-secondary[open]>.simulator-control{margin:16px 0}
.independent-relation{background:#f1f4e9;border-radius:14px;padding:14px;margin:18px 0}
.independent-relation>b{float:right;font-size:20px}
.independent-relation p{margin-bottom:0}
.independent-ground{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:18px 0}
.independent-ground>span{font-size:13px;width:100%}
.independent-ground .btn{padding:8px 12px;min-height:40px;font-size:13px}
.independent-ground [aria-pressed=true]{background:#314e3b;color:#fff}
.independent-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 20px}
.independent-facts>div{background:#f0f3e9;border-radius:12px;padding:10px 12px;min-width:0}
.independent-facts span{display:block;font-size:12px;color:#63745d;margin-bottom:5px}
.independent-facts b{font-size:clamp(16px,1.5vw,22px);font-variant-numeric:tabular-nums;white-space:nowrap}
.independent-facts small{font-size:11px;font-weight:500}
.independent-result .chart-figure{margin:0;padding:12px;box-shadow:none}
.independent-result .chart-figure svg{max-height:440px}
.independent-note{font-size:13px!important;border-top:1px solid #dce2d1;padding-top:12px}
.independent-page .flight-reading-nav{margin:18px 0;gap:5px}
.independent-page .flight-reading-nav button{padding:9px;font-size:14px}
.independent-page .flight-outcome-selector{padding:16px;margin:16px 0}
.independent-page .flight-outcome-selector h2{font-size:21px}
.independent-page .flight-outcome-selector p{font-size:13px;margin:10px 0 0}
.independent-page .flight-family-buttons button{min-height:56px;padding:9px;font-size:14px}
.independent-page .simulator-toolbar{padding:12px;margin:12px 0}
.independent-page .connected-contact-face{padding:10px}
@media(max-width:760px){.independent-workspace{grid-template-columns:1fr}.independent-heading{align-items:flex-start;flex-direction:column;gap:12px}.independent-nav{grid-template-columns:repeat(2,1fr)}.independent-controls,.independent-result{padding:16px}.independent-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.independent-view-tabs button{padding:11px 8px;font-size:14px}}
.independent-overview{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}
.independent-overview-card{display:flex;flex-direction:column;gap:16px;align-items:flex-start;text-align:left;padding:28px;background:#fffef9;border:1px solid #d6decb;border-radius:20px;color:#304b38}
.independent-overview-card strong{font-family:Georgia,serif;font-size:30px}
.independent-overview-card span{font-size:16px;line-height:1.5;max-width:440px;color:#65745e}
.independent-overview-card:hover,.independent-overview-card:focus-visible{background:#edf2e5;border-color:#718464}
@media(max-width:600px){.independent-overview{grid-template-columns:1fr}.independent-overview-card{padding:20px}}

/* v118: first-read metrics beside controls; supporting material opens on demand. */
.compact-page{--compact-line:#d9e0d1;max-width:1360px}
.compact-page .independent-nav{position:sticky;top:0;z-index:12;background:#f2f4ed;padding:6px 0;margin:0 0 10px;gap:6px}
.compact-page .independent-nav button{padding:8px 12px;min-height:44px;font-size:14px;border-radius:10px}
.compact-page .independent-nav small{display:none}
.compact-title{display:flex;align-items:baseline;gap:16px;margin:8px 0 12px}.compact-title h1{font-family:Georgia,serif;font-size:30px;margin:0;line-height:1.2}.compact-title>span{font-size:13px;color:#68735f}
.compact-page .independent-heading{margin:8px 0 12px}.compact-page .independent-heading h1{font-size:28px;margin:0}.compact-page .independent-heading .eyebrow{font-size:10px}
.compact-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 12px}
.compact-clubs{display:flex;gap:4px}.compact-clubs button{background:#fdfef8;color:#40533c;border:1px solid #ccd6bf;border-radius:8px;min-height:44px;padding:8px 14px;font-size:14px;font-weight:650}
.compact-clubs [aria-pressed=true]{background:#304d39;color:#fff8e9}
.compact-page .independent-view-tabs{padding:4px;margin:0;border-radius:10px;flex:1;max-width:520px;gap:4px}
.compact-page .independent-view-tabs button{min-height:44px;padding:8px 10px;font-size:13px}
.compact-page .independent-workspace{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:14px;align-items:start}
.compact-page .independent-controls,.compact-page .independent-result{padding:16px;border-radius:16px}
.compact-page .independent-controls h2,.compact-page .independent-result h2{font-size:19px;margin:0 0 12px}
.compact-primary-controls{display:grid;gap:12px}
.compact-primary-controls .simulator-control{margin:0;padding:0}
.compact-primary-controls .simulator-control>small:empty{display:none}
.compact-page .metric-inputs{gap:10px;align-items:center;margin:4px 0}
.compact-page input[type=range]{height:36px;min-height:36px;margin:0;accent-color:#556e43}
.compact-page input[type=number]{min-height:42px;padding:7px 9px;width:92px;font-size:17px;border-radius:9px}
.compact-page .direction-nudges{margin-top:1px}.compact-page .direction-nudges button{min-height:36px;padding:5px 10px}
.compact-page button:focus-visible,.compact-page summary:focus-visible,.compact-page input:focus-visible,.compact-page select:focus-visible{outline:3px solid #b68140;outline-offset:3px}
.compact-relation{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin:12px 0;padding:11px 13px;background:#eef3e6;border-radius:10px;font-size:14px}
.compact-relation>b{margin-left:auto;font-size:22px;font-variant-numeric:tabular-nums}.compact-relation small{width:100%;font-size:12px;color:#65755c}
.compact-page .independent-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:8px 0}
.compact-page .independent-facts>div{padding:9px 10px;border-radius:9px}.compact-page .independent-facts span{font-size:11px;margin:0 0 4px}.compact-page .independent-facts b{font-size:19px}.compact-page .independent-facts small{font-size:10px}
.compact-result-title{display:flex;justify-content:space-between;align-items:center;gap:8px}.compact-result-title h2{margin:0!important}.compact-result-title>span{font-size:12px;color:#617158}
.compact-more-results{margin:0 0 8px}.compact-page .compact-more-results>summary{min-height:28px;font-size:12px;padding:4px 0}
.compact-disclosure,.compact-guide{border-top:1px solid var(--compact-line);margin:6px 0;padding:0}
.compact-page .compact-disclosure>summary,.compact-page .compact-guide>summary{min-height:42px;line-height:1.4;padding:10px 0;font-size:13px;font-weight:650;cursor:pointer}
.compact-disclosure>summary>span{float:right;font-size:12px;font-weight:400;color:#66765e}
.compact-disclosure[open]>.simulator-control{padding:8px 0}.compact-disclosure p,.compact-guide p{font-size:13px;line-height:1.5}.compact-guide a{font-size:12px}
.compact-extras{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;margin:10px 0}
.compact-extras>details{margin:0;border:1px solid var(--compact-line);border-radius:11px;padding:0 12px;background:#fafbf6;min-width:0}
.compact-extras>details[open]{grid-column:1/-1;padding-bottom:14px}
.compact-page .compact-extras summary{font-size:13px;min-height:44px;padding:12px 0}.compact-page .compact-extras .independent-secondary{border:0}
.compact-footnote{font-size:12px!important;line-height:1.45;color:#68745e;margin:8px 0}
.compact-plot .precision-chart{padding:10px;border:0;border-radius:10px;background:#fafbf5;box-shadow:none}
.compact-plot .chart-heading,.compact-plot .flight-landing-verdict,.compact-plot .flight-reading-steps{display:none}
.compact-plot .chart-meta{margin:0 0 5px;min-height:36px;font-size:10px;letter-spacing:.03em}.compact-plot .chart-meta .chart-expand{min-height:36px;padding:6px 10px;font-size:12px}
.compact-plot .chart-canvas{min-height:0;height:auto;max-width:500px;max-height:none;margin:0 auto;aspect-ratio:520/320}
.compact-plot .portrait-flight .chart-canvas{width:min(100%,calc(clamp(260px,40vh,370px)*.541667));aspect-ratio:520/960;min-height:0;max-height:none;height:auto;margin:0 auto}
.compact-page .compact-plot .chart-canvas svg{max-height:none;width:100%;height:100%}
.compact-plot .chart-tick{font-size:11px}.compact-plot .flight-landing-label,.compact-plot .flight-deviation-label{font-size:12px;padding:3px 6px}
.compact-plot .chart-axis-title,.compact-plot .chart-axis-bottom,.compact-plot .chart-axis-bottom>span{font-size:11px;margin-bottom:6px}
.compact-chart-help>summary,.compact-chart-scale>summary{font-size:12px!important;min-height:30px;padding:6px 0!important}.compact-chart-scale{border-top:1px solid #e1e6d8;margin-top:6px}
.compact-chart-scale .chart-fixed-scale{margin:0;padding:10px;font-size:12px}.compact-chart-help .chart-note{font-size:12px}.compact-chart-help .chart-legend{margin-top:5px}
.compact-page .flight-reading-nav{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;margin:8px 0 12px;padding:0;border:0}
.compact-page .flight-reading-nav button{font-size:12px;padding:6px 3px;min-height:44px;border-radius:8px}.compact-page .flight-reading-nav button>span{font-size:10px;margin-bottom:3px}
.compact-ball-mode .flight-model-selector{padding:0;margin:0;border:0;display:flex;align-items:center;justify-content:space-between;gap:12px}.compact-ball-mode .flight-model-selector>div:first-child{display:none}.compact-ball-mode .segmented{padding:3px}.compact-ball-mode button{min-height:38px;padding:6px 12px;font-size:12px}
.compact-page .flight-metric-control{padding:10px 12px;margin:0;border-radius:10px}.compact-page .flight-metric-control>label,.compact-page .control-label{font-size:14px}.compact-page .flight-metric-control small{font-size:11px}
.compact-page .flight-outcome-selector{padding:10px 0;margin:10px 0 0;border:0;background:transparent}.compact-page .flight-outcome-selector>header,.compact-page .flight-outcome-selector>p{display:none}
.compact-page .flight-outcome-grid{grid-template-columns:1fr;gap:8px}.compact-page .flight-outcome-grid h3{font-size:12px;margin:0 0 5px}.compact-page .flight-family-buttons{gap:4px}.compact-page .flight-family-buttons button{padding:6px 3px;min-height:38px;font-size:12px}.compact-page .flight-family-buttons button small{display:none}
.compact-page .flight-outcome-grid .choice{min-height:38px;font-size:12px;padding:6px}.compact-actions{position:sticky;bottom:10px;display:flex;align-items:center;gap:6px;justify-content:space-between;padding:8px;background:#fffefaf5;border-top:1px solid #dce3d2;z-index:5;margin-top:12px;border-radius:9px}.compact-actions .btn{padding:8px 10px;min-height:40px;font-size:12px}
.compact-impact .connected-contact-face{border:0;padding:0;margin:0}.compact-impact .contact-distance-photo{max-width:430px;margin:auto}.compact-impact .connected-contact-face header{padding:0;margin-bottom:4px}.compact-impact .connected-contact-face>p{font-size:12px;line-height:1.4;margin:8px 0}.compact-impact .connected-contact-face>p:last-of-type{display:none}.compact-impact .contact-distance-results{margin:8px 0;gap:6px}.compact-impact .contact-distance-results b{font-size:19px}.compact-impact .contact-distance-results span{font-size:11px}
.compact-body .body-check-selector{margin:0 0 8px;gap:8px}.compact-body .body-check-selector button{padding:10px;min-height:42px;font-size:14px}.compact-body .body-phase-tabs{margin:0 0 8px;gap:5px}.compact-body .body-phase-tabs button{padding:8px 12px;font-size:13px;min-height:40px}
.compact-body-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start}
.compact-body-item{border:1px solid var(--compact-line);background:#fffef9;border-radius:12px;min-width:0}.compact-body-trigger{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:10px;width:100%;padding:12px 14px;border:0;background:transparent;color:#304d39;min-height:64px}.compact-body-trigger b{display:block;font-size:14px}.compact-body-trigger small{display:block;font-size:12px;color:#68745f;font-weight:400;line-height:1.4;margin-top:4px}.compact-body-trigger>span:last-child{font-size:22px}
.compact-body-item:has([aria-expanded=true]){grid-column:1/-1}.compact-body-detail{padding:0 14px 12px}.compact-body-detail p{font-size:13px;line-height:1.5}.compact-body-detail .hypothesis-controls button{padding:8px 12px;font-size:13px;min-height:42px}
.compact-simulator .simulator-header{margin-bottom:12px}.compact-simulator .simulator-header h1{font-size:28px}.compact-simulator .simulator-header p{font-size:13px}.compact-simulator .simulator-outcomes{margin:10px 0}.compact-simulator .simulator-outcomes>div{padding:10px}.compact-simulator .simulator-workspace{gap:14px}.compact-simulator .simulator-adjustments,.compact-simulator .simulator-flights{padding:16px}.compact-simulator .simulator-adjustments>.precision-chart{display:none}.compact-simulator .simulator-control-grid{gap:12px}.compact-simulator .simulator-control label{font-size:13px}.compact-simulator .simulator-flights h2{font-size:19px}
@media(min-width:1000px){.compact-page .independent-result{position:sticky;top:64px}.compact-page .independent-controls{min-width:0}}
@media(max-width:760px){.compact-page .independent-workspace{grid-template-columns:1fr}.compact-title{flex-wrap:wrap;gap:4px}.compact-title>span{width:100%}.compact-page .independent-nav{grid-template-columns:repeat(4,1fr)}.compact-page .independent-nav button{font-size:12px;padding:8px 4px;text-align:center}.compact-toolbar{gap:6px}.compact-page .independent-view-tabs{max-width:none;flex-basis:100%}.compact-page .flight-reading-nav{grid-template-columns:repeat(4,1fr)}.compact-page .independent-facts{grid-template-columns:repeat(2,1fr)}.compact-extras{grid-template-columns:1fr;gap:6px}.compact-body-list{grid-template-columns:1fr}.compact-page .independent-result{position:static}.compact-simulator .simulator-workspace{grid-template-columns:1fr}}
@media(max-height:760px) and (min-width:761px){.compact-plot .portrait-flight .chart-canvas{width:150px}.compact-page .independent-nav{margin-bottom:5px}.compact-title{margin:5px 0 8px}.compact-page .independent-controls,.compact-page .independent-result{padding:12px}.compact-primary-controls{gap:8px}}

/* Compact, ordered learning paths with isolated experiments. */
.flight-learning-timeline{margin:10px 0 16px;color:#2d4836}
.flight-learning-timeline>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.flight-learning-timeline>header strong{font-size:14px}.flight-learning-timeline>header small{font-size:11px;color:#69735e}
.flight-learning-timeline ol{display:grid;grid-template-columns:repeat(var(--learning-count),minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
.flight-learning-timeline li{min-width:0;position:relative}.flight-learning-timeline li:not(:last-child):after{content:'';position:absolute;right:-8px;top:50%;width:8px;border-top:1px solid #bfcab7}
.flight-learning-timeline button{display:flex;align-items:center;gap:9px;width:100%;min-height:76px;padding:12px 10px;text-align:left;border:1px solid #ced7c4;border-radius:12px;background:#fffef8;color:#2d4836;cursor:pointer;transition:background .15s,border-color .15s}
.flight-learning-timeline button:hover{background:#edf2e6;border-color:#718461}.flight-learning-timeline button:focus-visible{outline:3px solid #ad7846;outline-offset:3px}
.flight-learning-timeline button[aria-current=step]{background:#304d39;border-color:#304d39;color:#fff9e9}
.learning-number{font-size:11px;font-variant-numeric:tabular-nums;color:#9a7444;border:1px solid #d9d5c1;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;flex:none}
.flight-learning-timeline button[aria-current=step] .learning-number{color:#ebd4a3;border-color:#81917a}
.flight-learning-timeline b{font-size:12px;line-height:1.3;display:block}.flight-learning-timeline button small{font-size:10px;line-height:1.4;display:block;margin-top:4px;opacity:.78}.learning-enter{margin-left:auto;font-size:17px;flex:none}
.flight-learning-page .learning-why,.flight-learning-page .learning-task{font-size:13px;line-height:1.55;margin:10px 0}
.learning-task{padding:12px;border-left:3px solid #aa7845;background:#f4f1e6;border-radius:0 8px 8px 0;color:#4d5947}
.learning-controls{display:grid;gap:14px;margin:18px 0}.learning-control label{display:flex;justify-content:space-between;font-size:13px;font-weight:700;margin-bottom:7px}.learning-control label span{font-weight:400;color:#727962}
.learning-control>div{display:grid;grid-template-columns:minmax(0,1fr) 94px;gap:12px;align-items:center}.learning-control input[type=number]{min-width:0;width:100%;height:44px;border:1px solid #b7c7a8;border-radius:9px;background:white;padding:8px 10px;color:#304d39;font-size:16px;font-variant-numeric:tabular-nums}.learning-control input[type=range]{min-width:0;width:100%;min-height:32px;accent-color:#557047}.learning-control small{display:block;font-size:10px;line-height:1.5;margin-top:6px;color:#6f785f}
.learning-equation{font-size:12px;padding:10px;background:#eff2e9;border-radius:8px}.learning-fixed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;font-size:12px}.learning-fixed>div{padding:8px;background:#f4f5ee}.learning-fixed dd{margin:4px 0 0;font-weight:700}
.learning-comparison{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.learning-comparison th,.learning-comparison td{padding:10px 6px;text-align:right;border-bottom:1px solid #dde3d5}.learning-comparison th:first-child{text-align:left}.learning-comparison thead{font-size:10px;color:#6d775f}.learning-comparison tbody th{font-weight:600}.learning-comparison small{display:block;font-weight:400;font-size:10px;color:#7b816e}.learning-comparison td:nth-child(3){background:#edf2e5;color:#304d39}.learning-comparison td:last-child{color:#8d6036}
.learning-plot-switch,.learning-ground{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.learning-plot-switch button,.learning-ground button{min-height:40px;padding:8px 14px;border:1px solid #cbd5c0;background:#fffefa;border-radius:8px;font-size:12px;color:#304d39;cursor:pointer}.learning-plot-switch button[aria-pressed=true],.learning-ground button[aria-pressed=true]{background:#304d39;color:#fff9e8}
.learning-sources{display:flex;gap:14px;flex-wrap:wrap;font-size:12px}.learning-sources a{color:#456544;text-decoration:underline}
.flight-learning-page .independent-controls>h2{margin-top:7px}.flight-learning-page .compact-title .btn{min-height:40px;padding:8px 14px;font-size:12px}
@media(max-width:1050px){.flight-learning-timeline ol{grid-template-columns:repeat(2,minmax(0,1fr))}.flight-learning-timeline li:after{display:none}.flight-learning-timeline button{min-height:68px}.flight-learning-timeline>header{flex-wrap:wrap;gap:3px}}
@media(max-width:420px){.flight-learning-timeline button{gap:6px;padding:9px 7px}.learning-number{width:21px;height:21px;font-size:10px}.learning-enter{display:none}.learning-comparison{font-size:11px}.learning-comparison th,.learning-comparison td{padding:9px 4px}}

/* Palo: controls, impact geometry and resulting flight share one visible workspace. */
.club-visual-page{max-width:1480px}
.club-visual-workspace{display:grid;grid-template-columns:minmax(250px,.88fr) minmax(290px,1.12fr) minmax(280px,1fr);gap:12px;align-items:start}
.club-visual-workspace>section{min-width:0;background:#fffefa;border:1px solid #d8decd;border-radius:18px;padding:16px;box-shadow:0 5px 18px #293b2a05}
.club-visual-workspace .club-panel-head{margin-bottom:14px}.club-panel-head>span{display:block;color:#927448;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:6px}
.club-visual-workspace .club-panel-head h2{font-family:'Avenir Next',system-ui,sans-serif;font-size:19px;line-height:1.25;letter-spacing:-.02em;margin:0}
.club-visual-page .club-flight-panel{position:static}
.club-visual-page .club-adjustments label{font-size:13px}.club-visual-page .club-adjustments .metric-inputs{grid-template-columns:minmax(60px,1fr) 76px auto;gap:6px}.club-visual-page .club-adjustments input[type=number]{width:76px;font-size:16px}.club-visual-page .club-adjustments .direction-nudges{margin-bottom:0;font-size:10px}.club-visual-page .club-adjustments .direction-nudges button{min-height:36px;font-size:12px;padding:6px 9px}
.club-visual-page .compact-primary-controls{gap:15px}.club-visual-page .compact-relation{padding:10px;margin:14px 0 10px;font-size:12px;gap:3px 8px}.club-visual-page .compact-relation>b{font-size:23px}.club-visual-page .compact-relation small{font-size:10px}
.club-vector-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 12px;font-variant-numeric:tabular-nums}
.club-vector-readings>div{padding:9px 7px;border-radius:9px;border-top:3px solid currentColor;background:#f4f3eb}.club-vector-readings span{font-size:10px;display:block;line-height:1.3}.club-vector-readings b{display:block;font-size:19px;line-height:1.3;margin-top:3px;font-weight:650}.club-vector-face{color:#a36a35}.club-vector-path{color:#4c7758}.club-vector-ball{color:#18718a}
.club-visual-page .club-orientation-panel .precision-chart{padding:0;background:#fafbf5;border-radius:12px}
.club-visual-page .club-orientation-panel .chart-meta{padding:8px 8px 0;flex-wrap:wrap;gap:4px;font-size:9px}.club-visual-page .club-orientation-panel .chart-meta>span:first-child{display:none}.club-visual-page .club-orientation-panel .chart-meta .chart-view{background:transparent;padding:0}.club-visual-page .club-orientation-panel .chart-expand{margin-left:auto;font-size:11px;padding:5px 8px}
.club-visual-page .club-orientation-panel .angle-orientation{font-size:10px;padding:4px 8px;margin:0}
.club-visual-page .club-orientation-panel .chart-canvas{width:100%;max-width:none;min-height:0;aspect-ratio:520/380}
.club-visual-page .club-orientation-panel .angle-side-plate .chart-canvas{aspect-ratio:520/320}
.club-visual-page .club-orientation-panel .compact-chart-help{padding:0 9px}.club-visual-page .club-orientation-panel .compact-chart-help>summary{font-size:11px!important}
.club-visual-caption{font-size:11px;line-height:1.5;color:#66725d;margin:12px 0}
.club-contact-status{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;font-size:11px;line-height:1.5;padding-top:10px;border-top:1px solid #dde3d4;color:#52644b}.club-contact-status b{font-weight:650}
.club-visual-page .club-flight-panel .independent-facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}.club-visual-page .club-flight-panel .independent-facts>div{padding:8px 10px}.club-visual-page .club-flight-panel .independent-facts b{font-size:19px}
.club-flight-verdict{font-size:12px;color:#5d7152;padding-bottom:2px}
.club-visual-page .club-flight-panel .portrait-flight .chart-canvas{width:min(100%,calc(clamp(240px,36vh,310px)*.541667))}
.club-visual-page .club-flight-panel .precision-chart{padding:8px 4px}.club-visual-page .club-flight-panel .chart-axis-bottom{flex-wrap:wrap;gap:5px;font-size:10px}.club-visual-page .club-flight-panel .chart-meta{font-size:9px;flex-wrap:wrap;gap:4px}.club-visual-page .club-flight-panel .chart-expand{font-size:11px;padding:5px 8px}
@media(min-width:1101px){.club-visual-page .compact-extras{margin-top:12px}.club-visual-workspace>section{min-height:450px}}
@media(max-width:1100px) and (min-width:761px){.club-visual-workspace{grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr)}.club-visual-workspace .club-adjustments{grid-column:1;grid-row:1 / span 2;position:sticky;top:60px}.club-visual-workspace .club-orientation-panel{grid-column:2;grid-row:1}.club-visual-workspace .club-flight-panel{grid-column:2;grid-row:2}.club-visual-page .club-orientation-panel .chart-canvas{max-width:310px;margin:auto}.club-visual-page .club-flight-panel .portrait-flight .chart-canvas{width:140px}}
@media(max-width:760px){.club-visual-workspace{grid-template-columns:1fr;gap:10px}.club-visual-workspace>section{padding:14px}.club-visual-page .club-orientation-panel .chart-canvas{max-width:420px;margin:auto}.club-visual-page .club-adjustments .compact-primary-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.club-visual-page .club-adjustments .metric-inputs{grid-template-columns:minmax(45px,1fr) 65px auto}.club-visual-page .club-adjustments input[type=number]{width:65px}.club-visual-page .club-panel-head{margin-bottom:10px}.club-visual-page .club-flight-panel .portrait-flight .chart-canvas{width:170px}}
@media(max-width:400px){.club-visual-page .club-adjustments .compact-primary-controls{grid-template-columns:1fr}.club-vector-readings b{font-size:18px}}
/* Respond to the available workspace, including the desktop sidebar. */
.club-visual-page{container-type:inline-size;container-name:clubworkspace}
@container clubworkspace (max-width:960px){.club-visual-workspace{grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr)}.club-visual-workspace>section{min-height:0}.club-visual-workspace .club-adjustments{grid-column:1;grid-row:1 / span 2;position:sticky;top:60px}.club-visual-workspace .club-orientation-panel{grid-column:2;grid-row:1}.club-visual-workspace .club-flight-panel{grid-column:2;grid-row:2}.club-visual-page .club-orientation-panel .chart-canvas{max-width:310px;margin:auto}}
@container clubworkspace (max-width:620px){.club-visual-workspace{grid-template-columns:minmax(0,1fr)}.club-visual-workspace .club-adjustments,.club-visual-workspace .club-orientation-panel,.club-visual-workspace .club-flight-panel{grid-column:auto;grid-row:auto;position:static}.club-visual-page .club-orientation-panel .chart-canvas{max-width:420px}}
.club-visual-page .precision-chart{--chart-face:#a36a35;--chart-path:#4c7758}
.club-visual-page .club-flight-panel .precision-chart{--chart-flight:#18718a}
.club-visual-page .club-flight-panel .chart-flight{stroke:#18718a}
.club-visual-page .club-orientation-panel .spin-loft-dimension-label{padding:7px 8px}.club-visual-page .club-orientation-panel .spin-loft-dimension-label>strong{font-size:22px}.club-visual-page .club-orientation-panel .spin-loft-dimension-label>span,.club-visual-page .club-orientation-panel .spin-loft-dimension-label>small{font-size:10px}

/* Equal panels and a shared visual baseline across the desktop workspace. */
.club-visual-workspace{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.club-visual-workspace>section{height:100%;min-height:0;box-sizing:border-box}
.club-visual-workspace .club-panel-head{min-height:46px;margin-bottom:12px}
.club-visual-page .club-flight-panel .portrait-flight .chart-canvas{width:min(100%,calc(clamp(230px,31vh,280px)*.541667))}
.club-visual-page .club-flight-panel .chart-axis-bottom{margin-top:12px;line-height:1.5;padding-bottom:4px}
.club-visual-page .club-orientation-panel .chart-canvas{max-width:380px;margin-inline:auto}
.club-visual-page .club-orientation-panel .chart-meta{min-height:36px}
.club-visual-page .club-contact-status{margin-top:10px}
.wedge-current-note{padding:9px 10px;border-radius:8px;background:#f1f3e9;font-size:11px!important}
.wedge-reference{margin:12px 0!important;background:#fffefa;padding:0 16px!important;border:1px solid #d8decd;border-radius:14px}
.wedge-data-scroll{overflow-x:auto}.wedge-data-scroll table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}.wedge-data-scroll caption{text-align:left;padding:12px 8px;font-weight:700}.wedge-data-scroll th,.wedge-data-scroll td{text-align:left;padding:8px;border-bottom:1px solid #e0e5d7}.wedge-data-scroll td{white-space:nowrap}.wedge-data-scroll tbody th{font-weight:500}.wedge-reference .learning-sources{padding:12px 0}
@media(max-width:1100px) and (min-width:761px){.club-visual-workspace{grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr)}.club-visual-workspace .club-adjustments{height:auto;align-self:start}}
@media(max-width:760px){.club-visual-workspace{grid-template-columns:minmax(0,1fr)}.club-visual-workspace>section{height:auto}}
@container clubworkspace (max-width:960px){.club-visual-workspace{grid-template-columns:minmax(230px,.9fr) minmax(0,1.1fr)}.club-visual-workspace>section{height:auto}.club-visual-workspace .club-adjustments{align-self:start}}
@container clubworkspace (max-width:620px){.club-visual-workspace{grid-template-columns:minmax(0,1fr)}}

/* Parameter priorities stay above the live workbench; only the chosen step expands. */
.influence-timeline{margin:10px 0 16px}
.influence-timeline>header>div{display:grid;gap:3px}
.influence-timeline>header label{display:flex;align-items:center;gap:10px;font-size:11px;color:#68745e}
.influence-timeline select{min-height:40px;max-width:230px;padding:8px 32px 8px 12px;border:1px solid #cad5bf;border-radius:10px;background:#fffef9;color:#304d39;font-family:inherit;font-size:13px;font-weight:600}
.influence-timeline [hidden]{display:none}
.influence-explanation{display:flex;align-items:start;justify-content:space-between;gap:24px;padding:16px 18px;margin-top:8px;background:#f2f4eb;border:1px solid #d7dece;border-radius:12px}
.influence-explanation h3{font-size:16px;margin:0 0 7px}.influence-explanation p{font-size:13px;line-height:1.5;margin:5px 0;max-width:85ch}
.influence-explanation a{font-size:11px;max-width:220px;flex-shrink:0;color:#426446;text-decoration:underline;line-height:1.5}
.influence-test{padding:8px 14px!important;margin:8px 0;background:#fffef9;border:1px solid #d7dece;border-radius:12px}
.influence-test>p{font-size:12px;line-height:1.5}.influence-test-grid{display:grid;grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr);gap:24px}.influence-test-grid>div{min-width:0}
.influence-test .chart-canvas svg{max-height:260px}.influence-test .learning-controls{margin:12px 0}.influence-test .learning-task{font-size:12px;line-height:1.5}.influence-test .btn{min-height:40px;padding:8px 14px;font-size:12px}
@media(max-width:750px){.influence-timeline>header{align-items:start}.influence-timeline>header label{flex-wrap:wrap;gap:5px}.influence-explanation{display:block;padding:12px}.influence-explanation a{display:inline-block;margin-top:6px;max-width:none}.influence-test-grid{grid-template-columns:1fr;gap:12px}}

/* Connected medallions and alternating flags, shared by every learning timeline. */
.timeline-stage{position:relative;border-radius:18px;background:linear-gradient(180deg,#fcfcf7 0%,#f4f5ef 100%);padding:2px 8px;margin-top:12px;isolation:isolate;border:1px solid #e0e5d7}
.timeline-rail{position:absolute;inset:2px 8px;width:calc(100% - 16px);height:220px;color:#2f4d44;opacity:.9;z-index:-1;pointer-events:none}
.flight-learning-timeline .timeline-stage ol{grid-template-columns:repeat(var(--learning-count),minmax(0,1fr));gap:0;margin:0;padding:0}
.flight-learning-timeline .timeline-stage li{--step:#b36e38;--step-dark:#825026;--step-glow:#b36e3825;min-width:0;margin:0;padding:0}
.flight-learning-timeline .timeline-stage li:nth-child(4n+2){--step:#bc8b35;--step-dark:#816125;--step-glow:#bc8b3525}
.flight-learning-timeline .timeline-stage li:nth-child(4n+3){--step:#658c66;--step-dark:#426646;--step-glow:#658c6625}
.flight-learning-timeline .timeline-stage li:nth-child(4n+4){--step:#348b98;--step-dark:#226572;--step-glow:#348b9825}
.flight-learning-timeline .timeline-stage li:after{display:none}
.flight-learning-timeline .timeline-stage li>button{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:64px 64px 76px;row-gap:8px;justify-items:center;align-items:center;height:220px;min-height:0;border:0;border-radius:13px;padding:0 12px;background:transparent;text-align:center;color:#304a39;box-shadow:none;transition:background .18s}
.flight-learning-timeline .timeline-stage li>button:hover{background:#ffffff70}
.flight-learning-timeline .timeline-stage li>button:focus-visible{outline:3px solid var(--step);outline-offset:-3px;background:#fffefb}
.timeline-ribbon{grid-row:1;align-self:center;position:relative;display:flex;align-items:center;justify-content:center;min-width:106px;height:28px;padding:0 20px 0 15px;background:var(--step);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%,8px 50%);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;color:#fffef6}
.timeline-node{grid-row:2;position:relative;width:60px;height:60px;border-radius:50%;background:var(--step);color:#fffef8;display:grid;place-items:center;border:3px solid #fffef8;box-shadow:0 0 0 4px var(--step),0 5px 13px #203a2a1a;transition:box-shadow .18s,background .18s}
.timeline-node:before,.timeline-node:after{content:'';position:absolute;left:50%;width:2px;transform:translateX(-50%);background:var(--step)}
.timeline-node:before{height:22px;top:-29px;background:radial-gradient(circle,var(--step) 2px,transparent 2.5px) center/5px 7px;width:5px}
.timeline-node:after{height:14px;bottom:-21px}
.timeline-node>svg{width:29px;height:29px;display:block}
.timeline-action{position:absolute;right:-6px;bottom:-5px;width:18px;height:18px;background:#fffdf7;color:var(--step-dark);border:1px solid var(--step);border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;line-height:1}
.timeline-copy{grid-row:3;align-self:start;min-width:0;max-width:230px;padding-top:12px}
.flight-learning-timeline .timeline-copy b{font-size:14px;line-height:1.25;letter-spacing:-.02em;color:var(--step-dark)}
.flight-learning-timeline .timeline-copy small{font-size:11px;line-height:1.4;color:#63715f;opacity:1;margin:5px auto 0;max-width:200px}
.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-copy{grid-row:1;align-self:end;padding:0 0 12px}
.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-ribbon{grid-row:3;align-self:start;margin-top:20px}
.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-node:before{height:14px;top:-21px;width:2px;background:var(--step)}
.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-node:after{height:22px;bottom:-29px;background:radial-gradient(circle,var(--step) 2px,transparent 2.5px) center/5px 7px;width:5px}
.flight-learning-timeline .timeline-stage button[aria-current=step] .timeline-node{background:var(--step-dark);box-shadow:0 0 0 4px var(--step),0 0 0 10px var(--step-glow),0 6px 15px #203a2a20}
.flight-learning-timeline .timeline-stage button[aria-current=step] .timeline-ribbon{background:var(--step-dark)}
.course-timeline-number{background:#638764;color:#fffdf5;border:3px solid #fffdf5;box-shadow:0 0 0 3px #638764}
.course-timeline-number svg{width:27px;height:27px}
.course-timeline-state{align-self:start;color:#fffdf5;background:#638764;padding:5px 15px 5px 12px;clip-path:polygon(0 0,calc(100% - 8px) 0,100% 50%,calc(100% - 8px) 100%,0 100%,5px 50%);font-weight:700}
.course-timeline:before{width:4px;left:24px;background:#3f5b49}
.course-timeline-card.is-recorded .course-timeline-number{background:#344e3c;box-shadow:0 0 0 3px #638764,0 0 0 7px #63876425}
@media(max-width:700px){
 .timeline-stage{padding:10px 12px}.timeline-rail{display:none}
 .flight-learning-timeline .timeline-stage ol{grid-template-columns:1fr;gap:0}
 .flight-learning-timeline .timeline-stage li>button{height:auto;min-height:91px;grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto auto;gap:4px 17px;padding:10px 6px;text-align:left;justify-items:start}
 .timeline-node{grid-column:1;grid-row:1/3;align-self:center;width:44px;height:44px;border-width:2px;box-shadow:0 0 0 3px var(--step)}
 .timeline-node>svg{width:24px;height:24px}.timeline-node:before,.timeline-node:after{display:none}
 .flight-learning-timeline .timeline-stage li:not(:last-child):after{display:block;top:57px;left:26px;right:auto;width:4px;height:calc(100% - 12px);border:0;background:#3f5b49;z-index:-1}
 .timeline-ribbon,.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-ribbon{grid-column:2;grid-row:1;align-self:end;margin:0;min-width:82px;height:21px;font-size:8px}
 .timeline-copy,.flight-learning-timeline .timeline-stage li:nth-child(even) .timeline-copy{grid-column:2;grid-row:2;align-self:start;padding:3px 0 0;max-width:none}
 .flight-learning-timeline .timeline-copy b{font-size:13px}.flight-learning-timeline .timeline-copy small{font-size:10px;margin:3px 0 0;max-width:none}
 .timeline-action{width:16px;height:16px;font-size:11px}.course-timeline:before{left:19px}
}
@media(prefers-reduced-motion:reduce){.flight-learning-timeline .timeline-stage li>button,.timeline-node{transition:none}}
.timeline-ribbon{background:var(--step-dark)}
.flight-learning-timeline .timeline-stage li:nth-child(4n+2){--step:#ad802d}
.flight-learning-timeline .timeline-stage button[aria-current=step] .timeline-ribbon{background:#304d39}
@media(min-width:701px) and (max-width:1050px){.flight-learning-timeline .timeline-copy b{font-size:12px;line-height:1.2}.flight-learning-timeline .timeline-copy small{font-size:10px;line-height:1.35}.flight-learning-timeline .timeline-stage li>button{padding:0 8px}}

/* Keep the eight observable results separate from their causal timelines. */
.ball-observation-menu{margin:14px 0 16px}
.ball-observation-menu>header{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;color:#304b37}
.ball-observation-menu>header strong{font-size:15px}.ball-observation-menu>header small{font-size:11px;color:#758069}
.ball-observation-menu .flight-reading-nav{margin:0!important;padding:0;border:0;gap:5px}
.ball-observation-menu .flight-reading-nav button{background:#f9faf5;border:1px solid #dce2d2;padding:9px 6px;min-height:62px;line-height:1.25}
.ball-observation-menu .flight-reading-nav button b{font-size:12px;font-weight:650}
.ball-observation-menu .flight-reading-nav button[aria-current=step]{background:#304b37;border-color:#304b37;color:#fff9e9}
.radar-free-panel{padding:15px 17px;margin:0 0 18px;border:1px solid #d9dfcf;border-radius:16px;background:#fffef9;color:#304b37}
.radar-free-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.radar-free-panel .eyebrow{font-size:9px;letter-spacing:.12em;color:#947341}
.radar-free-panel>header h2{font-family:inherit;font-size:17px;line-height:1.3;margin:4px 0 0;letter-spacing:-.02em}
.radar-free-panel>header>span{font-size:11px;color:#738069;text-align:right}
.radar-free-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.radar-free-exercise{border:1px solid #dce2d2;border-radius:12px;background:#f6f8f1;overflow:hidden}
.radar-free-exercise>summary{display:flex;gap:12px;align-items:center;cursor:pointer;padding:12px;list-style:none;min-height:62px}
.radar-free-exercise>summary::-webkit-details-marker{display:none}
.radar-free-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#fffdf7;border:1px solid #b18c4e;color:#856432;font-size:12px;font-weight:700;box-shadow:0 0 0 3px #b18c4e12}
.radar-free-exercise>summary b{display:block;font-size:13px;line-height:1.35}.radar-free-exercise>summary small{display:block;font-size:10px;font-weight:400;color:#74816b;margin-top:3px}
.radar-free-exercise>summary>span:last-child{margin-left:auto;font-size:21px;font-weight:400;color:#8a744d}
.radar-free-exercise[open]>summary{border-bottom:1px solid #dce2d2}.radar-free-exercise[open]>summary>span:last-child{transform:rotate(45deg)}
.radar-free-content{padding:3px 16px 12px;background:#fffef9;font-size:12px;line-height:1.6}
.radar-free-content p{font-size:12px;line-height:1.6;margin:10px 0}.radar-free-content ol{padding-left:18px;margin:12px 0}.radar-free-content li{padding-left:3px;margin:7px 0}
.radar-free-content .radar-free-record{background:#edf2e6;border-left:3px solid #75916c;padding:10px 12px;border-radius:0 7px 7px 0}
.radar-free-content .radar-free-limit{font-size:11px;color:#75806d}
.radar-free-method{margin-top:10px;font-size:11px;color:#68775f}.radar-free-method summary{cursor:pointer;font-size:11px;font-weight:600}.radar-free-method p{font-size:12px;line-height:1.6;max-width:1000px}.radar-free-method a{color:#45664d;text-underline-offset:3px}
.welcome-field-entry{border:0;background:none;color:#49634b;font-size:13px;text-decoration:underline;text-underline-offset:4px;padding:8px;cursor:pointer}
@media(max-width:1100px){.ball-observation-menu .flight-reading-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.ball-observation-menu .flight-reading-nav button{min-height:54px}}
@media(max-width:700px){.radar-free-panel{padding:13px}.radar-free-grid{grid-template-columns:1fr}.radar-free-panel>header{align-items:start}.radar-free-panel>header>span{display:none}.ball-observation-menu>header{flex-wrap:wrap;gap:3px}.ball-observation-menu .flight-reading-nav button b{font-size:11px}.ball-observation-menu .flight-reading-nav button{padding:8px 3px}}
@media(max-width:380px){.ball-observation-menu .flight-reading-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}

.observation-tabs{display:flex;gap:4px;padding:4px;background:#edf0e6;border:1px solid #dce2d2;border-radius:10px;flex-shrink:0}
.observation-tabs button{border:0;border-radius:7px;background:transparent;color:#596b52;padding:9px 19px;font:inherit;font-size:12px;font-weight:650;cursor:pointer;min-height:38px}
.observation-tabs button[aria-selected=true]{background:#304b37;color:#fffdf4;box-shadow:0 2px 6px #22382515}
.observation-tabs button:focus-visible{outline:3px solid #b18c4e;outline-offset:2px}
.observation-method-panel [role=tabpanel][hidden]{display:none!important}
.radar-practice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start;margin-bottom:16px}
.radar-practice{border:1px solid #dce2d2;border-radius:12px;background:#f6f8f1;overflow:hidden}
.radar-practice>summary{display:flex;align-items:center;gap:12px;padding:12px;min-height:60px;cursor:pointer;list-style:none;font-size:13px}
.radar-practice>summary::-webkit-details-marker{display:none}.radar-practice>summary>span:last-child{margin-left:auto;font-size:21px;color:#8a744d;font-weight:400}.radar-practice[open]>summary>span:last-child{transform:rotate(45deg)}
.radar-metric-guide>h3{font-size:15px;margin:12px 0}.radar-metric-guide .metric-guide-content{padding:0;border:0}.radar-metric-guide .metric-guide-method{margin:0 0 12px;font-size:12px}.radar-metric-guide .metric-guide-columns{gap:18px}.radar-metric-guide .metric-guide-columns h3{font-size:11px}.radar-metric-guide .metric-guide-columns dt{font-size:12px}.radar-metric-guide .metric-guide-columns dd{font-size:12px;line-height:1.5}
@media(max-width:700px){.observation-method-panel>header{flex-wrap:wrap;gap:10px}.observation-tabs{width:100%}.observation-tabs button{flex:1}.radar-practice-grid{grid-template-columns:1fr}}

/* Capacity: physical exploration and teaching workspace. */
.course-capacity-page{--capacity-ink:#2d4938;--capacity-gold:#9b743d;--capacity-line:#dce2d2}
.course-capacity-page .course-section-head{margin-bottom:22px}
.course-capacity-page .course-capacity-options{gap:12px;margin-bottom:24px}
.course-capacity-page .course-capacity-options button{padding:18px;border-width:2px;border-color:var(--capacity-line)}
.course-capacity-page .course-capacity-options button[aria-pressed=true]{border-color:#58734a;padding:18px}
.course-capacity-page .course-capacity-options strong{font-size:clamp(17px,1.25vw,22px);line-height:1.25}
.course-capacity-page .course-capacity-options p{font-size:14px;line-height:1.5;margin-top:9px}
.capacity-library,.capacity-path-panel{background:#fffefa;border:1px solid var(--capacity-line);border-radius:22px;padding:clamp(18px,2vw,30px);margin-block:20px;color:var(--capacity-ink)}
.capacity-library-head,.capacity-test-detail>header{display:flex;align-items:center;justify-content:space-between;gap:20px}
.capacity-library h2,.capacity-path-panel h2{font-size:clamp(24px,2vw,32px);margin:5px 0 8px}
.capacity-library p,.capacity-path-panel p{font-size:15px;line-height:1.6;margin:8px 0;color:#5f6d5c}
.capacity-library h3{font-size:25px;line-height:1.2;margin:6px 0}
.capacity-library h4,.capacity-path-panel h3{font-size:18px;line-height:1.35;margin:0 0 10px}
.capacity-count{flex:none;text-align:right;font-size:27px;font-weight:750;color:var(--capacity-gold)}
.capacity-count small{display:block;font-size:12px;font-weight:400;color:#5f6d5c}
.capacity-groups{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0 12px;background:#eff2e9;border-radius:13px;padding:5px}
.capacity-groups button,.capacity-record button{min-height:44px;border:1px solid transparent;background:transparent;border-radius:9px;padding:10px 13px;font:inherit;font-size:14px;color:var(--capacity-ink);cursor:pointer}
.capacity-groups button{flex:1;white-space:normal}
.capacity-groups button[aria-pressed=true]{background:var(--capacity-ink);color:#fffefa;box-shadow:0 2px 5px #253a2520}
.capacity-test-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:23px}
.capacity-test-picker button{min-height:70px;min-width:0;padding:12px;text-align:left;background:#fffefa;border:1px solid var(--capacity-line);border-radius:11px;color:var(--capacity-ink);font:inherit;font-size:14px;cursor:pointer}
.capacity-test-picker button span{display:block;font-weight:700;line-height:1.3}
.capacity-test-picker small{display:block;font-size:11px;margin-top:6px;color:#66715d}
.capacity-test-picker [aria-pressed=true]{border-color:var(--capacity-gold);background:#f5efe3;box-shadow:inset 0 0 0 1px var(--capacity-gold)}
.capacity-test-detail>header{padding-bottom:18px;border-bottom:1px solid var(--capacity-line)}
.capacity-library a{font-size:13px;color:#765826;text-decoration:underline;text-underline-offset:3px}
.capacity-test-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px;align-items:stretch}
.capacity-protocol ol{padding-left:23px;margin:0 0 18px}
.capacity-protocol li{font-size:15px;line-height:1.6;padding:0 0 9px 5px}
.capacity-protocol li::marker{color:var(--capacity-gold);font-weight:700}
.capacity-criterion{background:#f1f4ec;padding:16px;border-radius:12px;margin-top:16px}
.capacity-criterion p{margin-bottom:0}
.capacity-swing-connection{border-radius:15px;background:#f6f0e3;border:1px solid #e2d4b7;padding:23px}
.capacity-swing-connection h4{font-size:clamp(23px,2vw,30px);line-height:1.2;margin:12px 0 18px;color:#6f4f27}
.capacity-swing-flags{display:block;font-size:clamp(18px,1.6vw,24px);line-height:1.35;color:var(--capacity-ink)}
.capacity-swing-connection details{border-top:1px solid #dfd3bc;margin-top:20px;padding-top:16px}
.capacity-library summary,.capacity-path-panel summary{cursor:pointer;font-size:15px;font-weight:700;line-height:1.4;padding:10px 0;min-height:44px;box-sizing:border-box}
.capacity-record{border-block:1px solid var(--capacity-line);margin-top:24px;padding:18px 0}
.capacity-record>div:first-child{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px}
.capacity-record h4{margin:0}
.capacity-record [role=group]{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.capacity-record button{border-color:var(--capacity-line);background:#fffefa}
.capacity-record button[aria-pressed=true]{background:#e7eedf;border-color:#526e44;font-weight:700}
.capacity-record button[data-capacity-result=pain][aria-pressed=true]{background:#f9e9df;border-color:#a14d34;color:#793b28}
.capacity-record .capacity-result-status{font-size:13px;margin-top:12px}
.capacity-exercises{padding-top:10px}
.capacity-exercises>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;font-size:18px}
.capacity-exercises>summary:before{content:'+';color:var(--capacity-gold);font-size:24px}
.capacity-exercises[open]>summary:before{content:'−'}
.capacity-exercises>summary span{flex:1}
.capacity-exercises>summary small{font-size:12px;font-weight:400}
.capacity-exercise-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}
.capacity-exercise-grid>article,.capacity-exercise-grid>details{border:1px solid var(--capacity-line);border-radius:13px;padding:18px;background:#f8faf4}
.capacity-exercise-grid h4{margin-top:8px}
.capacity-exercise-grid small,.capacity-exercise-grid a{display:block;margin-top:10px;font-size:12px}
.capacity-retest{border-left:3px solid var(--capacity-gold);padding:8px 0 8px 15px;margin-top:18px}
.capacity-method{margin-top:18px;border-top:1px solid var(--capacity-line);padding-top:8px}
.capacity-method li{font-size:14px;line-height:1.6;margin-bottom:8px}
.capacity-links{display:flex;flex-wrap:wrap;gap:18px;margin:16px 0}
.capacity-pain{border-left:4px solid #a45636;background:#fff1e9;padding:18px;margin-top:16px;border-radius:0 12px 12px 0}
.capacity-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}
.capacity-progress>article{border-top:2px solid var(--capacity-line);padding-top:14px}
.capacity-progress>article>span{color:var(--capacity-gold);font-size:12px;font-weight:700;letter-spacing:.15em}
.capacity-progress h3{margin-top:10px}
.course-capacity-page button:focus-visible,.course-capacity-page summary:focus-visible,.course-capacity-page a:focus-visible{outline:3px solid #bb8742;outline-offset:3px}
@media(min-width:850px) and (max-width:1100px){.course-capacity-page .course-capacity-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.capacity-test-columns{grid-template-columns:1fr;gap:18px}.capacity-test-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.capacity-progress{grid-template-columns:1fr;gap:12px}.capacity-library-head,.capacity-test-detail>header{align-items:flex-start}.capacity-test-detail>header{flex-direction:column;gap:8px}.capacity-groups button{flex:1 1 130px}.capacity-count{font-size:22px}}
@media(max-width:520px){.capacity-exercise-grid{grid-template-columns:1fr}.capacity-record button{flex:1 1 140px}.capacity-exercises>summary small{display:none}.capacity-swing-connection{padding:18px}.capacity-library-head{flex-wrap:wrap;gap:10px}.capacity-count{text-align:left;font-size:18px}.capacity-count small{display:inline;margin-left:6px}}

/* Height links ball observations to delivery causes without ranking them. */
.height-relations{margin:22px 0;background:#fffefa;border:1px solid #dce2d2;border-radius:20px;padding:22px;color:#304d39}
.height-relations>header{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px}
.height-relations>header strong{font-size:21px}
.height-relations>header p{font-size:14px;margin:8px 0 0;color:#61705d}
.height-relations>header>span{font-size:12px;color:#826537}
.height-map-labels{display:grid;grid-template-columns:35% 1fr;gap:42px;padding:0 16px 10px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6a775f}
.height-map-rows{display:grid;gap:10px}
.height-map-row{display:grid;grid-template-columns:minmax(200px,35%) 26px minmax(0,1fr);gap:16px;align-items:center;padding:16px;background:#f5f6ee;border-radius:13px;border:1px solid #e2e6d8}
.height-ball-node{display:flex;gap:14px;align-items:center;text-align:left;border:0;background:transparent;color:#304d39;font:inherit;cursor:pointer;min-height:64px;padding:4px;border-radius:10px}
.height-ball-node>span:nth-child(2){flex:1}
.height-ball-node b{display:block;font-size:19px;line-height:1.25}
.height-ball-node small{display:block;font-size:12px;line-height:1.4;margin-top:6px;color:#66725f}
.height-map-icon{display:grid;place-items:center;width:54px;height:54px;flex:none;background:#aa783d;color:#fffefa;border-radius:50%;box-shadow:0 0 0 3px #fffefa,0 0 0 4px #d8c6a7}
.height-map-icon svg{width:29px;height:29px}
.height-map-row:nth-child(2) .height-map-icon{background:#547650}
.height-map-row:nth-child(3) .height-map-icon{background:#277886}
.height-map-connector{font-size:25px;color:#8c9b7c;text-align:center}
.height-map-causes>div{display:flex;flex-wrap:wrap;gap:7px}
.height-map-causes button{font:inherit;font-size:14px;font-weight:650;color:#304d39;border:1px solid #ced9c4;border-radius:9px;background:#fffefa;padding:10px 13px;min-height:44px;cursor:pointer}
.height-map-causes p{font-size:12px;line-height:1.5;color:#65725f;margin:9px 0 0}
.height-relations button[aria-pressed=true]{background:#e2ebd9;box-shadow:inset 0 0 0 2px #5c7651}
.height-relations button:focus-visible,.height-relations summary:focus-visible{outline:3px solid #b28748;outline-offset:3px}
.height-map-context{margin-top:16px;border-top:1px solid #dce2d2;padding-top:8px}
.height-map-context summary{font-size:14px;font-weight:650;cursor:pointer;padding:12px 0;min-height:44px}
.height-map-context p{font-size:14px;line-height:1.6;color:#61705d}
@media(max-width:800px){.height-relations>header{display:block}.height-relations>header>span{display:block;margin-top:10px}.height-map-labels{display:none}.height-map-row{grid-template-columns:1fr;gap:8px}.height-map-connector{display:none}.height-map-causes{border-top:1px solid #dce2d2;padding-top:12px}.height-map-causes:before{content:'Investiga en el palo';display:block;font-size:11px;color:#6a775f;margin-bottom:8px}.height-relations{padding:16px}.height-ball-node{min-height:60px}}

.body-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;margin:0 0 22px;border-radius:15px;background:#e8eddf}
.body-section-nav button{min-height:68px;padding:12px 18px;border:0;border-radius:11px;background:transparent;color:#4b6047;text-align:left;font:inherit;cursor:pointer}
.body-section-nav strong,.body-section-nav small{display:block}
.body-section-nav strong{font-size:17px;line-height:1.3}
.body-section-nav small{font-size:12px;margin-top:5px;opacity:.85}
.body-section-nav [aria-current=page]{background:#304d39;color:#fffefa;box-shadow:0 2px 6px #203a2a15}
.body-section-nav button:focus-visible{outline:3px solid #b28748;outline-offset:3px}
.course-capacity-page>.course-section-head h2{font-family:Georgia,serif;font-size:clamp(27px,3vw,42px);line-height:1.15;margin:8px 0 12px;color:#2d4938}
@media(max-width:520px){.body-section-nav button{padding:12px}.body-section-nav strong{font-size:15px}.body-section-nav small{font-size:11px}}

.phase-intro-body-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px}
.phase-intro-body-layout figure{padding:0 0 14px;overflow:hidden;background:#f1f2eb;border:1px solid #e2e5d9;border-radius:18px}
.phase-intro-body-layout .phase-intro-photo{width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:3/2}
.phase-intro-body-layout .phase-intro-diagram-labels{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 14px 0;text-align:center;font-size:13px;font-weight:700;color:#304d39}
.phase-intro-body-layout figcaption{padding:0 18px;font-size:11px}
@media(max-width:850px){.phase-intro-body-layout{grid-template-columns:1fr}.phase-intro-body-layout figure{max-width:660px;width:100%;justify-self:center}}
.phase-intro-impact-layout .phase-intro-diagram-labels{grid-template-columns:1fr;font-size:15px;padding-top:13px}
.phase-intro-process-layout .phase-intro-diagram-labels{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}

/* Original product photographs with separate, accessible teaching overlays. */
.phase-intro-body-layout .phase-intro-product{display:block;width:100%;height:auto;max-height:none;aspect-ratio:10/7;background:radial-gradient(ellipse at 55% 60%,#fffefa,#f1f2eb);font-family:inherit}
.phase-intro-body-layout .phase-intro-direction{background:#f6f6f6}
.intro-product-kicker{font-size:13px;font-weight:750;letter-spacing:2px;fill:#89714f}
.intro-product-callout{font-size:19px;font-weight:650}
.intro-product-callout:not([fill]){fill:#66553b}
.intro-product-note{font-size:16px;fill:#687361}

.shot-result-explanation{margin:14px 0;padding:14px 16px;background:#f6f7f1;border:1px solid #dce3d2;border-radius:12px;color:#435741;font-size:13px;line-height:1.6}
.shot-result-explanation>p{margin:0 0 10px}.shot-result-explanation details{margin-top:10px}.shot-result-explanation summary{cursor:pointer;font-weight:700}.shot-result-explanation a{color:#315c4c;text-decoration:underline}
.shot-model-caution{border-left:3px solid #b47a36;background:#f6ecd9;padding:12px;margin:12px 0;color:#694b28}.shot-model-caution p{margin:5px 0 0}
.club-delivery-context{margin:0 0 20px;padding:14px;border:1px solid #dce3d2;border-radius:12px;background:#f6f7f1;font-size:14px;line-height:1.5}
.club-delivery-context>strong{display:block;color:#304b38;font-size:14px}.club-delivery-context dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.club-delivery-context dt{font-size:14px;color:#5c6c58}.club-delivery-context dd{margin:2px 0 0;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:#304b38}.club-delivery-context p{margin:8px 0 12px;font-size:14px}.club-delivery-context small{display:block;margin-top:8px;font-size:13px;color:#5c6c58}.club-delivery-context .btn{min-height:44px;width:100%;white-space:normal}
.club-distance-unavailable{padding:14px;border-left:3px solid #b47a36;background:#f6ecd9;color:#694b28;font-size:14px;line-height:1.5}.club-distance-unavailable b{display:block;margin-bottom:6px}
.club-flight-visual{min-width:0;margin:10px 0 16px}
.club-flight-quality{display:grid;gap:4px;min-height:76px;align-content:center;margin:0;padding:10px 12px;border:1px solid #dce3d2;border-radius:10px;color:#365947;background:#f3f6ef;font-size:13px;line-height:1.5}
.club-flight-quality span{font-size:12px;color:#5b695b}
[data-flight-quality="exploratory"]{border-color:#dbc9a5;background:#faf5e9}
[data-flight-quality="unavailable"]{border-color:#dbc9a5}
.club-flight-empty{position:relative;display:grid;place-items:center;min-height:320px;background:#fafbf5;border-radius:10px;overflow:hidden}
.club-flight-empty svg{position:absolute;inset:0;width:100%;height:100%;color:#dce3d2;opacity:.65}
.club-flight-empty p{position:relative;margin:20px;padding:18px;max-width:360px;background:#fffef8;border:1px solid #dce3d2;border-radius:12px;color:#52634e;line-height:1.6;font-size:14px}
.club-visual-page .compact-relation small{font-size:13px;line-height:1.5}
.teaching-faq{margin:16px 0;border:1px solid #d7dfcf;border-radius:12px;background:#fffefa;color:#304b38}
.teaching-faq>summary{padding:14px 16px;min-height:48px;cursor:pointer;font-size:15px;font-weight:700;line-height:1.5}
.teaching-faq>summary>span{display:inline-block;vertical-align:top;max-width:calc(100% - 24px)}
.teaching-faq>summary small{display:block;font-size:13px;font-weight:400;color:#65745e;margin-top:3px}
.teaching-faq[open]>summary{border-bottom:1px solid #d7dfcf}
.teaching-faq-content{padding:0 16px 12px}.teaching-faq-intro{font-size:14px;line-height:1.5;color:#65745e;margin:14px 0}
.teaching-question{border-top:1px solid #e2e7dc}.teaching-question>summary{padding:14px 0;cursor:pointer;min-height:44px;font-size:15px;font-weight:600;line-height:1.5}
.teaching-faq summary:focus-visible{outline:3px solid #b58443;outline-offset:2px;border-radius:6px}
.teaching-answer{padding-bottom:16px;font-size:16px;line-height:1.65;overflow-wrap:anywhere}.teaching-answer p{margin:12px 0}
.teaching-say{padding:12px 14px;border-left:3px solid #b58443;background:#f1f4eb;border-radius:0 8px 8px 0}.teaching-say>span{font-size:13px;color:#74613e}.teaching-say>p{margin:5px 0 0;font-weight:600;color:#304b38}
.teaching-live-example{padding:12px 14px;background:#f7f8f3;border:1px solid #e2e7dc;border-radius:8px;margin:14px 0}.teaching-live-example dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:12px 0}.teaching-live-example dt{font-size:13px;color:#65745e}.teaching-live-example dd{margin:2px 0 0;font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.teaching-live-example p{margin-bottom:0}
.teaching-limit{color:#675439}.teaching-sources{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:14px}.teaching-sources>span{width:100%;color:#65745e;font-size:13px}.teaching-sources a{text-decoration:underline;text-underline-offset:3px;color:#315c4c}.teaching-own-model{font-size:13px;color:#65745e}
.independent-facts .metric-origin-note{display:block;font-size:12px;font-weight:400;color:#65745e;margin-top:2px}
@media(max-width:760px){.teaching-faq>summary{padding:14px 12px}.teaching-faq-content{padding:0 12px 10px}.teaching-say,.teaching-live-example{padding:10px}.teaching-answer{font-size:16px}}
.compact-page .independent-facts[data-metric-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.compact-page .independent-facts[data-metric-count="6"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Body teaching images stay separate from the case observations and measurements. */
.body-visual-guide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);margin:18px 0 24px;border:1px solid #dce3d2;border-radius:20px;overflow:hidden;background:#fffefa;color:#304d39}
.body-visual-scene{display:flex;flex-direction:column;justify-content:center;min-width:0;background:#f3f3eb}
.body-visual-scene img{display:block;width:100%;height:auto;max-height:440px;object-fit:contain}
.body-visual-scene>span{display:block;padding:10px 18px;text-align:center;font-size:12px;line-height:1.5;color:#5e6c58}
.body-visual-guide figcaption{padding:26px 30px;min-width:0}
.body-visual-guide h3{margin:8px 0 12px;font-size:26px;line-height:1.2;color:#2c4534}
.body-visual-guide .body-visual-intro{margin:0 0 18px;font-size:16px;line-height:1.55;color:#4b6047}
.body-visual-guide ol{list-style:none;counter-reset:body-cue;display:grid;gap:13px;margin:0;padding:0}
.body-visual-guide li{display:flex;gap:12px;align-items:flex-start;counter-increment:body-cue}
.body-visual-guide li::before{content:counter(body-cue,decimal-leading-zero);flex:0 0 26px;padding-top:2px;color:#9d743b;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums}
.body-visual-guide li strong{display:block;font-size:16px;line-height:1.4}
.body-visual-guide li p{margin:3px 0 0;font-size:15px;line-height:1.5;color:#53664d}
.body-visual-guide .body-visual-note{margin:18px 0 0;padding-top:14px;border-top:1px solid #e0e5d7;font-size:13px;line-height:1.55;color:#5b6854}
.body-visual-note a{color:#304d39;text-decoration:underline;text-underline-offset:3px}
.body-visual-note a:focus-visible{outline:3px solid #b28748;outline-offset:4px}
@media(max-width:820px){.body-visual-guide{grid-template-columns:1fr}.body-visual-scene img{max-height:360px}.body-visual-guide figcaption{padding:22px}.body-visual-guide h3{font-size:23px}}
@media(max-width:440px){.body-visual-guide{border-radius:15px}.body-visual-guide figcaption{padding:20px 17px}.body-visual-scene>span{font-size:11px}}
.body-lesson-photo{margin:18px 0 22px;border:1px solid #dce3d2;border-radius:16px;overflow:hidden;background:#fffefa;color:#304d39;min-width:0}
.body-lesson-photo>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #e0e5d7}
.body-lesson-photo>header h4{margin:0;font-size:18px;line-height:1.35;color:#304d39}
.body-lesson-photo .chart-expand{position:static;flex:none;min-height:44px;font-size:13px;white-space:normal}
.body-lesson-photo>img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain;background:#f7f4ec}
.body-lesson-photo>figcaption{padding:17px 20px}
.body-lesson-photo figcaption>strong{display:block;color:#304d39;font-size:16px}
.body-lesson-photo figcaption p{margin:7px 0 12px;color:#53664d;font-size:15px;line-height:1.6}
.body-lesson-photo figcaption small{display:block;font-size:12px;line-height:1.45;color:#637158}
.body-lesson-photo figcaption ul{padding-left:19px;margin:16px 0 20px;color:#53664d;font-size:15px;line-height:1.55}
.body-lesson-photo figcaption li+li{margin-top:9px}
.body-lesson-technical{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center}
.body-lesson-technical>header{grid-column:1/-1;align-self:stretch}
.body-lesson-technical>figcaption{padding:24px 28px}
.capacity-protocol .body-lesson-photo{margin:14px 0 20px}
.capacity-protocol .body-lesson-photo>header h4{font-size:16px}
.chart-dialog .expanded-chart-layout:has(.body-lesson-photo){display:block}
.chart-dialog .body-lesson-photo{max-width:1100px;margin:0 auto}
.chart-dialog .body-lesson-photo>img{max-height:70dvh}
.chart-dialog .body-lesson-technical{display:block}
.chart-dialog .body-lesson-photo>header{display:none}
@media(max-width:820px){.body-lesson-technical{display:block}.body-lesson-technical>figcaption{padding:19px 20px}.body-lesson-photo>img{max-height:380px}.body-lesson-photo>header{padding:12px 14px;gap:10px}}
@media(max-width:440px){.body-lesson-photo>header h4{font-size:16px}.body-lesson-photo>figcaption{padding:16px}.body-lesson-photo .chart-expand{font-size:12px;padding:8px 10px}.body-lesson-photo>header{align-items:flex-start}}

/* Selected frames show preparation where a still cannot establish the movement. */
.body-photo-panel{overflow:hidden;margin:0 auto;background:#f7f4ec;max-width:100%}
.body-photo-panel>img{display:block;height:auto;max-width:none;max-height:none}
.body-photo-half{width:300px;aspect-ratio:3/4}
.body-photo-half>img{width:200%}
.body-photo-third{width:240px;aspect-ratio:1/2}
.body-photo-third>img{width:300%}
.body-photo-two-thirds{width:440px;aspect-ratio:1}
.body-photo-two-thirds>img{width:150%}
.chart-dialog .body-photo-half{width:min(480px,52dvh)}
.chart-dialog .body-photo-third{width:min(360px,35dvh)}
.chart-dialog .body-photo-two-thirds{width:min(740px,70dvh)}
.capacity-test-columns>.capacity-swing-connection{align-self:start}

/* Teaching text stays below the animation in both the page and expanded view. */
.gear-effect-explanation{margin:24px 0;padding:24px;border:1px solid #d5ccb8;border-radius:16px;background:#fffef9;font-size:1rem;line-height:1.65;color:#304e39}
.gear-effect-explanation h3{font-size:1.4rem;margin:0 0 14px}.gear-effect-explanation h4{font-size:1.125rem;margin:24px 0 10px}.gear-effect-explanation p{margin:0 0 16px}.gear-effect-explanation ol{padding-left:24px;margin:16px 0}.gear-effect-explanation li{margin:0 0 12px}.gear-effect-explanation a{text-decoration:underline;text-underline-offset:3px}.gear-effect-explanation table{table-layout:fixed;width:100%;border-collapse:collapse;margin:20px 0;font-size:1rem}.gear-effect-explanation caption{text-align:left;font-weight:700;margin-bottom:10px}.gear-effect-explanation th,.gear-effect-explanation td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid #dfe2d5;overflow-wrap:anywhere}.gear-effect-explanation thead{background:#edf1e6}.gear-effect-explanation .gear-explanation-note{padding-top:16px;border-top:1px solid #dfe2d5;margin-bottom:0}
@media(max-width:600px){.gear-effect-explanation{padding:16px}.gear-effect-explanation th,.gear-effect-explanation td{padding:10px 6px}}

/* Audit 179: keep the experiment next to its result and explanations available below. */
.practice-observation-nav{margin:12px 0;border:1px solid #d3dccb;border-radius:10px;background:#fffef9}
.practice-observation-nav>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;padding:12px 14px;min-height:44px;font-size:14px;color:#304e39}
.practice-observation-nav>summary::after{content:'⌄'}
.practice-observation-nav[open]>summary::after{content:'⌃'}
.practice-observation-nav .ball-observation-menu{padding:0 12px 12px;margin:0}
.practice-task{font-size:15px;line-height:1.5;margin:10px 0 16px;color:#405c44}
.practice-explanation{margin-top:18px;padding:14px;background:#fffef9;border:1px solid #d5ddcc;border-radius:12px}
.practice-explanation>summary{cursor:pointer;font-size:16px;min-height:44px;display:list-item;padding-block:8px}
.simulation-label{margin:8px 0 12px;font-size:14px;line-height:1.5;color:#52674b}
.compact-footnote{font-size:14px;line-height:1.55}
.pelvis-movement-guide{padding:16px;border-top:1px solid #dce2d2}
.pelvis-movement-guide>h5{font-size:18px;margin:0 0 16px;color:#304e39}
.pelvis-movement-positions{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pelvis-movement-positions>article{overflow:hidden;border:1px solid #e0e1d7;background:#fffef9;border-radius:14px;min-width:0}
.pelvis-photo-frame{position:relative;width:100%;aspect-ratio:3/4;overflow:hidden;background:#f7f4ec}
.pelvis-photo-frame>img{display:block;width:200%;height:auto;max-width:none;max-height:none}
.pelvis-photo-posterior>img{transform:translateX(-50%)}
.pelvis-photo-caption{padding:16px}.pelvis-photo-caption h5{font-size:18px;line-height:1.4;margin:0 0 4px;color:#304e39}
.pelvis-photo-caption strong{font-size:16px;font-weight:500;color:#5c6e52}
.pelvis-photo-caption p{font-size:14px;line-height:1.55;margin:10px 0 0}
.pelvis-photo-legend{display:flex;flex-wrap:wrap;gap:10px 20px;margin:18px 0 10px;font-size:14px;color:#52674b}
.pelvis-photo-legend>span{display:flex;align-items:center;gap:8px}.pelvis-photo-legend i{display:block;width:26px;flex-shrink:0}.pelvis-gold-line{border-top:3px solid #c39233}.pelvis-reference-line{border-top:2px dashed #99885c}.pelvis-photo-legend b{font-size:23px;line-height:1;color:#c39233}
.pelvis-movement-guide>p{font-size:14px;line-height:1.6;margin:12px 0 0}
@media(max-width:600px){.pelvis-movement-positions{grid-template-columns:1fr}.pelvis-movement-guide{padding:12px}.pelvis-photo-caption{padding:14px}.pelvis-photo-legend{display:grid;gap:10px}}
@media(max-width:760px){
 .ball-practice-page .compact-title{margin-block:6px}.ball-practice-page .compact-ball-mode{margin-block:6px}
 .practice-observation-nav>summary{font-size:13px;padding:10px;align-items:center}.practice-observation-nav>summary>span:nth-child(2){display:none}
 .ball-practice-page .independent-result{padding:12px}.ball-practice-page .compact-actions{gap:6px;flex-wrap:wrap;margin-top:12px}
 .ball-practice-page .compact-actions .btn{font-size:12px;padding:8px}
 .ball-practice-page .independent-facts{margin-bottom:10px}.ball-practice-page .simulation-label{font-size:13px}
 .gear-motion.gear-teaching{grid-template-areas:'zones' 'visual' 'playback' 'display' 'heading' 'instruction' 'rotation' 'curve' 'clarifier';gap:10px;padding:12px}
 .gear-teaching .gear-mechanism svg{height:clamp(220px,38dvh,360px)}
 .gear-teaching .gear-playback{display:grid;grid-template-columns:1fr;gap:8px}
 .gear-teaching .gear-playback>button{min-height:44px;font-size:14px}
 .chart-dialog:has(.impact-gear-lesson){width:calc(100vw - 12px);height:calc(100dvh - 12px);padding:10px}
 .chart-dialog:has(.impact-gear-lesson) .chart-dialog-header{padding:4px 0 8px}
 .chart-dialog .impact-gear-intro{margin:0 0 6px;gap:6px}
 .chart-dialog .impact-gear-clubs button{min-height:44px;padding:6px;font-size:13px}
 .chart-dialog .gear-teaching{padding:6px;gap:6px}
 .chart-dialog .gear-teaching .gear-mechanism svg{height:clamp(180px,32dvh,320px)}
 .chart-dialog .gear-teaching .gear-face-ends,.chart-dialog .gear-teaching .gear-spin-reading{margin-bottom:4px;font-size:13px}
 .chart-dialog .gear-teaching .gear-zone-controls button{min-height:44px;padding:6px;font-size:14px}
 .chart-dialog .gear-teaching .gear-playback label{font-size:13px}
 .chart-dialog .gear-teaching .gear-flight-reading{font-size:13px}
 .chart-dialog .gear-teaching .gear-flight-reading strong{font-size:14px}
}

@media(max-width:760px){
 .ball-practice-page .independent-result{display:flex;flex-direction:column;gap:8px}
 .ball-practice-page .independent-result>.compact-result-title{order:0;margin:0}
 .ball-practice-page .independent-result>.compact-plot{order:1;margin:0}
 .ball-practice-page .independent-result>.simulation-label{order:2;margin:0}
 .ball-practice-page .independent-result>.independent-facts{order:3}
 .ball-practice-page .independent-result>.compact-more-results{order:4}
 .ball-practice-page>.compact-actions{display:flex;flex-wrap:nowrap;align-items:center}
 .ball-practice-page>.compact-actions .btn{width:auto;min-height:44px}
 .ball-practice-page>.compact-actions .btn.primary{margin-left:auto}
}
@media(max-width:760px){
 .chart-dialog .gear-motion.gear-teaching{grid-template-areas:'zones' 'playback' 'visual' 'display' 'heading' 'instruction' 'rotation' 'curve' 'clarifier'}
 .chart-dialog .gear-teaching>.gear-playback{margin:0;padding:0;border:0;gap:4px;background:transparent}
 .chart-dialog .gear-teaching .gear-top-mechanism .gear-flight-reading{padding:8px 0;gap:6px}
 .chart-dialog .gear-teaching .gear-flight-reading>span{gap:5px!important}
 .chart-dialog .gear-teaching .gear-top-mechanism .gear-flight-reading i{font-size:20px;width:20px;flex-basis:20px}
}

/* Keep contact examples within one visible tap on a phone. */
@media(max-width:600px){.impact-teaching-nav{grid-template-columns:1fr}.impact-teaching-nav button{min-height:60px}.impact-view-switch{flex-wrap:wrap}}
.impact-ground-access{margin:0 0 20px}.impact-curve-scale{padding:12px;background:#f2e8d6;color:#765732;border-radius:8px;line-height:1.5}

.lesson-club-instant{padding:14px 16px;margin:0 0 18px;border-left:3px solid #a88350;background:#f5f0e4;color:#3e503b;font-size:16px;line-height:1.6}

/* Explicit playback keeps spin-rate motion under the teacher’s control. */
.spin-playback{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:4px 0 16px}.spin-playback .btn{min-height:44px}.spin-playback span{color:#657158;font-size:13px}.spin-playback button:disabled{opacity:.65;cursor:default}
.club-teaching-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 28px}
.club-teaching-nav button{padding:13px 20px;min-height:48px;border:1px solid #becab8;border-radius:10px;background:#fffef9;color:#29483a;font:inherit;font-weight:700;cursor:pointer}
.club-teaching-nav button[aria-pressed=true]{background:#29483a;color:#fffef9;border-color:#29483a}
.club-teaching-nav button:focus-visible,.lie-lesson summary:focus-visible,.lie-lesson a:focus-visible{outline:3px solid #a88350;outline-offset:4px}
.lie-lesson{max-width:1180px;margin-inline:auto;color:#29483a}
.lie-lesson .compact-title{align-items:flex-start;gap:12px;flex-wrap:wrap}
.lie-lesson h2{font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.25;margin:12px 0 18px}
.lie-lesson p{font-size:1rem;line-height:1.75;margin:0 0 14px;max-width:85ch}
.lie-definitions{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:30px}
.lie-definitions article{padding:28px;border:1px solid #d4dccb;border-radius:16px;background:#fffef9}
.lie-definitions article:last-child{background:#eef2e7}
.lie-lesson .eyebrow{color:#806032;letter-spacing:.08em;font-size:.78rem;font-weight:700}
.lie-reading,.lie-check{padding:30px;border:1px solid #d4dccb;border-radius:16px;background:#fffef9;margin-bottom:26px}
.lie-table-scroll{overflow-x:auto;margin:24px 0 18px}
.lie-lesson table{width:100%;border-collapse:collapse;font-size:.95rem;text-align:left;line-height:1.6}
.lie-lesson caption{text-align:left;padding-bottom:14px;color:#566653;font-size:.875rem}
.lie-lesson th,.lie-lesson td{padding:18px 16px;border-bottom:1px solid #d4dccb;vertical-align:top}
.lie-lesson thead{background:#eef2e7}
.lie-lesson tbody th{font-weight:600;width:36%}
.lie-lesson .lie-note{font-size:.94rem;color:#566653}
.lie-example{padding:30px;border-left:4px solid #a88350;background:#f2ecdf;border-radius:0 16px 16px 0;margin-bottom:26px}
.lie-check ol{padding-left:24px;margin:0;max-width:90ch}
.lie-check li{padding-left:8px;margin-bottom:20px;font-size:1rem;line-height:1.75}
.lie-check li:last-child{margin-bottom:0}
.lie-check li::marker{color:#806032;font-weight:700}
.lie-clarifier{border-top:1px solid #d4dccb;padding:20px 0}
.lie-clarifier summary{font-weight:700;cursor:pointer;padding:4px 0;line-height:1.6}
.lie-clarifier[open] summary{margin-bottom:18px}
.lie-clarifier a{color:#29483a;text-decoration:underline;text-underline-offset:3px}
.lie-intro-link{margin:24px 0}
@media(max-width:700px){.lie-definitions{grid-template-columns:1fr;gap:16px}.lie-definitions article,.lie-reading,.lie-check,.lie-example{padding:22px 18px}.club-teaching-nav{gap:8px}.club-teaching-nav button{flex:1 1 150px;padding:12px}.lie-lesson th,.lie-lesson td{padding:14px 8px;font-size:.85rem}.lie-lesson .compact-title h1{font-size:1.7rem}}
.lie-demo{margin:0 0 30px;border:1px solid #d4dccb;border-radius:16px;overflow:hidden;background:#fffef9}
.lie-demo>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px 8px;flex-wrap:wrap}
.lie-demo>header h2{margin-bottom:8px}.lie-demo>header .btn{min-height:44px}
.lie-demo-controls{padding:16px 28px 24px}
.lie-demo-controls label{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-weight:700;font-size:1rem}
.lie-demo-controls output{font-size:.95rem;color:#806032;font-variant-numeric:tabular-nums}
.lie-demo-controls input[type=range]{display:block;width:100%;height:40px;margin:12px 0 0;accent-color:#34543f;cursor:ew-resize}
.lie-demo-controls input:focus-visible{outline:3px solid #a88350;outline-offset:4px}
.lie-demo-endpoints{display:flex;justify-content:space-between;font-size:.875rem;color:#566653;gap:8px}
.lie-demo figure{margin:0;background:#f0f0f0}
.lie-demo-image{display:block;width:100%;height:auto;max-height:480px}
.lie-demo figcaption{padding:16px 28px;background:#fffef9;color:#566653;font-size:.875rem;line-height:1.6}
.lie-demo-reading{padding:22px 28px;background:#eef2e7;border-top:1px solid #d4dccb}
.lie-demo-reading>strong{font-size:1.15rem}.lie-demo-reading p{margin:10px 0 0}
@media(max-width:700px){.lie-demo>header{padding:22px 18px 6px;gap:12px}.lie-demo-controls{padding:16px 18px 20px}.lie-demo-reading,.lie-demo figcaption{padding:18px}.lie-demo-image{max-height:none}}
.lie-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:16px 0 0}
.lie-compare-grid>article{min-width:0;border-top:1px solid #d4dccb}
.lie-compare-grid>article+article{border-left:1px solid #d4dccb}
.lie-compare-grid h3{margin:24px 24px 8px;font-size:1.2rem;line-height:1.4}
.lie-compare-grid>article>p{margin:0 24px;color:#566653;font-size:.94rem;min-height:3.2em}
.lie-compare-grid .lie-demo-controls{padding:18px 24px}
.lie-compare-grid figure{border-top:1px solid #d4dccb}
.lie-compare-grid figcaption{font-weight:600;padding:16px 24px}
.lie-compare-difference{padding:24px 28px;background:#f2ecdf;border-block:1px solid #ded3bb;display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px}
.lie-compare-difference>span{font-size:1rem}.lie-compare-difference>strong{font-size:1.4rem;font-variant-numeric:tabular-nums;color:#705125}
.lie-compare-difference>p{flex-basis:100%;margin:0}
.lie-compare-consequences{padding:26px 28px}
.lie-consequence-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}
.lie-consequence-head h3{margin:0;font-size:1.3rem}
.lie-hand-toggle{display:flex;gap:6px}.lie-hand-toggle button{padding:10px 15px;min-height:44px;border:1px solid #becab8;border-radius:8px;background:#fffef9;color:#29483a;font:inherit;cursor:pointer}
.lie-hand-toggle button[aria-pressed=true]{color:#fffef9;background:#29483a}
.lie-hand-toggle button:focus-visible{outline:3px solid #a88350;outline-offset:3px}
.lie-consequence-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px}
.lie-consequence-grid article{border-top:1px solid #d4dccb;padding-top:18px}
.lie-consequence-grid article>span{font-size:.875rem;color:#806032;font-weight:600}
.lie-consequence-grid h4{font-size:1.1rem;line-height:1.4;margin:10px 0 12px}
.lie-consequence-grid p{margin-bottom:0}
.lie-lesson .lie-comparator-note{font-size:.875rem;line-height:1.7;color:#566653;margin:0;padding:0 28px 26px;max-width:none}
@media(max-width:700px){.lie-compare-grid,.lie-consequence-grid{grid-template-columns:1fr}.lie-compare-grid>article+article{border-left:0}.lie-compare-difference,.lie-compare-consequences{padding:22px 18px}.lie-lesson .lie-comparator-note{padding:0 18px 22px}.lie-compare-grid h3{margin:22px 18px 8px}.lie-compare-grid>article>p{margin:0 18px}.lie-compare-grid .lie-demo-controls{padding:18px}.lie-compare-grid figcaption{padding:16px 18px}}

.lie-club-selector{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;padding:14px 0 8px}.lie-club-selector>span{font-weight:700;color:#29483a}.lie-club-selector .lie-hand-toggle{flex-wrap:wrap}.lie-club-selector button{min-width:96px}.lie-loft-comparison{padding:26px 28px;margin:0 0 26px;background:#eef2e7;border-block:1px solid #d4dccb}.lie-loft-comparison h3{font-size:1.3rem;margin:10px 0 16px}.lie-loft-comparison p{max-width:none}.lie-loft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.lie-loft-grid article{padding:20px;background:#fffef9;border:1px solid #d4dccb;border-radius:10px}.lie-loft-grid h4{margin:0 0 12px;font-size:1.1rem;color:#29483a}.lie-loft-grid p{margin:0}.lie-loft-comparison>p:last-child{margin-bottom:0}@media(max-width:700px){.lie-loft-comparison{padding:22px 18px}.lie-loft-grid{grid-template-columns:1fr}.lie-club-selector{gap:10px}.lie-club-selector button{min-width:80px}}

.pose-lab{background:#fffef9;border:1px solid #d4dccb;border-radius:18px;margin:0 0 32px;overflow:hidden}.pose-lab>header{padding:28px 28px 8px}.pose-lab h2{margin:10px 0 16px}.pose-examples,.pose-toolbar,.pose-actions{display:flex;flex-wrap:wrap;gap:10px}.pose-examples,.pose-toolbar{padding:12px 28px}.pose-toolbar{justify-content:space-between;border-bottom:1px solid #d4dccb}.pose-toolbar .lie-hand-toggle{flex-wrap:wrap}.pose-workspace{display:grid;grid-template-columns:minmax(225px,.7fr) minmax(0,2fr)}.pose-controls{padding:24px;border-right:1px solid #d4dccb;background:#f5f5ed}.pose-controls h3{font-size:1.1rem;margin:0 0 24px}.pose-control{margin-bottom:22px}.pose-control label{display:flex;justify-content:space-between;gap:10px;font-weight:700;font-size:.92rem}.pose-control output{color:#806032;white-space:nowrap;font-variant-numeric:tabular-nums}.pose-control input{display:block;width:100%;height:36px;accent-color:#34543f;cursor:ew-resize}.pose-control p{font-size:.78rem;line-height:1.5;margin:8px 0 0;color:#5c6d5a}.pose-range{display:flex;justify-content:space-between;font-size:.75rem;color:#677363}.pose-comparison{padding:20px;min-width:0}.pose-pictures{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pose-picture{border:1px solid #d7ddcf;border-radius:12px;overflow:hidden;min-width:0}.pose-picture.is-active{border:2px solid #a88350}.pose-picture h3{font-size:1rem;margin:14px 16px}.pose-visual{display:block;width:100%;height:auto}.pose-picture dl{margin:0;padding:14px;font-size:.8rem}.pose-picture dl>div{padding:8px 0;border-bottom:1px solid #e2e5db}.pose-picture dt{color:#63715e}.pose-picture dd{margin:4px 0 0;font-weight:700;color:#29483a;font-variant-numeric:tabular-nums}.pose-result{background:#f2ecdf;padding:18px;border-radius:10px;margin:18px 0}.pose-result.is-match{background:#e9efdf}.pose-result p{font-size:.82rem;line-height:1.5;margin:8px 0 0}.pose-result strong{font-size:1rem}.pose-actions .btn{font-size:.84rem;min-height:44px}.pose-action-help,.pose-feedback{font-size:.8rem;line-height:1.5;margin:12px 0}.pose-feedback:empty{display:none}.pose-lessons{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:28px;border-top:1px solid #d4dccb}.pose-lessons h3{font-size:1.12rem;margin:0 0 12px}.pose-lessons p,.pose-limit p{font-size:.9rem;line-height:1.7}.pose-limit{padding:24px 28px;background:#edf0e6}.pose-limit p:last-child{margin-bottom:0}@media(max-width:1000px){.pose-workspace{grid-template-columns:1fr}.pose-controls{border-right:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}.pose-controls h3{grid-column:1/-1;margin:0}.pose-control{margin:0}}@media(max-width:600px){.pose-lab>header,.pose-lessons,.pose-limit{padding:22px 18px}.pose-examples,.pose-toolbar{padding:12px 18px}.pose-controls,.pose-lessons{grid-template-columns:1fr}.pose-pictures{grid-template-columns:1fr}.pose-comparison{padding:14px}.pose-picture dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pose-picture dd{font-size:.85rem}.pose-control input{height:44px}}

.lie-selected-explanation{padding:22px 28px;background:#eef2e7;border-top:1px solid #d4dccb;margin-top:14px}.lie-selected-explanation h3{margin:0 0 12px;font-size:1.2rem}.lie-selected-explanation p:last-child{margin-bottom:0}@media(max-width:700px){.lie-selected-explanation{padding:20px 18px}}

/* Entiende el movimiento: quiet local navigation and a readable teaching plate. */
.body-section-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.body-section-nav small{font-size:.875rem}
.movement-page{color:#24473a;max-width:1320px;margin:0 auto 38px}.movement-header{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;align-items:center;padding:26px 4px 32px}.movement-header h1{font-family:Georgia,serif;font-size:clamp(2.1rem,4vw,3.6rem);font-weight:500;line-height:1.07;letter-spacing:-.035em;margin:16px 0 20px}.movement-header p{font-size:1.06rem;line-height:1.7;margin:0;max-width:660px}.movement-primer{padding:26px;border-left:2px solid #b0894f;background:#eceee3}.movement-primer>span{display:block;text-transform:uppercase;font-size:.78rem;letter-spacing:.1em;margin-bottom:16px;font-weight:700}.movement-primer p{font-size:.96rem;margin:10px 0}.movement-topic-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 24px}.movement-topic-nav button{border:1px solid #cad3c4;background:#fffef8;min-height:58px;padding:14px 16px;text-align:left;border-radius:9px;font:inherit;font-size:.94rem;color:#365342;cursor:pointer;display:flex;gap:13px;align-items:center}.movement-topic-nav span{font-size:.78rem;color:#916d36;font-variant-numeric:tabular-nums}.movement-topic-nav button[aria-pressed=true]{background:#24473a;color:#fffdf6;border-color:#24473a}.movement-topic-nav button[aria-pressed=true] span{color:#edc887}.movement-page button:focus-visible,.movement-page input:focus-visible,.movement-page summary:focus-visible{outline:3px solid #b88943;outline-offset:3px}.movement-lesson{border:1px solid #d1d8c9;border-radius:20px;overflow:hidden;background:#fffef9}.movement-lesson>header{padding:32px 34px 26px;max-width:1000px}.movement-lesson h3{font-size:clamp(1.5rem,2.4vw,2.15rem);line-height:1.25;letter-spacing:-.02em;margin:12px 0 16px}.movement-lesson>header p{font-size:1.05rem;line-height:1.7;margin:0}.movement-lab{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.25fr);border-top:1px solid #dbe1d4;border-bottom:1px solid #dbe1d4}.movement-controls{padding:28px 30px;background:#f5f4ec}.movement-idea{font-size:1rem;line-height:1.65;margin:0 0 22px}.movement-formula{padding:18px 0;border-top:1px solid #d9d9ca;border-bottom:1px solid #d9d9ca}.movement-formula strong{display:block;font-size:1.1rem;line-height:1.45}.movement-formula span{display:block;font-size:.875rem;line-height:1.55;margin-top:10px;color:#586b58}.movement-instruction{font-size:.94rem;line-height:1.6;margin:22px 0}.movement-control{margin:0 0 24px}.movement-control label{font-size:.92rem;font-weight:700;display:flex;justify-content:space-between;align-items:baseline;gap:14px;line-height:1.45}.movement-control output{color:#89622e;white-space:nowrap;font-weight:700;font-variant-numeric:tabular-nums}.movement-control input{width:100%;display:block;height:38px;margin:8px 0 0;cursor:ew-resize;accent-color:#345542}.movement-range{display:flex;justify-content:space-between;color:#5f715d;font-size:.8rem}.movement-reset{border:0;background:transparent;padding:6px 0;font:inherit;font-size:.9rem;text-decoration:underline;text-underline-offset:4px;color:#425e49;cursor:pointer;min-height:44px}.movement-figure{margin:0;min-width:0;display:flex;flex-direction:column;background:#fffef9}.movement-svg{display:block;width:100%;height:auto;flex:none}.movement-svg text{font-family:inherit;font-size:16px;fill:#e8efe4}.movement-readouts{display:grid;grid-template-columns:1fr 1fr;background:#173e32;color:#f4f0e3;padding:25px 28px;gap:20px;border-top:1px solid #ffffff20}.movement-readouts>div+div{border-left:1px solid #ffffff25;padding-left:22px}.movement-readouts span{font-size:.87rem;line-height:1.4;display:block;margin-bottom:10px;color:#d2dfcf}.movement-readouts strong{font-size:clamp(1.7rem,3vw,2.5rem);font-weight:500;line-height:1.25;font-variant-numeric:tabular-nums;display:block;white-space:nowrap}.movement-readouts small{font-size:1rem;color:#edc887}.movement-figure figcaption{padding:24px 28px;font-size:.9rem;line-height:1.65}.movement-figure figcaption strong{color:#876337;font-size:.875rem}.movement-figure figcaption p{margin:8px 0 0;color:#596a57}.movement-connections{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:32px 34px}.movement-connections section+section{border-left:1px solid #d6ddcd;padding-left:26px}.movement-connections h4{font-size:1.05rem;margin:0 0 14px;line-height:1.4}.movement-connections p{font-size:.96rem;line-height:1.75;margin:0;color:#53664f}.movement-sources{margin:0 34px 28px;border-top:1px solid #dbe0d3;padding-top:18px}.movement-sources summary{cursor:pointer;font-size:.94rem;font-weight:700;min-height:36px}.movement-sources p,.movement-sources li{font-size:.9rem;line-height:1.7}.movement-sources li{padding:5px 0}.movement-sources a{color:#365942;text-decoration:underline;text-underline-offset:3px}.movement-method{padding:32px 4px}.movement-method h3{font-family:Georgia,serif;font-size:1.9rem;font-weight:500;margin:0 0 24px}.movement-method ol{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding:0;margin:0;list-style:none}.movement-method li{display:flex;gap:12px;border-top:2px solid #b48e55;padding-top:16px}.movement-method li>span{font-size:.8rem;color:#89622e}.movement-method li b{font-size:.97rem}.movement-method p{font-size:.92rem;line-height:1.65;margin:9px 0 0;color:#586d55}.movement-method>p{margin-top:26px}.movement-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.movement-presets button{font:inherit;font-size:.88rem;border:1px solid #bcc9b4;background:#fffef8;border-radius:7px;min-height:44px;padding:9px 12px;color:#34543f;cursor:pointer}
@media(max-width:1000px){.movement-header{grid-template-columns:1fr;gap:24px}.movement-primer{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.movement-primer>span{grid-column:1/-1;margin-bottom:0}.movement-lab{grid-template-columns:1fr}.movement-controls{display:grid;grid-template-columns:1fr 1fr;gap:20px 26px}.movement-controls>p,.movement-formula,.movement-reset,.movement-presets{grid-column:1/-1;margin:0}.movement-control{margin:0}.movement-svg{max-height:460px}.movement-connections{gap:18px}.movement-connections section+section{padding-left:18px}.movement-method ol{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.body-section-nav{grid-template-columns:1fr}.body-section-nav button{min-height:56px;padding:12px 15px}.body-section-nav small{font-size:.875rem}.movement-topic-nav{grid-template-columns:1fr 1fr}.movement-topic-nav button{font-size:.9rem;padding:12px;gap:9px}.movement-header{padding-top:16px}.movement-primer{display:block;padding:18px}.movement-lesson>header,.movement-controls,.movement-connections{padding:24px 20px}.movement-controls,.movement-connections{grid-template-columns:1fr}.movement-connections section+section{border-left:0;border-top:1px solid #d6ddcd;padding:22px 0 0}.movement-sources{margin:0 20px 24px}.movement-readouts{padding:22px 18px;gap:15px}.movement-readouts>div+div{padding-left:14px}.movement-readouts strong{font-size:1.65rem;white-space:normal}.movement-figure figcaption{padding:22px 20px}.movement-method ol{gap:22px 18px}.movement-svg text{font-size:24px}}
/* Plain-language movement lessons: photographic coaching steps. */
.movement-page.is-simple .movement-header{grid-template-columns:1fr;padding-bottom:22px;gap:0}
.movement-page.is-simple .movement-header h1{font-size:clamp(2rem,3.2vw,3rem);margin:12px 0}
.movement-entry{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:22px;padding:8px;border:1px solid #cbd4c3;background:#e9ede2;border-radius:12px}
.movement-entry button{border:1px solid transparent;border-radius:8px;min-height:48px;padding:12px 18px;font:inherit;font-weight:700;background:transparent;color:#365342;cursor:pointer}
.movement-entry button{background:#24473a;color:#fffdf6}
.movement-entry>span{margin-left:auto;padding:0 12px;color:#52634e;font-size:.85rem}
.movement-simple{background:#fffef9;border:1px solid #d1d8c9;border-radius:18px;overflow:hidden}
.movement-simple>header{padding:28px 32px 24px;max-width:1000px}
.movement-simple h2{font-size:clamp(1.65rem,2.5vw,2.4rem);line-height:1.2;margin:12px 0 18px;letter-spacing:-.025em}
.movement-simple p{font-size:1rem;line-height:1.7;margin:12px 0 0}
.movement-simple h3{font-size:1.25rem;line-height:1.4;margin:8px 0 14px}
.movement-when{padding:20px 32px 24px;background:#f2f3e9;border-top:1px solid #dbe1d3}
.movement-when h3{font-size:1rem;margin:0 0 15px}
.movement-when ol{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:0;margin:0}
.movement-when li{border-top:3px solid #d3dacb;padding:10px 4px 0;color:#6c7865;font-size:.87rem;line-height:1.5}
.movement-when li>span{font-size:.75rem;display:block;margin-bottom:5px}
.movement-when li.is-relevant{border-color:#ac813b;color:#24473a;font-weight:700}
.movement-when small{display:block;color:#85602e;font-size:.72rem;font-weight:500}
.movement-when p{font-size:.9rem}
.movement-practice>header{padding:26px 32px 18px}
.movement-practice>header h3{font-size:1.4rem;margin-bottom:8px}
.movement-practice>header p{font-size:.87rem;color:#5e6b55;max-width:880px}
.movement-practice-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 32px 22px}
.movement-practice-steps button{display:flex;align-items:center;gap:12px;text-align:left;padding:14px 16px;min-height:58px;border:1px solid #ccd4c2;border-radius:9px;background:#fffef9;color:#365342;font:inherit;font-size:.9rem;line-height:1.4;cursor:pointer}
.movement-practice-steps button>span{color:#936e39;font-size:.8rem}
.movement-practice-steps button[aria-pressed=true]{background:#24473a;color:#fffdf6;border-color:#24473a}
.movement-practice-steps button[aria-pressed=true]>span{color:#edc887}
.movement-practice-panel{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);border-top:1px solid #dbe1d3;border-bottom:1px solid #dbe1d3}
.movement-practice-panel figure{margin:0;min-width:0;background:#f5f1e8}
.movement-photo{position:relative;aspect-ratio:3/2;isolation:isolate}
.movement-photo img{display:block;width:100%;height:100%;object-fit:contain}
.movement-photo-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.movement-photo-pin{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:30px;height:30px;border:2px solid #fffef7;border-radius:50%;background:#24473a;color:#fffef7;font-size:14px;font-weight:700;box-shadow:0 0 0 5px #b48b4550}
.movement-practice-panel figcaption{display:flex;gap:12px 20px;flex-wrap:wrap;padding:17px 22px;background:#e9ede2;font-size:.85rem;color:#24473a}
.movement-practice-panel figcaption>span{display:flex;align-items:center;gap:8px}
.movement-practice-panel figcaption b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#24473a;color:#fffef7;font-size:.75rem}
.movement-practice-copy{padding:28px 30px;background:#faf9f1}
.movement-practice-copy h4{font-size:1.55rem;line-height:1.3;margin:12px 0 18px}
.movement-result-check{border-top:1px solid #d7dbca;margin-top:25px;padding-top:22px}
.movement-result-check>b{font-size:.9rem;color:#84612e}
.movement-result-check p{font-size:.91rem}
.movement-photo-note{padding:0 32px 22px!important;font-size:.78rem!important;color:#687660}
.movement-observe{display:grid;grid-template-columns:1fr 1fr;gap:32px;border-top:1px solid #dbe1d3;padding:28px 32px}
.movement-observe ul{padding-left:20px;margin:12px 0 0;line-height:1.7;font-size:.96rem}
.movement-observe li+li{margin-top:12px}
.movement-evidence{font-size:.82rem!important;color:#6c755f;border-left:2px solid #c6ad7f;padding-left:14px}
.movement-plain-words{padding:22px 32px;border-top:1px solid #dbe1d3}
.movement-plain-words summary{font-weight:700;cursor:pointer;min-height:30px;line-height:1.5}
.movement-plain-words dl{margin:24px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:24px 32px}
.movement-plain-words dt{font-weight:700;margin:0 0 8px;color:#84612e}
.movement-plain-words dd{margin:0;line-height:1.65;font-size:.92rem}
.movement-page>.movement-sources{margin-top:20px;border:1px solid #d1d8c9;border-radius:12px;background:#fffef9}
@media(max-width:800px){.movement-practice-panel{grid-template-columns:1fr}.movement-practice-copy{padding:24px}.movement-observe{grid-template-columns:1fr;gap:24px}.movement-entry>span{display:none}.movement-practice-steps{padding-left:22px;padding-right:22px}.movement-practice-steps button{display:block;padding:12px;font-size:.85rem}.movement-practice-steps button>span{display:block;margin-bottom:6px}}
@media(max-width:500px){.movement-simple>header,.movement-when,.movement-practice>header,.movement-observe,.movement-plain-words{padding:22px 18px}.movement-practice-steps{padding-left:18px;padding-right:18px;gap:6px}.movement-practice-steps button{font-size:.79rem;padding:11px 8px}.movement-entry{display:block}.movement-entry button{font-size:.88rem;padding:10px}.movement-when ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 10px}.movement-when li{font-size:.78rem;overflow-wrap:normal;padding-left:0;padding-right:0}.movement-when small{font-size:.65rem}.movement-photo-note{padding-left:18px!important;padding-right:18px!important}.movement-plain-words dl{grid-template-columns:1fr}.movement-photo-pin{width:26px;height:26px;font-size:12px}}

/* Shared physics diagrams take priority over the secondary practice photographs. */
.movement-bridge{border-top:1px solid #d1d8c9;background:#f7f6ee}
.movement-bridge>header{padding:28px 32px 8px}
.movement-bridge h3{margin:10px 0 12px;font-size:1.65rem;line-height:1.3}
.movement-bridge>header p{font-size:.95rem;margin:0;line-height:1.6}
.movement-vocabulary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:22px 32px 30px}
.movement-vocabulary>div{border-top:2px solid #b48b45;padding-top:14px}
.movement-vocabulary dt{font-weight:700;color:#765827;margin-bottom:8px;font-size:.94rem}
.movement-vocabulary dd{margin:0;font-size:.9rem;line-height:1.65;color:#415c48}
.movement-bridge .movement-controls h4{font-size:1.1rem;margin:0 0 14px}
.movement-bridge .movement-reading{font-size:.97rem;line-height:1.7;margin:0}
.movement-simple>header strong{color:#24473a;font-weight:750}
.movement-bridge .movement-figure{align-self:start}
.movement-simple .movement-practice>header{padding-top:38px}
.movement-bridge .movement-readouts strong{white-space:normal}
@media(max-width:850px){.movement-bridge .movement-lab{display:flex;flex-direction:column}.movement-bridge .movement-figure{order:-1;width:100%}.movement-vocabulary{gap:18px;padding:22px}.movement-bridge>header{padding:24px 22px 8px}}
@media(max-width:500px){.movement-vocabulary{grid-template-columns:1fr;padding:18px;gap:14px}.movement-vocabulary dd{font-size:.87rem}.movement-vocabulary dt{margin-bottom:5px}.movement-bridge>header{padding:22px 18px 8px}.movement-bridge h3{font-size:1.4rem}.movement-bridge .movement-controls{padding:22px 18px}.movement-control label{flex-wrap:wrap;gap:6px 14px}.movement-topic-nav button{font-size:.86rem;padding:12px 10px;gap:8px}.movement-bridge .movement-readouts{padding:20px 18px;gap:12px}.movement-bridge .movement-readouts>div+div{padding-left:12px}}

/* A/B iron studio: actual meshes with synchronized orbit cameras. */
.club-3d-stage{position:relative;background:#eeeee8;isolation:isolate;min-width:0}
.club-3d-canvas{display:block;width:100%;height:430px;touch-action:none;cursor:grab;outline-offset:-4px}
.club-3d-canvas:active{cursor:grabbing}
.club-3d-canvas:focus-visible{outline:3px solid #a88146}
.club-3d-badge{position:absolute;top:14px;left:16px;font-size:.68rem;letter-spacing:.1em;font-weight:700;color:#687064;pointer-events:none}
.ground-scene-label{position:absolute;bottom:12px;left:14px;display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;max-width:calc(100% - 28px);padding:10px 13px;min-height:44px;border:1px solid #dbcbb9;border-radius:9px;background:#fffdf5ed;color:#5c4d37;font:600 .8rem/1.4 var(--studio-font);cursor:pointer}
.ground-scene-label i{width:9px;height:9px;border-radius:50%;background:#c35e29}.ground-scene-label span{font-size:.75rem;font-weight:400}.ground-scene-label:focus-visible{outline:3px solid #b17b2f;outline-offset:2px}
.ground-lie-explanation{padding:16px 18px;background:#f5efe3;border-left:3px solid #c35e29;font-size:.95rem;line-height:1.7;color:#5d503d}.ground-lie-explanation>b:first-child{display:block;margin-bottom:6px}
.club-3d-status{position:absolute;inset:38% 20px auto;padding:18px;background:#fffef8e8;border:1px solid #cbd3c1;border-radius:10px;font-size:.9rem;line-height:1.6;z-index:2}
.club-3d-status[hidden]{display:none}
.pose-3d-help{padding:16px 28px 20px;border-bottom:1px solid #d4dccb;background:#f3f4ec}
.pose-3d-help p{margin:0 0 12px;font-size:.94rem;line-height:1.6;max-width:850px}
.pose-3d-help>span{display:block;font-size:.8rem;line-height:1.65;color:#65725d;margin-top:14px}
.pose-3d-camera-actions{display:flex;gap:10px;flex-wrap:wrap}
.pose-3d-camera-actions .btn{font-size:.83rem;min-height:42px}
.pose-lab:has(.club-3d-stage) .pose-workspace{grid-template-columns:minmax(215px,.65fr) minmax(0,2fr)}
.pose-lab:has(.club-3d-stage) .pose-picture h3{display:flex;justify-content:space-between;margin-bottom:12px}
@media(max-width:1100px){.pose-lab:has(.club-3d-stage) .pose-workspace{grid-template-columns:1fr}.pose-lab:has(.club-3d-stage) .pose-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pose-lab:has(.club-3d-stage) .pose-controls h3{grid-column:1/-1;margin:0}.club-3d-canvas{height:400px}}
@media(max-width:600px){.pose-lab:has(.club-3d-stage) .pose-controls{grid-template-columns:1fr}.pose-3d-help{padding:18px}.club-3d-canvas{height:420px}.pose-lab:has(.club-3d-stage) .pose-picture dl{grid-template-columns:1fr 1fr}.pose-lab:has(.club-3d-stage) .pose-toolbar{padding-left:18px;padding-right:18px}}

/* Concept-specific editorial photography with teaching diagrams on the player. */
.movement-concept-photo{margin:0 32px 30px;background:#f3f2ec;border:1px solid #d6dacd;border-radius:16px;overflow:hidden}
.movement-concept-photo>header{padding:24px 28px 18px;background:#fffef8}
.movement-concept-photo>header h3{margin:8px 0 8px;font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.3}
.movement-concept-photo>header p{margin:0;font-size:.85rem;color:#5c6d62}
.movement-concept-photo>header p span{color:#7a7e70}
.movement-concept-photo .movement-photo{max-height:680px;width:100%;aspect-ratio:3/2;overflow:hidden}
.movement-photo img{object-fit:cover}
.movement-physics-overlay{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(0 1px 2px #fffef8b0)}
.movement-physics-overlay>path,.movement-physics-overlay>circle,.movement-physics-overlay>ellipse{stroke-linecap:round;stroke-linejoin:round}
.movement-concept-photo figcaption{padding:22px 28px;background:#fffef8;border-top:1px solid #d6dacd}
.movement-concept-photo figcaption dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:22px;margin:0}
.movement-concept-photo figcaption dt{font-size:.91rem;font-weight:750;color:#284839;display:flex;align-items:center;gap:9px;line-height:1.45;margin-bottom:7px}
.movement-concept-photo figcaption dd{margin:0;font-size:.87rem;line-height:1.65;color:#526254}
.movement-concept-photo figcaption>p{border-top:1px solid #e1e2d8;padding-top:14px;margin-top:18px;font-size:.8rem;line-height:1.6;color:#657363}
.movement-legend-dot{display:inline-block;width:9px;height:9px;background:#a7752f;border-radius:50%;flex:none}
.movement-legend-dot.is-1{background:#24594a}.movement-legend-dot.is-2{background:#24748b}
.movement-practice-panel .movement-photo-angle{flex-basis:100%;font-size:.76rem;text-transform:uppercase;letter-spacing:.055em;font-weight:650;color:#56674f;margin-bottom:3px}
@media(min-width:1250px){.movement-concept-photo{max-width:1050px;margin-left:auto;margin-right:auto}.movement-concept-photo .movement-photo{max-height:none}}
@media(max-width:800px){.movement-concept-photo{margin:0 22px 24px}.movement-concept-photo>header,.movement-concept-photo figcaption{padding:20px}.movement-concept-photo figcaption dl{grid-template-columns:1fr;gap:16px}}
@media(max-width:500px){.movement-concept-photo{margin:0 12px 22px;border-radius:12px}.movement-concept-photo>header,.movement-concept-photo figcaption{padding:18px}.movement-concept-photo>header p span{display:block;margin-top:6px}.movement-concept-photo figcaption dd{font-size:.86rem}.movement-concept-photo>header h3{font-size:1.3rem}.movement-physics-overlay{filter:drop-shadow(0 1px 1px #fffef8d0)}}

/* Local 3D delivery: clear transport controls and a shared visual legend. */
.pose-motion-controls{margin:0;padding:28px 32px;border-top:1px solid #d6dccf;border-bottom:1px solid #d6dccf;background:#f6f7ef;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:20px 34px}
.pose-motion-controls h3{margin:8px 0 10px}.pose-motion-controls p{margin:0;line-height:1.65}
.pose-motion-scrub label{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-weight:700;color:#29483b}
.pose-motion-scrub output{color:#886434;font-variant-numeric:tabular-nums}.pose-motion-scrub input{width:100%;margin:24px 0 8px;accent-color:#1d7893}
.pose-motion-buttons,.pose-motion-views{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.pose-motion-buttons .pose-play{background:#294c40;color:#fff}
.pose-motion-views{margin-top:0;grid-column:1/-1}.pose-motion-controls .pose-motion-note{grid-column:1/-1;font-size:.84rem;color:#647262}
.pose-vector-legend{display:flex;flex-wrap:wrap;gap:12px 22px;margin:20px 0 12px;font-size:.88rem;font-weight:700}
.pose-vector-legend span{display:inline-flex;align-items:center;gap:9px}.pose-vector-legend span:before{content:'';display:block;width:32px;height:4px;border-radius:2px;background:var(--vector-color)}
.pose-3d-camera-actions button[aria-pressed=true]{background:#e2e8d8;border-color:#899c76}
@media(max-width:700px){.pose-motion-controls{grid-template-columns:1fr;padding:24px 18px}.pose-motion-buttons .btn{flex:1 1 auto}.pose-motion-scrub label{font-size:.9rem}.pose-motion-views .btn{flex:1 1 100%}.pose-vector-legend{display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:.78rem}}
.club-3d-metrics{position:absolute;left:14px;right:14px;bottom:14px;display:flex;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:8px;background:#fffef5ed;border:1px solid #d7dccf;pointer-events:none;font-size:.74rem;font-weight:600}
.club-3d-metrics span:first-child{color:#156a80}.club-3d-metrics span:last-child{color:#a74730}.club-3d-metrics b{display:inline-block;margin-left:4px;font-size:1.05rem;font-variant-numeric:tabular-nums}

.club-3d-transport{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--line,#d5dcca)}.club-3d-transport input{width:100%;min-height:28px;accent-color:#345642}.club-3d-transport .btn{min-height:42px;padding:9px 14px;font-size:13px;flex:1}
/* Delivery studio: one large club, one connected flight. */
.delivery-lab>header{padding:28px 30px 22px;background:#253f37;color:#fffef7}.delivery-lab>header h2{color:inherit;font-size:clamp(1.7rem,2.8vw,2.6rem);margin:8px 0 12px}.delivery-lab>header .eyebrow{color:#e4c591}.delivery-lab>header p{color:#e3e9df;max-width:760px;margin:0;line-height:1.65}.delivery-workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;align-items:start}.delivery-visual{min-width:0;position:sticky;top:16px}.delivery-lab .pose-controls{border-right:0;border-left:1px solid #d4dccb;padding:24px;display:block}.delivery-lab .pose-control{margin:0 0 23px}.delivery-lab .pose-control label{font-size:.95rem}.delivery-lab .pose-control p{font-size:.875rem;line-height:1.55}.delivery-lab .club-3d-canvas{width:100%;height:520px}.delivery-lab .pose-toolbar{padding:14px 18px}.delivery-lab .lie-hand-toggle button{font-size:.875rem}.delivery-camera{display:flex;gap:8px;flex-wrap:wrap;padding:12px 18px;background:#fffef8;border-top:1px solid #d4dccb}.delivery-camera .btn{font-size:.875rem;min-height:40px;padding:8px 12px}.delivery-camera [aria-pressed=true]{background:#e3ebdd;border-color:#456250}.delivery-lab .club-3d-transport{padding:12px 18px}.delivery-lab .club-3d-transport label{width:100%;display:flex;justify-content:space-between;gap:10px;font-size:.875rem;font-weight:700}.delivery-lab .club-3d-transport output{font-weight:400;color:#576959}.delivery-lab .club-3d-transport .btn{font-size:.875rem}.delivery-arrows{border:0;border-bottom:1px solid #d4dccb;margin:0;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.delivery-arrows legend{padding:14px 0 0;font-weight:700;font-size:.95rem}.delivery-arrows [role=switch]{display:flex;align-items:center;gap:8px;padding:10px;background:#f5f5ef;border:1px solid #d1d8cb;border-radius:8px;font:inherit;font-size:.875rem;text-align:left;cursor:pointer;color:#354e40;min-height:44px}.delivery-arrows [role=switch] i{width:20px;height:3px;background:var(--vector-color);flex-shrink:0}.delivery-arrows [role=switch] b{margin-left:auto;font-size:.75rem;font-weight:500}.delivery-arrows [aria-checked=false]{background:#fff;opacity:.68}.delivery-arrows [aria-checked=false] i{background:#c2c7be}.delivery-arrows>div{grid-column:1/-1;display:flex;gap:22px;padding-top:5px}.delivery-pose-readings{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:18px}.delivery-pose-readings span{display:block;font-size:.875rem;color:#5c6d62;margin-bottom:6px}.delivery-pose-readings strong{font-size:1rem}.delivery-extra{margin:12px 0 22px;border-top:1px solid #d4dccb;padding-top:12px}.delivery-extra summary{font-weight:700;margin-bottom:18px;cursor:pointer}.delivery-flight{border-top:1px solid #d4dccb;padding:28px}.delivery-flight>header h3{font-size:1.7rem;margin:8px 0}.delivery-flight>header p{margin:0;color:#5c6d62}.delivery-chain{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.delivery-chain article{background:#f1f3e9;padding:20px;border:1px solid #d4dccb;border-radius:12px}.delivery-chain article>span{display:block;font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:#657963;margin-bottom:12px}.delivery-chain b{font-size:1.15rem;line-height:1.5}.delivery-chain p{font-size:.9rem;line-height:1.65;margin-bottom:0}.delivery-flight-charts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.delivery-flight-charts>figure{min-width:0;margin:0}.delivery-flight-charts h4{font-size:1.1rem}.delivery-flight-charts figcaption{font-size:.9rem;line-height:1.6;margin:12px 0 24px;color:#526254}.delivery-explanation{border-top:1px solid #d4dccb;padding:20px 0}.delivery-explanation summary,.delivery-sources summary{cursor:pointer;font-weight:700}.delivery-explanation dl{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0 0}.delivery-explanation dt{font-weight:700;margin-bottom:10px}.delivery-explanation dd{margin:0;line-height:1.65;font-size:.95rem}.delivery-assumptions,.delivery-caution{font-size:.875rem;line-height:1.65;color:#637062}.delivery-caution{color:#845528;background:#faf0dc;padding:12px;border-radius:8px}.delivery-sources a{display:inline-block;margin:16px 18px 0 0;font-size:.875rem}.delivery-arrows .text-link{border:0;background:none;color:#294e3e;font:inherit;font-size:.875rem;text-decoration:underline;cursor:pointer}
@media(min-width:1550px){.delivery-lab .club-3d-canvas{height:600px}.delivery-workspace{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1000px){.delivery-workspace{grid-template-columns:1fr}.delivery-visual{position:static}.delivery-lab .pose-controls{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-left:0;border-top:1px solid #d4dccb}.delivery-lab .pose-controls>h3{grid-column:1/-1}.delivery-lab .pose-control{margin:0}.delivery-lab .club-3d-canvas{height:510px}.delivery-chain{grid-template-columns:1fr}.delivery-chain article{padding:16px}.delivery-flight-charts{grid-template-columns:1fr}}
@media(max-width:600px){.delivery-lab>header{padding:24px 18px}.delivery-lab .club-3d-canvas{height:440px}.delivery-lab .pose-controls{grid-template-columns:1fr;padding:20px}.delivery-arrows{grid-template-columns:1fr;padding:18px}.delivery-flight{padding:22px 16px}.delivery-explanation dl{grid-template-columns:1fr}.delivery-lab .club-3d-transport label{display:block}.delivery-lab .club-3d-transport output{display:block;margin-top:7px}.delivery-pose-readings{gap:14px}.delivery-pose-readings strong{font-size:.95rem}}
.delivery-live-preview{position:absolute;top:45px;left:16px;width:185px;padding:12px;background:#fffef8f0;border:1px solid #d5dccc;border-radius:10px;pointer-events:none;box-shadow:0 4px 20px #1e3c2a08}.delivery-live-preview>strong{display:block;font-size:12px;color:#4d6557}.delivery-live-preview svg{display:block;width:100%;height:auto}.delivery-live-preview>div{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:11px;color:#60705f}.delivery-live-preview b{color:#4e3c6a}.delivery-live-preview span:last-child{width:100%}@media(max-width:600px){.delivery-live-preview{width:130px;padding:8px;left:10px}.delivery-live-preview>strong{font-size:11px}.delivery-live-preview>div{font-size:10px}}
.delivery-club-select{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.delivery-club-select [aria-pressed=true]{background:#29483a;color:#fffef7;border-color:#29483a}.lie-comparison-extra{margin-bottom:30px;border:1px solid #d4dccb;border-radius:12px;background:#fffef9}.lie-comparison-extra>summary{padding:20px 24px;font-size:1.1rem;font-weight:700;cursor:pointer}.lie-comparison-extra .lie-demo{margin:0;border:0}
.delivery-live-preview small{display:block;margin-top:6px;font-size:10px;line-height:1.4;color:#6d7568}
@media(max-width:600px){.delivery-camera{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:12px}.delivery-camera .btn{width:auto;padding:9px 5px;font-size:12px;line-height:1.3;white-space:normal}.delivery-club-select{display:grid;grid-template-columns:repeat(3,1fr)}.delivery-club-select .btn{width:auto;padding:10px;font-size:14px}}

/* The same physics topic stays recognisable in both explanation modes. */
.movement-topic-nav button>div{min-width:0;display:grid;gap:6px}
.movement-topic-nav button strong{font-size:1rem;line-height:1.35}
.movement-topic-nav button small{font-size:.875rem;line-height:1.45;color:#5b6e59;font-weight:400}
.movement-topic-nav button[aria-pressed=true] small{color:#e5d0aa}
.movement-equivalence{padding:26px 30px;margin:0 0 24px;background:#f4f1e6;border:1px solid #d9caa9;border-left:4px solid #a98040;border-radius:12px;color:#294536}
.movement-equivalence h2{font-size:.875rem;line-height:1.5;font-weight:700;color:#75603b;margin:0 0 18px;scroll-margin-top:24px}
.movement-equivalence dl{display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;margin:0}
.movement-equivalence dl>div+div{border-left:1px solid #d4c9b1;padding-left:30px}
.movement-equivalence dt{font-size:.875rem;line-height:1.5;color:#5c6957;margin:0 0 7px}
.movement-equivalence dd{font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.3;font-weight:700;margin:0}
.movement-equivalence p{font-size:1rem;line-height:1.65;max-width:960px;margin:20px 0}
@media(max-width:650px){.movement-topic-nav button strong{font-size:.94rem}.movement-equivalence{padding:22px 18px}.movement-equivalence dl{grid-template-columns:1fr;gap:17px}.movement-equivalence dl>div+div{border-left:0;border-top:1px solid #d4c9b1;padding:16px 0 0}}

/* Arrow explanations sit outside the model and open only on request. */
.delivery-arrow-help{margin:0;padding:14px 18px;background:#fffef8;border-bottom:1px solid #d4dccb}
.delivery-arrow-help>summary{cursor:pointer;padding:12px 16px;border:1px solid #b5c3ad;border-radius:8px;background:#eef2e8;color:#294e3e;font-size:.95rem;font-weight:700;line-height:1.5;min-height:46px}
.delivery-arrow-help>summary:focus-visible{outline:3px solid #a88146;outline-offset:3px}
.delivery-arrow-help>p{font-size:.94rem;line-height:1.6;margin:18px 0;color:#53654f}
.delivery-arrow-guide{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px;margin:22px 0 10px}
.delivery-arrow-guide section{min-width:0;border-top:2px solid var(--vector-color);padding-top:16px}
.delivery-arrow-guide h4{display:flex;align-items:center;gap:10px;margin:0 0 13px;font-size:1rem;line-height:1.45;color:#294536}
.delivery-arrow-guide h4 i{display:inline-block;width:26px;height:3px;background:var(--vector-color);flex-shrink:0}
.delivery-arrow-guide p{font-size:.94rem;line-height:1.7;margin:10px 0 0;color:#4a5d4c}
.delivery-arrow-guide p b{color:#294536}
@media(max-width:650px){.delivery-arrow-guide{grid-template-columns:1fr;gap:22px}.delivery-arrow-help{padding:12px 16px}}

/* One teaching view keeps the physics with its golf application. */
.movement-entry button{white-space:normal;text-align:left}
.movement-entry>span{font-size:.875rem}
.movement-bridge .movement-controls>h4{grid-column:1/-1}
.movement-bridge .movement-formula{margin-top:12px}
.movement-bridge .movement-formula p{margin:0 0 18px;font-size:.94rem;line-height:1.7}
.movement-method .movement-primer{margin-bottom:30px}
@media(max-width:500px){.movement-entry button{width:100%;font-size:1rem}}

.delivery-live-preview[hidden]{display:none!important}.delivery-phase-hint{grid-column:1/-1;font-size:.875rem;line-height:1.55;color:#576959;margin:0 0 6px}

.delivery-live-preview>.delivery-preview-speeds{display:grid;gap:5px;padding-top:8px;margin-top:8px;border-top:1px solid #d5dccc;font-size:.875rem;line-height:1.35}.delivery-preview-speeds>strong{font-size:.875rem;font-weight:600;color:#4d6557}.delivery-preview-speeds>span{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.delivery-preview-speeds b{white-space:nowrap}
/* Ball station and computed first ground contact, kept outside the club view. */
.delivery-ground{margin:18px 0;padding:20px;background:#f8f9f3;border:1px solid #c8cfbf;border-radius:16px;color:#294637}
.delivery-ground h3{margin:5px 0 16px;font-size:1.35rem}
.delivery-marker-controls{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.delivery-marker-controls button{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #b9c4b2;border-radius:8px;background:white;color:#2d4436;font:inherit;font-size:.9rem}
.delivery-marker-controls button[aria-checked=false]{opacity:.55}
.delivery-marker-controls i{width:12px;height:12px;border:3px solid var(--marker-color);border-radius:50%}
.ground-readings{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ground-readings article>span{display:block;font-size:.9rem;color:#5c6856}
.ground-readings strong{display:block;font-size:1.5rem;margin:4px 0;font-variant-numeric:tabular-nums}
.ground-readings p,.ground-key{font-size:.9rem;line-height:1.5}
.ground-phase{display:flex;flex-direction:column;gap:4px;padding:12px 0;border-top:1px solid #d6dcce;border-bottom:1px solid #d6dcce}
.ground-phase span{font-size:.9rem}
.ground-physics{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:14px 0}
.ground-physics span{font-size:.9rem;display:flex;flex-direction:column;gap:4px}
@media(max-width:600px){.delivery-ground{padding:15px}.ground-readings,.ground-physics{grid-template-columns:1fr}.ground-readings{gap:10px}}

/* simple229: begin with concrete examples; keep the mathematics available. */
.movement-easy-examples{padding:0 32px 30px}
.movement-example-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.movement-example-grid>section{padding:22px 24px;background:#f4f3eb;border:1px solid #d9decf;border-radius:12px}
.movement-example-grid h3{font-size:1.15rem;line-height:1.4;margin:10px 0}
.movement-example-grid p{margin:0;line-height:1.75}
.movement-remember{padding:18px 0;border-bottom:1px solid #d9decf}
.movement-remember strong{display:block;margin:0 0 5px;color:#775b32}
.movement-coach-cue{padding:20px 24px;margin-top:20px;border-left:3px solid #a98040;background:#edf1e7}
.movement-coach-cue>span{font-size:.875rem;font-weight:700;color:#59684c}
.movement-coach-cue p{font-size:1.08rem;margin-top:8px;max-width:70ch}
.movement-bridge>header{padding-bottom:24px}
.movement-live-explanation{padding:24px 28px;background:#e8eee3;border-bottom:1px solid #ced7c7;color:#24473a}
.movement-live-explanation>strong{display:block;font-size:1.05rem}
.movement-live-explanation p{margin-top:9px;line-height:1.7}
.movement-deeper{border-top:1px solid #d1d8c9;background:#fffef9}
.movement-deeper>summary{cursor:pointer;padding:22px 32px;font-size:1rem;font-weight:700;line-height:1.5}
.movement-deeper-intro{padding:0 32px 4px}
.movement-deeper-intro h4{font-size:1.2rem;margin:8px 0 14px}
.movement-deeper>.movement-formula{margin:0 32px;padding:20px 0}
@media(max-width:700px){.movement-example-grid{grid-template-columns:1fr;gap:14px}.movement-easy-examples{padding:0 18px 24px}.movement-example-grid>section{padding:20px}.movement-coach-cue{padding:18px 20px}.movement-live-explanation{padding:22px 20px}.movement-deeper>summary{padding:22px 18px}.movement-deeper-intro{padding:0 18px 4px}.movement-deeper>.movement-formula{margin:0 18px}}

/* Live swing readings stay outside the club view. */
.delivery-motion-hint{font-size:.95rem;color:var(--muted,#5d6e60);margin:1rem 0}.delivery-motion-readings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:1.5rem}.delivery-motion-readings>div{padding:.85rem;border:1px solid #ced5c8;border-radius:.65rem;background:#fffef9}.delivery-motion-readings span{display:block;font-size:.875rem;color:#536659}.delivery-motion-readings strong{display:block;margin-top:.4rem;font-size:1.3rem;color:#244b3e;font-variant-numeric:tabular-nums}@media(max-width:600px){.delivery-motion-readings{grid-template-columns:1fr}.delivery-motion-readings>div{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.delivery-motion-readings strong{margin:0;white-space:nowrap}}

/* The club and its selected dial form one working surface. */
.delivery-lab{overflow:clip}
.delivery-lab>.delivery-workspace{grid-template-columns:minmax(0,1fr) 310px;gap:14px;padding:14px}
.delivery-lab .delivery-visual{position:sticky;top:12px;border:1px solid #d7ddcf;border-radius:12px;overflow:clip;background:#fffef9}
.delivery-lab .club-3d-canvas{height:clamp(460px,68svh,760px)}
.delivery-lab .pose-toolbar{padding:8px 12px;min-height:48px}
.delivery-lab .pose-toolbar .lie-hand-toggle{gap:5px}
.delivery-lab .lie-hand-toggle button{min-height:40px;padding:8px 12px}
.delivery-camera-menu>summary{cursor:pointer;min-height:40px;padding:10px 14px;font-size:.875rem;font-weight:600;color:#3b5947;border-top:1px solid #d4dccb}
.delivery-camera-menu .delivery-camera{padding:8px 12px}
.delivery-lab .club-3d-transport{padding:10px 12px;gap:5px}
.delivery-lab .club-3d-transport label{font-size:.875rem;align-items:center}
.delivery-lab .club-3d-transport .btn{min-height:40px;padding:8px;font-size:.875rem}
.delivery-lab .pose-controls.delivery-dial-dock{display:block;padding:18px;border:1px solid #d4dccb;border-radius:12px;background:#f6f6ee;min-width:0}
.delivery-dial-dock h3{font-size:1.1rem;margin:0 0 14px}
.delivery-dial-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:16px}
.delivery-dial-shortcuts button{font:inherit;font-size:.875rem;line-height:1.3;min-height:48px;padding:9px 8px;border:1px solid #cbd5c5;border-radius:8px;background:#fffef9;color:#34503f;cursor:pointer;text-align:left}
.delivery-dial-shortcuts button[aria-pressed=true]{background:#294d3d;color:#fffdf4;border-color:#294d3d}
.delivery-dial-shortcuts button:focus-visible,.delivery-dial-select select:focus-visible{outline:3px solid #b48843;outline-offset:2px}
.delivery-dial-select{display:block;font-size:.875rem;color:#4c6251;font-weight:600}
.delivery-dial-select select{display:block;width:100%;min-height:44px;margin:6px 0 18px;padding:8px 10px;border:1px solid #c4cdbb;border-radius:8px;background:#fffef9;color:#284936;font:inherit;font-size:1rem}
.delivery-active-dial{padding:16px 14px;border:1px solid #cbd5c5;border-radius:10px;background:#fffef9}
.delivery-lab .delivery-active-dial .pose-control{margin:0}
.delivery-active-dial .pose-control[hidden]{display:none!important}
.delivery-lab .delivery-active-dial .pose-control label{font-size:1rem;align-items:center;line-height:1.35;min-height:32px}
.delivery-active-dial .pose-control output{font-size:1.4rem;color:#825f2f}
.delivery-active-dial .pose-control input{height:48px;margin:4px 0 0;touch-action:pan-y}
.pose-dial-limits{display:flex;justify-content:space-between;font-size:.875rem;color:#60705b;font-variant-numeric:tabular-nums}
.pose-dial-help{border-top:1px solid #e2e6da;margin-top:12px}
.pose-dial-help summary{cursor:pointer;padding:12px 0 0;font-size:.875rem;line-height:1.4;color:#46614d}
.delivery-dock-arrows{margin-top:14px;border-block:1px solid #d4dccb}
.delivery-dock-arrows>summary{font-size:.875rem;font-weight:600;cursor:pointer;padding:14px 0;color:#3b5947}
.delivery-dock-arrows .delivery-arrows{display:grid;grid-template-columns:1fr;padding:0 0 12px;border:0}
.delivery-dock-arrows .delivery-arrows legend{display:none}
.delivery-dock-arrows .delivery-arrows .delivery-phase-hint{font-size:.875rem;margin:0 0 6px}
.delivery-reset{border:0;background:none;font:inherit;font-size:.875rem;text-decoration:underline;color:#3b5947;padding:14px 0 0;cursor:pointer;min-height:44px}
.delivery-support{padding:0 22px 22px}
.delivery-support .delivery-pose-readings{padding:10px 0 24px;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){
 .delivery-lab>.delivery-workspace{grid-template-columns:minmax(0,1fr);gap:10px}
 .delivery-lab .delivery-visual{top:0;z-index:4}
 .delivery-lab .club-3d-canvas{height:clamp(360px,56svh,620px)}
 .delivery-dial-shortcuts{display:none}
 .delivery-dial-dock h3{display:none}
 .delivery-dial-select{display:flex;align-items:center;gap:10px}
 .delivery-dial-select select{margin:0 0 12px;flex:1;min-width:0}
 .delivery-lab .pose-controls.delivery-dial-dock{padding:12px}
 .delivery-active-dial{padding:10px 12px}
 .delivery-dock-arrows{margin-top:10px}
 .delivery-support .delivery-pose-readings{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .delivery-lab>.delivery-workspace{padding:8px}
 .delivery-lab .pose-toolbar{padding:5px}
 .delivery-lab .pose-toolbar .lie-hand-toggle{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;gap:3px}
 .delivery-lab .lie-hand-toggle button{font-size:.875rem;padding:7px 3px;min-height:40px}
 .delivery-lab .club-3d-transport label{display:flex;align-items:start;font-size:.875rem}
 .delivery-lab .club-3d-transport output{display:inline;text-align:right;margin:0;max-width:52%}
 .delivery-lab .club-3d-transport{padding:8px;gap:4px}
 .delivery-lab .club-3d-transport .btn{padding:8px 3px;min-height:44px}
 .delivery-support{padding:0 14px 18px}
}
.delivery-dial-dock .delivery-dial-shortcuts{margin:16px 0 0}
@media(max-width:1000px){
 /* Do not let a pinned viewer cover its touch controls on narrow screens. */
 .delivery-lab .delivery-visual{position:static}
}
@media(max-width:1000px){
 .delivery-lab>.delivery-workspace{grid-template-areas:"views" "scene" "dial" "camera";gap:8px}
 .delivery-lab .delivery-visual{display:contents}
 .delivery-lab .pose-toolbar{grid-area:views}
 .delivery-lab .club-3d-stage{grid-area:scene;border:1px solid #d7ddcf;border-radius:10px;overflow:hidden}
 .delivery-lab .delivery-dial-dock{grid-area:dial}
 .delivery-lab .club-3d-transport{grid-area:motion;background:#f5f6ed;border:1px solid #d7ddcf;border-radius:10px}
 .delivery-lab .delivery-camera-menu{grid-area:camera}
}

/* Read the connected flight without covering the club or its active dial. */
.delivery-projection{margin:0 14px 22px;padding:20px;border:1px solid #ccd6c6;border-radius:12px;background:#fffef9}
.delivery-projection>header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.delivery-projection h3{margin:5px 0 0;font-size:1.4rem;color:#294d3d}
.delivery-projection .eyebrow{font-size:.75rem;letter-spacing:.08em}
.delivery-projection-toggle{display:flex;gap:4px;padding:4px;background:#edf0e7;border-radius:9px}
.delivery-projection-toggle button{font:inherit;font-size:.95rem;padding:10px 22px;min-height:44px;border:1px solid transparent;border-radius:7px;color:#365541;background:transparent;cursor:pointer}
.delivery-projection-toggle button[aria-pressed=true]{background:#294d3d;color:#fffef9}
.delivery-projection-toggle button:focus-visible{outline:3px solid #b48843;outline-offset:2px}
.delivery-projection-body{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,1fr);gap:28px;margin-top:16px;align-items:center}
.delivery-projection-body[hidden],.delivery-flight-pending[hidden]{display:none!important}
.delivery-projection figure{margin:0;min-width:0}
.delivery-projection figcaption{font-size:.95rem;font-weight:600;color:#45604c}
.delivery-projection svg{display:block;width:100%;height:auto;max-height:250px;margin:8px 0}
.delivery-projection svg text{font:13px system-ui,sans-serif;fill:#566b59}
.delivery-projection svg .projection-target{font-size:12px;fill:#47705a}
.delivery-projection small{font-size:.8rem;color:#60705f;display:block;line-height:1.45}
.delivery-lateral-result{margin:0 0 16px;padding-left:14px;border-left:3px solid #ad7737}
.delivery-lateral-result span{display:block;font-size:.9rem;color:#61735f;margin-bottom:5px}
.delivery-lateral-result strong{font-size:1.4rem;line-height:1.3;color:#674a7e}
.delivery-projection-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}
.delivery-projection-facts dt{font-size:.85rem;color:#61735f}
.delivery-projection-facts dd{margin:3px 0 0;font-size:1.05rem;font-weight:600;color:#294d3d}
.delivery-projection-facts>p:last-child,.delivery-flight-pending{font-size:.9rem;line-height:1.6;color:#61705f}
.delivery-flight-pending{margin-bottom:0}
.movement-coaching{margin:28px 0;padding:clamp(18px,3vw,36px);background:#fffef8;border:1px solid #d0d9c7;border-radius:18px;color:#2f4d3d}
.movement-coaching>header{max-width:850px;margin-bottom:24px}
.movement-coaching h3{font-family:Georgia,serif;font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:500;margin:10px 0 14px;line-height:1.2}
.movement-coaching p{line-height:1.75;margin:10px 0 0;font-size:1rem;color:#51634f}
.movement-coaching-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.movement-coaching-grid article{padding:22px;background:#f1f3e9;border:1px solid #dce2d3;border-radius:12px}
.movement-coaching-grid article>span{font-size:.75rem;letter-spacing:.07em;color:#8c6736}
.movement-coaching h4{font-size:1.15rem;line-height:1.45;margin:10px 0}
.movement-speed-map{margin-top:28px}
.movement-speed-rows{border:1px solid #d3ddca;border-radius:12px;overflow:hidden;margin-top:18px}
.movement-speed-rows article{display:grid;grid-template-columns:32px 1fr 1.5fr;gap:16px;padding:17px 20px;align-items:start;border-bottom:1px solid #dce2d3}
.movement-speed-rows article:last-child{border:0}
.movement-speed-rows article:nth-child(even){background:#f7f7ef}
.speed-map-number{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e8eddf;color:#856338;font-size:.875rem}
.movement-speed-rows h5{font-size:1rem;margin:2px 0 4px}
.movement-speed-rows article div>span{font-size:.875rem;color:#62725e}
.movement-speed-rows b{font-size:.95rem;font-weight:600}
.movement-speed-rows p{font-size:.95rem;margin:3px 0 0}
.movement-coaching p.movement-source-note{font-size:.875rem;line-height:1.6;margin-top:16px}
.movement-coaching a{color:#315c48;text-underline-offset:3px}
.movement-coaching-case{margin-top:26px;padding:24px;border-left:3px solid #af8141;background:#f6f0e3;border-radius:0 12px 12px 0}
.movement-coaching-case h4{font-size:1.25rem}
.movement-coaching-case>div{margin-top:20px;padding-top:4px;border-top:1px solid #ded1b8}
.movement-coaching-case h5{font-size:1rem;margin:18px 0 4px}
.movement-measurement{margin-top:20px;padding-top:16px;border-top:1px solid #d7dfcc}
.movement-measurement summary{font-size:.95rem;font-weight:600;cursor:pointer;line-height:1.5;padding:8px 0}
@media(max-width:900px){.movement-coaching-grid{grid-template-columns:1fr}.movement-coaching-grid article{padding:18px}.delivery-projection-body{gap:18px;grid-template-columns:1fr 1fr}}
@media(max-width:600px){.delivery-projection{margin:0 8px 16px;padding:16px}.delivery-projection-body{grid-template-columns:1fr}.delivery-projection-toggle{width:100%}.delivery-projection-toggle button{flex:1}.movement-speed-rows article{grid-template-columns:28px 1fr;gap:10px;padding:16px 12px}.movement-speed-rows article>div:last-child{grid-column:2}.movement-coaching-case{padding:18px}.movement-coaching{padding:18px}.movement-speed-rows p{font-size:.95rem}}
.movement-segment-live{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.movement-segment-live>div{border:1px solid #cbd6c3;border-radius:8px;padding:12px;background:#fffef8;color:#294d3d}
.movement-segment-live b,.movement-segment-live span,.movement-segment-live strong{display:block;font-size:.9rem!important;line-height:1.5}
.movement-segment-live span{color:#586d56}.movement-segment-live strong{margin-top:5px;color:#8b6735!important}
.movement-live-explanation .movement-sequence-note{font-size:.875rem}

@media(max-width:600px){.delivery-projection svg text{font-size:19px}.delivery-projection svg .projection-target{font-size:17px}}

/* A taller club stage keeps the enlarged model above the adjacent touch dial. */
@media(max-width:600px){.delivery-lab .club-3d-canvas{height:clamp(310px,48svh,460px)}}

/* Playback stays inside the 3D stage, clear of the club and ground control. */
.delivery-lab .pose-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.delivery-lab .pose-stage-play{position:absolute;top:12px;right:12px;z-index:3;margin:0;min-width:112px;min-height:44px;padding:10px 16px;background:#294d3d;color:#fffef8;border:1px solid #294d3d;border-radius:8px;font:inherit;font-size:.875rem;cursor:pointer;box-shadow:0 3px 12px #1e352329;touch-action:manipulation}
.delivery-lab .pose-stage-play[aria-pressed=true]{background:#8b6533;border-color:#8b6533}
.delivery-lab .pose-stage-play:focus-visible{outline:3px solid #b48843;outline-offset:3px}
.delivery-lab .club-3d-badge{right:140px;line-height:1.5}
@media(max-width:600px){.delivery-lab .pose-stage-play{top:10px;right:10px;padding:10px 12px}.delivery-lab .pose-toolbar{gap:6px}}

/* Each dial's help explains its own geometry, coupled outputs and model limits. */
.pose-dial-help .pose-help-intro{padding:12px;border-left:3px solid #aa7b3b;background:#f3eddf;font-size:.9rem;line-height:1.6;margin:14px 0}
.pose-adjustment-guide section{margin:18px 0}
.pose-adjustment-guide h4{font-size:.9rem;line-height:1.4;margin:0 0 6px;color:#2d4f3d}
.delivery-lab .pose-adjustment-guide p{font-size:.875rem;line-height:1.7;margin:0;color:#51654f}
.pose-adjustment-readings{padding:14px 12px;background:#edf2e5;border:1px solid #d2ddc7;border-radius:9px;margin:18px 0}
.pose-adjustment-readings dl{margin:12px 0 0;display:grid;gap:9px}
.pose-adjustment-readings dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.pose-adjustment-readings dt{font-size:.8rem;color:#597052}
.pose-adjustment-readings dd{font-size:.9rem;font-weight:700;color:#36523e;margin:0;text-align:right;white-space:nowrap}
.pose-adjustment-readings small{display:block;margin-top:12px;font-size:.75rem;line-height:1.55;color:#5c7055}
.pose-help-sources{display:grid;gap:9px;border-top:1px solid #d4ddc9;padding-top:14px}
.pose-help-sources a{font-size:.8rem;line-height:1.5;color:#345a43;text-underline-offset:3px}

/* Calculated impact map stays legible regardless of the orbit camera. */
.contact-audit-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(260px,1.1fr);gap:24px;margin:18px 0 24px;padding-bottom:24px;border-bottom:1px solid #d6ddcf}
.contact-face-map{margin:0;background:#fffef9;border:1px solid #d6ddcf;border-radius:14px;padding:16px}
.contact-face-map figcaption{font-weight:750;color:#294637}.contact-face-map svg{display:block;width:100%;max-height:270px}.contact-face-map svg text{font-family:inherit;font-size:13px;fill:#496352}
.contact-face-map .contact-face-photo{margin-top:12px;border-radius:8px;background:#f0f0f0;max-height:330px}.contact-face-map .contact-face-photo text{font-size:22px}.contact-face-map small{display:block;color:#65725e;font-size:.8rem;line-height:1.45}
.contact-face-map p,.contact-audit-facts p{font-size:.9rem;line-height:1.55}.contact-audit-facts{display:grid;gap:18px;align-content:center}.contact-audit-facts article>span{font-size:.88rem;color:#65725e}.contact-audit-facts strong{display:block;margin:5px 0;font-size:1.35rem;color:#294637}.contact-audit-facts p{margin:6px 0}.delivery-audit-notes a{text-decoration:underline}
@media(max-width:650px){.contact-audit-grid{grid-template-columns:1fr;gap:16px}.contact-audit-facts{gap:20px}.contact-face-map{padding:12px}}

.delivery-ground .text-link{font:inherit;font-size:.875rem;font-weight:650;background:#fffef9;border:1px solid #b9c6b2;border-radius:8px;color:#294637;padding:9px 12px;min-height:40px;cursor:pointer}.delivery-ground .text-link:hover{background:#e8eddf}.delivery-ground .text-link:focus-visible{outline:3px solid #b58a43;outline-offset:3px}

/* One spatial origin for both ground references; verify actual arc height. */
.arc-inputs,.arc-check-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.arc-inputs span{padding:12px;background:#fffef9;border:1px solid #d6ddcf;border-radius:9px;font-size:.85rem}.arc-inputs b{display:block;margin-top:6px;font-size:1.1rem}.arc-check-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.arc-check-steps>div{padding:14px;border:1px solid #d6ddcf;border-radius:10px;background:#fffef9}.arc-check-steps strong{display:block;font-size:1.5rem;color:#63508f;margin:8px 0}.arc-check-steps span,.arc-check-steps small{font-size:.875rem}.arc-coordinates dl{display:block;margin:0}.arc-coordinates dl>div{padding:12px 0;border-bottom:1px solid #dce2d5}.arc-coordinates dd{font-variant-numeric:tabular-nums}.arc-verification p{line-height:1.6}.delivery-motion-readings{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:600px){.arc-inputs{grid-template-columns:1fr 1fr}.arc-check-steps{grid-template-columns:1fr}.arc-check-steps>div{display:grid;grid-template-columns:1fr auto;column-gap:8px;align-items:center}.arc-check-steps strong{grid-column:2;grid-row:1/3;margin:0}.arc-check-steps small{grid-row:2}.delivery-motion-readings{grid-template-columns:1fr}}

/* Full-flight projection stays in the same working viewer. */
.pose-stage-zoom{position:absolute;z-index:4;right:12px;bottom:12px;display:flex;border:1px solid #bac7b5;border-radius:10px;background:#fffef8f5;box-shadow:0 3px 12px #294b3d12;overflow:hidden}
.pose-stage-zoom button{display:grid;place-items:center;width:46px;height:44px;padding:0;border:0;background:transparent;color:#294b3d;font:500 1.55rem/1 var(--studio-font);cursor:pointer;touch-action:manipulation}
.pose-stage-zoom button+button{border-left:1px solid #d5ddce}
.pose-stage-zoom button:hover{background:#e7eddf}
.pose-stage-zoom button:focus-visible{outline:3px solid #b48843;outline-offset:-4px}
.pose-stage-flight{position:absolute;z-index:3;right:12px;bottom:70px;min-height:44px;padding:10px 14px;border:1px solid #bbb3c9;border-radius:8px;background:#fffef8f5;color:#604783;font:600 .875rem/1.3 var(--studio-font);cursor:pointer}
.pose-stage-flight:focus-visible{outline:3px solid #b48843;outline-offset:2px}
.is-flight .pose-stage-flight{top:64px;bottom:auto}
.pose-flight-legend{position:relative;display:flex;flex-wrap:wrap;gap:8px 14px;background:#fffef8;padding:12px 14px;border-top:1px solid #d6ddcf;color:#425846;font-size:.8rem;pointer-events:none}
.pose-flight-legend>span{display:flex;gap:6px;align-items:center}.pose-flight-legend>span:before{content:'';width:17px;border-top:3px solid var(--line)}.pose-flight-legend>.is-dashed:before{border-top-style:dashed}.pose-flight-legend small{width:100%;font-size:.75rem;line-height:1.4}
.pose-flight-unavailable{position:absolute;top:38%;left:20px;right:20px;background:#fff9ecee;border:1px solid #dabf95;border-radius:10px;padding:16px;color:#775020;font-size:.95rem}
.pose-flight-influences{background:#f7f5ef;border-top:1px solid #d5dbcf}.pose-flight-influences>summary{padding:14px 16px;cursor:pointer;color:#4e3b66;font-weight:650;font-size:.9rem;line-height:1.5}.pose-flight-influences>div{padding:0 18px 18px}.pose-flight-influences p{font-size:.9rem;line-height:1.65;color:#425947}.pose-flight-equation{display:flex;flex-wrap:wrap;gap:8px 14px;padding:12px;background:#eae6f0;color:#584271;border-radius:8px;font-size:.95rem}.pose-flight-influences dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.pose-flight-influences dt{font-size:.85rem;color:#5b6b5c}.pose-flight-influences dd{font-size:1.05rem;font-weight:700;margin:5px 0 0}.pose-flight-influences nav{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:.85rem}
@media(max-width:1000px){.delivery-lab>.delivery-workspace{grid-template-areas:"views" "scene" "influence" "dial" "camera"}.pose-flight-influences{grid-area:influence;border:1px solid #d5dbcf;border-radius:10px}}
@media(max-width:600px){.pose-stage-flight{right:10px;bottom:84px;font-size:.85rem;max-width:70%}.is-flight .pose-stage-flight{top:64px}.pose-flight-influences dl{grid-template-columns:1fr}}

/* Keep contact context below the scene so it never covers the club or its controls. */
.club-3d-viewport{position:relative}
.pose-flight-context{margin:0;padding:12px 16px;background:#fbf3e4;border-top:1px solid #dfc8a2;color:#745225;font-size:.875rem;line-height:1.55}
.pose-flight-context b{display:block;margin-bottom:3px}
.pose-ground-summary{margin:0;padding:12px 16px;background:#f1f4ed;border-top:1px solid #d6ddcf;color:#365241;font-size:.875rem;line-height:1.55}
.pose-ground-summary b{display:block;margin-bottom:3px}

/* Playback and precise scrubbing share the viewer, without covering the head. */
.delivery-lab .club-3d-stage>.pose-stage-transport{display:grid;grid-template-columns:112px minmax(0,1fr);grid-area:auto;gap:6px 14px;padding:12px;background:#f5f6ef;border:0;border-bottom:1px solid #d5ddce;border-radius:0;align-items:center}
.delivery-lab .pose-stage-transport .pose-stage-play{position:static;grid-column:1;grid-row:1;min-width:0;min-height:46px;width:100%;margin:0;box-shadow:none;flex:none}
.pose-stage-scrubber{grid-column:2;min-width:0}
.delivery-lab .pose-stage-scrubber label{font-size:.8rem;display:flex;flex-wrap:wrap;gap:3px 14px;line-height:1.45;align-items:baseline}
.delivery-lab .pose-stage-scrubber output{max-width:none;margin:0;text-align:left;font-size:.78rem;font-variant-numeric:tabular-nums}
.delivery-lab .pose-stage-scrubber input{display:block;width:100%;min-height:30px;margin:2px 0 0;cursor:ew-resize}
.pose-stage-jumps{grid-column:1/-1;display:flex;gap:6px}
.delivery-lab .pose-stage-jumps .btn{flex:1;min-height:36px;padding:6px 10px;font-size:.8rem}
.delivery-lab .club-3d-viewport .club-3d-badge{right:16px}
@media(max-width:600px){.delivery-lab .club-3d-stage>.pose-stage-transport{grid-template-columns:96px minmax(0,1fr);gap:5px 10px;padding:10px}.delivery-lab .pose-stage-scrubber label{font-size:.75rem}.delivery-lab .pose-stage-scrubber output{font-size:.72rem}.delivery-lab .pose-stage-jumps .btn{min-height:44px}}

/* Full-flight readings belong to the projection and share its computed shot. */
.pose-flight-results{padding:16px;background:#fffef8;border-top:1px solid #d5ddce;color:#294b3d}
.pose-flight-results>header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:5px 12px;margin-bottom:12px}
.pose-flight-results h3{margin:0;font-size:1rem;line-height:1.4}
.pose-flight-results>header>span{font-size:.75rem;color:#697461}
.pose-flight-results dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0}
.pose-flight-results dl>div{padding:12px 10px;background:#f1f3ea;border-radius:8px;min-width:0}
.pose-flight-results dt{font-size:.76rem;line-height:1.4;color:#526650;min-height:2.8em}
.pose-flight-results dd{margin:5px 0 0;font-size:1.25rem;line-height:1.25;font-weight:700;font-variant-numeric:tabular-nums}
.pose-flight-results dd>span{font-size:.8rem;font-weight:550}
.pose-flight-results dd>small{display:block;margin-top:4px;font-size:.72rem;line-height:1.4;font-weight:500}
.pose-flight-results [data-flight-metric="curve"]{background:#eeebf3;color:#604783}
.pose-flight-results [data-flight-metric="curve"] dt{color:#604783}
.pose-flight-results p{font-size:.85rem;line-height:1.6;margin:12px 0 0}
.pose-flight-readings-help{margin-top:10px}
.pose-flight-readings-help>summary{min-height:44px;display:list-item;align-content:center;padding:10px 0;cursor:pointer;font-size:.85rem;font-weight:600}
@media(max-width:600px){.pose-flight-results{padding:12px}.pose-flight-results dl{grid-template-columns:repeat(2,minmax(0,1fr))}.pose-flight-results dt{min-height:0}.pose-flight-results dd{font-size:1.2rem}}

/* Keep the flight and its readings in one viewer; the club close-up keeps its size. */
.club-3d-scene{position:relative;min-width:0}
.is-flight .club-3d-viewport{display:grid;grid-template-columns:minmax(0,1fr) minmax(218px,35%);align-items:stretch}
.is-flight .club-3d-scene{min-height:460px}
.delivery-lab .is-flight .club-3d-canvas{position:absolute;inset:0;height:100%;min-height:0}
.is-flight .pose-flight-results{padding:12px;border-top:0;border-left:1px solid #d5ddce}
.is-flight .pose-flight-results>header{display:block;margin-bottom:10px}
.is-flight .pose-flight-results h3{font-size:.95rem;margin-bottom:4px}
.is-flight .pose-flight-results>header>span{display:block;line-height:1.45}
.is-flight .pose-flight-results dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.is-flight .pose-flight-results dl>div{padding:9px 8px}
.is-flight .pose-flight-results dt{font-size:.72rem;min-height:2.8em}
.is-flight .pose-flight-results dd{font-size:1.12rem;margin-top:4px}
.is-flight .pose-flight-results dd>span{font-size:.7rem}
.is-flight .pose-flight-results dd>small{font-size:.67rem}
.is-flight .pose-flight-results [data-flight-metric="ballSpeed"]{background:#294b3d;color:#fffef8}
.is-flight .pose-flight-results [data-flight-metric="ballSpeed"] dt{color:#eef3e8}
.is-flight .pose-flight-results .pose-contact-speed-note{font-size:.73rem;line-height:1.5;margin-top:10px}
.pose-flight-details{padding:0 16px 8px;background:#fffef8;border-top:1px solid #d5ddce}
.pose-flight-details>details>summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:.85rem;font-weight:600;line-height:1.5;color:#294b3d}
.pose-flight-details p{font-size:.85rem;line-height:1.65;margin:10px 0 16px;color:#526650}
.pose-flight-details .pose-flight-readings-help{margin-top:0;border-top:1px solid #e0e5d8}
.pose-contact-table{overflow-x:auto;margin:16px 0;border:1px solid #d5ddce;border-radius:8px}
.pose-contact-table table{border-collapse:collapse;width:100%;font-size:.8rem;font-variant-numeric:tabular-nums;text-align:left}
.pose-contact-table caption{text-align:left;padding:12px;background:#f1f3ea;color:#526650;font-size:.75rem}
.pose-contact-table th,.pose-contact-table td{padding:10px 8px;border-bottom:1px solid #e0e5d8;white-space:nowrap}
.pose-contact-table thead th{color:#526650;font-size:.75rem}
.pose-contact-table td{text-align:right}
.pose-contact-table tr:last-child>*{border-bottom:0}
.pose-contact-table tbody tr:first-child{background:#f1f3ea;font-weight:650}
.attack-teaching{margin:18px 0;border:1px solid #cbd3c3;border-radius:12px;background:#fffef8;overflow:hidden}
.attack-teaching>summary{padding:18px 22px;color:#294b3d;font-weight:750;cursor:pointer}
.attack-teaching-body{padding:0 22px 22px;font-size:1rem;line-height:1.6}
.attack-teaching-body h3{font-size:1.45rem;margin:8px 0}.attack-teaching-body h4{font-size:1.06rem;margin:12px 0 6px}
.attack-current{padding:14px 18px;border-left:3px solid #b48843;background:#f6f3e9}
.attack-case-controls{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.attack-case-controls .btn{font-size:.94rem;min-height:44px;white-space:normal;flex:1 1 180px}
.attack-case-controls .btn[aria-pressed="true"]{background:#294b3d;color:#fff;border-color:#294b3d}
.attack-teaching-conclusion{border-left:3px solid #7358a3;padding:4px 18px;background:#f4f1f8}
.attack-comparison-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:24px;margin:20px 0}
.attack-teaching-plot{margin:0;align-self:start;position:sticky;top:24px}.attack-teaching-plot svg{width:100%;height:auto;background:#f6f7f1;border:1px solid #d9dece;border-radius:10px}
.attack-teaching-plot svg text{fill:#50624f;font:16px var(--studio-font)}.attack-grid{stroke:#dce1d5;stroke-width:1;fill:none}
.attack-reference,.attack-trial{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.attack-reference{stroke:#294b3d}.attack-trial{stroke:#7358a3;stroke-dasharray:8 5}
.attack-teaching-plot figcaption{display:flex;gap:20px;flex-wrap:wrap;font-weight:650}.attack-teaching-plot figcaption span:first-child{color:#294b3d}.attack-teaching-plot figcaption span:last-child{color:#7358a3}
.attack-teaching-plot p,.attack-load-controls+p{font-size:.9rem;color:#526650}
.attack-comparison{border-collapse:collapse;width:100%;font-size:.94rem;font-variant-numeric:tabular-nums}.attack-comparison caption{text-align:left;font-size:.9rem;color:#526650;margin-bottom:8px}
.attack-comparison th,.attack-comparison td{padding:8px 10px;border-bottom:1px solid #dce1d5;text-align:right}.attack-comparison th:first-child{text-align:left}.attack-comparison th small{display:block;font-weight:400;color:#526650}.attack-comparison thead{background:#eff2e8}.attack-comparison td:last-child{color:#60428b;font-weight:700}
.attack-load-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.attack-load-controls .btn{flex:1;white-space:normal;font-size:.94rem;min-height:44px}
.attack-teaching-body>details{border-top:1px solid #d9dece;padding:14px 0}.attack-teaching-body>details>summary{font-weight:700;cursor:pointer}.attack-teaching-body li{margin:12px 0}
.attack-factor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 26px}.attack-sources{display:flex;flex-wrap:wrap;gap:10px 24px;font-size:.94rem}
@media(max-width:850px){.attack-comparison-grid,.attack-factor-grid{grid-template-columns:1fr}.attack-teaching-plot{position:static}.attack-teaching-body{padding:0 14px 16px}.attack-teaching>summary{padding:16px 14px}}
@media(max-width:600px){.is-flight .club-3d-viewport{grid-template-columns:1fr}.is-flight .club-3d-scene{height:clamp(310px,48svh,460px);min-height:310px}.is-flight .pose-flight-results{border-left:0;border-top:1px solid #d5ddce}.is-flight .pose-flight-results dt{min-height:0}}
