:root{font-family:var(--gs-font-body);color:var(--gs-content-primary);background:var(--gs-surface-raised);font-size:100%}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,select{min-height:44px}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.4;cursor:default}a{color:var(--gs-content-accent)}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--gs-border-default);outline-offset:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.experience{max-width:620px;margin:0 auto;background:var(--gs-surface-raised);height:100dvh;min-height:620px;display:flex;flex-direction:column;border-inline:1px solid var(--gs-border-default)}header{display:flex;align-items:center;justify-content:space-between;gap:var(--gs-space-3);padding:var(--gs-space-1) var(--gs-space-4);border-bottom:1px solid var(--gs-border-default);min-height:52px}.brand{font-weight:var(--gs-weight-semibold);color:var(--gs-content-accent);text-decoration:none;font-size:var(--gs-text-base);letter-spacing:-.5px}header span{font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}header button{border:0;background:none;color:var(--gs-content-primary);font-size:var(--gs-text-sm)}main{display:flex;flex:1;min-height:0;flex-direction:column}.anatomy{position:relative;flex:1;min-height:220px;isolation:isolate;background:var(--gs-surface-sunken)}#viewer{position:absolute;inset:40px 0 0}#viewer canvas{display:block;width:100%;height:100%;touch-action:none}.view-heading{position:absolute;top:8px;left:16px;right:12px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:var(--gs-space-2);font-size:var(--gs-text-sm);font-weight:var(--gs-weight-semibold)}.view-heading button{font-size:var(--gs-text-xs);color:var(--gs-content-accent);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-1) var(--gs-space-2);min-height:36px}.camera-controls{position:absolute;bottom:8px;left:12px;right:12px;display:flex;justify-content:space-between;z-index:3;pointer-events:none}.camera-controls button{pointer-events:auto;padding:var(--gs-space-2) var(--gs-space-3);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);font-size:var(--gs-text-xs);min-height:36px}#load-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--gs-space-4);font-size:var(--gs-text-sm)}#load-progress{width:140px;accent-color:var(--gs-content-accent)}#model-fallback{position:absolute;width:100%;height:100%;object-fit:contain}#motion-callout{position:absolute;z-index:4;background:var(--gs-surface-inverse);color:var(--gs-content-inverse);border-radius:var(--gs-radius-md);padding:var(--gs-space-2) var(--gs-space-2);font-size:var(--gs-text-xs);max-width:175px;pointer-events:none}.playback-bar{display:flex;gap:var(--gs-space-3);align-items:center;padding:var(--gs-space-2) var(--gs-space-3) var(--gs-space-1)}.playback-bar button{min-width:70px;background:var(--gs-surface-inverse);color:var(--gs-content-inverse);border:0;border-radius:var(--gs-radius-md);font-size:var(--gs-text-sm)}.playback-bar input{min-width:30px;flex:1;accent-color:var(--gs-content-accent);height:30px}.illustrative{font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.motion-description{padding:var(--gs-space-1) var(--gs-space-4) var(--gs-space-2);margin:0;font-size:var(--gs-text-sm);line-height:1.4;min-height:35px;color:var(--gs-content-primary)}.flow-panel{display:flex;flex-direction:column;min-height:160px;max-height:46dvh;border-top:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);box-shadow:none}#panel-scroll{padding:var(--gs-space-4) var(--gs-space-4) var(--gs-space-2);overflow-y:auto;overscroll-behavior:contain;min-height:0}.flow-panel h1{font-size:var(--gs-text-xl);line-height:1.2;letter-spacing:-.3px;margin:0 0 var(--gs-space-2)}.flow-panel p{font-size:var(--gs-text-sm);line-height:1.5;margin:var(--gs-space-2) 0 var(--gs-space-3)}.flow-panel .small{font-size:var(--gs-text-sm);color:var(--gs-content-secondary);line-height:1.45}.choice-list{display:flex;flex-direction:column;gap:var(--gs-space-2)}.choice-list button{text-align:left;background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-2) var(--gs-space-3);font-size:var(--gs-text-sm)}.choice-list button[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse);border-color:var(--gs-border-default)}.flow-panel select{width:100%;font-size:var(--gs-text-sm);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);padding:var(--gs-space-2);color:var(--gs-content-primary)}.flow-navigation{display:flex;justify-content:space-between;gap:var(--gs-space-3);padding:var(--gs-space-2) var(--gs-space-4) max(var(--gs-space-3),env(safe-area-inset-bottom));background:var(--gs-surface-raised)}.flow-navigation:has(button:not([hidden])){border-top:1px solid var(--gs-border-default)}.flow-navigation:has(button[hidden]):not(:has(button:not([hidden]))){display:none}.flow-navigation button{border:0;border-radius:var(--gs-radius-md);padding:var(--gs-space-2) var(--gs-space-4);font-size:var(--gs-text-sm)}.flow-navigation #flow-back{background:var(--gs-surface-raised)}.flow-navigation #flow-next{background:var(--gs-surface-accent);color:var(--gs-content-primary);margin-left:auto;flex:1;max-width:320px}.segmented{display:flex;gap:var(--gs-space-2);margin:var(--gs-space-2) 0}.segmented button{flex:1;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);font-size:var(--gs-text-sm)}.segmented button[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse)}.reading{margin-top:var(--gs-space-2);font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.reading summary{cursor:pointer;padding:var(--gs-space-1) 0}#panel-sources{font-size:var(--gs-text-xs);line-height:1.6}.question-prompt{border-left:3px solid var(--gs-border-default);padding-left:var(--gs-space-3)}ul{padding-left:var(--gs-space-5);line-height:1.6}details summary{font-size:var(--gs-text-sm);cursor:pointer}dialog{width:min(620px,calc(100% - 28px));max-height:85dvh;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:0;color:var(--gs-content-primary);background:var(--gs-surface-raised)}dialog::backdrop{background:var(--gs-surface-inverse)}.dialog-top{display:flex;align-items:center;justify-content:space-between;padding:var(--gs-space-2) var(--gs-space-5);border-bottom:1px solid var(--gs-border-default)}.dialog-top h2{font-size:var(--gs-text-base)}.dialog-top button{border:0;background:none;font-size:var(--gs-text-xl)}.dialog-body{padding:var(--gs-space-2) var(--gs-space-5) var(--gs-space-6);font-size:var(--gs-text-sm);line-height:1.6}.dialog-body h3{font-size:var(--gs-text-base)}.dialog-body li{margin-bottom:var(--gs-space-3)}@media(min-width: 64.0625rem){.experience{box-shadow:none}.anatomy{min-height:320px}}@media(max-height:700px){.experience{height:auto;min-height:100dvh}.anatomy{min-height:280px}.flow-panel{max-height:none}#panel-scroll{overflow:visible}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.context-choice{display:flex;gap:var(--gs-space-2);align-items:center;font-size:var(--gs-text-sm);min-height:44px}.context-choice input{width:18px;height:18px;accent-color:var(--gs-content-accent)}

