:root{color-scheme:dark;--bg:#0a1521;--panel:#102333;--line:#2c4658;--text:#edf5f6;--muted:#acc4ce;--accent:#79dfc4;--gold:#f3c782;font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-size:18px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,a,input,summary{touch-action:manipulation}button,.nav-link{font:inherit;color:inherit;min-height:44px;border:1px solid var(--line);background:#142c3e;border-radius:9px;padding:9px 14px;cursor:pointer}button:hover,.nav-link:hover{border-color:var(--accent)}button[aria-pressed=true],button.active{background:#23554b;border-color:var(--accent);color:#e6fff7}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{opacity:.45;cursor:default}a{color:var(--accent)}header{display:flex;align-items:center;gap:20px;padding:14px 22px;border-bottom:1px solid var(--line)}.brand{font-size:23px;font-weight:bold;white-space:nowrap}.brand b{font-size:15px;color:var(--accent);display:block;letter-spacing:3px;margin-bottom:2px}.header-note{color:var(--muted);font-size:17px}.header-tools{margin-left:auto;display:flex;gap:8px}.header-tools a{text-decoration:none;font-size:16px}#groups{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:9px 18px;background:#102230}#groups a{display:flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;color:var(--muted);padding:10px 4px;border:1px solid transparent;border-radius:8px;min-height:48px}#groups a[aria-current=page]{background:#224a44;color:#dbfff3;border-color:#65bfa9}#groups small{font-size:14px;opacity:.8}#workspace{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;padding:12px 18px;height:calc(100dvh - 152px);min-height:570px}.main-stage{min-width:0;display:flex;flex-direction:column;gap:10px}.question-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.question-row h1{font-size:24px;margin:3px 0;flex:1;line-height:1.35}.step-switch{display:flex;gap:5px}.step-switch button{font-size:18px;white-space:nowrap}.step-switch i{font-style:normal;font-size:14px;margin-right:4px;opacity:.7}.viewport{flex:1;position:relative;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#183044,#0d1928 70%);min-height:350px}.viewport iframe{width:100%;height:100%;border:0;display:block}.stage-full{position:absolute;right:12px;bottom:12px;z-index:5;font-size:16px;background:#142c3ee8}.stage-caption{color:var(--muted);font-size:16px;margin:0 5px;display:flex;justify-content:space-between;gap:10px}.stage-caption span:last-child{color:var(--accent)}.workbench{background:var(--panel);border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;padding:18px;gap:12px;overflow:auto}.group-label{font-size:15px;color:var(--accent);letter-spacing:2px}.workbench h2{margin:0;font-size:23px}.prompt{font-size:20px;line-height:1.55;margin:0;padding-left:12px;border-left:3px solid var(--accent)}.control-label{display:block;font-size:18px;line-height:1.45}.range-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}.range-heading output{font-size:25px;color:var(--gold);font-variant-numeric:tabular-nums}input[type=range]{display:block;width:100%;height:38px;accent-color:var(--accent);cursor:pointer}.presets{display:flex;gap:6px;flex-wrap:wrap}.presets button{flex:1;padding:6px;font-size:17px}.hint{font-size:15px;line-height:1.5;color:var(--muted);margin:0}.prediction{display:grid;grid-template-columns:1fr 1fr;gap:6px}.primary{background:#327565;font-weight:bold;border-color:var(--accent);width:100%}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:6px}.metric{border:1px solid var(--line);border-radius:9px;padding:10px;background:#0b1d2b}.metric span{font-size:15px;color:var(--muted);display:block}.metric strong{display:block;font-size:25px;font-variant-numeric:tabular-nums;margin:3px 0}.metric small{font-size:14px;color:var(--accent)}.metric.changed{border-color:#cfac6f}.outcome{font-size:18px;color:var(--gold);line-height:1.5;margin:0}.tools-row{display:flex;gap:6px}.tools-row button{flex:1;padding:8px 5px;font-size:16px}.evidence{border-top:1px solid var(--line);padding-top:10px}.evidence summary,details summary{cursor:pointer;line-height:1.5;min-height:38px}details p{font-size:16px;line-height:1.6;margin:8px 0}#sources{margin-top:auto;border-top:1px solid var(--line);padding-top:9px;color:var(--muted)}#sources a{font-size:15px;display:block;margin:8px 0}#records{font-size:15px;width:100%;border-collapse:collapse}#records th,#records td{padding:6px 3px;border-bottom:1px solid var(--line);text-align:left}.mini-figure{width:100%;min-height:140px;max-height:200px;display:block}.mini-figure svg{height:100%;max-height:200px;width:100%}.figure-readout{font-size:15px;color:var(--muted);text-align:center;margin:0}.observation-tools{display:flex;gap:6px;flex-wrap:wrap}.observation-tools button{font-size:17px;padding:8px 10px;flex:1}.full-view #workspace{height:100dvh;min-height:0}.full-view header,.full-view #groups{display:none}.full-view .workbench{display:flex}#heart-stage{position:absolute;inset:0;overflow:auto;padding:12px}.heart-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center;min-height:100%}.heart-card{text-align:center;min-width:0}.heart-card h3{font-size:24px;margin:6px}.heart-card svg{width:100%;max-height:440px;display:block}.heart-phase{font-size:19px;color:var(--gold);min-height:32px}.heart-name{font-family:inherit;font-size:16px;fill:#f0f9ff;pointer-events:none}.heart-small{font-family:inherit;font-size:13px;fill:#a9c8d4}.card-labels{display:flex;justify-content:center;gap:5px;margin-top:7px;flex-wrap:wrap}.card-labels button{font-size:15px;min-height:36px;padding:6px}.swatch-blue{color:#7dc5ff}.swatch-red{color:#ff999e}.heart-status{text-align:center;font-size:19px;line-height:1.5;color:var(--accent)}[hidden]{display:none!important}.empty-record{font-size:15px;color:var(--muted)}.iso{--anatomy-paper:#102333;--anatomy-face:#163449;--anatomy-top:#1d3a4b;--anatomy-shade-0:#071725;--anatomy-shade-1:#0b2031;--anatomy-shade-2:#122b3d;--anatomy-shade-3:#1a3446;--anatomy-hi:#acced5;--anatomy-mid:#698995;--anatomy-lo:#3e6071;--anatomy-faint:#243e50;--anatomy-lit:#c9f4e5;--anatomy-lit-top:#284f52;--anatomy-lit-shade:#1f3d45} @media(min-width:1600px){#workspace{grid-template-columns:minmax(0,1fr) 370px}.workbench{padding:22px;gap:16px}.question-row h1{font-size:28px}.mini-figure{max-height:230px}}@media(max-width:1000px){#workspace{grid-template-columns:minmax(0,1fr) 290px;padding:10px;height:calc(100dvh - 158px)}.workbench{padding:12px}.header-note{display:none}.question-row h1{font-size:22px}.step-switch{width:100%}.step-switch button{flex:1}#groups{padding:8px;gap:2px}#groups a{flex-direction:column;gap:1px;font-size:16px}#groups small{font-size:12px}}@media(max-width:720px){header{padding:10px 12px}.brand{font-size:21px}.header-tools a{font-size:14px;padding:6px}#groups{grid-template-columns:repeat(4,1fr)}#groups a{flex-direction:row;gap:5px;padding:5px;font-size:15px;min-height:40px}#groups small{font-size:12px}#workspace{display:flex;flex-direction:column;height:auto;min-height:0;padding:10px;gap:10px}.main-stage{display:contents}.question-row{order:0}.viewport{order:1;flex:none;height:62dvh;min-height:430px}.stage-caption{order:2;font-size:14px}.workbench{order:3;overflow:visible;gap:12px}.workbench h2{font-size:22px}.mini-figure{height:185px;max-height:185px}.metric strong{font-size:28px}.heart-pair{gap:5px}.heart-card h3{font-size:21px}.heart-card svg{min-height:240px}.heart-name{font-size:18px}.heart-small{font-size:15px}.heart-phase{font-size:15px}.heart-status{font-size:16px}.card-labels button{font-size:14px;min-height:42px}.full-view #workspace{height:auto}.full-view{overflow:auto}.full-view .viewport{height:75dvh}.header-tools{gap:4px}.header-tools .old-link{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Preserve the existing classroom palette and button vocabulary. */
:root{--bg:#0d1624;--panel:#14212e;--line:#304757;--text:#eaf2f7;--muted:#adbdcc;--accent:#80d8c5}header{height:auto;min-height:54px;padding:7px 16px}.brand{display:flex;align-items:center;gap:10px}.brand h1{font-size:24px;margin:0}.brand .mark{display:grid;place-items:center;border:1px solid #80d8c5;border-radius:50%;width:36px;height:36px;font-size:25px;color:#80d8c5}.header-note{font-size:16px}button,.nav-link{border-radius:7px;background:#1a2c3b}.workbench,.viewport{border-radius:8px}#workspace{height:calc(100dvh - 134px)}#heart-stage{display:flex;flex-direction:column}.heart-titles{display:flex;justify-content:space-around;font-size:24px;font-weight:bold}.heart-three{position:relative;flex:1;min-height:280px}.heart-structure-label{position:absolute;transform:translate(-50%,-50%);border:1px solid #80d8c5;background:#132c3ef0;color:#eaf2f7;font-size:17px;padding:4px 7px;border-radius:5px;pointer-events:none;white-space:nowrap}.heart-status{margin:5px;font-size:17px}.heart-phase{text-align:center;font-size:19px;min-height:27px}.mini-figure{height:185px}.mini-figure canvas{width:100%;height:100%}@media(max-width:720px){#workspace{height:auto}header{min-height:54px}.brand h1{font-size:22px}.header-note{display:none}.heart-titles{font-size:22px}.heart-three{min-height:280px}.heart-structure-label{font-size:14px;padding:3px}.heart-status{font-size:15px}.full-view #workspace{height:auto}}

body[data-activity=test] #work-title{display:none}body[data-activity=test] .workbench{gap:10px}.viewport>#mini-section{position:absolute;left:12px;bottom:58px;width:245px;z-index:3;background:#102333dd;border:1px solid #405766;border-radius:7px;padding:4px}.viewport>#mini-section .mini-figure{height:140px;min-height:140px}.viewport>#mini-section .figure-readout{font-size:14px;padding:0 4px 4px}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.metric{padding:6px}.metric strong{font-size:22px}.metric span{font-size:14px}.metric small{font-size:12px}.tools-row{margin-top:5px}.stage-caption{line-height:1.4}@media(max-width:720px){.viewport>#mini-section{left:8px;bottom:50px;width:165px}.viewport>#mini-section .mini-figure{height:104px;min-height:104px}.viewport>#mini-section .figure-readout{font-size:12px}.metrics{grid-template-columns:repeat(3,1fr)}.metric strong{font-size:24px}.metric span{font-size:15px}.metric small{font-size:13px}}

body{display:block;min-height:100dvh;height:auto;overflow:auto}header{flex-wrap:wrap}.viewport>#mini-section{left:auto;right:12px}#groups a small{white-space:nowrap}#groups a span{word-break:keep-all}.heart-three{min-height:300px}body.font-spacious #workspace{height:auto;min-height:700px}body.font-spacious .viewport{min-height:500px}body.font-spacious #groups{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:720px){.viewport>#mini-section{right:8px}.stage-caption span{min-width:0}.header-tools a{white-space:nowrap}}

body.font-spacious #workspace{display:flex;flex-direction:column;height:auto}body.font-spacious .main-stage{display:contents}body.font-spacious .question-row{order:0}body.font-spacious .viewport{height:70dvh;min-height:420px;flex:none;order:1}body.font-spacious .stage-caption{order:2}body.font-spacious .workbench{order:3;overflow:visible}body.font-spacious .step-switch{width:100%}body.font-spacious .step-switch button{flex:1}body.font-spacious .question-row h1{flex-basis:100%}.workbench{overflow-wrap:anywhere}body.font-spacious .heart-structure-label{font-size:24px}
@media(max-width:720px){#groups{grid-template-columns:repeat(3,minmax(0,1fr))}#groups a{min-width:0;gap:4px}#groups a span{word-break:normal}}

.heart-accessible-names{text-align:center;font-size:22px;line-height:1.5;padding:5px}body.font-spacious .heart-accessible-names{font-size:30px}

body.font-spacious .brand .mark{width:68px;height:68px}body.font-spacious[data-group=circulation] .viewport{height:auto;min-height:740px}body.font-spacious #heart-stage{position:relative;inset:auto;overflow:visible}body.font-spacious .heart-three{height:420px;flex:none}

.heart-view-controls{position:absolute;top:48px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:3;white-space:nowrap}.heart-view-controls button{font-size:16px;min-height:44px;padding:6px 12px;background:#142c3ee8}.heart-view-controls button[aria-pressed=true]{background:#23554b}.heart-titles.single{grid-template-columns:1fr;text-align:center}.font-spacious .heart-view-controls{position:static;transform:none;justify-content:center;flex-wrap:wrap}.font-spacious .heart-view-controls button{font-size:1rem}

.heart-part-callout{position:absolute;padding:7px 10px;border:1px solid var(--accent);border-radius:6px;background:#102333f5;color:#edf5f6;font-size:18px;pointer-events:none;z-index:3;max-width:300px;white-space:normal}
.heart-section-switch{display:flex;gap:6px;width:100%}.heart-section-switch button{flex:1}.heart-boundary{color:var(--muted);font-size:16px}#heart-rate-example{flex-basis:100%}.heart-status{font-size:18px;line-height:1.45}.heart-view-controls{top:47px}.heart-three{margin-top:44px;min-height:240px}#heart-stage{overflow:hidden}.font-spacious #heart-stage{overflow:visible}.font-spacious .heart-three{margin-top:0}.font-spacious .heart-boundary{font-size:1rem}
#rectum-stage{position:absolute;inset:0;display:flex;flex-direction:column;padding:12px;overflow:hidden}.rectum-caption{font-size:18px;line-height:1.4;color:var(--muted);text-align:center;margin:8px 4px}.rectum-label{font-size:18px;max-width:240px;white-space:normal}.font-spacious #rectum-stage{position:relative;overflow:visible}.font-spacious .rectum-caption{font-size:1rem}.font-spacious .rectum-label{font-size:1rem}@media(max-width:720px){#rectum-stage .heart-titles{font-size:18px}#rectum-stage .heart-view-controls{gap:4px;max-width:100%;width:100%;justify-content:center}#rectum-stage .heart-view-controls button{font-size:14px;padding:5px 8px}.rectum-label{font-size:16px;max-width:150px}.rectum-caption{font-size:16px}}

@media(max-width:700px){#heart-stage{padding-bottom:54px}}.font-spacious #heart-stage{padding-bottom:86px}

.science-brief{border-left:3px solid var(--gold);background:#1c303b;padding:10px;font-size:15px;line-height:1.5}.science-brief p{margin:6px 0}.research-ratios{display:flex;gap:16px;margin:10px 0}.research-ratios strong{font-size:27px;color:var(--gold)}#assumption-controls label{display:block;font-size:16px;margin:10px 0}#assumption-controls input[type=number],#assumption-controls select{font:inherit;max-width:100%;color:var(--text);background:#102333;border:1px solid var(--line);padding:7px}#assumption-controls input[type=number]{width:75px}#digest-state{margin:10px 0}.source-item{border-bottom:1px solid var(--line);padding-bottom:8px}

.source-jump{display:block;text-align:left;width:100%;font-size:15px;line-height:1.5}.source-jump small{display:block;color:var(--muted);overflow-wrap:anywhere}#sources .source-title{font-weight:bold;line-height:1.55}#sources .source-authors,#sources .source-journal{font-size:15px;margin:4px 0}#sources .source-item{padding:10px 0;overflow-wrap:anywhere}#sources .source-item a{display:inline}#sources .source-item .source-title{display:block}.source-item:target{border-left:3px solid var(--gold);padding-left:9px}

.model-source-map{border:1px solid var(--line);border-radius:7px;padding:12px;margin:10px 0;background:#102331}.model-source-map h3{font-size:18px;color:var(--accent);margin:0 0 10px}.model-source-map p{font-size:16px;line-height:1.65}
.rectum-leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.rectum-leaders line{stroke:#80d8c5;stroke-width:1.3}.rectum-label{z-index:2}
@media(max-width:720px){.rectum-caption{padding-right:115px;text-align:left;min-height:50px}}

.heart-beat-status{display:none}.heart-evidence .heart-beat-status{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center;margin:42px 10px 0;color:var(--accent);font-size:22px;font-weight:bold}.heart-evidence .heart-beat-status span{padding:5px;border:1px solid #3f6967;border-radius:6px;background:#17352f}.heart-evidence .heart-beat-status .ejecting{color:#ffe3ad;background:#593d22;border-color:#d1a25d}.heart-beat-status small{display:block;font-size:15px;font-weight:normal}.heart-evidence .heart-three{margin-top:0}.heart-view-controls{max-width:calc(100% - 20px)}.heart-titles.single{display:block}.heart-evidence .heart-status{font-size:16px}#heart-restart{flex:1}
@media(max-width:720px){#heart-stage .heart-view-controls{width:calc(100% - 16px);flex-wrap:wrap;justify-content:center;gap:4px}#heart-stage .heart-view-controls button{font-size:14px;padding:5px 7px;min-height:40px}#heart-stage:not(.heart-evidence) .heart-three{margin-top:86px}.heart-evidence .heart-beat-status{margin-top:86px;font-size:18px;gap:6px}.heart-beat-status small{font-size:14px}}
.font-spacious .heart-evidence .heart-beat-status{margin-top:8px;font-size:1rem}.font-spacious .heart-beat-status small{font-size:1rem}.font-spacious #heart-stage .heart-view-controls{max-width:none;width:100%}
.heart-phase,.heart-status,.heart-titles,.heart-beat-status{flex-shrink:0}.heart-phase{line-height:1.4;overflow-wrap:anywhere}
@media(max-width:720px){body[data-group=circulation] .viewport{height:680px}body[data-group] .bio-coop.project-member-tools{position:static;margin:12px 12px 12px auto}}
