
:root{
  color-scheme:dark;
  --bg:#07131c;--bg2:#091923;--surface:#0d1d28;--surface2:#122734;--surface3:#183444;
  --glass:rgba(9,24,34,.84);--ink:#f5f8fa;--muted:#aec0cc;--faint:#829aa9;
  --line:#284252;--line2:#355768;--accent:#50d9ee;--accent2:#169fba;--warm:#ffd37a;
  --green:#62ddb2;--amber:#f2bd5b;--coral:#ed765f;--danger:#ff6b77;--focus:#86e8f7;
  --shadow:0 20px 56px rgba(0,0,0,.34);--radius:14px;--top:60px;--side:clamp(350px,27vw,420px);
  --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#eaf0f3;--bg2:#f3f7f8;--surface:#fff;--surface2:#edf4f6;--surface3:#dcebef;
  --glass:rgba(248,252,253,.9);--ink:#10212b;--muted:#45606e;--faint:#637d8a;
  --line:#c8d9df;--line2:#9db9c4;--accent:#087e99;--accent2:#0b7188;--warm:#9c6500;
  --green:#0b8666;--amber:#a16300;--coral:#b84535;--danger:#b72e43;--focus:#006d86;
  --shadow:0 18px 48px rgba(30,64,78,.15);
}
*{box-sizing:border-box}
html,body{height:100%;margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px}
body{overflow:hidden}
button,input,select,textarea{font:inherit;color:inherit}
button{border:0;background:none;cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.46}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--focus);outline-offset:2px
}
a{color:var(--accent)}
.srOnly{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skipLink{position:fixed;z-index:1000;left:12px;top:-60px;background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:8px}
.skipLink:focus{top:10px}
#appShell{
  height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) var(--side);
  grid-template-rows:var(--top) minmax(0,1fr) 30px;
  grid-template-areas:"top top" "viewport controls" "status status";
  background:var(--bg)
}
#topbar{
  grid-area:top;display:grid;grid-template-columns:minmax(220px,auto) minmax(280px,1fr) auto;align-items:center;
  border-bottom:1px solid var(--line);background:linear-gradient(90deg,var(--surface),var(--bg2));
  position:relative;z-index:30
}
.brandBlock{height:100%;display:flex;align-items:center;gap:11px;padding:0 18px;border-right:1px solid var(--line);white-space:nowrap}
.brandMark{width:34px;height:34px;border:1px solid rgba(80,217,238,.5);border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(80,217,238,.18),rgba(80,217,238,.03));color:var(--accent);font-weight:800;font-size:12px;box-shadow:inset 0 0 20px rgba(80,217,238,.08)}
.brandName{font-size:14px;font-weight:780;line-height:1.05;letter-spacing:-.01em}.brandName small{display:block;margin-top:5px;color:var(--faint);font-size:9px;letter-spacing:.16em;font-weight:650;text-transform:uppercase}
#workspaceNav{display:flex;align-items:center;justify-content:center;gap:4px;padding:0 14px;min-width:0}
.workspaceBtn{min-height:38px;padding:0 14px;border-radius:10px;color:var(--muted);font-size:12px;font-weight:650;white-space:nowrap}
.workspaceBtn:hover{background:var(--surface2);color:var(--ink)}
.workspaceBtn.on{background:var(--surface3);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}
.topActions{display:flex;align-items:center;gap:7px;padding-right:14px}
.topAction{min-height:38px;padding:0 11px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:11px;background:var(--surface)}
.topAction:hover{border-color:var(--line2);color:var(--ink)}
.topAction.primary{background:linear-gradient(135deg,#0c91aa,#0a7188);color:#fff;border-color:#2cbad1}
.iconOnly{width:38px;padding:0;display:grid;place-items:center;font-size:15px}

#library,#inspector{grid-area:controls;min-width:0;min-height:0;overflow:auto;border-left:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--bg2));scrollbar-width:thin;scrollbar-color:var(--line2) transparent}
.sidePanelTabs{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px;border-bottom:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px)}
.sidePanelTab{min-height:40px;border-radius:10px;color:var(--faint);font-size:11px;font-weight:680}
.sidePanelTab:hover{background:var(--surface2);color:var(--ink)}
.sidePanelTab.on{background:var(--surface3);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line2)}
#library{display:block}#inspector{display:none}
#appShell[data-panel="inspector"] #library{display:none}
#appShell[data-panel="inspector"] #inspector{display:block}
.panelHead{position:sticky;top:57px;z-index:20;padding:15px;background:var(--glass);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.panelTitle{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--faint);font-weight:760}
.searchWrap{position:relative;margin-top:10px}
.searchWrap:before{content:"⌕";position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--faint);font-size:18px}
#searchInput{width:100%;height:42px;border-radius:11px;border:1px solid var(--line);background:var(--bg2);padding:0 36px 0 37px;outline:0}
#searchInput::placeholder{color:var(--faint)}
#clearSearch{position:absolute;right:5px;top:5px;width:32px;height:32px;border-radius:8px;color:var(--faint)}
#clearSearch:hover{background:var(--surface2);color:var(--ink)}
.panelSection{padding:16px;border-bottom:1px solid var(--line)}
.sectionHeading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 11px;font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--faint)}
.sectionHeading span{font-family:var(--mono);letter-spacing:0;text-transform:none;color:var(--accent);font-size:10px}
#presetList{display:flex;flex-direction:column;gap:7px}
.preset{
  width:100%;min-height:62px;padding:10px 12px;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;
  text-align:left;border:1px solid transparent;border-radius:12px;background:rgba(18,39,52,.48);color:var(--muted)
}
html[data-theme="light"] .preset{background:#f3f8f9}
.preset:hover{border-color:var(--line2);transform:translateY(-1px)}
.preset.on{border-color:var(--accent2);background:linear-gradient(135deg,rgba(22,159,186,.2),rgba(18,39,52,.72));color:var(--ink)}
.presetIndex{width:27px;height:27px;border-radius:8px;background:var(--surface3);display:grid;place-items:center;font-family:var(--mono);font-size:9px;color:var(--faint)}
.preset.on .presetIndex{background:var(--accent2);color:#fff}
.presetText{min-width:0}.presetText b{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.presetText span{display:block;margin-top:4px;color:var(--faint);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.contextTag{font-family:var(--mono);font-size:8px;border:1px solid var(--line);border-radius:999px;padding:4px 6px;color:var(--faint)}
#nerveRows{display:flex;flex-direction:column;gap:5px}
.nerveRow{display:grid;grid-template-columns:minmax(0,1fr) 40px;gap:5px}
.nerveSelect{min-width:0;min-height:48px;display:grid;grid-template-columns:11px minmax(0,1fr) auto;align-items:center;gap:9px;text-align:left;border-radius:10px;padding:7px 9px;color:var(--muted)}
.nerveSelect:hover{background:var(--surface2)}.nerveSelect.on{background:var(--surface3);color:var(--ink)}
.nerveDot{width:9px;height:9px;border-radius:50%;box-shadow:0 0 10px currentColor}
.nerveMeta{min-width:0}.nerveMeta b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nerveMeta span{display:block;font:9px var(--mono);color:var(--faint);margin-top:3px}
.nerveMeasure{text-align:right}.nerveMeasure b{display:block;font:10px var(--mono)}.nerveMeasure span{display:block;font-size:8px;color:var(--faint);margin-top:3px}
.visibilityBtn{width:40px;min-height:40px;align-self:center;border-radius:9px;border:1px solid var(--line);color:var(--faint)}.visibilityBtn:hover{border-color:var(--line2);color:var(--ink)}.visibilityBtn.off{opacity:.45;text-decoration:line-through}
.lessonCard{border:1px solid var(--line2);border-radius:14px;background:linear-gradient(145deg,rgba(80,217,238,.1),rgba(18,39,52,.42));padding:13px}
.lessonKicker{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:760}.lessonCard h3{font-size:13px;margin:7px 0}.lessonCard p{font-size:11px;color:var(--muted);line-height:1.5;margin:0}
#lessonSteps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:11px}.lessonStep{min-height:40px;border:1px solid var(--line);border-radius:9px;font-size:9px;color:var(--muted);background:var(--surface)}.lessonStep:hover,.lessonStep.on{border-color:var(--accent);color:var(--ink)}
.teachingOnly,.researchOnly{display:none}body[data-workspace="teaching"] .teachingOnly{display:block}body[data-workspace="research"] .researchOnly{display:block}

#viewport{grid-area:viewport;position:relative;min-width:0;min-height:0;overflow:hidden;container-type:inline-size;container-name:stage;background:
  radial-gradient(90% 70% at 50% 18%,rgba(53,102,128,.38),transparent 65%),
  linear-gradient(180deg,#0b1d29 0%,#07131c 74%,#050c12 100%)}
html[data-theme="light"] #viewport{background:radial-gradient(90% 70% at 50% 18%,#dcecf0,transparent 65%),linear-gradient(180deg,#edf5f7,#dfeaec)}
#viewport canvas.webgl{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}
#viewport canvas.webgl.isDragging{cursor:grabbing}
#fallbackMap{position:absolute;inset:9% 17% 13%;width:66%;height:78%;opacity:.9;filter:drop-shadow(0 25px 30px rgba(0,0,0,.25))}
.webglReady #fallbackMap{display:none}
#loadingState{position:absolute;z-index:20;inset:0;display:grid;place-items:center;pointer-events:none;background:rgba(6,16,23,.12)}
.webglReady #loadingState{display:none}
.loader{text-align:center;color:var(--muted);font-size:11px}.loaderRing{width:44px;height:44px;margin:0 auto 12px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--accent);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
#hud{position:absolute;z-index:5;left:20px;top:18px;max-width:min(600px,54cqi);pointer-events:none}
.eyebrow{font-size:9px;font-weight:760;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
#hud h1{font-size:21px;line-height:1.14;letter-spacing:-.02em;margin:7px 0 0}.hudSub{display:block;font-size:11px;color:var(--muted);font-weight:480;letter-spacing:0;margin-top:5px}
#statusPills{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(135,177,198,.28);background:rgba(7,20,29,.68);backdrop-filter:blur(9px);border-radius:999px;padding:6px 9px;font-size:9px;color:#b8cbd5}.pill b{color:#fff}.pillDot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent)}
#viewToolbar{position:absolute;z-index:7;right:14px;top:14px;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:390px}
.viewBtn{min-height:38px;padding:0 10px;border:1px solid rgba(135,177,198,.3);background:rgba(7,20,29,.76);backdrop-filter:blur(10px);border-radius:10px;color:#b8cbd5;font-size:10px;box-shadow:0 9px 22px rgba(0,0,0,.14)}
.viewBtn:hover,.viewBtn.on{border-color:var(--accent);color:#fff;background:rgba(15,47,60,.86)}
.assetStatus{position:absolute;z-index:7;right:14px;top:60px;max-width:330px;padding:8px 10px;border:1px solid rgba(135,177,198,.28);border-radius:10px;background:rgba(7,20,29,.72);backdrop-filter:blur(10px);color:#b8cbd5;font-size:10px;line-height:1.35}
.assetStatus b{color:#fff;font-weight:700}
#labelLayer{position:absolute;inset:0;z-index:8;pointer-events:none}.landmarkLabel{position:absolute;transform:translate(10px,-50%);display:none;padding:5px 8px;border:1px solid rgba(102,211,230,.46);border-radius:7px;background:rgba(5,16,23,.83);font-size:9px;color:#dcebf0;white-space:nowrap}.landmarkLabel:before{content:"";position:absolute;width:8px;height:1px;background:rgba(102,211,230,.7);left:-8px;top:50%}
#selectedCard{display:none}
.selectedTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.selectedTop h2{font-size:13px;margin:0}.selectedTop p{font:9px var(--mono);color:#91aab7;margin:4px 0 0}.selectedBadge{font:9px var(--mono);color:var(--accent);border:1px solid rgba(80,217,238,.36);padding:5px 7px;border-radius:999px}
.metricStrip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.metricMini{border-top:1px solid rgba(135,177,198,.2);padding-top:8px}.metricMini span{display:block;font-size:8px;color:#8ea6b3;text-transform:uppercase;letter-spacing:.08em}.metricMini b{display:block;font:11px var(--mono);margin-top:4px;color:#eef7fa}
#cardRegion{font-size:10px;color:#a9bdc7;line-height:1.4;margin:9px 0 0}
#relativeLegend{position:absolute;z-index:5;right:16px;bottom:92px;width:178px;pointer-events:none}.legendTitle{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#9cb3bf;margin-bottom:6px}.legendGradient{height:8px;border-radius:8px;background:linear-gradient(90deg,#29485a,#2a9ab4,#55d0b0,#e5bd5e,#e2765d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.legendLabels{display:flex;justify-content:space-between;font:8px var(--mono);color:#8ea6b3;margin-top:5px}
#motionDock{position:absolute;z-index:9;left:50%;bottom:16px;transform:translateX(-50%);width:min(620px,calc(100% - 32px));display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid rgba(135,177,198,.3);background:rgba(7,20,29,.86);backdrop-filter:blur(15px);border-radius:15px;box-shadow:var(--shadow)}
#playBtn{width:42px;height:42px;border-radius:11px;background:#173747;border:1px solid #315567;color:#fff;font-size:14px}
#playBtn:hover{border-color:var(--accent)}
#motionMain{min-width:0}.motionMeta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.motionMeta span:first-child{font-size:10px;font-weight:680;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.motionMeta span:last-child{font:9px var(--mono);color:var(--accent)}
#timeline{width:100%;height:5px;appearance:none;background:linear-gradient(90deg,var(--accent) var(--p,100%),#274354 var(--p,100%));border-radius:5px}
#timeline::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:#f1fbfd;border:4px solid #1b4557;box-shadow:0 0 0 1px rgba(80,217,238,.8)}
#timeline::-moz-range-thumb{width:13px;height:13px;border-radius:50%;background:#f1fbfd;border:4px solid #1b4557}
.dockBtn{min-width:46px;height:38px;padding:0 9px;border:1px solid #294858;border-radius:10px;color:#b6cad4;background:#102733;font:9px var(--mono)}
#hotspotLabel{position:absolute;z-index:15;display:none;pointer-events:none;padding:7px 9px;border-radius:8px;background:rgba(4,12,18,.92);border:1px solid rgba(255,255,255,.16);font-size:10px;color:#fff;white-space:nowrap;box-shadow:0 12px 28px rgba(0,0,0,.3)}
#toast{position:absolute;z-index:25;left:50%;top:80px;transform:translate(-50%,-10px);opacity:0;pointer-events:none;background:rgba(5,15,22,.94);border:1px solid var(--line2);border-radius:10px;padding:9px 12px;color:#fff;font-size:11px;transition:.2s}
#toast.show{opacity:1;transform:translate(-50%,0)}
#error{position:absolute;z-index:24;inset:0;display:none;align-items:center;justify-content:center;padding:30px;background:rgba(5,14,20,.48);text-align:center}.errorCard{max-width:510px;border:1px solid #70434a;background:rgba(30,25,32,.96);border-radius:16px;padding:22px}.errorCard h2{font-size:16px;margin:0 0 9px;color:#ffd2d6}.errorCard p{font-size:12px;color:#d5b6bb;line-height:1.55;margin:0}.errorCard button{margin-top:15px;min-height:42px;padding:0 13px;border:1px solid #8d5961;border-radius:9px;color:#ffe9eb}

.inspectorSummary{padding:15px}.selectedIdentity{display:flex;align-items:center;gap:11px}.selectedIdentity .bigDot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 14px currentColor}.selectedIdentity h2{font-size:14px;margin:0}.selectedIdentity p{font:9px var(--mono);color:var(--faint);margin:4px 0 0}
#inspectorTabs{position:sticky;top:57px;z-index:20;display:flex;overflow:auto;padding:8px;border-bottom:1px solid var(--line);background:var(--glass);backdrop-filter:blur(14px)}
.tabBtn{min-height:38px;padding:0 10px;border-radius:9px;color:var(--faint);font-size:10px;white-space:nowrap}.tabBtn:hover{color:var(--ink);background:var(--surface2)}.tabBtn.on{color:var(--ink);background:var(--surface3)}
.tabPanel{display:none;padding:15px}.tabPanel.on{display:block}
.notice{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface2);border-radius:10px;padding:10px 11px;font-size:10px;color:var(--muted);line-height:1.5}
.metricGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.metricCard{border:1px solid var(--line);border-radius:11px;background:var(--surface);padding:11px}.metricCard span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.metricCard b{display:block;font:17px var(--mono);margin-top:7px}.metricCard small{display:block;font-size:9px;color:var(--faint);margin-top:4px}
.field{margin-top:12px}.field>label,.fieldLabel{display:block;font-size:9px;font-weight:720;letter-spacing:.11em;text-transform:uppercase;color:var(--faint);margin-bottom:6px}
.control{width:100%;min-height:42px;border:1px solid var(--line);border-radius:10px;background:var(--bg2);padding:8px 10px;outline:0}
textarea.control{min-height:78px;resize:vertical;line-height:1.45}
.twoCol{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.actionRow{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.actionBtn{min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--muted);font-size:10px}.actionBtn:hover{border-color:var(--accent2);color:var(--ink)}.actionBtn.primary{background:#0f7188;border-color:#1c9bb5;color:#fff}
.chartCard{border:1px solid var(--line);border-radius:12px;background:var(--bg2);padding:10px;margin-top:11px}.chartHead{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:7px}.chartHead b{font-size:10px}.chartHead span{font:8px var(--mono);color:var(--faint)}.chartCard canvas{display:block;width:100%;height:126px}
.anatomyLead{font-size:11px;color:var(--muted);line-height:1.55;margin:0}.facts{display:grid;gap:8px;margin-top:12px}.fact{border-top:1px solid var(--line);padding-top:8px}.fact span{display:block;font-size:8px;color:var(--faint);text-transform:uppercase;letter-spacing:.1em}.fact p{font-size:11px;line-height:1.45;margin:5px 0 0;color:var(--muted)}
.layerPresetGrid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.layerPreset{min-height:44px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);font-size:10px;color:var(--muted)}.layerPreset.on,.layerPreset:hover{border-color:var(--accent2);color:var(--ink)}
.toggleGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.toggle{display:flex;align-items:center;gap:8px;min-height:36px;color:var(--muted);font-size:10px}.toggle input{appearance:none;width:32px;height:18px;border-radius:999px;background:#2a4351;position:relative;flex:0 0 auto}.toggle input:after{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;border-radius:50%;background:#91a8b4;transition:.16s}.toggle input:checked{background:#146b80}.toggle input:checked:after{left:16px;background:#baf5ff}
.rangeRow{margin-top:12px}.rangeTop{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-bottom:7px}.rangeTop output{font:10px var(--mono);color:var(--ink)}.rangeRow input{width:100%;accent-color:var(--accent)}
.jointGroup{margin-bottom:17px}.jointGroup h3{font-size:10px;color:var(--muted);margin:0 0 10px;display:flex;align-items:center;gap:7px}.jointGroup h3:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent2)}
.sliderRow{margin-bottom:13px}.sliderTop{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.sliderTop label{font-size:10px;color:var(--muted)}.sliderTop output{font:10px var(--mono)}.sliderRow input{width:100%;accent-color:var(--accent)}
.dataTableWrap{overflow:auto;border:1px solid var(--line);border-radius:11px;margin-top:12px}.dataTable{width:100%;border-collapse:collapse;font-size:9px;min-width:520px}.dataTable th,.dataTable td{text-align:left;padding:8px;border-bottom:1px solid var(--line);white-space:nowrap}.dataTable th{color:var(--faint);font-weight:680;text-transform:uppercase;letter-spacing:.06em;background:var(--surface2)}.dataTable td{font-family:var(--mono);color:var(--muted)}
.evidenceItem{padding:11px 0;border-bottom:1px solid var(--line)}.evidenceItem:last-child{border-bottom:0}.evidenceItem h3{font-size:11px;margin:0 0 5px}.evidenceItem p{font-size:10px;line-height:1.5;color:var(--muted);margin:0}.evidenceItem a{display:inline-block;margin-top:6px;font-size:9px}
#footerStatus{grid-area:status;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 13px;border-top:1px solid var(--line);background:var(--surface);font:9px var(--mono);color:var(--faint);overflow:hidden}#footerStatus span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.statusRight{display:flex;gap:14px}

#infoModal{position:fixed;z-index:100;inset:0;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(3,10,15,.82);backdrop-filter:blur(8px)}#infoModal.show{display:flex}.modal{position:relative;width:min(760px,100%);max-height:88dvh;overflow:auto;border:1px solid var(--line2);border-radius:18px;background:var(--surface);box-shadow:0 30px 90px rgba(0,0,0,.5);padding:24px}.modalClose{position:absolute;right:14px;top:14px;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;color:var(--muted)}.modal h2{font-size:19px;margin:8px 48px 13px 0}.modal h3{font-size:11px;color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin:20px 0 7px}.modal p,.modal li{font-size:12px;line-height:1.65;color:var(--muted)}.modal code{font-family:var(--mono);font-size:10px;background:var(--bg2);padding:3px 5px;border-radius:5px;color:var(--accent)}

@media(max-width:1180px){
  :root{--side:360px}.brandBlock{padding-left:14px}.brandName small{display:none}
}
@media(max-width:860px){
  body{overflow:auto}
  #appShell{height:auto;min-height:100dvh;grid-template-columns:1fr;grid-template-rows:auto minmax(600px,74dvh) minmax(540px,auto) 30px;grid-template-areas:"top" "viewport" "controls" "status"}
  #topbar{grid-template-columns:auto 1fr auto;min-height:64px}.brandBlock{border-right:0}.brandName small{display:block}
  #library,#inspector{min-height:540px;border-left:0;border-top:1px solid var(--line)}
  #library,#inspector{overflow:auto}
  #workspaceNav{justify-content:flex-start;overflow:auto}.workspaceBtn{padding:0 10px}.topAction .actionText{display:none}
}
@media(max-width:680px){
  :root{--top:58px}
  #appShell{display:grid;height:auto;min-height:100dvh;grid-template-columns:1fr;grid-template-rows:auto minmax(520px,70dvh) minmax(520px,auto) 30px;grid-template-areas:"top" "viewport" "controls" "status"}.brandBlock{padding:0 10px}.brandMark{width:30px;height:30px}.brandName{font-size:12px}.brandName small{display:none}
  #topbar{height:auto;min-height:58px;display:grid;grid-template-columns:auto 1fr auto;position:sticky;top:0}
  #workspaceNav{padding:0 4px}.workspaceBtn{font-size:0;width:38px;padding:0}.workspaceBtn:before{font-size:14px}.workspaceBtn[data-workspace="explore"]:before{content:"◉"}.workspaceBtn[data-workspace="teaching"]:before{content:"▤"}.workspaceBtn[data-workspace="research"]:before{content:"⌁"}
  .topActions{padding-right:6px}.topAction{display:none}.topAction.iconOnly{display:grid}
  #viewport{height:70dvh;min-height:520px}.panelHead{top:57px}#library,#inspector{border-left:0}
  #hud{left:13px;top:13px;max-width:68%}#hud h1{font-size:17px}.hudSub{font-size:9px}#statusPills{display:none}
  #viewToolbar{right:8px;top:8px;max-width:130px}.viewBtn{font-size:0;width:38px;padding:0}.viewBtn:after{font-size:12px}.viewBtn[data-view="fit"]:after{content:"⌖"}.viewBtn[data-view="anterior"]:after{content:"A"}.viewBtn[data-view="lateral"]:after{content:"L"}.viewBtn[data-action="rotate"]:after{content:"↻"}.viewBtn#loadMpfbBtn:after{content:"M"}
  .assetStatus{right:8px;top:98px;max-width:168px;font-size:9px}
  #relativeLegend{display:none}
  #motionDock{bottom:9px;width:calc(100% - 16px);grid-template-columns:auto minmax(0,1fr) auto}.dockBtn.loop{display:none}
  .chartCard canvas{height:150px}#footerStatus{min-height:30px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
@media(forced-colors:active){button,input,select,textarea,.preset,.metricCard,.chartCard{forced-color-adjust:auto}}
@media print{
  body{overflow:visible;background:#fff;color:#111}#topbar,#library,.sidePanelTabs,#viewToolbar,#motionDock,#footerStatus,.actionRow,#inspectorTabs{display:none!important}
  #appShell{display:grid;height:auto;grid-template-columns:62% 38%;grid-template-areas:"viewport controls";background:#fff}
  #viewport{grid-area:viewport;height:650px}#inspector{grid-area:controls;display:block!important;overflow:visible;border:0;background:#fff}.tabPanel{display:block!important;break-inside:avoid}
}
/* Overlay layout driven by the viewport COLUMN width (not the screen width),
   so the HUD, camera toolbar, model-status chip and legend never overlap when
   the centre column is squeezed between the side panels. */
@container stage (max-width:900px){
  #viewToolbar{gap:5px}
  .viewBtn{font-size:0;width:38px;padding:0}
  .viewBtn:after{font-size:13px;line-height:1}
  .viewBtn[data-view="anterior"]:after{content:"A"}
  .viewBtn[data-view="lateral"]:after{content:"L"}
  .viewBtn[data-view="fit"]:after{content:"⌖"}
  .viewBtn#loadMpfbBtn:after{content:"M"}
  .viewBtn[data-action="rotate"]:after{content:"↻"}
  #hud{max-width:min(560px,50cqi)}
  #hud h1{font-size:19px}
  .assetStatus{max-width:min(300px,40cqi)}
}
@container stage (max-width:560px){
  #hud{max-width:46cqi;top:14px}
  #hud h1{font-size:17px}
  .hudSub{display:none}
  #statusPills{display:none}
  .assetStatus{max-width:40cqi;font-size:9px}
  #relativeLegend{display:none}
  #motionDock{width:calc(100% - 18px)}
}

/* Distribución 1.0 · tres zonas: análisis, visor dominante y biblioteca anatómica. */
:root{--top:56px;--side:340px}
#appShell{
  grid-template-columns:clamp(280px,22vw,340px) minmax(640px,1fr) clamp(320px,24vw,380px);
  grid-template-rows:var(--top) minmax(0,1fr);
  grid-template-areas:"top top top" "controls viewport library"
}
#topbar{grid-template-columns:minmax(0,1fr) auto;min-height:var(--top);height:var(--top)}
#workspaceNav,.sidePanelTabs,#hud,#assetStatus,#selectedCard,#viewToolbar,#footerStatus{display:none!important}
#inspector{display:block!important;grid-area:controls;border-left:0;border-right:1px solid var(--line)}
#library{display:block!important;grid-area:library;border-left:1px solid var(--line)}
#library .panelHead,#library .teachingOnly{display:none!important}
#library .panelSection{padding:12px}
#library .preset{min-height:54px;padding:8px 10px}
#library .nerveSelect{min-height:46px}
.presetLibrary{display:none!important}
#inspectorTabs{top:0;justify-content:flex-start;padding:7px}
#tabBtn-data,#tab-data,.legacyResearch{display:none!important}
.inspectorSummary{padding:11px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.selectedIdentity{min-width:0}.selectedIdentity h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#backToPrimaryBtn{min-height:36px;padding:0 9px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:9px}

#quickTestPanel{padding:14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--surface),var(--bg2))}
#quickTestPanel label{display:block;margin-bottom:7px;color:var(--faint);font-size:9px;font-weight:760;letter-spacing:.13em;text-transform:uppercase}
#testSelect{width:100%;min-height:46px;border:1px solid var(--line2);border-radius:11px;background:var(--bg2);padding:0 11px;font-weight:680;outline:0}
.testAssociation{margin-top:10px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface2)}
#primaryNerveBtn{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;color:var(--ink)}
#primaryNerveBtn span{font-size:9px;color:var(--faint);text-transform:uppercase;letter-spacing:.1em}
#primaryNerveBtn b{font-size:11px}
#testContext,#relatedNerves{margin:5px 0 0;color:var(--faint);font-size:9px;line-height:1.45}
#relatedNerveChips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.relatedChip{min-height:32px;padding:0 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:9px;background:var(--surface)}
.relatedChip:hover{border-color:var(--accent2);color:var(--ink)}

#nerveTabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}
.nerveTab{min-width:0;min-height:52px;display:grid;grid-template-columns:9px minmax(0,1fr);align-items:center;gap:8px;padding:8px 9px;text-align:left;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:var(--surface2)}
.nerveTab:hover{border-color:var(--line2);color:var(--ink)}
.nerveTab.on{border-color:var(--accent2);background:rgba(22,159,186,.15);color:var(--ink)}
.nerveTab i{width:8px;height:8px;border-radius:50%;box-shadow:0 0 9px currentColor}
.nerveTab b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px}.nerveTab small{display:block;margin-top:3px;color:var(--faint);font:8px var(--mono)}
.anatomySource{display:inline-flex;margin-top:13px;font-size:9px}

#strainLegend{margin-top:11px}
.strainGradient{height:9px;border-radius:999px;background:linear-gradient(90deg,#315b9f 0%,#3c8fcc 25%,#42d6b4 40%,#f0d35f 62%,#f08a4b 80%,#d94a4a 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13)}
.strainLabels{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;margin-top:5px;color:var(--faint);font:8px var(--mono)}
.strainLabels span:last-child{text-align:right}

#viewToolbar{
  left:12px;right:auto;top:12px;width:164px;max-width:calc(100% - 24px);display:grid;gap:5px;
  padding:0;background:transparent;filter:drop-shadow(0 10px 22px rgba(0,0,0,.22))
}
.cameraModes,.cameraViews{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.cameraModes .viewBtn,.cameraViews .viewBtn{min-height:32px;padding:0 4px;font-size:8px}
.cameraModes .viewBtn[aria-pressed="true"]{border-color:var(--accent);background:rgba(15,70,88,.94);color:#fff}
.cameraGrid{width:104px;display:grid;grid-template-columns:repeat(3,32px);grid-template-rows:repeat(3,32px);gap:4px}
.cameraGrid .viewBtn{width:32px;min-height:32px;padding:0;font-size:12px}
.cameraGrid .camFit{font-size:8px}
.cameraViews{grid-template-columns:repeat(3,1fr)}
.cameraViews .viewBtn{min-width:0;padding:0 5px}
.cameraHint{margin:0;padding:5px 6px;border-radius:7px;background:rgba(7,20,29,.68);color:#b8cbd5;font-size:7px;line-height:1.3;pointer-events:none}
#loadMpfbBtn{display:none!important}

#motionDock{bottom:14px;width:min(600px,calc(100% - 28px))}
#relativeLegend{display:block!important;right:14px;bottom:92px;width:220px;padding:7px 8px;border-radius:9px;background:rgba(7,20,29,.64);backdrop-filter:blur(8px)}
#relativeLegend .legendTitle{color:#c5d7df;font-size:8px;margin-bottom:6px}
#relativeLegend .strainLabels{color:#b8cbd5}
.strainTrack{position:relative}.strainTrack .strainGradient{width:100%}
#strainMarker{position:absolute;left:37.5%;top:50%;width:3px;height:17px;border-radius:2px;background:#fff;transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(0,0,0,.65),0 0 7px rgba(255,255,255,.75)}
#strainLive{margin-top:5px;text-align:center;color:#eef7fa;font:9px var(--mono)}
.tabPanel{padding:14px}
.persistentMotion{display:block;padding:14px;border-top:1px solid var(--line)}
.persistentMotion #joints{margin-top:14px}
.tabBtn{min-height:42px}
.metricCard b{font-size:15px}
.fact{padding-top:10px}.fact span{font-size:8px}.fact p{font-size:10px;line-height:1.55}
.viewHelp{margin-bottom:13px;color:var(--muted);font-size:10px;line-height:1.5}
label.toggle:has(#muscleToggle){display:flex}

@media(max-width:1279px){
  body{overflow:auto}
  #appShell{height:auto;min-height:100dvh;grid-template-columns:minmax(0,1fr) clamp(320px,34vw,360px);grid-template-rows:var(--top) minmax(560px,68dvh) auto;grid-template-areas:"top top" "viewport library" "controls controls"}
  #inspector{min-height:0;overflow:visible;border-right:0;border-top:1px solid var(--line)}
  #library{min-height:0;max-height:68dvh;overflow:auto}
  #viewport{height:68dvh;min-height:560px}
  #topbar{grid-template-columns:minmax(0,1fr) auto}
  .topAction:not(.iconOnly){display:none}
  .brandName small{display:block}
}
@media(max-width:899px){
  #appShell{grid-template-columns:1fr;grid-template-rows:var(--top) minmax(540px,68dvh) auto auto;grid-template-areas:"top" "viewport" "library" "controls"}
  #library{max-height:none;overflow:visible;border-left:0;border-top:1px solid var(--line)}
  #viewport{height:68dvh;min-height:540px}
}
@media(max-width:520px){
  :root{--top:58px}
  #appShell{grid-template-rows:var(--top) minmax(520px,68dvh) auto auto}
  #viewport{height:68dvh;min-height:520px}
  #viewToolbar{left:8px;top:8px;width:156px;max-width:calc(100% - 16px)}
  #motionDock{bottom:8px;width:calc(100% - 16px)}
  #relativeLegend{right:8px;bottom:86px;width:184px}
  #nerveTabs{grid-template-columns:1fr}
  .topAction:not(.iconOnly){display:none}
}
@media(pointer:coarse){
  .cameraGrid{width:134px;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(3,42px)}
  .cameraGrid .viewBtn{width:42px;min-height:42px}
  .cameraModes .viewBtn,.cameraViews .viewBtn{min-height:42px;font-size:9px}
}

/* 1.0 · controles 3D visibles y escala cálida de tensión relativa. */
#viewToolbar{display:grid!important}
#assetStatus{display:block!important}
#hud{display:block!important;left:188px;right:12px;top:12px;max-width:none}
#hud .eyebrow,#hud h1{display:none}
#statusPills{display:flex!important;gap:5px}
#assetStatus{right:12px;top:88px;max-width:330px}
.cameraModes,.cameraGrid,.cameraHint,#autoRotateBtn,#speedBtn,#loopBtn{display:none!important}
.cameraViews{grid-template-columns:repeat(5,minmax(0,1fr))}
.cameraViews .viewBtn{font-size:8px;min-width:0}
.cameraViews .viewBtn:after{content:none!important}
.strainGradient,.legendGradient{background:linear-gradient(90deg,#b66b3c 0%,#d87936 30%,#eb5b32 58%,#f43b32 78%,#ff1828 100%)}
#relativeLegend{width:230px}
@media(max-width:620px){
  #viewToolbar{left:8px!important;right:8px!important;top:8px;width:auto;max-width:none}
  .cameraGrid,.cameraHint{display:none}
  .cameraViews{grid-template-columns:repeat(5,minmax(0,1fr))}
  .cameraModes .viewBtn,.cameraViews .viewBtn{min-width:44px;min-height:44px;font-size:7px}
  #hud{left:8px;right:8px;top:111px;max-width:none}
  #statusPills{display:flex!important;gap:4px;flex-wrap:wrap}
  #statusPills{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))}
  #statusPills .pill{min-width:0;padding:5px 7px;font-size:8px;overflow:hidden;white-space:nowrap}
  #statusPills .pill span,#statusPills .pill b{min-width:0;overflow:hidden;text-overflow:ellipsis}
  #assetStatus{left:8px;right:8px;top:auto;bottom:88px;max-width:none;font-size:9px}
  #assetStatus.loaded{left:0;right:auto;bottom:0;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  #relativeLegend{display:block!important;right:8px;bottom:142px;width:148px;padding:6px}
  #relativeLegend .legendTitle{font-size:7px}
  #relativeLegend .legendLabels{font-size:7px}
  #playBtn,.dockBtn,#speedBtn{min-width:44px;min-height:44px}
}
@container stage (max-width:560px){#viewToolbar{width:auto}.cameraViews{grid-template-columns:repeat(5,minmax(0,1fr))}#statusPills{display:flex!important}}

/* El lienzo central mantiene ocultos el HUD y la ficha flotante persistentes,
   pero conserva los overlays de feedback bajo demanda: aviso (toast), etiqueta
   al pasar el ratón sobre un nervio y capa de etiquetas anatómicas. */
#hud,#selectedCard{display:none!important}
/* [hidden] debe ocultar filas y presets aunque su display base sea grid,
   para que el buscador de la biblioteca filtre de verdad. */
.nerveRow[hidden],.preset[hidden]{display:none!important}
#viewport>#viewToolbar,#viewport>#motionDock,#viewport>#relativeLegend,#viewport>#assetStatus{display:none!important}
#inspector>#assetStatus{display:block!important;position:relative!important;inset:auto!important;width:auto;max-width:none;margin:8px 14px;padding:7px 9px;box-shadow:none}
#tab-summary>#motionDock{display:grid!important;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;grid-template-columns:auto minmax(0,1fr);margin:0 0 12px;padding:9px;background:var(--surface2);box-shadow:none}
#tab-summary>#relativeLegend{display:block!important;position:relative!important;inset:auto!important;width:100%!important;margin:0 0 12px;padding:8px;background:var(--surface2);box-shadow:none}
#tab-view>#viewToolbar{display:grid!important;position:relative!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;margin:0 0 12px;padding:0;filter:none;box-shadow:none}

/* 1.0.2 · controles funcionales, tacto y verificación cervicobraquial. */
html[data-theme="light"]{--faint:#4f6875}
#library .panelHead{display:block!important;top:0;padding:9px 12px;background:var(--glass)}
#library .panelHead .panelTitle{display:none}
#library .panelHead .searchWrap{margin:0}
#searchInput{min-height:44px;font-size:12px}
#clearSearch{width:36px;height:36px}
.cameraViews{grid-template-columns:repeat(6,minmax(0,1fr))}
.cameraViews .viewBtn[data-view="cervical"]{color:var(--accent);font-weight:760}
.cameraViews .viewBtn.on{border-color:var(--accent);color:#fff;background:rgba(15,70,88,.94)}
.notice,.viewHelp,.fact p,#testContext,#relatedNerves,.nerveMeta b,.presetText b{font-size:11px}
.fact span,.sectionHeading,.fieldLabel,.field>label,.metricCard span{font-size:9px}
.visibilityBtn,.relatedChip,#clearSearch{min-width:44px;min-height:44px}
#searchEmpty{margin:12px 0 0;padding:14px;border:1px dashed var(--line2);border-radius:10px;color:var(--muted);font-size:11px;line-height:1.45;text-align:center}
.cervicalCheck{margin:0 0 14px;padding:13px;border:1px solid rgba(80,217,238,.42);border-radius:13px;background:linear-gradient(145deg,rgba(80,217,238,.12),rgba(18,39,52,.58))}
.cervicalCheck[hidden]{display:none!important}
.cervicalCheckKicker{color:var(--accent);font-size:9px;font-weight:780;letter-spacing:.14em;text-transform:uppercase}
.cervicalCheck h3{margin:7px 0 6px;font-size:13px}
.cervicalCheck p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.rootBadges{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:11px 0}
.rootBadge{padding:7px 3px;border:1px solid var(--line2);border-radius:8px;background:var(--surface);color:var(--ink);font:10px var(--mono);text-align:center}
.cervicalFacts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}
.cervicalFact{padding:9px;border-radius:9px;background:var(--surface2)}
.cervicalFact span{display:block;color:var(--faint);font-size:8px;text-transform:uppercase;letter-spacing:.08em}
.cervicalFact b{display:block;margin-top:5px;font:10px var(--mono)}
#focusCervicalBtn{width:100%;min-height:44px}
body.noWebgl #error{inset:auto 12px 12px;display:flex;align-items:flex-end;justify-content:center;padding:0;background:transparent;pointer-events:none}
body.noWebgl .errorCard{max-width:620px;padding:14px 16px;pointer-events:auto;box-shadow:var(--shadow)}
body.noWebgl #retryBtn{display:none}
body.noWebgl #fallbackMap{opacity:1}
body.noWebgl #viewToolbar,body.noWebgl #motionDock,body.noWebgl #relativeLegend{display:none!important}

@media(max-width:1279px){
  #viewport>#viewToolbar{display:grid!important;position:absolute!important;left:10px!important;right:auto!important;top:10px!important;width:min(420px,calc(100% - 20px))!important;max-width:none!important;margin:0!important;z-index:12}
  #viewport>#motionDock{display:grid!important;position:absolute!important;left:50%!important;bottom:10px!important;transform:translateX(-50%)!important;width:min(620px,calc(100% - 20px))!important;margin:0!important;z-index:13}
  #viewport>#relativeLegend{display:none!important}
  .cameraViews .viewBtn{min-height:44px;font-size:8px}
}
@media(max-width:620px){
  .cameraViews{grid-template-columns:repeat(3,minmax(0,1fr))}
  #viewport>#motionDock{padding-bottom:max(9px,env(safe-area-inset-bottom))!important}
  #viewport>#viewToolbar{padding-top:env(safe-area-inset-top)}
  .rootBadges{gap:3px}.rootBadge{font-size:9px}
  .cervicalFacts{grid-template-columns:1fr}
}
@media print{
  #topbar,#library,.sidePanelTabs,#viewToolbar,#motionDock,#footerStatus,.actionRow,#inspectorTabs,#assetStatus,#relativeLegend{display:none!important}
  #appShell{display:grid!important;height:auto!important;grid-template-columns:62% 38%!important;grid-template-areas:"viewport controls"!important;background:#fff!important}
  #viewport{grid-area:viewport!important;height:650px!important}
  #inspector{grid-area:controls!important;display:block!important;overflow:visible!important;border:0!important;background:#fff!important}
  .tabPanel{display:block!important;break-inside:avoid}
}

/* Audited workspace refinement · September 2026 */
:root{--radius:16px;--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#topbar{background:var(--surface);border-bottom:1px solid var(--line);padding-inline:20px}
.brandMark{border-radius:12px;background:linear-gradient(145deg,#168b9b,#125566);color:#fff}
#inspector,#library{background:var(--bg2)}
#inspectorTabs{background:var(--bg2);gap:3px}
.tabBtn{font-size:11px;min-height:44px;padding:8px}
.tabBtn.on{background:var(--surface3);border-radius:9px;color:var(--accent)}
#inspector>#motionDock{display:grid!important;position:relative!important;inset:auto!important;transform:none!important;width:auto!important;margin:12px;grid-template-columns:44px minmax(0,1fr) auto auto;gap:8px;padding:10px;box-shadow:none;background:var(--surface2);border:1px solid var(--line2);border-radius:14px}
#motionDock #speedBtn,#motionDock #loopBtn{display:block!important;min-width:44px;min-height:44px;font-size:11px}
#motionDock #motionMain{min-width:0}.motionMeta{gap:8px;font-size:10px}#motionName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#inspector>#motionDock #motionMain{grid-column:2 / -1}#inspector>#motionDock #speedBtn{grid-column:2}#inspector>#motionDock #loopBtn{grid-column:3 / -1}
#playBtn{border-radius:12px;background:var(--accent);color:var(--bg);min-height:44px}
#timeline{height:6px;margin-block:14px}input[type="range"]{accent-color:var(--accent)}
.notice,.viewHelp,.fact p,#testContext,#relatedNerves{font-size:12px;line-height:1.6}
.fact span,.sectionHeading,.fieldLabel,.field>label,.metricCard span{font-size:10px}
.sliderTop label{font-size:12px}.sliderTop output{font:12px var(--mono);color:var(--accent);font-variant-numeric:tabular-nums}
.jointGroup{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-block:10px}
.nerveRow{border-radius:10px;margin-block:5px}.nerveSelect{padding-block:10px}
#searchInput{background:var(--surface);border-radius:11px}
#testSelect:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
#relativeLegend .legendTitle,#relativeLegend .strainLabels,#relativeLegend .legendLabels{color:var(--muted)}
#relativeLegend b,#relativeLegend strong{color:var(--ink)}
#motionPhase{white-space:nowrap}
#hotspotLabel{max-width:260px;pointer-events:none}#toast{max-width:calc(100% - 24px)}
.cameraViews .viewBtn{width:auto!important;min-height:44px;font-size:10px}
@media(min-width:1280px){#appShell{grid-template-columns:minmax(300px,24vw) minmax(480px,1fr) minmax(270px,22vw)}}
@media(max-width:620px){#motionDock{grid-template-columns:44px minmax(0,1fr) auto!important}#motionDock #loopBtn{grid-column:3}#motionDock #speedBtn{grid-column:1}#motionDock #motionMain{grid-column:2 / -1}.brandName{font-size:13px}#topbar{padding-inline:10px}}
@media print{#inspector>#motionDock{display:none!important}}
/* Scientific workspace: original styling inspired by shadcn/ui and Tremor. */
:root,html[data-theme="dark"]{--bg:#10171d;--bg2:#141e26;--surface:#17232c;--surface2:#1c2b35;--surface3:#233743;--glass:rgba(20,30,38,.96);--ink:#e8eef2;--muted:#abbcc6;--faint:#8da2b0;--line:#2a3b47;--line2:#3f5665;--accent:#6cc8bd;--accent2:#45998f;--focus:#84d6cc;--shadow:0 8px 30px #0002;--top:68px;--radius:10px;--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html[data-theme="light"]{--bg:#f5f7f8;--bg2:#f8fafb;--surface:#fff;--surface2:#f5f7f8;--surface3:#eaf3f1;--glass:rgba(255,255,255,.96);--ink:#202e38;--muted:#576874;--faint:#647580;--line:#e3e8eb;--line2:#c5d1d7;--accent:#237d72;--accent2:#368c80;--focus:#268779;--shadow:0 6px 25px #203b4510}
body{overflow:hidden;letter-spacing:-.01em}button,input,select{font-family:var(--sans)}button{transition:background .15s,border-color .15s,color .15s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
#appShell{grid-template-columns:252px minmax(400px,1fr) 330px;grid-template-rows:68px minmax(0,1fr);grid-template-areas:"top top top" "library viewport controls";height:100dvh;gap:0}
#topbar{height:68px;min-height:68px;padding:0 24px;grid-template-columns:252px minmax(0,1fr) auto;background:var(--surface);border-bottom:1px solid var(--line)}
.brandBlock{padding:0;border:0;gap:10px}.brandMark{height:33px;width:33px;border:0;border-radius:9px;background:var(--ink);box-shadow:none;color:var(--surface);font-size:11px}.brandName{font-size:17px;font-weight:650;letter-spacing:-.035em}.brandName small{font-size:9px;letter-spacing:.08em;font-weight:500;margin-top:6px}
#workspaceNav{display:flex!important;justify-content:flex-start;gap:24px;padding:0 28px;height:68px;font-size:12px;color:var(--muted)}#workspaceNav button,#workspaceNav span{height:68px;display:flex;align-items:center;padding:0 1px;white-space:nowrap}.scienceNavActive{color:var(--ink);border-bottom:2px solid var(--accent);font-weight:650}
.topActions{padding:0;gap:8px}.topAction{min-height:36px;border-radius:8px;font-size:11px}.topAction.iconOnly{width:36px;height:36px}#capturePngBtn{background:var(--ink);color:var(--surface);border-color:var(--ink)}
#library,#inspector{background:var(--surface);max-height:none;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}#library{grid-area:library;border-left:0;border-right:1px solid var(--line)}#inspector{grid-area:controls;border-right:0;border-left:1px solid var(--line)}
#quickTestPanel{padding:24px 18px 18px;background:var(--surface);border-bottom:1px solid var(--line)}#quickTestPanel label{font-size:10px;letter-spacing:.12em;color:var(--muted);margin-bottom:12px}#testSelect{min-height:46px;padding:8px 10px;border-radius:8px;font-size:12px;font-weight:550;background:var(--surface);line-height:1.5}.testAssociation{border:0;border-radius:0;padding:12px 0 0;margin:0;background:none}#primaryNerveBtn{min-height:32px;display:block}#primaryNerveBtn span{display:block;font-size:9px;letter-spacing:.07em;margin-bottom:5px}#primaryNerveBtn b{font-size:13px;font-weight:600}#testContext,#relatedNerves{font-size:11px;line-height:1.6}.relatedChip{border:0;background:var(--surface2);border-radius:6px;min-height:30px;padding:4px 8px;font-size:10px}#relatedNerveChips{gap:6px;margin-top:8px}
#library .panelHead{position:relative!important;padding:18px 16px 10px!important;background:var(--surface);border:0;backdrop-filter:none}#searchInput{border-radius:7px;font-size:11px;min-height:40px;background:var(--surface2);border:1px solid transparent;padding-left:11px}.searchWrap:before{display:none}#library .panelSection{padding:12px 12px 18px}.sectionHeading{font-size:10px;letter-spacing:.10em;margin-bottom:12px;color:var(--muted);font-weight:550}.sectionHeading span{font-weight:400;color:var(--faint)}
.nerveRow{border:1px solid transparent!important;border-radius:7px;background:transparent;margin:2px 0;box-shadow:none}.nerveRow.on,.nerveRow.selected{background:var(--surface3);border-color:var(--line)!important}.nerveSelect{padding:8px 7px!important;min-height:52px!important;gap:8px}.nerveMeta b{font-size:11px!important;font-weight:550}.nerveMeta small{font-size:9px}.nerveValue{font-size:10px}.visibilityBtn{min-width:32px!important;min-height:36px!important;width:32px;border:0!important;background:none!important}.nerveDot,.bigDot,.nerveTab i{box-shadow:none!important}
#ulntGuideBtn{font-size:11px;border-radius:8px;padding:9px;min-height:40px!important;margin-top:14px;background:var(--surface3);border:1px solid var(--line);color:var(--accent)}
#viewport{grid-area:viewport;min-width:0;min-height:0;height:auto;margin:0;isolation:isolate;background:var(--bg2);border:0;overflow:hidden}#scienceStageHead{position:absolute;z-index:10;inset:26px 26px auto;display:flex;align-items:center;justify-content:space-between;gap:15px;pointer-events:none}#scienceStageHead p{margin:0 0 9px;font-size:9px;letter-spacing:.15em;font-weight:550;color:var(--muted)}#scienceStageHead h2{margin:0;font-size:23px;font-weight:550;letter-spacing:-.04em}.scienceLive{display:flex;align-items:center;gap:7px;font:10px var(--mono);color:var(--muted);border:1px solid var(--line);background:var(--glass);padding:7px 9px;border-radius:6px}.scienceLive i{height:5px;width:5px;background:var(--accent);border-radius:50%}
#viewport>#viewToolbar{display:block!important;position:absolute!important;inset:100px auto auto 26px!important;width:auto!important;max-width:calc(100% - 52px)!important;padding:5px!important;margin:0!important;transform:none!important;filter:none!important;border:1px solid var(--line);border-radius:9px;background:var(--glass);box-shadow:none;z-index:12}.cameraViews{display:flex!important;gap:3px!important;flex-wrap:wrap}.cameraViews .viewBtn{min-width:44px!important;min-height:34px!important;font-size:10px!important;padding:5px 9px!important;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:500}.cameraViews .viewBtn.on{background:var(--surface3);color:var(--accent)}.cameraViews .viewBtn:hover{background:var(--surface2)}
#viewport>#motionDock{display:grid!important;position:absolute!important;inset:auto 26px 24px 26px!important;left:26px!important;bottom:24px!important;transform:none!important;width:auto!important;max-width:none!important;grid-template-columns:44px minmax(0,1fr) 46px 46px!important;align-items:center;gap:12px;padding:14px 16px!important;margin:0!important;border:1px solid var(--line);border-radius:12px;background:var(--glass);box-shadow:0 5px 25px #1b344a0b;backdrop-filter:blur(12px);z-index:13}#motionDock #playBtn{width:40px;height:40px;min-height:40px;min-width:40px;border-radius:9px;background:var(--ink);color:var(--surface);font-size:13px}#motionDock #motionMain{grid-column:2!important;min-width:0}#motionDock #speedBtn,#motionDock #loopBtn{grid-column:auto!important;display:block!important;min-height:38px;min-width:38px;border:1px solid var(--line);border-radius:7px;font-size:10px;background:var(--surface)}#motionDock #loopBtn:disabled{opacity:.28}.motionMeta{font-size:10px;color:var(--muted);gap:8px}#motionName{font-weight:550;color:var(--ink)}#motionPhase{font:10px var(--mono);color:var(--accent)}#ulntCurrentStep{font-size:10px;line-height:1.6;margin-top:3px;min-height:16px;color:var(--muted)}#ulntCurrentStep[hidden]{display:none}#timeline{margin:9px 0 2px;height:4px}#timeline::-webkit-slider-thumb{width:12px;height:12px}#timeline::-moz-range-thumb{width:12px;height:12px;border:2px solid var(--surface)}
.inspectorSummary{padding:22px 20px 18px;min-height:85px;border-bottom:1px solid var(--line)}.selectedIdentity h2{font-size:15px;font-weight:600;letter-spacing:-.02em}.selectedIdentity p{font-size:10px;margin-top:5px}.bigDot{width:8px;height:8px}#backToPrimaryBtn{font-size:9px;max-width:90px;white-space:normal}#inspectorTabs{position:relative;top:auto;padding:0 16px;gap:14px;background:var(--surface);border-bottom:1px solid var(--line);overflow:auto;scrollbar-width:none;justify-content:flex-start}.tabBtn{padding:12px 0!important;border-radius:0!important;font-size:11px;min-height:44px;white-space:nowrap;font-weight:500;flex-shrink:0}.tabBtn.on{background:none;border-bottom:2px solid var(--accent);color:var(--ink)}.tabPanel{padding:18px 20px}.metricGrid{gap:10px;margin-top:18px}.metricCard{padding:12px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:none}.metricCard span{font-size:9px;letter-spacing:.02em;text-transform:none}.metricCard b{font-size:21px!important;line-height:1.25;letter-spacing:-.035em;font-weight:550;font-variant-numeric:tabular-nums}.metricCard small{font-size:9px;line-height:1.5;margin-top:5px;color:var(--faint)}.field>label,.fieldLabel{font-size:10px;font-weight:500;text-transform:none;letter-spacing:0}.control{background:var(--surface);border:1px solid var(--line);border-radius:7px;min-height:36px;font-size:11px}.chartCard{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:14px 12px;margin-top:16px;box-shadow:none}.chartHead{gap:8px;align-items:start;flex-wrap:wrap}.chartHead b{font-size:11px;font-weight:550}.chartHead span{font-size:9px}.scienceDisclosure{margin:14px 0;color:var(--muted);font-size:10px;line-height:1.7}.scienceDisclosure summary{cursor:pointer;min-height:26px}.scienceDisclosure .notice{border:0;background:var(--surface2);padding:10px;margin:8px 0;font-size:11px;line-height:1.7}.notice{font-size:11px;line-height:1.7;box-shadow:none;background:var(--surface2);border:1px solid var(--line)}
#tab-summary>#relativeLegend{margin:0!important;padding:10px 11px!important;border:1px solid var(--line);border-radius:8px;background:var(--surface2)!important;backdrop-filter:none}.strainGradient{height:5px}.strainLabels,.legendLabels{font-size:9px!important}#strainMarker{width:2px;height:12px}.legendTitle{font-size:9px!important;letter-spacing:.06em;font-weight:500}#strainLive{font-size:9px;margin-top:8px;color:var(--muted)}
#tab-motion{padding:20px;border-top:1px solid var(--line)}#tab-motion>.notice{display:none}#tab-motion>#focusHandBtn{font-size:11px;min-height:38px;border-radius:7px;width:100%}.jointGroup{padding:10px 12px;margin:8px 0;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:none}.jointGroup summary{font-size:11px;font-weight:550;cursor:pointer;min-height:26px;padding:4px 0;color:var(--ink)}.jointGroup[open] summary{margin-bottom:12px}.sliderTop label{font-size:11px;font-weight:400}.sliderTop output{font-size:10px}.sliderBlock{margin:12px 0}.actionBtn{border-radius:7px;font-size:10px;min-height:36px}.actionBtn:hover{background:var(--surface2)}.actionRow{gap:6px;flex-wrap:wrap}.actionRow .actionBtn{flex:1 1 85px}.rangeTop{font-size:11px}.toggleGrid{gap:8px}.toggle{border:1px solid var(--line);border-radius:7px;font-size:11px}.layerPreset{font-size:10px;border-radius:6px}.fact span{font-size:10px}.fact p{font-size:12px;line-height:1.7}.cervicalCheck{background:var(--surface2);border:1px solid var(--line);border-radius:8px}.cervicalFacts{gap:6px}.cervicalFact{background:var(--surface)}
#inspector>#assetStatus{margin:0 20px 18px!important;padding:10px 0!important;font-size:9px!important;border:0;background:none;color:var(--faint);line-height:1.6}#nerveTabs{gap:6px}.nerveTab{min-height:44px;border-radius:7px;background:var(--surface);font-size:10px}.nerveTab.on{background:var(--surface3);border-color:var(--line2)}
@media(min-width:1600px){#appShell{grid-template-columns:270px minmax(500px,1fr) 350px}#scienceStageHead{inset:30px 34px auto}#viewport>#viewToolbar{left:34px!important}}
@media(max-width:1279px){body{overflow:auto}#appShell{height:auto;min-height:100dvh;grid-template-columns:230px minmax(0,1fr);grid-template-rows:68px minmax(620px,78dvh) auto;grid-template-areas:"top top" "library viewport" "controls controls"}#topbar{grid-template-columns:230px minmax(0,1fr) auto;padding:0 18px}#workspaceNav{padding:0 18px;gap:20px}.topAction:not(.iconOnly){display:block}#library{max-height:78dvh}#viewport{height:78dvh;min-height:620px}#inspector{overflow:visible;border-top:1px solid var(--line);border-left:0;max-height:none;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.inspectorSummary{grid-column:1/-1}#inspectorTabs{grid-column:1}#inspector>.tabPanel{grid-column:1}#tab-motion{grid-column:2;grid-row:2 / span 6;border-left:1px solid var(--line);border-top:0}#inspector>#assetStatus{grid-column:1}.scienceLive{display:none}#scienceStageHead h2{font-size:21px}.cameraViews .viewBtn{font-size:9px!important;padding:5px 7px!important}}
@media(max-width:899px){#appShell{grid-template-columns:1fr;grid-template-rows:64px minmax(580px,75dvh) auto auto;grid-template-areas:"top" "viewport" "library" "controls"}#topbar{height:64px;min-height:64px;grid-template-columns:1fr auto;padding:0 18px}#workspaceNav{display:none!important}#library{max-height:none;border:0;border-top:1px solid var(--line);display:grid!important;grid-template-columns:1fr 1fr}#quickTestPanel{grid-column:1;grid-row:1 / span 2;border-bottom:0}#library .panelHead{grid-column:2;grid-row:1;padding-top:24px!important}#library .panelSection:not(.teachingOnly):not(.presetLibrary){grid-column:2;grid-row:2;padding-top:12px}#viewport{height:75dvh;min-height:580px}#inspector{display:block!important}.tabPanel{padding:18px 20px}#tab-motion{border-left:0;border-top:1px solid var(--line)}#scienceStageHead{inset:22px 22px auto}#viewport>#viewToolbar{left:22px!important;top:92px!important;max-width:calc(100% - 44px)!important}#viewport>#motionDock{inset:auto 18px 18px!important;left:18px!important;bottom:18px!important}}
@media(max-width:540px){.brandName{font-size:16px}.brandName small{font-size:8px}.topActions{gap:5px}.topAction:not(.iconOnly){display:none}#topbar{padding:0 14px}#appShell{grid-template-rows:64px minmax(560px,76dvh) auto auto}#viewport{height:76dvh;min-height:560px}#scienceStageHead{inset:20px 16px auto}#scienceStageHead h2{font-size:21px}#viewport>#viewToolbar{left:16px!important;right:16px!important;width:auto!important;max-width:none!important;top:89px!important}.cameraViews{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2px!important}.cameraViews .viewBtn{min-height:32px!important;font-size:9px!important}#viewport>#motionDock{inset:auto 12px 12px!important;left:12px!important;bottom:12px!important;padding:12px!important;grid-template-columns:38px minmax(0,1fr) 40px!important;gap:8px}#motionDock #loopBtn{display:none!important}#motionDock #playBtn{width:36px;min-width:36px;height:38px;min-height:38px}#motionDock #motionName{font-size:9px}.motionMeta{font-size:9px}#ulntCurrentStep{font-size:9px;line-height:1.4}#library{display:block!important}#quickTestPanel{padding:22px 18px;border-bottom:1px solid var(--line)}#library .panelHead{padding-top:18px!important}#library .panelSection:not(.teachingOnly):not(.presetLibrary){padding:12px 12px 20px}#library .nerveSelect{min-height:48px!important}.nerveMeta b{font-size:12px!important}.metricCard b{font-size:23px!important}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
@media print{#scienceStageHead{position:relative;inset:auto;padding:12px}.scienceLive{display:none}#workspaceNav{display:none!important}}


.forearmRomEnds{display:flex;justify-content:space-between;gap:6px;font-size:9px;color:var(--muted);margin-top:5px}#jointOut_forearmPron{white-space:nowrap;font-size:10px}.forearmRomRow .sliderTop{flex-wrap:wrap;gap:5px}

#viewport canvas.webgl{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

#ulntGuideBtn{width:100%;margin-block:10px;min-height:44px}#ulntCurrentStep{font-size:11px;line-height:1.4;color:var(--accent);min-height:1.4em;white-space:normal}#loopBtn:disabled{opacity:.45;cursor:default}
#ulntGuide{padding:0;width:min(1160px,96vw);max-width:96vw;max-height:92vh;border:1px solid #dbe3e8;border-radius:20px;background:#f5f7f9;color:#243445;box-shadow:0 24px 90px #0007;font-family:var(--sans)}#ulntGuide::backdrop{background:#081421b8;backdrop-filter:blur(5px)}.ulntGuideTop{display:flex;align-items:start;gap:20px;justify-content:space-between;padding:26px 30px;background:white;border-bottom:1px solid #dbe3e8;position:sticky;top:0;z-index:2}.ulntEyebrow{font-size:11px;letter-spacing:.15em;color:#187080;font-weight:750;margin:0 0 10px}.ulntGuideTop h2{font-size:26px;letter-spacing:-.025em;margin:0 0 8px}.ulntGuideTop p:last-child{font-size:14px;color:#64748b;margin:0}.ulntGuideTop button,.ulntLessonTitle button{background:white;color:#16677a;border:1px solid #c8d9df;border-radius:10px;padding:10px 14px;min-height:44px;cursor:pointer;font-size:12px;flex-shrink:0}.ulntGuideContent{padding:20px 30px 30px}.ulntIntro{font-size:14px;line-height:1.6;max-width:850px;margin:0 0 24px}.ulntLesson{background:#fff;border:1px solid #dbe3e8;border-radius:16px;padding:20px;margin-bottom:24px;overflow:hidden}.ulntLessonTitle{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.ulntLesson h3{margin:0;font-size:18px;color:var(--ulnt-color);letter-spacing:.04em}.ulntPair{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);gap:10px}.ulntPair figure{margin:0;min-width:0}.ulntPair h4{font-size:11px;letter-spacing:.13em;margin:0 0 10px;color:#475569}.ulntVisual{position:relative;border-radius:12px;overflow:hidden;background:#f0f3f5}.ulntVisual img{display:block;width:100%;height:auto}.ulntArrows{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 1px 2px #fff)}.ulntPair figcaption{font-size:13px;line-height:1.65;padding:14px 2px 0}.ulntBetween{align-self:center;font-size:26px;color:#8c9aa9}.ulntSequence{margin:18px 0 0;padding:14px 16px;border-radius:10px;background:#f2f6f8;font-size:12px;line-height:1.8}.ulntSequence strong{display:block;color:#253f51}.ulntReference{color:#607081;font-size:12px;line-height:1.7}.ulntReference a{color:#16677a}#ulntGuide button:focus-visible{outline:3px solid #18a6b5;outline-offset:3px}@media(max-width:640px){#ulntGuide{max-height:96vh;border-radius:14px}.ulntGuideTop{padding:18px 14px;gap:8px}.ulntGuideTop h2{font-size:20px}.ulntGuideTop button{padding:8px;font-size:11px}.ulntGuideContent{padding:16px 12px}.ulntLesson{padding:14px}.ulntLessonTitle{display:block}.ulntLessonTitle button{margin-top:12px}.ulntPair{grid-template-columns:1fr;gap:12px}.ulntBetween{text-align:center;transform:rotate(90deg)}.ulntPair figcaption{padding-top:10px}}

#lowerGuide{padding:0;width:min(1160px,96vw);max-width:96vw;max-height:92vh;border:1px solid #dbe3e8;border-radius:20px;background:#f5f7f9;color:#243445;box-shadow:0 24px 90px #0007;font-family:var(--sans)}#lowerGuide::backdrop{background:#081421b8;backdrop-filter:blur(5px)}#lowerGuide button:focus-visible{outline:3px solid #237d72;outline-offset:3px}#lowerGuideBtn{width:100%;font-size:11px;border-radius:8px;padding:9px;min-height:40px;margin-top:8px;background:var(--surface3);border:1px solid var(--line);color:var(--accent)}.lowerGuideIndex{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.lowerGuideIndex button{padding:8px 10px;min-height:40px;border:1px solid #dbe3e8;border-radius:8px;background:white;color:#24595b;font-size:11px}#lowerGuide .ulntLesson{scroll-margin-top:145px}@media(max-width:640px){#lowerGuide{max-height:96vh;border-radius:14px}#lowerGuide .ulntLesson{scroll-margin-top:160px}}
/* Quiet monochrome chrome; anatomical colours retain their meaning. */
:root,html[data-theme="light"]{--bg:#fff;--bg2:#fff;--surface:#fff;--surface2:#f4f4f4;--surface3:#ededed;--ink:#000;--muted:#525252;--faint:#737373;--line:#e5e5e5;--line2:#b8b8b8;--accent:#000;--glass:#fffffff5;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--mono:var(--sans);--shadow:none}
html[data-theme="dark"]{--bg:#000;--bg2:#000;--surface:#000;--surface2:#181818;--surface3:#242424;--ink:#fff;--muted:#b9b9b9;--faint:#989898;--line:#292929;--line2:#555;--accent:#fff;--glass:#000000f5;color-scheme:dark}
html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--ink)}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
#homeView{display:none}html[data-page="home"] #homeView{display:block}html[data-page="home"] body{height:auto;overflow:auto!important}html[data-page="home"] #appShell{position:fixed;left:-200vw;top:0;width:100vw;visibility:hidden;pointer-events:none}html[data-page="atlas"] #homeView{display:none}
.homeHeader,.homeMain,.homeFooter{max-width:1320px;margin:auto;padding-inline:48px}.homeHeader{height:112px;display:flex;align-items:center;justify-content:space-between;gap:28px}.homeBrand{font-size:24px;font-weight:650;letter-spacing:-1.1px;text-decoration:none;color:var(--ink);white-space:nowrap}.homeBrand span{font-size:13px;font-weight:400;letter-spacing:0;margin-left:9px;color:var(--muted)}.homeHeader nav{display:flex;align-items:center;gap:30px;font-size:14px}.homeHeader a,.homeFooter a{color:var(--ink);text-decoration:none}.homeHeader button,.homeFooter button{font:inherit;color:var(--ink)}.homeButton{display:inline-flex;align-items:center;justify-content:center;background:var(--ink)!important;color:var(--bg)!important;border:1px solid var(--ink);border-radius:7px;min-height:52px;padding:14px 24px;font:500 15px var(--sans);cursor:pointer}.homeButton.compact{min-height:42px;padding:10px 18px;font-size:13px}.homeButton:disabled{opacity:.45;cursor:wait}.homeHero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:34px;min-height:650px;padding:52px 0 80px}.homeIntro h1{font-size:clamp(42px,5.2vw,72px);font-weight:450;letter-spacing:-.055em;line-height:1.05;margin:0 0 28px}.homeIntro>p{max-width:400px;font-size:17px;line-height:1.65;color:var(--muted);margin:0}.homeActions{display:flex;align-items:center;gap:26px;margin-top:34px}.homeActions a{color:var(--ink);font-size:14px;text-underline-offset:5px}.homeIntro #homeLoadState{font-size:12px;margin-top:18px;color:var(--faint)}.homeAnatomy{margin:0;min-width:0}.homeAnatomy img{display:block;width:100%;height:auto}.homeAnatomy .heroDark{display:none}html[data-theme="dark"] .homeAnatomy .heroLight{display:none}html[data-theme="dark"] .homeAnatomy .heroDark{display:block}.homeAnatomy figcaption{display:flex;align-items:center;gap:12px;font-size:13px;padding:18px 0;border-top:1px solid var(--line);font-weight:550}.homeAnatomy figcaption span{color:var(--muted);font-weight:400}.homeAnatomy figcaption button{margin-left:auto;text-decoration:underline;text-underline-offset:4px;font-size:12px;color:var(--ink)}.homeTests{padding:70px 0 85px;border-top:1px solid var(--line);scroll-margin-top:24px}.homeSectionIntro{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-bottom:54px}.homeSectionIntro h2,.homeDetails h2{font-size:36px;font-weight:450;letter-spacing:-.04em;line-height:1.18;margin:0}.homeSectionIntro p,.homeDetails p{font-size:16px;line-height:1.65;color:var(--muted);max-width:470px;margin:0}.homeProtocolGroups{display:grid;grid-template-columns:1fr 1fr;gap:80px}.homeProtocolGroups h3{font-size:15px;font-weight:550;margin:0 0 22px}.homeTestRows button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;text-align:left;min-height:60px;border-top:1px solid var(--line);color:var(--ink);font:14px var(--sans);cursor:pointer}.homeTestRows button:hover b{text-decoration:underline;text-underline-offset:4px}.homeTestRows b{font-weight:450}.homeTestRows span{color:var(--faint);font-size:12px}.homeDetails{padding:70px 0 84px;max-width:760px}.homeDetails p{margin:24px 0 28px}.homeFooter{border-top:1px solid var(--line);min-height:140px;display:flex;align-items:center;gap:36px}.homeFooter p{margin:0;color:var(--faint);font-size:13px}.homeFooter button{margin-left:auto;font-size:13px}
#topbar,#library,#inspector,#viewport{background:var(--bg)!important}#topbar{box-shadow:none!important}.brandMark{display:none}.brandName{font-size:18px;letter-spacing:-.6px}.brandName small{display:none}#workspaceNav{gap:23px;font-size:12px}.scienceNavActive{border-bottom-color:var(--ink)}#workspaceHomeBtn{color:var(--muted)}#themeBtn{width:auto;min-width:55px;font-size:11px}.scienceLive,#scienceStageHead .scienceEyebrow{display:none!important}#scienceStageHead h2{font-size:23px;font-weight:500}.sectionHeading,.fieldLabel,.eyebrow,.panelTitle,.legendTitle{text-transform:none!important;letter-spacing:0!important}#viewport>#motionDock{box-shadow:none;backdrop-filter:none;border-radius:8px}.cameraModes,.cameraGrid{display:none!important}#viewport>#viewToolbar{background:var(--surface)!important;border:1px solid var(--line);border-radius:7px;box-shadow:none;backdrop-filter:none}.cameraViews .viewBtn{border-radius:4px!important}.cameraViews .viewBtn.on{background:var(--surface3)!important;color:var(--ink)!important}.metricGrid{gap:0}.metricCard{border:0!important;border-radius:0!important;border-bottom:1px solid var(--line)!important;padding:18px 8px 18px 0!important}.metricCard b{font-size:25px!important}.chartCard{border:0;border-top:1px solid var(--line);border-radius:0;padding:20px 0;box-shadow:none}.nerveMeta span,.nerveMeasure span{display:none}.nerveSelect{grid-template-columns:8px 1fr auto}.nerveMeasure{min-width:35px}.nerveRow{grid-template-columns:minmax(0,1fr) 32px!important}.nerveRow.on,.nerveSelect.on{background:var(--surface2)!important}.visibilityBtn{width:20px!important;height:20px;min-width:20px!important;min-height:20px!important;border:1px solid var(--line2)!important;border-radius:4px!important;justify-self:center;color:var(--ink)}.visibilityBtn.isChecked{background:var(--ink)!important;color:var(--bg);border-color:var(--ink)!important}.visibilityBtn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}.visibilityBtn.off{opacity:1;text-decoration:none}.actionBtn{box-shadow:none}.brandBlock{cursor:pointer}.scienceDisclosure{font-size:11px}#inspectorNerves{padding:16px 20px;border-bottom:1px solid var(--line);grid-column:1/-1}#inspectorNerves summary{font-size:12px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:24px}#inspectorNerves summary:after{content:'−';margin-left:12px}#inspectorNerves:not([open]) summary:after{content:'+'}#neuralVisibleCount{margin-left:auto;color:var(--faint);font-size:11px}.neuralBulk{display:flex;gap:16px;margin:10px 0 12px}.neuralBulk button{font-size:10px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;min-height:28px}.neuralChecks{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;max-height:162px;overflow:auto;padding-bottom:3px}.neuralChecks label{display:flex;gap:7px;align-items:center;min-height:25px;font-size:11px;color:var(--muted);cursor:pointer}.neuralChecks input{accent-color:var(--ink);width:15px;height:15px;flex-shrink:0}.profileRemoved{display:none!important}#quickTestPanel .relatedChip{min-height:28px!important;padding:5px 8px;font-size:10px}#quickTestPanel .fieldLabel{font-size:12px}.homeButton:hover{opacity:.85}
@media(min-width:1280px){#appShell{grid-template-columns:250px minmax(420px,1fr) 320px}#topbar{grid-template-columns:230px minmax(0,1fr) auto}#inspector{overflow:auto}#viewport{min-width:0}}
@media(max-width:900px){.homeHeader,.homeMain,.homeFooter{padding-inline:26px}.homeHeader{height:88px}.homeHeader nav{gap:18px}.homeHeader nav>a,.homeHeader nav>button[data-open-methods]{display:none}.homeHero{gap:10px;padding:40px 0 60px;min-height:0}.homeIntro h1{font-size:46px}.homeSectionIntro,.homeProtocolGroups{gap:35px}.homeFooter{flex-wrap:wrap;gap:18px;padding-block:30px}.homeFooter button{margin-left:0}.homeSectionIntro h2,.homeDetails h2{font-size:30px}}
@media(max-width:600px){.homeHeader,.homeMain,.homeFooter{padding-inline:20px}.homeBrand{font-size:20px}.homeBrand span{font-size:11px;margin-left:6px}.homeHeader nav{gap:12px}.homeHeader #homeTheme{font-size:11px}.homeHeader .compact{display:none}.homeHero{grid-template-columns:1fr;padding-top:25px;gap:24px}.homeIntro h1{font-size:50px;line-height:1.08;letter-spacing:-.05em}.homeIntro>p{font-size:16px}.homeActions{gap:20px}.homeButton{padding-inline:18px;font-size:14px}.homeAnatomy{margin:0 -10px}.homeAnatomy figcaption{margin-inline:10px}.homeTests{padding-block:44px}.homeSectionIntro,.homeProtocolGroups{grid-template-columns:1fr;gap:30px}.homeSectionIntro{margin-bottom:36px}.homeSectionIntro h2,.homeDetails h2{font-size:29px}.homeDetails{padding-block:44px}.homeFooter{align-items:flex-start;flex-direction:column}.neuralChecks{grid-template-columns:1fr 1fr}#scienceStageHead h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

#selectedNerveToggle{margin-left:auto;white-space:nowrap;min-height:30px;padding:5px 8px;font-size:10px}.inspectorSummary{flex-wrap:wrap;gap:10px}#scienceStageHead>div:first-child>span,#scienceStageHead .scienceKicker{display:none!important}#quickTestPanel label{text-transform:none!important;letter-spacing:0!important;font-weight:500!important}.visibilityBtn{transition:none!important}#library .nerveRow{min-height:50px!important;margin-block:0!important}#library .nerveSelect{min-height:50px!important}.homeTestRows button:focus-visible{outline-offset:0}

#scienceStageHead p{display:none!important}

#centralTension{position:absolute;left:28px;right:28px;bottom:108px;height:158px;border-top:1px solid var(--line);background:var(--bg);z-index:8;padding-top:13px;box-sizing:border-box}#centralTension .chartHead{display:flex;align-items:center;justify-content:space-between;margin:0 0 5px;font-size:12px}#centralTension .chartHead b{font-weight:500}#centralTension .chartHead span{color:var(--muted);font-size:11px}#responseChart{display:block;width:100%;height:110px!important}#centralTension .tensionNote{position:absolute;right:0;bottom:0;font-size:10px;color:var(--faint)}#sequenceArmBtn{padding:8px 10px;color:var(--ink);font-size:11px;border-left:1px solid var(--line);margin-left:4px}#sequenceZoomStatus{margin-left:auto;font-size:11px;color:var(--muted);white-space:nowrap}#scienceStageHead{gap:20px}#viewport>#motionDock{bottom:14px!important}.sequenceColorKey{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}.sequenceColorKey i{width:75px;height:3px;background:linear-gradient(90deg,#f3c653,#ed843b,#dc302f)}@media(max-width:600px){#centralTension{left:16px;right:16px;height:144px}#centralTension .chartHead{font-size:11px}#sequenceZoomStatus{font-size:10px}.tensionNote{display:none}}
#viewport>#viewToolbar{display:flex!important;align-items:center;box-shadow:none!important;background:var(--bg)!important}.cameraViews .viewBtn{box-shadow:none!important}.cameraViews{flex-wrap:nowrap!important}#sequenceArmBtn{white-space:nowrap}#centralTension .chartHead b{font-size:12px!important}#centralTension .chartHead span{font-size:11px!important}#sequenceArmBtn:hover{background:var(--surface2)}@media(max-width:600px){#viewport>#viewToolbar{display:block!important}.cameraViews{display:grid!important}#sequenceArmBtn{position:absolute;right:6px;top:6px}.cameraViews [data-view="cervical"]{visibility:hidden}}
@media(max-width:600px){#sequenceArmBtn{position:static;margin:0;border:0;font-size:10px}.cameraViews [data-view="cervical"]{display:none!important}}

#sequenceArmBtn[hidden]{display:none!important}

#compressionGuide,#compressionImageDialog{padding:0;border:1px solid var(--line,#dedede);border-radius:12px;background:var(--panel,#fff);color:var(--text,#171717);box-shadow:0 20px 80px #0003;width:min(1120px,94vw);max-width:94vw;max-height:92vh;margin:auto}
#compressionGuide::backdrop,#compressionImageDialog::backdrop{background:#0008;backdrop-filter:blur(3px)}
#compressionGuide[open],#compressionImageDialog[open]{display:flex;flex-direction:column}
.compressionHead{display:flex;align-items:center;gap:20px;padding:22px 26px;border-bottom:1px solid var(--line,#dedede);flex-shrink:0}
.compressionHead h2{margin:0;font-size:23px;letter-spacing:-.6px;line-height:1.2}.compressionHead p{font-size:12px;color:var(--muted,#737373);margin:7px 0 0}.compressionHead label{margin-left:auto;font-size:11px;display:grid;gap:5px;min-width:200px}.compressionHead select{font:inherit;font-size:13px;border:1px solid var(--line,#dedede);background:var(--panel,#fff);color:inherit;padding:10px;border-radius:6px;width:100%}.compressionClose{width:42px;height:42px;flex-shrink:0;background:none;border:1px solid var(--line,#dedede);border-radius:6px;color:inherit;font-size:22px;cursor:pointer}
#compressionContent{overflow:auto;padding:26px;overscroll-behavior:contain}.compressionIntro{font-size:13px;line-height:1.6;color:var(--muted,#737373);margin:0 0 26px;max-width:80ch}.compressionSite{padding:0 0 32px;margin-bottom:32px;border-bottom:1px solid var(--line,#dedede)}.compressionSite:last-child{border-bottom:0;margin-bottom:0}.compressionSite h3{font-size:21px;letter-spacing:-.5px;margin:0 0 14px}.compressionSite figure{margin:0}.compressionSite img{width:100%;height:auto;display:block;border-radius:6px;background:#25282c}.compressionSite figcaption{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:11px;color:var(--muted,#737373);padding:10px 0}.compressionSite button,.compressionImageActions button,.compressionImageActions a{font:inherit;font-size:12px;padding:9px 12px;border:1px solid var(--line,#dedede);border-radius:5px;background:var(--panel,#fff);color:inherit;cursor:pointer;text-decoration:none}.compressionSite .compressionExplanation{font-size:15px;line-height:1.65;margin:16px 0 12px;max-width:90ch}.compressionEvidence{font-size:11px;color:var(--muted,#737373);margin:0 0 10px}.compressionNote{font-size:12px;line-height:1.6;color:var(--muted,#737373);border-left:2px solid var(--line,#bbb);padding-left:12px}.compressionSources{display:flex;flex-wrap:wrap;gap:8px 20px;margin:12px 0}.compressionSources a{font-size:12px;color:inherit;text-decoration:underline;text-underline-offset:3px}.compressionSources a:focus-visible, .compressionSite button:focus-visible,.compressionClose:focus-visible{outline:2px solid currentColor;outline-offset:3px}.compressionAttribution{font-size:11px;line-height:1.6;color:var(--muted,#737373);margin:0}.compressionInspector{padding:16px 0;border-bottom:1px solid var(--line,#ddd);margin-bottom:16px}.compressionInspector p{font-size:12px;line-height:1.6;color:var(--muted,#737373)}
.compressionImageActions{display:flex;gap:8px;align-items:center;margin-left:auto}.compressionImageScroll{overflow:auto;overscroll-behavior:contain}.compressionImageScroll img{display:block;width:100%;height:auto;max-width:1200px;margin:auto}.compressionImageScroll.realSize img{width:1200px;max-width:none}.compressionHead .compressionImageTitle{font-size:17px}.compressionImageScroll{background:#25282c}
[data-theme="dark"] #compressionGuide,[data-theme="dark"] #compressionImageDialog{background:#101010;color:#eee;border-color:#333}[data-theme="dark"] .compressionHead select,[data-theme="dark"] .compressionSite button,[data-theme="dark"] .compressionImageActions button,[data-theme="dark"] .compressionImageActions a{background:#151515;color:#eee;border-color:#383838}
@media(max-width:640px){#compressionGuide,#compressionImageDialog{max-width:96vw;width:96vw;max-height:94vh;border-radius:8px}.compressionHead{padding:16px;gap:10px;flex-wrap:wrap}.compressionHead h2{font-size:19px;max-width:250px}.compressionHead label{order:3;width:100%;margin-left:0}.compressionClose{margin-left:auto;width:38px;height:38px}.compressionHead p{font-size:11px}#compressionContent{padding:16px}.compressionIntro{font-size:12px}.compressionSite h3{font-size:18px}.compressionSite .compressionExplanation{font-size:14px}.compressionSite figcaption{align-items:flex-start}.compressionSite figcaption span{max-width:54%}.compressionSources{display:grid;gap:12px}.compressionImageActions{order:3;width:100%;margin-left:0}.compressionHead .compressionImageTitle{max-width:75%;font-size:15px}}
/* The dashboard's global button theme must not override modal controls. */
[data-theme="dark"] #compressionGuide .compressionClose,[data-theme="dark"] #compressionImageDialog .compressionClose,[data-theme="dark"] #compressionGuide [data-compression-expand],[data-theme="dark"] #compressionImageDialog .compressionImageActions button,[data-theme="dark"] #compressionImageDialog .compressionImageActions a{color:#eee!important;background:#151515!important;border-color:#383838!important}
#compressionGuide button,#compressionImageDialog button{transition:none!important}


#speedBtn,#loopBtn{display:inline-flex!important;align-items:center;justify-content:center}#motionDock #speedBtn,#motionDock #loopBtn{color:var(--ink)!important;background:var(--bg)!important;opacity:1}#motionDock #loopBtn.on{background:var(--ink)!important;color:var(--bg)!important}
#fluidMotionStatus{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;border:0;border-radius:0;background:#080f17a8;backdrop-filter:blur(3px);color:#e8f3f1;pointer-events:none;box-sizing:border-box}
#fluidMotionStatus[hidden],html:not([data-page=atlas]) #fluidMotionStatus{display:none!important}
.fluidLoadingContent{position:relative;width:180px;height:180px}
.fluidLoadingContent svg{display:block;width:100%;height:100%;overflow:visible;fill:none;stroke-width:4}
.fluidLoadingTrack{stroke:#48647170}
.fluidLoadingArc{stroke:#73c8ba;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform:rotate(-90deg);transform-origin:60px 60px;transition:stroke-dashoffset .16s linear}
#fluidMotionPercent{position:absolute;inset:0;display:grid;place-items:center;font:500 32px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-1px;color:#d6f5ed}
.fluidLoadingLabel{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);width:260px;text-align:center;font:500 13px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#c6d7df}
@media(max-width:600px){.fluidLoadingContent{width:150px;height:150px}#fluidMotionPercent{font-size:28px}}
@media(prefers-reduced-motion:reduce){.fluidLoadingArc{transition:none}}

/* The only live tension plot sits beside the anatomy, never above it. */
#legacyTensionTelemetry,#legacyTensionTelemetry[hidden]{display:none!important}
#tab-summary>#inspectorTension{position:relative;inset:auto;width:100%;height:auto;min-width:0;margin:0;padding:0;border:0;background:var(--bg);box-shadow:none}
#inspectorTension .chartHead{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 0 14px}
#inspectorTension .chartHead b{font-size:14px!important;font-weight:500;line-height:1.4}
#inspectorTension .chartHead span{font-size:12px!important;color:var(--muted);font-variant-numeric:tabular-nums}
#inspectorTension .tensionAxisLabel{margin:0 0 8px;font-size:10px;color:var(--muted);line-height:1.4}
#inspectorTension #responseChart{display:block;width:100%;height:176px!important}
#inspectorTension .tensionNote{display:block;position:static;margin:12px 0 0;font-size:11px;line-height:1.6;color:var(--muted);max-width:48ch}
#inspectorTension .scienceDisclosure{margin:16px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:11px}
#inspectorTension .scienceDisclosure summary{min-height:32px}
#tab-summary>.tensionGeometry{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.tensionGeometry>summary{cursor:pointer;min-height:32px;color:var(--ink)}
.tensionGeometry .metricGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 18px}
.tensionGeometry .metricCard{min-width:0}
.tensionGeometry .metricCard b{font-size:20px!important}
@media(max-width:600px){#inspectorTension #responseChart{height:184px!important}#inspectorTension .chartHead b{font-size:15px!important}#inspectorTension .tensionNote{font-size:12px}.tensionGeometry>summary{min-height:36px}}
/* Keep loop and speed controls available on narrow screens as well. */
#viewport>#motionDock #loopBtn{display:inline-flex!important;align-items:center;justify-content:center}
@media(max-width:540px){#viewport>#motionDock{grid-template-columns:38px minmax(0,1fr) 40px 46px!important}#viewport>#motionDock #speedBtn,#viewport>#motionDock #loopBtn{font-size:10px;min-width:0;padding-inline:4px}}

#knowledgeView{display:none}html[data-page="library"] #knowledgeView{display:block}html[data-page="library"] body{height:auto;overflow:auto!important;background:var(--surface3)}html[data-page="library"] #homeView{display:none}html[data-page="library"] #appShell{position:fixed;left:-200vw;top:0;width:100vw;visibility:hidden;pointer-events:none}
.knowledgeHeader,.knowledgeMain{max-width:1320px;margin:auto;padding:28px 36px}.knowledgeHeader{display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--ink)}.knowledgeBrand{font-size:24px;font-weight:650;letter-spacing:-1px;color:inherit;text-decoration:none}.knowledgeHeader nav{display:flex;align-items:center;gap:24px;font-size:13px}.knowledgeHeader a{color:inherit}.knowledgeHeader nav span{font-weight:600}.knowledgeMain{padding-top:4px}.knowledgeIntro{display:flex;align-items:end;gap:32px;justify-content:space-between;padding:32px;background:#fff;color:#000;margin-bottom:20px}.knowledgeIntro h1{font-size:clamp(32px,3.7vw,52px);font-weight:550;line-height:1.05;letter-spacing:-1.8px;margin:0 0 16px}.knowledgeIntro p{margin:0;font-size:16px;line-height:1.5}.knowledgeIntro label{min-width:210px}.knowledgeGrid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;align-items:start}.knowledgeCard{padding:30px;background:#fff;color:#000;border-radius:3px;min-width:0}.knowledgeBlack{background:#000;color:#fff;border:1px solid #303030}.knowledgeCard h2{font-size:26px;line-height:1.2;letter-spacing:-.6px;margin:0 0 18px;font-weight:550}.knowledgeCard h3{font-size:17px;font-weight:550;line-height:1.4}.knowledgeCard p,.knowledgeCard dd{font-size:15px;line-height:1.65;max-width:75ch}.knowledgeCard a{color:inherit;text-underline-offset:4px;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.knowledgeCard .knowledgeSmall{font-size:12px;line-height:1.6;color:#666}.knowledgeBlack .knowledgeSmall{color:#bbb}.knowledgeCard button,.knowledgeHeader button,.knowledgeIntro select,.knowledgeCard select{font:inherit;color:inherit;background:transparent;border:1px solid #aaa;border-radius:5px;min-height:42px;padding:9px 12px;cursor:pointer}.knowledgeHeader button{font-size:12px}.knowledgeCard button:disabled{opacity:.4;cursor:default}.knowledgeCard select,.knowledgeIntro select{display:block;width:100%;margin-top:8px;font-size:14px}.knowledgeCard select option{background:#000;color:#fff}.knowledgeIntro select{background:#fff;color:#000}.knowledgeCard label,.knowledgeIntro label{font-size:12px;line-height:1.5}.knowledgeCard input[type=range]{display:block;width:100%;margin:20px 0;accent-color:#e6d5a1}.knowledgeCard input[type=radio]{accent-color:#000;flex-shrink:0;width:17px;height:17px}.knowledgeView input{color:inherit}.knowledgeCard :focus-visible,.knowledgeHeader :focus-visible,.knowledgeIntro :focus-visible{outline:2px solid currentColor;outline-offset:4px}.knowledgeAction{display:block;margin-top:20px;background:#000!important;color:#fff!important;border-color:#000!important}.knowledgeBlack .knowledgeAction{background:#fff!important;color:#000!important;border-color:#fff!important}.knowledgePlate{padding:0;margin:0;overflow:hidden}.knowledgePlate>img{display:block;width:100%;height:auto}.knowledgePlate figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;font-size:12px;line-height:1.5}.knowledgePlate button{font-size:12px}.knowledgeFacts{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.knowledgeFacts>div{border-top:1px solid #ddd;padding-top:14px}.knowledgeFacts dt{font-size:12px;color:#555}.knowledgeFacts dd{margin:8px 0 0}.knowledgeCard details{border-top:1px solid #ddd;margin:20px 0;padding-top:12px}.knowledgeCard summary{cursor:pointer;min-height:36px;font-size:13px}.knowledgeTabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.knowledgeTabs button{font-size:12px}.knowledgeTabs button[aria-pressed=true]{background:#000;color:#fff}.knowledgeBlack .knowledgeTabs button[aria-pressed=true]{background:#fff;color:#000}.knowledgeSources{display:grid;gap:8px}.knowledgePhaseHeading,.knowledgeSectionHead{display:flex;align-items:center;justify-content:space-between;gap:16px}.knowledgePhaseHeading{margin-top:24px}.knowledgePhaseHeading output{font-size:26px;font-variant-numeric:tabular-nums}.knowledgePhaseActions{display:flex;gap:10px}.knowledgePhaseActions button{font-size:12px}#knowledgePhaseList{padding-left:22px;line-height:1.6;font-size:13px}#knowledgePhaseList li{padding:8px 0;color:#aaa}#knowledgePhaseList li[aria-current=step]{color:#fff;text-decoration:underline;text-underline-offset:5px}.knowledgeWide{grid-column:1/-1}.knowledgeEvidenceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.knowledgeEvidenceGrid article{border-top:1px solid #ddd;padding-top:12px}.knowledgeEvidenceGrid p{font-size:14px}.knowledgeEvidenceGrid h3{margin-top:8px}.knowledgeEvidenceGrid dl{font-size:12px;line-height:1.6}.knowledgeEvidenceGrid dt{font-weight:600;margin-top:14px}.knowledgeEvidenceGrid dd{font-size:13px;margin:3px 0}#knowledgeMechanism{width:100%;display:block;font:14px Arial,sans-serif}#knowledgeQuiz fieldset{border:0;margin:0;padding:0}#knowledgeQuestion{font-size:17px;line-height:1.5;margin-bottom:18px}#knowledgeOptions label{display:flex;gap:12px;align-items:start;padding:12px 0;font-size:14px;line-height:1.5;cursor:pointer}#knowledgeFeedback{border-top:1px solid #ccc;padding-top:16px}#knowledgeFeedback[hidden],#knowledgeStatus[hidden]{display:none}#knowledgeStatus{padding:16px;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}.knowledgeFooter{color:var(--muted);font-size:12px;line-height:1.6;padding:32px 0}#knowledgeImageDialog{width:min(1200px,94vw);max-width:94vw;max-height:94dvh;background:var(--bg);color:var(--ink);border:1px solid var(--line);padding:20px}#knowledgeImageDialog::backdrop{background:#000b}#knowledgeImageDialog header{display:flex;justify-content:space-between;align-items:center;gap:20px}#knowledgeImageDialog h2{font-size:20px}#knowledgeImageDialog button{padding:12px;color:inherit;min-height:44px}#knowledgeImageDialog img{width:100%;height:auto;display:block}#knowledgeImageDialog a{display:inline-block;color:inherit;padding:16px 0}#knowledgeQuickBtn{width:100%;margin-top:8px;min-height:42px}#knowledgeMobileNav{display:none}.homeHeader nav>a[data-open-knowledge]{display:inline!important}
@media(max-width:900px){.knowledgeHeader,.knowledgeMain{padding:22px}.knowledgeIntro{display:block}.knowledgeIntro label{display:block;margin-top:24px;max-width:360px}.knowledgeGrid{grid-template-columns:1fr 1fr}.knowledgeCard{padding:22px}.knowledgePlate{padding:0}.knowledgeEvidenceGrid{grid-template-columns:1fr}.knowledgeHeader nav{gap:14px}.knowledgeHeader nav span{display:none}#knowledgeMobileNav{display:block;color:var(--ink);font-size:11px;min-height:36px;padding:6px}#topbar .topActions{gap:5px}}
@media(max-width:600px){.knowledgeHeader,.knowledgeMain{padding:18px 16px}.knowledgeHeader{flex-wrap:wrap;gap:16px}.knowledgeHeader nav{width:100%;justify-content:space-between}.knowledgeGrid{grid-template-columns:1fr}.knowledgeIntro{padding:24px}.knowledgeIntro h1{font-size:34px;letter-spacing:-1.2px}.knowledgeWide{grid-column:auto}.knowledgeFacts{grid-template-columns:1fr}.knowledgeSectionHead{display:block}.knowledgeCard h2{font-size:24px}.knowledgeHeader .knowledgeBrand{font-size:22px}.homeHeader nav{gap:10px}.homeHeader nav>a[data-open-knowledge]{font-size:12px}}
html[data-theme="dark"][data-page="library"] body{background:#000}