.layer-controls{display:flex;justify-content:center;gap:var(--gs-space-2);padding:var(--gs-space-1) var(--gs-space-3) 0;flex-wrap:wrap}.layer-controls label{display:flex;align-items:center;gap:var(--gs-space-1);font-size:var(--gs-text-sm);min-height:38px;padding:var(--gs-space-1) var(--gs-space-2);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);cursor:pointer}.layer-controls input{width:17px;height:17px;accent-color:var(--gs-content-accent)}.zoom-controls{position:absolute;right:12px;top:52px;z-index:3;display:flex;flex-direction:column;gap:var(--gs-space-1)}.zoom-controls button{width:38px;min-height:38px;background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);font-size:var(--gs-text-xl)}.camera-controls{gap:var(--gs-space-2)}.camera-controls button{flex:1}.experience{min-height:690px}
#selection-context{padding:var(--gs-space-2) var(--gs-space-4);background:var(--gs-surface-raised);border-bottom:1px solid var(--gs-border-default);display:flex;align-items:center;justify-content:space-between;gap:var(--gs-space-3);border-radius:var(--gs-radius-md)}#selection-context>div{min-width:0}#selection-context span{display:block;font-size:var(--gs-text-xs);color:var(--gs-content-secondary);margin-bottom:var(--gs-space-1)}#selection-context strong{display:block;font-size:var(--gs-text-sm);line-height:1.3;color:var(--gs-content-primary)}#selection-context small{display:block;font-size:var(--gs-text-xs);color:var(--gs-content-secondary);margin-top:var(--gs-space-1)}#selection-context button{flex:none;background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);font-size:var(--gs-text-xs);padding:var(--gs-space-1) var(--gs-space-2)}.contributor-cards{display:flex;overflow-x:auto;gap:var(--gs-space-3);scroll-snap-type:x mandatory;overscroll-behavior-x:contain;padding:var(--gs-space-1) 0 var(--gs-space-3);scrollbar-width:thin}.contributor-card{flex:0 0 88%;min-width:0;scroll-snap-align:start;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);padding:var(--gs-space-4)}.contributor-card h2{font-size:var(--gs-text-base);line-height:1.25;margin:var(--gs-space-2) 0 var(--gs-space-3)}.contributor-card p{font-size:var(--gs-text-sm);line-height:1.5}.contributor-card a{font-size:var(--gs-text-sm)}.card-count{font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.carousel-heading{display:flex;align-items:center;justify-content:space-between;gap:var(--gs-space-2);margin:var(--gs-space-2) 0}.carousel-heading span{font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.carousel-heading>div{display:flex;gap:var(--gs-space-1)}.carousel-heading button{width:36px;min-height:36px;background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md)}.comparison-control{display:flex;align-items:center;justify-content:center;gap:var(--gs-space-2);padding:var(--gs-space-1) var(--gs-space-3) 0}.comparison-control button{background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-1) var(--gs-space-3);font-size:var(--gs-text-sm);min-height:36px}.comparison-control span{font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.comparison-control:has(button[hidden]){display:none}.comparison-control:has(button[aria-pressed=false]) span{display:none}.anatomy.comparing #viewer{left:50%}.anatomy.comparing .view-heading{left:calc(50% + 10px);right:6px;font-size:var(--gs-text-xs);top:8px;min-height:28px}.anatomy.comparing #normal-toggle{display:none}.anatomy.comparing #motion-callout{max-width:calc(50% - 22px);font-size:var(--gs-text-xs)}#reference-pane{position:absolute;inset:40px 50% 0 0;border-right:1px solid var(--gs-border-default)}#typical-viewer{position:absolute;inset:0}#typical-viewer canvas{width:100%;height:100%;display:block;touch-action:none}.reference-title{position:absolute;left:12px;top:-28px;font-size:var(--gs-text-xs);font-weight:var(--gs-weight-semibold)}#reference-loading{position:absolute;left:12px;top:50%;font-size:var(--gs-text-xs);color:var(--gs-content-secondary)}.anatomy.comparing .zoom-controls{right:6px}.flow-panel{max-height:49dvh}@media(max-width: 40rem){.comparison-control span{max-width:155px}.anatomy.comparing .view-heading{font-size:var(--gs-text-xs)}.reference-title{font-size:var(--gs-text-xs)}.anatomy.comparing{min-height:260px}.flow-panel{max-height:48dvh}#selection-context{padding:var(--gs-space-2) var(--gs-space-3)}#selection-context strong{font-size:var(--gs-text-sm)}}@media(max-height:700px){.flow-panel{max-height:none}}

