/* Shared composition: compact working surfaces, generous reading surfaces.
   Chart aspect ratios remain unchanged so geometric projections stay accurate. */
:root{--layout-wide:1440px;--layout-reading:1160px;--layout-gap:24px;--layout-border:#d6dfd1}
.main{padding-inline:clamp(20px,2.2vw,40px)}
.main>.content,.main>.topbar{width:100%;max-width:var(--layout-wide);margin-inline:auto}
.content{container-type:inline-size;container-name:workspace}
.content>:is(.compact-page,.independent-page,.movement-page,.phase-intro-page,.notebook-page){width:100%;margin-inline:auto}
.content>:is(.phase-intro-page,.notebook-page){max-width:var(--layout-reading)}
.content>:is(.compact-page,.movement-page){max-width:var(--layout-wide)}
.content :is(section,article,figure,aside,nav){min-width:0}
.topbar{min-height:58px;padding-block:10px}
.r-module-return{padding-block:12px;margin-block:0 14px;min-height:44px}
.learn-context{margin-bottom:24px}
.learn-step-nav{gap:0;margin:0;border-radius:10px;overflow:hidden}
.learn-step-nav a{min-height:46px;padding:10px 12px;font-size:14px}
.learn-stage-context{padding:10px 0 0;min-height:54px;margin:0}
.learn-stage-tabs a{min-height:40px;padding:9px 16px}
.compact-title{margin:0 0 20px;gap:16px}
.compact-title h1{font-size:clamp(30px,2.6vw,40px);letter-spacing:-.035em}
.compact-title>span{font-size:14px}
.content :is(.page-head,.independent-heading){padding-block:10px 24px}
.body-section-nav{margin-bottom:20px}
.learning-journey-footer{gap:12px;flex-wrap:wrap}
.main>.topbar{min-height:52px;padding-block:4px}
.content>.r-module-return{padding-block:2px;margin-bottom:12px;min-height:44px}
.content>.learn-context{margin-bottom:18px}
.learn-stage-context .learn-stage-tabs a{min-height:38px;padding-block:8px}

/* Flight observations: mode, topic and input beside the complete result. */
.compact-page .ball-workspace{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:24px;align-items:start}
.ball-control-rail{display:grid;gap:16px;min-width:0}
.ball-control-rail>.compact-ball-mode{margin:0}
.ball-control-rail .flight-model-selector.flight-modes271{padding:16px;background:#eaf0e5;border-color:#ccd8c5}
.ball-control-rail .flight-mode-intro>small{font-size:13px}
.ball-control-rail .flight-mode-options>button{min-height:90px;padding:12px 10px}
.ball-control-rail .flight-mode-options>button>small{font-size:13px}
.ball-control-rail .flight-mode-note{font-size:13px}
.ball-control-rail .practice-observation-nav{margin:0}
.ball-control-rail .practice-observation-nav>summary{padding:14px;font-size:14px;gap:10px;flex-wrap:wrap}
.ball-control-rail .practice-observation-nav>summary>span:nth-child(2){display:none}
.ball-control-rail .flight-reading-nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}
.ball-control-rail .flight-reading-nav button{font-size:14px;min-height:48px;padding:10px}
.ball-control-rail .practice-task{font-size:14px;line-height:1.6;margin:0;padding:0 4px;color:#586b5c}
.compact-page .ball-workspace .independent-controls{padding:20px;background:#fffefb}
.compact-page .ball-workspace .independent-result{position:static;padding:22px;background:#fffefb;border-radius:18px;box-shadow:0 8px 28px #243f3905}
.ball-workspace .compact-result-title{align-items:baseline;flex-wrap:wrap}
.ball-workspace .compact-result-title>span{font-size:14px}
.ball-workspace .simulation-label{font-size:13px;line-height:1.55;margin:8px 0 12px}
.ball-workspace .independent-facts{gap:8px;margin:12px 0}
.ball-workspace .independent-facts>div{padding:12px;min-width:0}
.ball-workspace .independent-facts span{font-size:13px}
.ball-workspace .independent-facts b{font-size:24px;line-height:1.3}
.ball-workspace .independent-facts small{font-size:12px}
.ball-workspace .independent-facts[data-metric-count="1"]{grid-template-columns:minmax(0,1fr)}
.ball-workspace .independent-facts[data-metric-count="1"]>div{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 16px}
.ball-workspace .independent-facts[data-metric-count="1"] b{margin:0}
.ball-workspace .compact-more-results>summary{font-size:14px;min-height:40px;padding-block:10px}
.ball-workspace .flight-metric-control{padding:14px;margin:0;background:#f8f9f4}
.ball-workspace .flight-metric-control small{font-size:12px;line-height:1.5}
.ball-workspace input[type=range]{min-width:0;width:100%}
.ball-workspace .metric-inputs{min-width:0}
.ball-workspace input[type=number]{width:80px;flex-basis:80px}
.ball-workspace .compact-plot .precision-chart{padding:14px 16px;background:#f7f9f3;border:1px solid #e4e9dd;border-radius:12px}
.ball-workspace .compact-plot .portrait-flight .chart-canvas{width:min(100%,210px);aspect-ratio:520/960;margin:12px auto 20px}
.ball-workspace .compact-plot .chart-canvas:not(.portrait-flight .chart-canvas){max-width:620px;margin-block:16px 22px}
.compact-plot .chart-axis-bottom{margin:12px 0 16px;line-height:1.5;flex-wrap:wrap}
.compact-plot .chart-axis-bottom,.compact-plot .chart-axis-bottom>span,.compact-plot .chart-axis-title{font-size:13px}
.compact-plot :is(.compact-chart-help,.compact-chart-scale)>summary{font-size:14px!important;min-height:40px;padding-block:10px!important}
.ball-workspace .compact-plot .chart-meta{min-height:40px;margin-bottom:10px}
.ball-workspace .compact-plot .chart-tick{font-size:12px}
.ball-workspace .compact-plot .flight-landing-label,.ball-workspace .compact-plot .flight-deviation-label{font-size:13px}
.compact-page .compact-extras{margin-block:20px;gap:16px}
.compact-page .compact-extras>details{padding-inline:16px;background:#fffefa}
.compact-page .compact-extras summary{font-size:14px;min-height:52px}
.compact-actions{position:static;margin-block:20px;gap:12px;padding:14px;border:1px solid var(--layout-border);border-radius:12px}
.compact-actions .btn{font-size:14px;min-height:44px;padding:10px 14px}
.compact-page .practice-explanation>summary{font-size:16px;padding-block:18px}
.layout-guide{border:1px solid var(--layout-border);border-radius:12px;background:#fffef9;margin:16px 0 20px;padding:0 18px}
.layout-guide>summary{cursor:pointer;padding:15px 0;font-size:14px;line-height:1.5}
.layout-guide>summary strong{font-size:15px;margin-right:18px}
.layout-guide>summary>span{color:#657361}
.layout-guide>summary:focus-visible{outline:3px solid #a27632;outline-offset:3px}
.layout-guide .flight-learning-timeline{margin:0 0 18px}
.compact-impact .independent-workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.compact-impact .independent-result{position:static}

/* Overview and course catalogue share the same edges and reading rhythm. */
.r-header,.r-wrap{max-width:var(--layout-wide);margin-inline:auto;padding-inline:clamp(24px,4vw,64px)}
.learn-hero{grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);gap:56px;padding-block:42px}
.learn-hero h1{font-size:clamp(40px,4vw,62px)}
.learn-method{padding:28px 32px}
.learn-method>strong{font-size:30px;margin-block:14px}
.learn-method>strong b{font-size:64px}
.learn-method>p{font-size:19px;margin-bottom:16px}
.learn-method>small{padding-top:16px;margin-top:16px}
.learn-home-route,.learn-objectives{padding-block:32px}
.learn-course-heading{padding-block:12px 24px}
.learn-lessons{gap:14px;margin-block:24px 36px}
.learn-lesson{padding:24px;gap:24px;grid-template-columns:54px minmax(0,1fr);border-radius:14px}
.learn-lesson>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 30px}
.learn-lesson>div>.r-kicker,.learn-lesson>div>h2,.learn-lesson>div>p{grid-column:1}
.learn-lesson h2{font-size:28px;margin:6px 0 8px}
.learn-lesson p{margin:0;max-width:68ch}
.learn-lesson>div>.r-actions{grid-column:2;grid-row:1/4;align-self:center;margin:0}
.learn-lesson>div>details{grid-column:1/-1;margin-top:18px;padding-top:6px}
.learn-resource-links{gap:12px}
.learn-roadmap a{padding:20px 16px}

/* Reading pages align their images and explanations at the top. */
.phase-intro-card{padding:clamp(22px,2.5vw,36px)}
.phase-intro-layout{gap:32px;align-items:start}
.phase-intro-body-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:start}
.phase-intro-layout>figure{margin:0;min-width:0}
.phase-intro-learning{min-width:0}
.phase-intro-page :is(.phase-intro-example,.phase-intro-bridge){margin-block:24px}
.correction-route{max-width:var(--layout-reading);margin-inline:auto}
.correction-route-hero{padding:20px 0 26px;gap:32px;margin-bottom:22px}
.correction-route-hero h1,.correction-route-hero h2{font-size:clamp(30px,2.8vw,44px);margin:10px 0 16px}
.correction-route-step>summary{min-height:84px;padding:20px 24px}
.correction-route-content{padding:24px;gap:24px}
.correction-route-step-title>strong{font-size:1.18rem}
.correction-priority{padding:24px}
.correction-priority-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}

/* The notebook remains the only editing surface; sections flow independently. */
.notebook-layout{grid-template-columns:minmax(0,1fr);gap:28px}
.notebook-chapters{grid-template-columns:minmax(0,1fr);gap:10px;align-items:start}
.notebook-chapter{overflow:visible}
.notebook-chapter>summary{min-height:64px;padding:14px 22px;gap:14px;border-radius:12px}
.notebook-chapter summary strong{font-size:16px}
.notebook-chapter summary small{font-size:12px;line-height:1.5}
.notebook-chapter[open]{grid-column:auto;grid-row:auto}
.notebook-chapter[open]>summary{min-height:64px;padding-inline:22px}
.notebook-chapter-body{padding:4px 24px 24px}
.notebook-chapter-body>textarea{min-height:170px}
.notebook-layout>section:nth-child(2){display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.35fr);gap:16px 24px;align-items:start}
.notebook-layout>section:nth-child(2)>h2{grid-column:1/-1;margin-bottom:0}
.notebook-topic-picker{margin:0}
.notebook-layout .notebook-saved{grid-column:1/-1}
.notebook-observation-editor,.notebook-empty{padding:24px}
.notebook-practice{margin-top:28px;padding-top:20px}
.notebook-heading{padding-bottom:20px}

/* Large teaching photographs keep their proportions and their numbered points. */
.movement-header{gap:32px;padding:8px 0 24px;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}
.movement-header h1{font-size:clamp(32px,3vw,46px);margin:10px 0 16px}
.movement-page.is-simple .movement-header{padding:0 0 16px}
.movement-page.is-simple .movement-header h1{font-size:clamp(30px,2.7vw,40px);margin:8px 0 12px}
.movement-page.is-simple .movement-header p{max-width:94ch;font-size:16px;line-height:1.6}
.movement-page .movement-entry{margin:0 0 12px;padding:0;gap:8px}
.movement-page .movement-entry>span{padding:0}
.movement-page .movement-topic-picker>summary{min-height:68px;padding:16px 20px}
.movement-primer{padding:22px}
.physics-chapters{gap:12px;margin-bottom:20px}
.physics-chapters button{min-height:74px;padding:14px 18px;gap:12px}
.physics-classroom>header{padding:28px 32px 24px;max-width:960px}
.physics-classroom h2{font-size:clamp(28px,2.8vw,40px)}
.classroom-location{padding:22px 32px;gap:28px}
.classroom-timeline{padding:18px 32px}
.classroom-example{padding:26px 32px;gap:28px}
.classroom-mistake{margin-inline:32px}
.physics-chapter .newton-example:has(.classroom-photo-feet),.physics-chapter .newton-example:has(.classroom-photo-impact){grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);align-items:start;gap:28px}
.physics-chapter .newton-example:has(.classroom-photo-swing){grid-template-columns:1fr}
.physics-chapter .newton-explanation{padding:0;min-width:0}
.physics-chapter .newton-example:has(.classroom-photo-swing) .newton-explanation{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}
.physics-chapter .newton-example:has(.classroom-photo-swing) .newton-explanation>:is(.eyebrow,h4,p,.newton-technical){grid-column:1/-1}
.physics-chapter .newton-laws button{min-height:100px;padding:16px}
.physics-chapter .newton-location{gap:18px}
.delivery-lab>.delivery-workspace{gap:18px;padding:18px;grid-template-columns:minmax(0,1fr) 300px}
.delivery-lab .club-3d-canvas{height:clamp(460px,58svh,640px)}
.delivery-lab .delivery-visual{position:static}
.delivery-lab .delivery-control-dock{min-width:0}
.delivery-support{padding-inline:24px}

/* Use available content width, including the space occupied by the sidebar. */
@container workspace (max-width:1100px){
 .club-visual-workspace{grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);gap:18px}
 .club-visual-workspace .club-adjustments{grid-column:1;grid-row:1/span 2;position:static}
 .club-visual-workspace .club-orientation-panel{grid-column:2;grid-row:1}
 .club-visual-workspace .club-flight-panel{grid-column:2;grid-row:2}
 .physics-chapter .newton-example:has(.classroom-photo-feet),.physics-chapter .newton-example:has(.classroom-photo-impact){grid-template-columns:1fr}
}
@container workspace (min-width:950px){
 .ball-workspace .compact-plot .portrait-flight{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,.9fr);column-gap:28px;align-items:start}
 .ball-workspace .portrait-flight>.chart-meta{grid-column:1/-1;grid-row:1;margin-bottom:14px}
 .ball-workspace .portrait-flight>.chart-axis-title{grid-column:1;grid-row:2;font-size:12px;gap:8px}
 .ball-workspace .portrait-flight>.chart-canvas{grid-column:1;grid-row:3/6;align-self:start}
 .ball-workspace .portrait-flight>.chart-axis-bottom{grid-column:1;grid-row:6;display:grid;grid-template-columns:1fr 1fr;row-gap:4px;margin:12px 0 0}
 .ball-workspace .portrait-flight>.chart-axis-bottom>span:nth-child(2){grid-row:2;grid-column:1/-1;text-align:center}
 .ball-workspace .portrait-flight>.chart-axis-bottom>span:last-child{text-align:right}
 .ball-workspace .compact-plot .portrait-flight>.flight-landing-verdict{display:block;grid-column:2;grid-row:2/4;margin:0;padding:18px;background:#edf2e7;border-radius:10px;min-width:0;color:#294b3e}
 .ball-workspace .portrait-flight>.flight-landing-verdict>span{font-size:13px;color:#6f623f}
 .ball-workspace .portrait-flight>.flight-landing-verdict>strong{font-size:24px;line-height:1.3;display:block;margin-block:10px;overflow-wrap:normal;color:#294b3e}
 .ball-workspace .portrait-flight>.flight-landing-verdict>small{font-size:13px;line-height:1.55;display:block;color:#546b58}
 .ball-workspace .compact-plot .portrait-flight>.flight-reading-steps{display:grid;grid-template-columns:1fr;grid-column:2;grid-row:4;gap:16px;margin:0;padding:18px 0}
 .ball-workspace .portrait-flight>.flight-reading-steps>div{padding:0;background:transparent;border:0}
 .ball-workspace .portrait-flight>.flight-reading-steps span{font-size:13px}
 .ball-workspace .portrait-flight>.flight-reading-steps strong{font-size:15px;line-height:1.45;margin-top:6px}
 .ball-workspace .portrait-flight>.compact-chart-scale{grid-column:2;grid-row:5;margin:0}
 .ball-workspace .portrait-flight>figcaption{grid-column:2;grid-row:6}
 .ball-workspace .portrait-flight:has(.compact-chart-scale[open])>.compact-chart-scale{grid-column:1/-1;grid-row:7}
 .ball-workspace .portrait-flight:has(.compact-chart-help[open])>figcaption{grid-column:1/-1;grid-row:8}
}
@container workspace (max-width:860px){
 .compact-page .ball-workspace{grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);gap:16px}
 .ball-workspace .independent-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ball-workspace .compact-result-title{display:block}
 .ball-workspace .compact-result-title>span{display:block;margin-top:6px}
 .ball-control-rail .flight-mode-options{grid-template-columns:1fr}
 .ball-control-rail .flight-mode-options>button{min-height:70px}
 .movement-header{grid-template-columns:1fr;gap:20px}
 .movement-primer{border-left:0;border-top:2px solid #b0894f}
 .correction-route-hero{grid-template-columns:1fr;gap:20px}
 .correction-route-session{border-left:0;border-top:1px solid #d4ddcf;padding:18px 0 0}
 .correction-priority-layout{grid-template-columns:1fr}
 .correction-comparison,.correction-decisions{grid-template-columns:1fr}
 .delivery-lab>.delivery-workspace{grid-template-columns:minmax(0,1fr)}
 .delivery-control-dock{position:static}
 .delivery-dial-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr))}
 .phase-intro-layout,.phase-intro-body-layout{grid-template-columns:1fr;gap:24px}
 .phase-intro-layout>figure{max-width:760px;justify-self:center;width:100%}
 .physics-topic-groups{grid-template-columns:1fr;gap:20px}
 .classroom-location,.classroom-example{gap:20px}
 .notebook-layout>section:nth-child(2){grid-template-columns:1fr}
}
@container workspace (max-width:650px){
 .compact-page .independent-workspace,.compact-page .ball-workspace,.club-visual-workspace{grid-template-columns:1fr}
 .club-visual-workspace :is(.club-adjustments,.club-orientation-panel,.club-flight-panel){grid-column:auto;grid-row:auto}
 .ball-control-rail .flight-mode-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ball-workspace .compact-result-title{display:flex}
 .ball-workspace .compact-plot .portrait-flight .chart-canvas{width:min(100%,200px)}
 .compact-actions{flex-wrap:wrap;padding:12px}
 .compact-extras{grid-template-columns:1fr}
 .physics-chapter .newton-example:has(.classroom-photo-swing) .newton-explanation{display:block}
 .physics-chapters{grid-template-columns:1fr}
 .physics-chapters button{min-height:64px}
 .classroom-location,.classroom-example{grid-template-columns:1fr}
 .classroom-example aside{border-left:0;border-top:1px solid #cbd5c4;padding:20px 0 0}
 .delivery-dial-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .movement-connections{grid-template-columns:1fr}
 .movement-connections section+section{border-left:0;border-top:1px solid #d6ddcd;padding:20px 0 0}
}
@media(min-width:1000px){
 .ball-control-rail{position:sticky;top:20px}
 .compact-page .independent-result{position:static}
}
@media(max-height:850px){
 .ball-control-rail{position:static}
}
@media(max-width:900px){
 .r-header,.r-wrap{padding-inline:24px}
 .learn-hero{grid-template-columns:1fr;gap:28px;padding-block:28px}
 .learn-lesson>div{display:block}
 .learn-lesson>div>.r-actions{margin-top:18px}
 .learn-lesson{padding:22px;gap:18px;grid-template-columns:42px minmax(0,1fr)}
}
@media(max-width:760px){
 .layout-guide>summary>span{display:block;margin-top:4px}
 .main{padding-inline:16px}
 .learn-context{margin-bottom:20px}
 .learn-step-nav a{padding:10px 4px;font-size:12px;min-height:44px}
 .r-module-return{font-size:12px}
 .ball-control-rail{position:static;gap:12px}
 .compact-page .ball-workspace .independent-result,.compact-page .ball-workspace .independent-controls{padding:16px}
 .notebook-chapters{grid-template-columns:1fr}
 .notebook-chapter[open]{grid-column:auto;grid-row:auto}
 .notebook-chapter>summary{min-height:64px;padding:14px 16px}
 .notebook-chapter-body{padding:4px 18px 20px}
 .correction-route-content{padding:18px}
 .correction-route-step>summary{min-height:82px;padding:18px;gap:12px}
 .correction-route-step-title>strong{font-size:1.12rem}
 .physics-classroom>header,.classroom-location,.classroom-example{padding:22px 20px}
 .classroom-timeline{padding:16px 20px}
 .classroom-mistake{margin-inline:20px}
 .delivery-lab>.delivery-workspace{padding:10px;gap:12px}
 .delivery-lab .club-3d-canvas{height:clamp(340px,52svh,460px)}
 .r-header,.r-wrap{padding-inline:20px}
 .learn-lesson{padding:20px 16px;gap:14px;grid-template-columns:30px minmax(0,1fr)}
 .learn-lesson>.learn-number{font-size:22px;padding:0;border:0}
}
/* Complete course: shared proportions for tools, references and nested lessons. */
.content :is(.page-head,.independent-heading,.simulator-header){align-items:start;gap:24px;margin-bottom:24px}
.content :is(.page-head,.independent-heading,.simulator-header) h1{font-size:clamp(30px,2.8vw,40px);line-height:1.15;letter-spacing:-.035em}
.content :is(.page-head,.independent-heading,.simulator-header) p{max-width:76ch;line-height:1.6;font-size:15px}
.content :is(.simulator-page,.glossary-page,.report-page){width:100%;min-width:0}
.content :is(.compact-disclosure,.learning-details,.simulator-method,.reference-links){min-width:0}
.content :is(.compact-disclosure,.learning-details,.simulator-method)>summary{line-height:1.5;min-height:48px}
.content :is(.independent-workspace,.simulator-workspace,.capacity-test-columns,.lie-compare-grid)>*{min-width:0}

/* Free simulator and guided experiments use one readable input rail. */
.compact-simulator .simulator-workspace,.flight-learning-page .independent-workspace{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:24px;align-items:start}
.compact-simulator .simulator-control-grid{grid-template-columns:1fr;gap:18px}
.compact-simulator :is(.simulator-adjustments,.simulator-flights){padding:22px;border-radius:16px}
.simulator-control-grid input[type=range]{min-width:0}
.compact-simulator .simulator-outcomes{gap:16px;padding:18px 22px;margin:18px 0 24px}
.compact-simulator .simulator-outcomes>div{padding:0;min-width:0}
.compact-simulator .simulator-outcomes strong{font-size:26px}
.simulator-toolbar{flex-wrap:wrap;gap:16px;margin:0 0 20px}
.simulator-toolbar label{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.simulator-toolbar select{max-width:100%}
.simulator-flights>h2{margin:0 0 18px}
.flight-learning-page .independent-controls,.flight-learning-page .independent-result{padding:22px;position:static}
.flight-learning-page .learning-comparison{width:100%;table-layout:fixed}
.learning-comparison th,.learning-comparison td{overflow-wrap:anywhere;vertical-align:top}
.flight-learning-page .learning-comparison :is(th,td){font-size:14px;padding:12px 8px;line-height:1.5}
.flight-learning-page :is(.learning-task,.learning-fixed,.learning-comparison small){font-size:13px;line-height:1.6}
.flight-learning-page .learning-plot-switch{display:flex;flex-wrap:wrap;gap:10px}
.layout-portrait-result .portrait-flight .chart-canvas{width:min(100%,210px);aspect-ratio:520/960;height:auto;max-height:none;margin:14px auto 20px}
.layout-portrait-result .portrait-flight .chart-canvas svg{width:100%;height:100%;max-height:none}
.layout-portrait-result .portrait-flight .chart-tick{font-size:12px}
.layout-portrait-result .portrait-flight .chart-axis-bottom{font-size:13px;margin:14px 0;flex-wrap:wrap;gap:10px}

/* Technical reference: navigation, definition, then the visual explanation. */
.glossary-top{margin-bottom:12px}
.glossary-mobile-picker{display:none}
.glossary-page .glossary-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:24px;align-items:start}
.glossary-page .glossary-index{padding:18px 14px;position:sticky;top:20px;max-height:calc(100svh - 120px);border:1px solid var(--layout-border);border-radius:14px;background:#f7f9f2;overflow-y:auto;scrollbar-gutter:stable}
.glossary-index section>div{grid-template-columns:1fr}
.glossary-term-button{min-height:48px;line-height:1.45;padding:11px 10px;gap:10px}
.glossary-term-button>span{min-width:0;font-size:14px}
.glossary-page .glossary-detail{order:initial;border-radius:16px;overflow:hidden}
.glossary-detail-head{padding:24px;align-items:start;gap:18px;flex-wrap:wrap}
.glossary-detail-head h2{font-size:clamp(25px,2.2vw,32px);line-height:1.2}
.glossary-definition{padding:20px 24px;background:#f5f3e9}
.glossary-definition p{font-size:16px;line-height:1.65;max-width:74ch;margin:8px 0 0}
.glossary-chart{padding:24px}
.glossary-chart .precision-chart{padding:20px;min-width:0}
.glossary-chart .chart-canvas{max-width:620px;margin-inline:auto}
.glossary-detail-grid{gap:24px;padding:24px;grid-template-columns:repeat(2,minmax(0,1fr))}
.glossary-detail-grid .glossary-caution{grid-column:1/-1}
.glossary-chart .diagram-lab-controls{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:18px}

/* Observation and physical capacity keep open content aligned with its heading. */
.observation-desk .compact-body-list{grid-template-columns:1fr;gap:10px}
.observation-desk .compact-body-trigger{padding:18px 20px;min-height:64px}
.observation-desk .observation-heading{align-items:start;gap:24px;padding-block:20px}
.observation-desk .body-phase-tabs{flex-wrap:wrap;gap:8px}
.observation-counter{white-space:normal}
.capacity-library{padding:24px}
.capacity-library-head,.capacity-test-detail>header{gap:24px;align-items:start}
.capacity-test-picker{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px}
.capacity-test-columns{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:start}
.capacity-test-columns>section{min-width:0}
.capacity-record{margin-top:24px}
.capacity-progress{gap:24px}
.lie-definitions{gap:24px}
.lie-demo>header{align-items:start;gap:24px}
.lie-demo>header,.lie-selected-explanation{padding-inline:24px}
.lie-consequence-grid{gap:0}
.impact-gear-intro{gap:24px;align-items:start}
.impact-gear-clubs{gap:16px}
.content .gear-motion.gear-teaching{gap:18px 24px;padding:24px}
.course-conditions-page{max-width:var(--layout-reading);margin-inline:auto}
.course-condition-grid{gap:20px}
.course-page-footer{display:flex;flex-wrap:wrap;gap:12px}
.combination-gallery-layout{grid-template-columns:minmax(280px,320px) minmax(0,1fr);gap:24px}
.combination-ten{grid-template-columns:1fr;gap:10px}
.combination-ten button{min-height:82px;padding:16px}
.combination-ten strong{font-size:15px}
.combination-ten small,.combination-ten em,.combination-options>small{font-size:13px;line-height:1.5}
.combination-selected{position:static;padding:24px;border-radius:16px}
.combination-delivery-strip{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:14px}
.combination-score{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.combination-delivery-strip>span,.combination-score span,.combination-score small,.combination-current-contact{font-size:13px!important;line-height:1.5}
.combination-premium .combination-views button{font-size:14px;min-height:44px}
.combination-pattern-primary,.combination-pattern-secondary{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.combination-pattern-selector header,.combination-hero,.combination-actions{flex-wrap:wrap;gap:14px}

/* Report and verification tools use the same card and reading dimensions. */
.report-page{max-width:var(--layout-reading);padding:8px 0 36px}
.report-actions{flex-wrap:wrap;justify-content:flex-start;gap:12px}
.report-actions>.primary{margin-left:auto}
.report-sheet{border-radius:18px;box-shadow:0 8px 28px #243f3906}
.report-head{padding:28px}
.report-head h1{font-size:clamp(30px,2.8vw,40px)}
.report-grid article,.report-priority>div{padding:26px 28px}
.report-grid h2,.report-priority h2{font-size:24px;line-height:1.25}
.report-grid p,.report-priority p{line-height:1.65}
.report-grid small{display:block;line-height:1.6}
.report-provenance{padding:24px}
.report-provenance table{table-layout:fixed;width:100%}
.report-provenance th,.report-provenance td{overflow-wrap:anywhere;line-height:1.5}
.report-provenance th:first-child{width:34%}
.report-priority{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.test-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px}
.test-card{display:flex;flex-direction:column;align-items:start;gap:10px;padding:22px;border-radius:12px}
.test-card h3{font-size:20px;line-height:1.3;margin:0}
.test-card p{font-size:15px;line-height:1.6;margin:0 0 12px}
.test-card .test-meta{margin-top:auto;width:100%;gap:10px;flex-wrap:wrap}
.measurement-protocol{margin-top:24px;border-radius:16px}
.measurement-protocol-head{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;padding:26px;align-items:start}
.measurement-protocol-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.measurement-protocol-grid article{padding:24px}
.measurement-protocol-grid p{font-size:15px;line-height:1.6}
.matrix-wrap{padding:24px;border-radius:16px}
.matrix-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
.matrix-intro{align-items:start;gap:28px}
.matrix-intro>div:first-child{max-width:70ch}
.matrix-cell{border-radius:12px;padding:18px;min-height:180px}
.matrix-cell svg{max-height:145px;width:100%}
.matrix-cell strong{font-size:16px;line-height:1.3}
.matrix-axis{font-size:13px;line-height:1.5}

/* Public programme pages share the spacing of the course catalogue. */
.presentation-page{padding-inline:clamp(20px,4vw,56px)}
.talk-wrap{max-width:var(--layout-reading)}
.talk-topbar{padding-block:24px;gap:24px}
.talk-intro{padding:32px 36px;border-radius:16px}
.talk-intro h1{font-size:clamp(32px,3.5vw,48px)}
.talk-tabs{gap:14px;margin-block:24px}
.talk-panel{padding:28px 0}
.talk-section-heading{margin-bottom:28px;max-width:860px}
.talk-speakers{gap:28px;align-items:start}
.talk-speaker{padding:26px;border-radius:14px}
.talk-speaker p{font-size:16px;line-height:1.7}
.talk-program{gap:16px}
.talk-outcomes{gap:20px}
.talk-outcomes article{padding:24px}
.talk-footer{padding-block:24px;margin-top:24px;flex-wrap:wrap;gap:20px}

@container workspace (min-width:1100px){
 .layout-portrait-result .compact-plot .portrait-flight{display:grid;grid-template-columns:minmax(235px,1fr) minmax(170px,.85fr);column-gap:24px;align-items:start}
 .layout-portrait-result .portrait-flight>.chart-meta{grid-column:1/-1;grid-row:1}
 .layout-portrait-result .portrait-flight>.chart-axis-title{grid-column:1;grid-row:2;font-size:12px;gap:8px}
 .layout-portrait-result .portrait-flight>.chart-canvas{grid-column:1;grid-row:3/6}
 .layout-portrait-result .portrait-flight>.chart-axis-bottom{grid-column:1;grid-row:6;display:flex;flex-wrap:wrap;justify-content:center}
 .layout-portrait-result .compact-plot .portrait-flight>.flight-landing-verdict{display:block;grid-column:2;grid-row:2/4;background:#edf2e7;color:#294b3e;padding:18px;margin:0;border-radius:10px}
 .layout-portrait-result .portrait-flight>.flight-landing-verdict strong{display:block;font-size:23px;line-height:1.3;color:#294b3e;margin:10px 0}
 .layout-portrait-result .portrait-flight>.flight-landing-verdict :is(span,small){color:#546b58;font-size:13px;line-height:1.55}
 .layout-portrait-result .compact-plot .portrait-flight>.flight-reading-steps{display:grid;grid-template-columns:1fr;grid-column:2;grid-row:4;gap:16px;padding:18px 0;margin:0}
 .layout-portrait-result .portrait-flight>.flight-reading-steps>div{padding:0;background:transparent;border:0}
 .layout-portrait-result .portrait-flight>.flight-reading-steps strong{font-size:15px}
 .layout-portrait-result .portrait-flight>.compact-chart-scale{grid-column:2;grid-row:5}
 .layout-portrait-result .portrait-flight>figcaption{grid-column:2;grid-row:6}
 .layout-portrait-result .portrait-flight:has(.compact-chart-scale[open])>.compact-chart-scale{grid-column:1/-1;grid-row:7}
 .layout-portrait-result .portrait-flight:has(.compact-chart-help[open])>figcaption{grid-column:1/-1;grid-row:8}
}
@container workspace (max-width:1000px){
 .glossary-page .glossary-layout{grid-template-columns:230px minmax(0,1fr);gap:20px}
 .test-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .capacity-test-columns{grid-template-columns:1fr}
 .capacity-test-columns .body-lesson-photo{max-width:680px}
 .report-actions>.primary{margin-left:0}
}
@container workspace (max-width:800px){
 .compact-simulator .simulator-workspace,.flight-learning-page .independent-workspace{grid-template-columns:1fr}
 .compact-simulator .simulator-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .glossary-page .glossary-layout{grid-template-columns:1fr}
 .glossary-page .glossary-index{display:none}
 .glossary-mobile-picker{display:grid;gap:10px;font-size:14px;padding:16px;margin-bottom:20px;background:#f7f9f2;border:1px solid var(--layout-border);border-radius:12px}
 .glossary-mobile-picker select{width:100%;min-width:0;min-height:48px;font:inherit;padding:10px;border:1px solid #c2ceb9;border-radius:8px;background:#fffef9;color:#294b3e}
 .glossary-index section>div{grid-template-columns:repeat(2,minmax(0,1fr))}
 .glossary-detail-grid{grid-template-columns:1fr}
 .lie-compare-grid,.lie-consequence-grid,.lie-definitions{grid-template-columns:1fr}
 .lie-compare-grid>article+article{border-left:0}
 .capacity-progress{grid-template-columns:1fr}
 .observation-explain,.combination-gallery-layout{grid-template-columns:1fr}
 .observation-heading{flex-direction:column;gap:8px}
 .observation-counter{padding:0}
 .combination-ten{grid-template-columns:repeat(2,minmax(0,1fr))}
 .combination-selected{position:static}
 .content .gear-motion.gear-teaching{grid-template-columns:1fr;grid-template-areas:'heading' 'zones' 'playback' 'visual' 'display' 'instruction' 'rotation' 'curve' 'clarifier';padding:18px}
 .content .gear-teaching .gear-mechanism svg{height:clamp(260px,45svh,440px)}
 .matrix-intro,.measurement-protocol-head{display:grid;grid-template-columns:1fr;gap:18px}
 .report-priority{grid-template-columns:1fr}
}
@container workspace (max-width:560px){
 .compact-simulator .simulator-control-grid,.test-grid,.measurement-protocol-grid{grid-template-columns:1fr}
 .compact-simulator .simulator-outcomes{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px;gap:18px 12px}
 .compact-simulator .simulator-outcomes strong{font-size:22px}
 .compact-simulator :is(.simulator-adjustments,.simulator-flights),.flight-learning-page :is(.independent-controls,.independent-result){padding:16px}
 .glossary-chart,.glossary-definition,.glossary-detail-head,.glossary-detail-grid{padding:18px}
 .glossary-chart .precision-chart{padding:12px}
 .glossary-detail-head h2{font-size:25px}
 .capacity-library{padding:16px}
 .capacity-exercise-grid{grid-template-columns:1fr}
 .course-condition-grid,.combination-ten,.combination-flights>div{grid-template-columns:1fr}
 .combination-selected{padding:16px}
 .report-status,.report-grid{grid-template-columns:1fr}
 .report-head,.report-grid article,.report-priority>div{padding:20px}
 .report-head h1{font-size:30px}
 .matrix-wrap{padding:14px}
 .matrix-cell{padding:10px;min-height:145px}
 .matrix-cell strong{font-size:13px}
 .matrix{min-width:620px}
 .matrix-cell span{display:block;font-size:13px}
 .report-provenance{padding:16px}
 .measurement-protocol-head,.measurement-protocol-grid article{padding:20px}
 .test-grid{padding:16px}
}
@media(max-width:760px){
 .talk-intro{padding:24px}
 .talk-topbar{padding-block:20px}
 .talk-panel{padding-block:20px}
 .talk-tabs{gap:8px}
 .talk-speakers,.talk-outcomes{grid-template-columns:1fr}
 .talk-speaker{padding:20px}
 .glossary-page .glossary-detail{order:initial}
}
@media print{
 .content{container-type:normal}
 .ball-control-rail{position:static}
 .notebook-chapters{display:block}
 .notebook-chapter{margin-bottom:12px}
 .glossary-page .glossary-index{position:static;max-height:none;overflow:visible}
 .glossary-mobile-picker{display:none}
 .report-page{max-width:none;padding:0}
 .report-sheet{box-shadow:none;border:0}
}