.prior-sections{margin:0 0 var(--gs-space-5);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:0 var(--gs-space-3);background:var(--gs-surface-raised)}.history-label{font-size:var(--gs-text-sm);font-weight:var(--gs-weight-semibold);margin:var(--gs-space-3) 0 var(--gs-space-1)}.prior-sections details{border:0;border-top:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:transparent;padding:0;margin:0}.prior-sections summary{font-size:var(--gs-text-sm);min-height:44px;padding:var(--gs-space-3) 0;cursor:pointer}.prior-sections details details{margin-left:var(--gs-space-2)}.prior-sections p{font-size:var(--gs-text-sm);line-height:1.5}.prior-sections a{display:inline-block;margin-bottom:var(--gs-space-3)}.compare-label{display:block;margin:var(--gs-space-3) 0 var(--gs-space-1);font-size:var(--gs-text-sm)}.action-guide{padding:var(--gs-space-3);border-left:3px solid var(--gs-border-default);background:var(--gs-surface-raised);font-size:var(--gs-text-sm);line-height:1.5}.motion-description{min-height:44px;font-size:var(--gs-text-sm);line-height:1.4}.anatomy.comparing .view-heading,.reference-title{font-size:var(--gs-text-sm)}

.anatomy-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--gs-space-2);padding:var(--gs-space-1) var(--gs-space-3);background:var(--gs-surface-raised);z-index:8}.anatomy-toolbar button,.anatomy-toolbar summary{min-height:44px;padding:var(--gs-space-2) var(--gs-space-3);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);font-size:var(--gs-text-sm);cursor:pointer}.anatomy-toolbar details{position:relative}.anatomy-toolbar .layer-controls{position:absolute;left:0;top:48px;min-width:180px;display:grid;background:var(--gs-surface-raised);box-shadow:none;padding:var(--gs-space-2);border-radius:var(--gs-radius-md)}.layer-controls label{min-height:44px}.camera-controls button,.zoom-controls button,.carousel-heading button,.comparison-control button{min-height:44px}.zoom-controls button,.carousel-heading button{width:44px}.anatomy{min-height:290px}.flow-panel{max-height:42dvh}.prior-sections{padding:0 var(--gs-space-3);margin:0 0 var(--gs-space-3)}.prior-sections>summary{font-weight:var(--gs-weight-semibold)}.prior-sections .history-content article{padding:var(--gs-space-2) 0;border-top:1px solid var(--gs-border-default)}.prior-sections h3{font-size:var(--gs-text-sm);margin:var(--gs-space-1) 0}.relationship{border-left:3px solid var(--gs-border-default);background:var(--gs-surface-raised);padding:var(--gs-space-2) var(--gs-space-3);margin:var(--gs-space-2) 0}.relationship strong,.connection-label{font-size:var(--gs-text-sm)}.relationship span{font-size:var(--gs-text-sm);line-height:1.4;display:block}.connection-label{color:var(--gs-content-primary)}.playback-bar{gap:var(--gs-space-2)}.playback-bar #replay{min-width:60px;background:var(--gs-surface-raised);color:var(--gs-content-primary)}.illustrative{display:none}#animation-stages{display:flex;gap:var(--gs-space-1);padding:var(--gs-space-2) var(--gs-space-3)}#animation-stages button{flex:1;min-height:44px;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);font-size:var(--gs-text-sm)}#animation-stages button[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse)}.experience.expanded{position:fixed;inset:0;max-width:none;width:100%;height:100dvh;min-height:0;z-index:50}.expanded .flow-panel{display:none}.expanded .anatomy{min-height:0}.expanded main{overflow:auto}.expanded .motion-description{padding-bottom:max(var(--gs-space-2),env(safe-area-inset-bottom))}.view-heading{font-size:var(--gs-text-sm)}.anatomy.comparing .view-heading{font-size:var(--gs-text-sm);line-height:1.2;top:5px}#reference-pane,#viewer{top:58px}.reference-title{top:-44px;right:5px;line-height:1.2}.anatomy.comparing #motion-callout{display:none}@media(max-width: 40rem){.flow-panel{max-height:42dvh}.anatomy.comparing{min-height:290px}}@media(max-height:700px){.flow-panel{max-height:none}}

.anatomy-toolbar{gap:var(--gs-space-1)}.anatomy-toolbar button,.anatomy-toolbar summary{padding:var(--gs-space-2) var(--gs-space-2)}.view-options{display:flex;gap:var(--gs-space-2);justify-content:center;padding:var(--gs-space-1) var(--gs-space-3)}.view-options button{font-size:var(--gs-text-sm);min-height:44px;padding:var(--gs-space-1) var(--gs-space-3);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised)}.view-options button[aria-pressed=true],#inspect-toggle[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse)}#structure-picker{padding:var(--gs-space-2) var(--gs-space-3);background:var(--gs-surface-raised)}#structure-picker label{display:block;font-size:var(--gs-text-sm);margin-bottom:var(--gs-space-1)}#structure-choice{width:100%;font-size:var(--gs-text-sm);min-height:44px}#structure-card{padding:var(--gs-space-3) var(--gs-space-4);background:var(--gs-surface-raised);max-height:220px;overflow:auto}#structure-card>div{display:flex;justify-content:space-between;align-items:center}#structure-card p{font-size:var(--gs-text-sm);line-height:1.5}#structure-card button{background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-1) var(--gs-space-2)}#takeaway{margin:var(--gs-space-1) var(--gs-space-3) var(--gs-space-2);padding:0 var(--gs-space-3);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);max-height:180px;overflow:auto}#takeaway summary{padding:var(--gs-space-3) 0;min-height:44px;font-weight:var(--gs-weight-semibold)}#takeaway p{font-size:var(--gs-text-sm);line-height:1.5}.save-question{display:block;width:100%;margin:var(--gs-space-3) 0;padding:var(--gs-space-2);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);text-align:left;font-size:var(--gs-text-sm)}.save-question[aria-pressed=true]{background:var(--gs-surface-sunken)}.why-pattern{margin:var(--gs-space-3) 0}.why-pattern summary{padding:var(--gs-space-3) 0}.why-pattern button{display:block;margin:var(--gs-space-2) 0;padding:var(--gs-space-2);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised)}.recap h2{font-size:var(--gs-text-base);margin:var(--gs-space-5) 0 var(--gs-space-2)}.recap article{padding:var(--gs-space-2) 0;border-bottom:1px solid var(--gs-border-default)}.recap button,.progress-settings button,.resume-banner button{border:1px solid var(--gs-border-default);background:var(--gs-surface-raised);border-radius:var(--gs-radius-md);padding:var(--gs-space-2) var(--gs-space-3);margin:var(--gs-space-1) 0}.progress-settings{margin:var(--gs-space-4) 0;font-size:var(--gs-text-sm)}.progress-settings summary{min-height:44px;padding:var(--gs-space-3) 0}.progress-settings label{display:flex;align-items:center;gap:var(--gs-space-2);min-height:44px}.progress-settings p{font-size:var(--gs-text-sm)}.resume-banner{padding:var(--gs-space-3);background:var(--gs-surface-raised);border-radius:var(--gs-radius-md)}.expanded #takeaway{max-height:22dvh}.expanded #structure-card{max-height:25dvh}

.view-options{padding:var(--gs-space-1) 0;flex-wrap:wrap}.view-options button{width:100%}#organ-label,#reference-organ-label{display:none!important}.anatomy-toolbar>*{min-width:0}.anatomy-toolbar button{flex-shrink:1}

.edition-bar{display:flex;justify-content:space-between;gap:var(--gs-space-2);padding:var(--gs-space-2) var(--gs-space-3);font-size:var(--gs-text-xs);background:var(--gs-surface-raised);color:var(--gs-content-information)}.edition-bar a{color:var(--gs-content-information)}.choice-list .primary-entry{background:var(--gs-surface-inverse);color:var(--gs-content-inverse);border-color:var(--gs-border-default)}.scope-badge{display:inline-block;background:var(--gs-surface-raised);color:var(--gs-content-information);padding:var(--gs-space-1) var(--gs-space-2);border-radius:var(--gs-radius-md);font-size:var(--gs-text-sm)}.response-fields{display:grid;gap:var(--gs-space-3);margin:var(--gs-space-4) 0}.response-fields label{font-size:var(--gs-text-sm)}.response-fields select{margin-top:var(--gs-space-1)}.response-results h2{font-size:var(--gs-text-base)}.response-results h3{font-size:var(--gs-text-base)}.response-results dl{margin:var(--gs-space-3) 0}.response-results dl>div{padding:var(--gs-space-2) var(--gs-space-3);border-left:3px solid var(--gs-border-default);background:var(--gs-surface-raised);margin:var(--gs-space-1) 0}.response-results dt{font-size:var(--gs-text-sm);color:var(--gs-content-primary)}.response-results dd{margin:var(--gs-space-1) 0 0;font-size:var(--gs-text-sm);font-weight:var(--gs-weight-semibold)}.response-results .result-improved{border-color:var(--gs-border-default)}.response-results .result-worse{border-color:var(--gs-border-default)}.response-examples button,[data-action="response-recap"]{padding:var(--gs-space-2) var(--gs-space-3);background:var(--gs-surface-raised);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);margin:var(--gs-space-1);font-size:var(--gs-text-sm)}.research-trace{margin:var(--gs-space-3) 0}.research-trace summary{padding:var(--gs-space-2) 0}.research-trace a{font-size:var(--gs-text-sm)}.expanded .edition-bar{display:none}

.anatomy-lesson{padding:var(--gs-space-2) var(--gs-space-3);background:var(--gs-surface-raised);border-bottom:1px solid var(--gs-border-default);flex:none}.anatomy-lesson strong{display:block;font-size:var(--gs-text-sm);line-height:1.3}.anatomy-lesson span{display:block;font-size:var(--gs-text-xs);color:var(--gs-content-primary);margin-top:var(--gs-space-1)}.response-scenes{padding:var(--gs-space-3);margin:var(--gs-space-3) 0;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised)}.response-scenes h2{margin:0;font-size:var(--gs-text-base)}.response-scenes .response-examples{display:flex;gap:var(--gs-space-1)}.response-scenes .response-examples button{flex:1;margin:0;padding:var(--gs-space-2) var(--gs-space-1);min-width:0}.response-scenes button[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse)}.response-scenes .lesson-choices button{padding:var(--gs-space-2) var(--gs-space-2)}.anatomy-lesson+ #structure-picker{flex:none}.expanded .anatomy-lesson{padding:var(--gs-space-1) var(--gs-space-3)}.flow-panel{flex:1 1 250px;min-height:210px}.anatomy{flex:1 0 290px}.experience{height:auto;min-height:100dvh}@media(min-height:900px){.experience{height:100dvh}.anatomy{flex:1 1 290px}.flow-panel{flex:0 1 38dvh}}@media(max-height:700px){.flow-panel{max-height:none;flex:1}#panel-scroll{overflow:visible}}.experience.expanded{height:100dvh;min-height:0}.expanded .anatomy{flex:1 0 200px}.expanded main{min-height:0}

.contributor-cards{position:relative}.contributor-card[aria-current=true]{border:2px solid var(--gs-border-default);padding:var(--gs-space-4);background:var(--gs-surface-raised)}.contributor-card:focus-visible{outline:3px solid var(--gs-border-default);outline-offset:-4px}.lesson-choices button{padding:var(--gs-space-2) var(--gs-space-2)}.carousel-heading>span{min-width:0;line-height:1.4}.carousel-heading>div{flex:none}

/* Question journeys extend the existing single-panel mobile experience. */
.starting-entries button{min-height:52px;font-size:var(--gs-text-sm);line-height:1.4;padding:var(--gs-space-3) var(--gs-space-3)}
.other-starts,.personal-notes{margin:var(--gs-space-4) 0;border-top:1px solid var(--gs-border-default)}
.other-starts>summary,.personal-notes>summary,.test-explanation summary{padding:var(--gs-space-3) 0;min-height:44px;font-size:var(--gs-text-sm);cursor:pointer}
.learning-answer{background:var(--gs-surface-raised);border-left:3px solid var(--gs-border-default);padding:var(--gs-space-3) var(--gs-space-3);margin:var(--gs-space-3) 0;border-radius:var(--gs-radius-md)}
.learning-answer strong{font-size:var(--gs-text-base);line-height:1.4}.learning-answer p:last-child{margin-bottom:0}
.starting-processes,.attempt-tabs{display:flex;flex-wrap:wrap;gap:var(--gs-space-2);margin:var(--gs-space-3) 0}
.starting-processes button,.attempt-tabs button,[data-action="attempt-add"],[data-action="attempt-remove"]{background:var(--gs-surface-raised);color:var(--gs-content-primary);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-2) var(--gs-space-3);min-height:44px;font-size:var(--gs-text-sm);line-height:1.35;overflow-wrap:anywhere}
.starting-processes button{flex:1 1 135px}.starting-processes button[aria-pressed=true],.attempt-tabs button[aria-pressed=true]{background:var(--gs-surface-inverse);color:var(--gs-content-inverse);border-color:var(--gs-border-default)}
.starting-field{display:block;font-size:var(--gs-text-sm);line-height:1.45;margin:var(--gs-space-3) 0}.starting-field textarea,.starting-field select{display:block;margin-top:var(--gs-space-1)}
.starting-field textarea{width:100%;min-height:76px;resize:vertical;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);background:var(--gs-surface-raised);padding:var(--gs-space-2);color:var(--gs-content-primary);font:inherit;line-height:1.5}
.starting-field textarea::placeholder{color:var(--gs-content-secondary);font-size:var(--gs-text-sm)}.starting-field textarea:focus-visible{outline:3px solid var(--gs-border-default);outline-offset:2px}
.attempt-form{min-width:0;border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md);padding:var(--gs-space-3);margin:var(--gs-space-4) 0}.attempt-form legend{padding:0 var(--gs-space-1);font-size:var(--gs-text-sm);font-weight:var(--gs-weight-semibold)}.attempt-form>label{font-size:var(--gs-text-sm)}.attempt-form select{margin-top:var(--gs-space-1)}.attempt-tabs button{max-width:100%;text-align:left}
.test-choices button strong{display:block;font-size:var(--gs-text-sm);font-weight:var(--gs-weight-regular)}.test-choices button span{display:block;font-size:var(--gs-text-sm);margin-top:var(--gs-space-1);opacity:.85}
.test-explanation h2,.starting-recap h2{font-size:var(--gs-text-base);margin:var(--gs-space-4) 0 var(--gs-space-2);line-height:1.3}.starting-recap h3{font-size:var(--gs-text-base);line-height:1.4}
.test-explanation dl,.starting-recap dl{margin:var(--gs-space-3) 0}.test-explanation dt,.starting-recap dt{font-size:var(--gs-text-sm);color:var(--gs-content-primary);margin-top:var(--gs-space-3)}.test-explanation dd,.starting-recap dd{font-size:var(--gs-text-sm);line-height:1.5;margin:var(--gs-space-1) 0 var(--gs-space-3);white-space:pre-wrap;overflow-wrap:anywhere}
.starting-recap dl>div{padding:0 0 var(--gs-space-1);border-bottom:1px solid var(--gs-border-default)}.attempt-summary{margin:var(--gs-space-3) 0;padding:var(--gs-space-3);border:1px solid var(--gs-border-default);border-radius:var(--gs-radius-md)}.attempt-summary h3{margin:0}
.flow-panel h1:focus{outline:none}.flow-panel select{max-width:100%}.anatomy-lesson span{font-size:var(--gs-text-sm)}.flow-panel details summary{overflow-wrap:anywhere}
@media(max-width: 40rem){.anatomy-toolbar{flex-wrap:wrap}.anatomy-toolbar>*{flex:1 1 auto}.camera-controls{gap:var(--gs-space-1)}.camera-controls button{padding:var(--gs-space-1);font-size:var(--gs-text-sm)}.starting-processes button{flex-basis:120px}}

/* Give keyboard users a direct route to the current learning step. */
.skip-link{position:fixed;inset-block-start:var(--gs-space-2);inset-inline-start:var(--gs-space-2);z-index:100;transform:translateY(-150%);padding:var(--gs-space-2) var(--gs-space-3);border:1px solid var(--gs-action-primary-border);border-radius:var(--gs-radius-md);background:var(--gs-action-primary-background);color:var(--gs-action-primary-content);text-decoration:none}
.skip-link:focus-visible{transform:translateY(0)}
#lesson-title:focus-visible{outline:3px solid var(--gs-border-default);outline-offset:var(--gs-space-1)}

/* Let lessons use the page height instead of clipping them inside a second scroll area. */
.experience:not(.expanded){height:auto;min-height:100dvh}
/* The outer curve includes the inset around the pill-shaped toolbar. */
.experience:not(.expanded){
  width:calc(100% - var(--gs-space-4));
  margin-block:var(--gs-space-2);
  border:1px solid var(--gs-border-default);
  border-radius:calc(var(--gs-radius-sheet) + var(--gs-space-3));
  overflow:clip;
}
.experience:not(.expanded)>main{flex:none;min-height:0}
.flow-panel{flex:none;max-height:none;min-height:0}
#panel-scroll{min-height:0;overflow:visible;overscroll-behavior:auto}

@media(max-width: 40rem){
  .experience>header{gap:var(--gs-space-2);padding-inline:var(--gs-space-3)}
  .experience>header #step-label{flex:1;min-width:0;text-align:center;overflow-wrap:anywhere}
  .anatomy-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:var(--gs-space-2)}
  .anatomy-toolbar>*{flex:none;width:100%;min-width:0}
  .anatomy-toolbar>:last-child{grid-column:1/-1}
  .anatomy-toolbar button,.anatomy-toolbar summary{width:100%;min-width:0;overflow-wrap:anywhere;text-align:center}
  .anatomy-toolbar .layer-controls{max-width:calc(100vw - var(--gs-space-6))}
  .camera-controls button{min-width:0;overflow-wrap:anywhere;text-align:center}
  .playback-bar{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:var(--gs-space-2)}
  .playback-bar input{min-width:0}
  .playback-bar .illustrative{display:block;grid-column:1/-1}
  #animation-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  #animation-stages button{min-width:0;overflow-wrap:anywhere}
  #animation-stages button:last-child{grid-column:1/-1}
  #panel-scroll{padding:var(--gs-space-3) var(--gs-space-3) var(--gs-space-16)}
  #panel-content{min-width:0;overflow-wrap:anywhere}
  #panel-content :is(button,label,summary){min-width:0;overflow-wrap:anywhere}
  #panel-scroll :focus-visible{scroll-margin-block-end:calc(var(--gs-space-16) + env(safe-area-inset-bottom))}
  .flow-navigation{position:sticky;inset-block-end:0;z-index:9;flex:none;gap:var(--gs-space-2);padding:var(--gs-space-2) var(--gs-space-3) max(var(--gs-space-3),env(safe-area-inset-bottom))}
  .flow-navigation button{min-width:0;overflow-wrap:anywhere}
}
