:root{--header-height: 52px;--sidebar-width: 200px;--bg: #070b18;--text: #f4f0ff;--muted: #b7b3ce;--line: rgba(244, 240, 255, .14);--coral: #ff6b57;--teal: #2ad4c3;--violet: #8d7cff;--gold: #ffc857;--cream: #f7f1e6;--ink: #1b1730;--good: #0f8f6a;--bad: #c4473d;--serif: "Fraunces", "Iowan Old Style", Palatino, Georgia, serif;--sans: Outfit, "Avenir Next", "Segoe UI", sans-serif;--shadow: 0 30px 80px rgba(0, 0, 0, .35);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}html[data-motion=reduced]{scroll-behavior:auto}body{margin:0;min-height:100vh;font-family:var(--sans);font-weight:430;color:var(--text);background:radial-gradient(1000px 560px at 90% -10%,rgba(141,124,255,.28),transparent 60%),radial-gradient(800px 480px at -10% 15%,rgba(42,212,195,.16),transparent 55%),radial-gradient(700px 420px at 50% 110%,rgba(255,107,87,.16),transparent 50%),var(--bg)}body:before{content:"";position:fixed;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(42,212,195,.16),transparent),radial-gradient(closest-side,rgba(255,107,87,.12),transparent);background-size:46% 46%,38% 38%;background-position:0% 20%,100% 0%;animation:drift 26s ease-in-out infinite alternate}button,input{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--teal)}img,svg{max-width:100%}h1,h2,h3{font-family:var(--serif);font-weight:560;letter-spacing:-.03em;line-height:1.05}h1{font-size:clamp(2.7rem,6vw,5.4rem);margin:0 0 .4em}h2{font-size:clamp(2rem,4vw,3.4rem);margin:0 0 .35em}h3{font-size:1.55rem;margin:0 0 .4em}p{line-height:1.55}:focus-visible{outline:3px solid var(--teal);outline-offset:3px}[data-playback=paused],[data-playback=paused] *,[data-playback=paused]:before,[data-playback=paused]:after,[data-playback=paused] *:before,[data-playback=paused] *:after{animation-play-state:paused!important}.playback-feedback{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;pointer-events:none}.playback-feedback-symbol{width:clamp(240px,42vmin,420px);aspect-ratio:1;display:flex;align-items:center;justify-content:center;gap:15%;border-radius:50%;background:#090b20b8;border:1px solid #ffffff26;box-shadow:0 0 70px #090b2080,inset 0 0 40px #ffffff08;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.playback-feedback-symbol>span{display:block;width:13%;height:43%;background:#fff8f0;border-radius:7px;box-shadow:0 0 24px #fff8f038}.playback-feedback-symbol.is-play>span{width:36%;height:43%;margin-left:7%;border-radius:0;clip-path:polygon(0 0,100% 50%,0 100%)}.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:absolute;left:12px;top:-48px;z-index:80;background:#fff;color:var(--ink);padding:8px 12px;border-radius:999px}.skip:focus{top:10px}.site-header{position:sticky;top:0;z-index:40;width:100%;display:flex;justify-content:space-between;gap:16px;align-items:center;height:var(--header-height);padding:0 20px;background:linear-gradient(180deg,#0a0e20f0,#0a0e20c7);border-bottom:1px solid rgba(244,240,255,.12);box-shadow:0 18px 40px #00000038;-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35)}.site-header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,#ff6b57,#ffc857 38%,#2ad4c3 68%,#8d7cff);opacity:.9}.brand{display:flex;align-items:center;gap:9px;color:var(--text);text-decoration:none;font-weight:640;font-size:.92rem;letter-spacing:-.03em}.brand-mark{width:30px;height:30px;flex:none;border-radius:10px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.22),transparent 46%),linear-gradient(165deg,#ffffff1a,#ffffff08);border:1px solid rgba(244,240,255,.18);box-shadow:inset 0 1px #ffffff38}.brand-mark:before{content:"";width:11px;height:15px;border-radius:48% 52% 46% 54%;background:linear-gradient(165deg,#ffd5d8,#ff6b57 58%,#8d3048);box-shadow:5px 3px #8d7cff}.header-brand{display:flex;gap:18px;align-items:center}.header-actions{display:flex;gap:8px;align-items:center}.progress-pill,.btn,.search input,.scene-nav button,.chip,.slot,.option{border:1px solid var(--line);background:#ffffff0a}.progress-pill{margin:0;border-radius:999px;padding:6px 11px;font-size:.78rem;white-space:nowrap;color:var(--text);background:#ffffff0f;border-color:#f4f0ff29}.page-content{min-width:0;transition:margin-left .32s cubic-bezier(.22,1,.36,1)}.app-shell.has-sidebar .page-content{margin-left:var(--sidebar-width)}.app-shell.is-sidebar-collapsed{--sidebar-width: 56px}.chapter-sidebar{position:fixed;top:var(--header-height);bottom:0;left:0;z-index:41;width:var(--sidebar-width);padding:22px 12px;overflow-y:auto;overflow-x:hidden;background:linear-gradient(180deg,#111326f5,#090d1cf5);border-right:1px solid rgba(163,148,205,.16);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:width .32s cubic-bezier(.22,1,.36,1),padding .32s cubic-bezier(.22,1,.36,1)}.chapter-menu-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px 20px}.chapter-menu-head>div{max-width:120px;overflow:hidden;white-space:nowrap;transition:max-width .25s ease,opacity .2s ease}.chapter-menu-head p{margin:0 0 5px;color:var(--muted);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.chapter-menu-head h2{margin:0;font-size:1.65rem;color:#ded5ef}.chapter-menu-close,.chapter-menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;border:1px solid rgba(163,148,205,.22);border-radius:10px;color:#d8cfed;background:#a394cd12}.chapter-menu-close{width:32px;flex:none}.chapter-menu-toggle{padding:0 10px;font-size:.8rem;font-weight:560}.chapter-menu-toggle[aria-expanded=true],.chapter-menu-toggle:hover,.chapter-menu-close:hover{background:#a394cd2b;border-color:#a394cd66}.scene-nav{display:flex;flex-direction:column;gap:6px}.scene-nav button{--scene-rgb: 163, 148, 205;--scene-accent: #d8cfed;display:flex;gap:8px;align-items:center;width:100%;min-height:40px;border-radius:10px;padding:8px;text-align:left;font-size:.82rem;font-weight:560;color:var(--scene-accent);border-color:rgba(var(--scene-rgb),.15);background:linear-gradient(135deg,rgba(var(--scene-rgb),.09),rgba(var(--scene-rgb),.03));transition:background .2s ease,border-color .2s ease}.scene-nav button:hover{background:rgba(var(--scene-rgb),.18);border-color:rgba(var(--scene-rgb),.4)}.scene-number{width:22px;height:22px;flex:none;display:grid;place-items:center;border-radius:7px;background:rgba(var(--scene-rgb),.14);font-size:.7rem}.scene-label{flex:1;white-space:nowrap}.scene-complete{font-size:.75rem;opacity:.7}.scene-nav button.is-active{color:var(--ink);border-color:var(--scene-accent);background:linear-gradient(135deg,var(--scene-accent),rgb(var(--scene-rgb)));box-shadow:0 4px 16px rgba(var(--scene-rgb),.12)}.scene-nav button.is-active .scene-number{background:#ffffff40}.chapter-sidebar.is-collapsed{padding-inline:8px}.chapter-sidebar.is-collapsed .chapter-menu-head{padding-inline:0;gap:0;justify-content:center}.chapter-sidebar.is-collapsed .chapter-menu-head>div{max-width:0;opacity:0}.chapter-menu-close svg{transition:transform .32s cubic-bezier(.22,1,.36,1)}.chapter-sidebar.is-collapsed .chapter-menu-close svg{transform:rotate(180deg)}.chapter-sidebar.is-collapsed .scene-nav button{justify-content:center;gap:0;background:transparent;border-color:transparent;box-shadow:none}.chapter-sidebar.is-collapsed .scene-nav button:hover{background:#a394cd17;border-color:#a394cd2b}.chapter-sidebar.is-collapsed .scene-label,.chapter-sidebar.is-collapsed .scene-complete{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.chapter-sidebar.is-collapsed .scene-number{width:8px;height:8px;border-radius:50%;color:transparent;font-size:0;background:#a394cd80;transition:width .25s ease,height .25s ease,background .2s ease}.chapter-sidebar.is-collapsed .is-active .scene-number{width:10px;height:10px;background:#d8cfed;box-shadow:0 0 0 5px #a394cd22,0 0 16px #a394cd40}html[data-motion=reduced] .scene-nav button,html[data-motion=reduced] .page-content,html[data-motion=reduced] .chapter-sidebar,html[data-motion=reduced] .chapter-menu-head>div,html[data-motion=reduced] .chapter-menu-close svg,html[data-motion=reduced] .scene-number,html[data-motion=reduced] .chapter-drawer,html[data-motion=reduced] .chapter-drawer::backdrop{transition:none}.chapter-drawer{position:fixed;inset:0 auto 0 0;width:min(280px,calc(100vw - 48px));height:100dvh;max-width:none;max-height:none;margin:0;padding:24px 16px;overflow-y:auto;border:0;border-right:1px solid rgba(163,148,205,.22);background:#101324;color:var(--text);box-shadow:16px 0 60px #0005;translate:-105% 0;transition:translate .38s cubic-bezier(.22,1,.36,1),overlay .38s cubic-bezier(.22,1,.36,1) allow-discrete,display .38s cubic-bezier(.22,1,.36,1) allow-discrete}.chapter-drawer[open]{translate:0 0}@starting-style{.chapter-drawer[open]{translate:-105% 0}}.chapter-drawer::backdrop{background:#04071399;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .38s ease,overlay .38s ease allow-discrete,display .38s ease allow-discrete}.chapter-drawer[open]::backdrop{opacity:1}@starting-style{.chapter-drawer[open]::backdrop{opacity:0}}.chapter-drawer .scene-nav button{min-height:44px;font-size:.9rem}.home,.soon{width:min(1120px,calc(100% - 32px));margin:0 auto 48px}.scene{width:min(1120px,calc(100% - 32px));margin:0 auto 104px;scroll-margin-top:calc(var(--header-height) + 16px)}.module-page{padding-top:24px}.home-hero,.hero-grid,.player-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center}.kicker{margin:0 0 8px;color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:650}.lead{font-size:1.12rem;color:var(--muted);max-width:42rem}.question{font-family:var(--serif);font-size:clamp(1.5rem,3vw,2.1rem);color:#ffd7cf;margin:0 0 .6em}.quiet{color:var(--muted);font-size:.95rem}.hero-actions,.next-row,.fact-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;padding:12px 18px;min-height:44px}.btn-primary{background:linear-gradient(#ff8d7c,var(--coral));color:#3b1210;border-color:transparent;font-weight:680}.btn-ghost.is-on{border-color:var(--teal);color:var(--teal)}.btn:disabled{opacity:.45;cursor:not-allowed}.stage-3d{position:relative;height:min(68vh,640px);min-height:420px;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 50% 42%,rgba(255,120,110,.2),transparent 46%),linear-gradient(180deg,#ffffff0d,#ffffff05);border:1px solid var(--line);box-shadow:var(--shadow)}.poster{width:100%;height:100%}.poster text{font-size:18px;font-family:var(--sans)}.draw{stroke-dasharray:280;stroke-dashoffset:280;animation:draw 1.8s ease forwards}.draw-vein{animation-delay:.25s}.draw-ureter{animation-delay:.45s}.vessel-key{position:absolute;left:16px;bottom:16px;display:grid;gap:6px;padding:10px 12px;border-radius:16px;background:#070b18b8}.vessel-key span{display:flex;gap:8px;align-items:center;font-size:.85rem}.pip{width:12px;height:12px;border-radius:50%;display:inline-block}.pip.coral{background:var(--coral)}.pip.violet{background:var(--violet)}.pip.gold{background:var(--gold)}.body-wrap{position:relative}.body-wrap-locate{width:min(100%,clamp(240px,36svh,340px));margin-inline:auto}.body-svg{width:100%;height:auto;filter:drop-shadow(0 20px 40px rgba(0,0,0,.35))}.location-task-card{margin-top:20px;padding:22px;border:1px solid #c9b3db;border-radius:26px;background:linear-gradient(135deg,#f5edfc,#eee7f4);box-shadow:0 16px 34px #41255a1f}.location-task-card-head{display:flex;align-items:center;justify-content:space-between;gap:22px}.location-task-card-head .kicker{margin-bottom:5px;color:#795496;font-size:.68rem}.location-task-card-head h3{margin:0 0 7px;color:#2a2142;font-size:clamp(1.35rem,2.2vw,1.9rem)}.location-task-card-head p:not(.kicker){margin:0;color:#605771;font-size:.9rem;line-height:1.5}.location-task-workspace{margin-top:18px;padding:18px 12px 10px;border:1px solid #d8cbe1;border-radius:20px;background:#fffaf2}.location-task-status{margin:10px 0 0;text-align:center}.location-task-locked{display:flex;align-items:center;gap:14px;margin-top:18px;padding:18px;border:1px dashed #bea5cf;border-radius:18px;color:#55476a;background:#fff8}.location-task-step{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:#7f60a5;color:#fff;font-family:var(--serif);font-size:1.25rem}.location-task-locked strong{display:block;color:#463354;font-size:.98rem}.location-task-locked p{margin:3px 0 0;font-size:.82rem;color:#756b80}.location-task-arrow{margin-left:auto;color:#8c6aab;font-size:1.4rem}.location-animation-trigger{display:inline-flex;align-items:center;gap:9px;flex:none;border:1px solid #b7a4ca;border-radius:30px;padding:10px 17px;color:#59416e;background:#f1e9fa;font-size:.88rem;font-weight:600}@media(max-width:700px){.location-task-card-head{flex-direction:column;align-items:stretch;gap:14px}.location-animation-trigger{justify-content:center}}.location-animation-trigger span{color:#8b67a7;font-size:1.1rem}.location-dialog[open]{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:hidden;display:flex;flex-direction:column;color:#fff4ec;color-scheme:dark;background:radial-gradient(ellipse at 25% 50%,#44386655,transparent 54%),radial-gradient(ellipse at 85% 18%,#294f6238,transparent 48%),#101222;font-family:var(--sans)}.location-dialog::backdrop{background:#101222}.location-dialog:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:linear-gradient(#8a809c16 1px,transparent 1px),linear-gradient(90deg,#8a809c16 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse at center,black,transparent 86%);mask-image:radial-gradient(ellipse at center,black,transparent 86%)}.location-dialog-header{position:relative;display:flex;align-items:center;justify-content:space-between;padding:22px clamp(24px,4vw,70px);border-bottom:1px solid #ffffff12}.location-dialog-header p{margin:0 0 5px;color:#a99abc;text-transform:uppercase;letter-spacing:.2em;font-size:.62rem}.location-dialog-header h1{margin:0;font-family:var(--sans);font-size:1rem;font-weight:500;letter-spacing:0}.location-close{display:flex;align-items:center;gap:12px;border:1px solid #ffffff22;border-radius:30px;padding:8px 16px;color:#e8deed;background:#ffffff08;font-size:.85rem}.location-close b{font-size:1.5rem;line-height:1;font-weight:400}.location-dialog-content{position:relative;flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,5vw,90px);align-items:center;padding:12px clamp(24px,5vw,85px);overflow:auto}.location-visual{min-width:0;display:flex;flex-direction:column;align-items:center}.location-human{width:min(100%,660px,calc((100dvh - 250px)*1.05));height:auto;overflow:visible}.location-halo{fill:#8291d20d;stroke:#a1afd221;stroke-width:2}.location-body{transform-box:view-box;transform-origin:360px 340px;transition:transform 1.8s cubic-bezier(.2,.8,.2,1)}.location-stage-4 .location-body{transform:translate(-180px,-220px) scale(1.5)}.location-part{opacity:0;transform-box:view-box;transform-origin:center;transition:opacity 1s,transform 1s}.location-part.is-in{opacity:1;animation:location-organ-in 1.4s cubic-bezier(.18,.8,.2,1) both}.location-part.is-focus{filter:drop-shadow(0 0 15px #ff8d96)}.location-kidney-glow{opacity:0;transition:opacity .8s}.location-kidneys.is-focus .location-kidney-glow{opacity:.85;animation:location-pulse 2.4s ease-in-out infinite}.location-zoom-lines{opacity:0;animation:location-text-in .8s .5s forwards}.location-labels text{fill:#a89bb8;font-size:15px;letter-spacing:.08em;text-transform:uppercase}.location-labels .location-kidney-label{fill:#ffb6bf;font-weight:700}.location-note{margin:8px 0 0;color:#898097;font-size:.65rem;text-align:center}.location-copy{max-width:560px}.location-eyebrow{display:flex;align-items:center;gap:14px;color:#ffb7c0;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;animation:location-text-in .7s both}.location-eyebrow span{display:inline-grid;place-items:center;width:43px;height:43px;border:1px solid #ffffff20;border-radius:50%;font-family:var(--serif);color:#ffb7c0;font-size:1.45rem;letter-spacing:0}.location-copy h2{margin:20px 0;color:#fff2e8;font-size:clamp(3rem,5.5vw,6rem);line-height:1;font-weight:500;animation:location-title-in .9s cubic-bezier(.16,.75,.22,1) both}.location-purpose{margin:0;padding:18px 0;border-top:1px solid #ffffff1c;border-bottom:1px solid #ffffff1c;color:#ffd0d4;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.45;animation:location-text-in .8s .3s both}.location-detail{color:#c9c0d2;font-size:.95rem;line-height:1.65;animation:location-text-in .8s .55s both}.location-fact{margin-top:22px;padding:12px 15px;border-left:2px solid #ff939f;background:#ff9eaa0f;color:#ffbbc3;font-size:.88rem;animation:location-text-in .7s .8s both}.location-footer{position:relative;border-top:1px solid #ffffff14;padding:14px clamp(24px,4vw,70px) 18px;background:#101222e8}.location-parts{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-bottom:14px}.location-parts button{display:flex;align-items:center;gap:8px;min-height:35px;padding:6px 11px;border:1px solid #ffffff18;border-radius:25px;color:#a99fb4;background:transparent;font-size:.72rem}.location-parts button span{width:16px;text-align:center;font-size:.65rem}.location-parts button.is-built{color:#d8cbdc}.location-parts button.is-current{border-color:#ffb7c0;color:#ffb7c0;background:#ffffff0c}.location-controls{display:flex;align-items:center;justify-content:center;gap:8px}.location-controls button{min-height:36px;border:1px solid #ffffff1a;border-radius:25px;padding:7px 11px;color:#e6d7e9;background:#ffffff08}.location-controls button:disabled{opacity:.3;cursor:default}.location-controls .location-pause,.location-controls .location-next{min-width:100px}.location-count{color:#b5a7c1;min-width:48px;font-size:.68rem;letter-spacing:.1em}.location-key-hint{color:#81768c;font-size:.62rem}.location-dialog.is-paused *,.location-dialog.is-paused *:before,.location-dialog.is-paused *:after{animation-play-state:paused!important}.location-dialog.is-reduced *,.location-dialog.is-reduced *:before,.location-dialog.is-reduced *:after{animation:none!important;transition:none!important}@keyframes location-organ-in{0%{opacity:0;transform:translateY(28px) scale(.65)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes location-pulse{0%,to{opacity:.35}50%{opacity:.9}}@keyframes location-title-in{0%{opacity:0;transform:translateY(25px);letter-spacing:.04em}to{opacity:1;transform:translateY(0);letter-spacing:-.03em}}@keyframes location-text-in{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.location-dialog-header{padding:14px 18px}.location-dialog-content{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px 20px 18px}.location-human{width:min(100%,340px)}.location-copy{padding:0 0 8px}.location-copy h2{margin:12px 0;font-size:2.7rem}.location-purpose{padding:12px 0;font-size:.95rem}.location-detail{margin:10px 0 0;font-size:.82rem}.location-footer{padding:10px 14px 13px}.location-parts button{font-size:.64rem;min-height:30px;padding:5px 8px}.location-key-hint{display:none}}.side-tag{fill:var(--muted);font-size:16px;font-family:var(--sans)}.figure-note{color:var(--muted);text-align:center}.hit{cursor:pointer}.hit ellipse{fill:#0000;stroke:transparent;pointer-events:all}.hit:hover ellipse,.hit:focus ellipse{stroke:#fff;stroke-width:2;fill:#ffffff14}.hit.is-found ellipse{fill:#2ad4c347;stroke:var(--teal);stroke-width:3}.hit.is-wrong ellipse{fill:#ff6b5738;stroke:var(--coral);stroke-width:3}.is-kidney{animation:pulse 3.2s ease-in-out infinite}.arc{margin:10px auto 40px;width:min(1120px,calc(100% - 32px))}.arc ol,.arc-list{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0;list-style:none}.arc li,.arc-list li{border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--muted)}.arc li span{color:var(--gold);margin-right:6px}.organ-section{padding-bottom:40px}.search input{width:min(100%,420px);border-radius:16px;padding:14px 16px;margin:8px 0 18px}.organ-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.organ-list a{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:14px;border-radius:20px;text-decoration:none;color:inherit;background:#ffffff08;border:1px solid var(--line)}.organ-list i{width:14px;height:42px;border-radius:999px}.organ-list small,.organ-list em{display:block;color:var(--muted);font-style:normal}.organ-list strong{display:block}.sheet{background:radial-gradient(420px 180px at 0% 0%,rgba(255,196,160,.45),transparent 50%),var(--cream);color:var(--ink);border-radius:32px;padding:clamp(22px,3vw,40px);color-scheme:light;box-shadow:0 28px 60px #00000047}.sheet .lead,.sheet .quiet,.sheet .figure-note{color:#514b63}.sheet .side-tag{fill:#514b63}.sheet .kicker{color:#9a4d32}.sheet .fact{background:#ffffffb8;border-color:#1b17301a}.sheet .link-map span{border-color:#1b173038;background:#ffffff73}.section-head{margin-bottom:18px}.sheet .section-head{text-align:center}.section-head h2:focus{outline:none}.sheet .section-head .lead{margin-inline:auto}.overview-summary{border-left:3px solid var(--coral);padding:0 0 0 16px;margin:24px 0}.overview-summary p{margin:8px 0 0;color:#514b63}.scene[hidden]{display:none}.lesson-end{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 30px;margin-top:20px;border:1px solid var(--line);border-radius:24px;background:#17162b}.lesson-end p{margin:0;color:var(--muted);font-size:.95rem}.lesson-end .btn:disabled{opacity:.5;cursor:default}.role-instruction{font-size:.9rem;color:#655d73;margin:24px 0 14px}.overview-role-layout{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.overview-roles{display:grid;gap:12px}.overview-role{display:flex;position:relative;align-items:flex-start;gap:14px;text-align:left;padding:20px;border:1px solid #ddd5cd;border-radius:20px;background:#fffaf2;color:var(--ink);cursor:pointer;transition:border-color .25s,background .25s,box-shadow .25s}.overview-role.is-active{border-color:#8c75b1;background:#f4eefc;box-shadow:0 6px 20px #74628b14}.overview-role h3{font-size:1.12rem;line-height:1.3;padding-right:12px;margin:0}.overview-role p{margin:8px 0 0;color:#514b63;font-size:.92rem;line-height:1.55}.overview-role-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;flex:none;background:#eee8df;color:#383047}.overview-role-mark svg{width:28px;height:28px}.role-arrow{position:absolute;right:14px;top:16px;font-size:1.1rem;color:#8d819b}.overview-kidney{margin:0;padding:20px 16px;background:#eee8df;border:1px solid #ddd5cd;border-radius:26px;position:sticky;top:68px}.role-figure-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.role-figure-heading .kicker{font-size:.67rem;margin:0}.role-status{font-size:.65rem;color:#655d73;border:1px solid #ccc4b8;border-radius:20px;padding:5px 8px}.role-status.is-active{background:#f7f0ff;border-color:#b6a3cf;color:#695187}.overview-kidney svg,.formation-visual svg{display:block;width:100%;height:auto;overflow:visible}.overview-kidney>svg{height:clamp(260px,calc(100svh - 370px),390px)}.overview-svg-label{font-family:inherit;font-size:13px;fill:#514b63;font-weight:550}.overview-kidney figcaption{font-size:.88rem;line-height:1.5;color:#514b63;padding:16px 6px 0;min-height:78px;border-top:1px solid #d7cfc5}.overview-process{margin-top:40px;padding:28px;border-radius:26px;background:#e9e3da}.process-heading{text-align:center;margin-bottom:24px}.process-heading .kicker{margin-bottom:8px}.process-heading h3{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.2}.process-heading>p:last-child{color:#655d73;margin:10px 0 0;font-size:.95rem}.formation-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:20px;align-items:center}.formation-steps{list-style:none;padding:0;margin:0;display:grid;gap:12px}.formation-steps button{display:flex;gap:14px;width:100%;border:1px solid transparent;border-radius:18px;background:#ffffff78;padding:18px;color:var(--ink);text-align:left;cursor:pointer;transition:background .3s,border-color .3s}.formation-steps button.is-active{background:#fffaf2;border-color:#b5a5c6;box-shadow:0 8px 24px #3023410b}.formation-number{font-size:1.6rem;color:#aaa0b2;font-family:Georgia,serif;line-height:1;padding-top:2px}.is-active .formation-number{color:#745889}.formation-short{text-transform:uppercase;font-size:.64rem;letter-spacing:.1em;color:#71627d;font-weight:700}.formation-steps h4{font-size:1rem;line-height:1.35;margin:5px 0 7px}.formation-steps p{margin:0;color:#514b63;font-size:.88rem;line-height:1.5}.formation-key{display:block;color:#695187;font-size:.82rem;line-height:1.45;padding-top:10px;animation:overview-detail .35s ease both}.formation-visual{background:#f7f1e8;border:1px solid #d7cfc5;border-radius:22px;padding:18px 12px 12px}.formation-stage-label{display:inline-block;margin-left:10px;font-size:.72rem;letter-spacing:.05em;color:#655378;background:#e9e0f2;padding:7px 12px;border-radius:20px}.formation-visual .figure-note{margin:14px 10px 0;font-size:.7rem}.overview-takeaway{margin:24px 0 0;padding-top:18px;border-top:1px solid #cec5ba;font-weight:600;font-size:.95rem}html[data-motion=full] .overview-roles:not(.is-revealed) .overview-role,html[data-motion=full] .overview-process:not(.is-revealed) .formation-steps li{opacity:0}html[data-motion=full] .overview-roles.is-revealed .overview-role,html[data-motion=full] .overview-process.is-revealed .formation-steps li{animation:overview-enter .65s cubic-bezier(.2,.7,.2,1) var(--reveal-delay) both}.filter-glow{transform-origin:166px 136px;animation:filter-glow 2.5s ease-in-out infinite}@keyframes overview-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes overview-detail{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes filter-glow{0%,to{opacity:.45;transform:scale(.95)}50%{opacity:1;transform:scale(1.05)}}html[data-motion=reduced] .formation-key{animation:none}@media(max-width:900px){.overview-role-layout{gap:14px}.overview-role{padding:16px;gap:10px}.overview-role h3{font-size:1rem}.overview-role p{font-size:.85rem}.overview-process{padding:20px}.formation-layout{grid-template-columns:1fr}.formation-visual{max-width:600px;width:100%;margin:auto}}@media(max-width:700px){.overview-role-layout{grid-template-columns:1fr}.overview-kidney{position:static}.overview-kidney>svg{height:auto}.overview-svg-label{font-size:18px}.lesson-end{flex-direction:column;align-items:stretch;padding:20px}.lesson-end .btn{white-space:normal}.overview-process{padding:18px 12px;margin-top:28px}.formation-steps button{padding:14px}}.figure-frame{position:relative;width:min(100%,680px);margin:0 auto 16px}.section-svg,.nephron{width:100%;height:auto;display:block}.part{transition:opacity .35s ease}.section-svg.is-focus .part{opacity:.28}.section-svg.is-focus .part.is-on{opacity:1}.hotspot{position:absolute;width:34px;height:34px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--ink);background:#fff;padding:0}.hotspot.is-armed{box-shadow:0 0 0 6px #2ad4c359}.hotspot em{position:absolute;left:40px;top:4px;font-style:normal;font-size:.82rem;background:var(--ink);color:#fff;border-radius:999px;padding:3px 8px;white-space:nowrap}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip,.slot,.option,.zone-hit{border-radius:16px;padding:10px 12px;min-height:44px;text-align:left}.chip.is-on,.option.is-on{border-color:var(--violet);box-shadow:inset 0 0 0 2px var(--violet)}.chip.is-used{opacity:.4}.section-learning-sheet{padding:clamp(18px,1.6vw,24px)}.section-learning-sheet .section-head{margin-bottom:14px}.section-learning-sheet h2{font-size:clamp(1.8rem,2.6vw,2.3rem);margin-bottom:0}.section-learning-sheet .lead{font-size:.95rem;margin-block:8px 0}.section-phase{display:flex;justify-content:center;gap:6px;margin-bottom:12px}.section-phase button{border:1px solid rgba(27,23,48,.2);border-radius:999px;padding:8px 16px;min-height:40px;background:transparent;color:var(--ink)}.section-phase button[aria-pressed=true]{background:var(--ink);color:#fff}.pathway-phase{margin-bottom:16px}.pathway-phase button:disabled{opacity:.45;cursor:not-allowed}.pathway-trigger{display:inline-flex;align-items:center;gap:8px;background:#fff1d8;border-color:#e0b96b;color:#5e421e}.pathway-trigger svg{width:20px;height:20px;flex:none}.pathway-locked{display:flex;align-items:center;gap:14px;margin:12px 0 0;padding:20px;border:1px dashed #d0b477;border-radius:20px;color:#5e4a2d;background:linear-gradient(135deg,#fff8e9,#fffdf8)}.pathway-step{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:#d49c3d;color:#fff;font-family:var(--serif);font-size:1.25rem}.pathway-locked strong{display:block;color:#483316;font-size:1rem}.pathway-locked p{margin:4px 0 0;color:#806d4e;font-size:.84rem}.pathway-arrow{margin-left:auto;color:#b5852f;font-size:1.5rem}.pathway-learning,.pathway-practice{margin-top:12px;padding:clamp(16px,2vw,24px);border:1px solid #e0d4bf;border-radius:24px;background:linear-gradient(135deg,#fffaf0,#fffdf9);color:var(--ink)}.pathway-learning-head,.pathway-practice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.pathway-learning-head h3,.pathway-practice-head h3{margin:0 0 5px;font-size:clamp(1.3rem,2.4vw,1.9rem)}.pathway-learning-head p:not(.kicker),.pathway-practice-head p:not(.kicker){margin:0;color:#625b6c;font-size:.9rem}.pathway-ready{flex:none;padding:7px 11px;border-radius:999px;color:#126956;background:#e2f7ee;font-size:.75rem;font-weight:700}.pathway-learning-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pathway-learning-card{display:flex;flex-direction:column;align-items:flex-start;min-height:154px;padding:14px;border:1px solid #ded5c7;border-radius:16px;color:var(--ink);background:#ffffffb8;text-align:left;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s}.pathway-learning-card:hover{transform:translateY(-2px)}.pathway-learning-card.is-active{border-color:#c38d35;background:#fff7e4;box-shadow:0 8px 24px #79511717}.pathway-learning-number{color:#ae7b28;font-family:var(--serif);font-size:1.45rem;line-height:1}.pathway-learning-label{margin-top:9px;color:#8d6c37;text-transform:uppercase;letter-spacing:.11em;font-size:.62rem;font-weight:700}.pathway-learning-card strong{margin-top:5px;font-size:.95rem}.pathway-learning-card p{margin:7px 0 0;color:#625b6c;font-size:.78rem;line-height:1.4}.pathway-learning-detail{display:grid;gap:4px;margin:15px 0;padding:13px 16px;border-left:3px solid #d49c3d;background:#fff7e4}.pathway-learning-detail strong{color:#5b411d}.pathway-learning-detail p{margin:0;color:#675b49;font-size:.88rem;line-height:1.5}.pathway-practice-head .btn{flex:none}.pathway-practice .lanes{margin-top:8px}.pathway-practice .chip-row{margin-block:16px}.pathway-svg{overflow:visible}.pathway-track{fill:none;stroke-width:11;stroke-linecap:round;stroke-linejoin:round;opacity:.2;transition:opacity .5s,filter .5s,stroke-width .5s}.pathway-track.is-focus{opacity:1;stroke-width:14;filter:drop-shadow(0 0 8px currentColor)}.pathway-blood{stroke:#ff8d7c;color:#ff8d7c}.pathway-blood-out{stroke:#b9b0ff;color:#b9b0ff}.pathway-filtrate{stroke:#ffc857;color:#ffc857}.pathway-reabsorb{stroke:#70e0cf;color:#70e0cf}.pathway-urine{stroke:#f6d286;color:#f6d286}.pathway-tube-highlight{fill:none;stroke:#fff1d8;stroke-width:3;stroke-dasharray:4 10;opacity:.32}.pathway-glomerulus{fill:#272746;stroke:#ff8d7c;stroke-width:5;opacity:.78;transition:opacity .4s,filter .4s}.pathway-glomerulus.is-focus{opacity:1;filter:drop-shadow(0 0 14px #ff8d7c)}.pathway-glomerulus-core{fill:none;stroke:#ffc857;stroke-width:2;stroke-dasharray:3 5;opacity:.75}.pathway-bowman{fill:#ffc8570d;stroke:#ffc857;stroke-width:2;opacity:.35;transition:opacity .5s,filter .5s}.pathway-bowman.is-focus{opacity:1;filter:drop-shadow(0 0 9px #ffc85780)}.pathway-bowman.is-focus circle{stroke-dasharray:1;stroke-dashoffset:1;animation:assembly-line 1.1s ease both}.pathway-capillaries{fill:none;stroke:#ff8d7c;stroke-width:4;stroke-linecap:round}.pathway-blood-node{fill:#24243d;stroke:#b9b0ff;stroke-width:4;opacity:.65;transition:opacity .4s,filter .4s}.pathway-blood-node.is-focus{opacity:1;filter:drop-shadow(0 0 12px #b9b0ff)}.pathway-bladder{fill:#24243d;stroke:#f6d286;stroke-width:4;opacity:.65;transition:opacity .4s,filter .4s}.pathway-bladder.is-focus{opacity:1;filter:drop-shadow(0 0 12px #f6d286)}.pathway-labels{fill:#b9c3dd;font-family:var(--sans);font-size:14px;letter-spacing:.04em}.pathway-callouts{pointer-events:none}.pathway-callout{color:var(--pathway-callout-color)}.pathway-callout path{fill:none;stroke:currentColor;stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:assembly-line .8s ease var(--pathway-callout-delay) forwards}.pathway-callout circle{fill:currentColor;animation:assembly-fade .5s ease var(--pathway-callout-delay) both}.pathway-callout text{fill:#fff6ef;paint-order:stroke fill;stroke:#101222;stroke-width:5px;stroke-linejoin:round;font-family:var(--sans);font-size:15px;font-weight:650;letter-spacing:.02em;animation:assembly-text .7s ease calc(var(--pathway-callout-delay) + .3s) both}.pathway-callout text.pathway-callout-detail{font-size:12px;font-weight:450;fill:#ffe2a2}.pathway-flow-dots{filter:drop-shadow(0 0 6px currentColor)}.section-task-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr);gap:24px;align-items:center}.section-task-sidebar{min-width:0}.section-task-instruction{font-size:.92rem;margin:0 0 12px}.section-labels{display:grid;grid-template-columns:1fr 1fr;gap:5px}.section-label{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:6px 12px;border:1px solid rgba(27,23,48,.18);border-radius:12px;background:#ffffffb3;color:var(--ink);text-align:left;font-size:.95rem}.section-label.is-draggable{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.section-label.is-draggable:active{cursor:grabbing}.section-label.is-on{border-color:#6553cb;background:#eee9ff;box-shadow:inset 0 0 0 1px #6553cb}.section-label.is-used{opacity:.5;cursor:default}.section-label-mark{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:#1b173012;font-size:.82rem}.section-explanation{border-left:3px solid #8d7cff;margin:12px 0;padding:0 0 0 12px;font-size:.9rem}.section-explanation p{margin:5px 0 0;line-height:1.4}.section-explanation .section-location{color:#6553a6;font-weight:600}.section-task-sidebar>.btn,.section-task-actions .btn{min-height:40px;padding:8px 14px;font-size:.9rem}.section-task-actions{display:flex;flex-wrap:wrap;gap:8px}.section-placement-status{min-height:40px;margin:12px 0}.section-removal-hint{font-size:.83rem;margin-bottom:0}.section-task-figure{min-width:0}.section-task-figure .figure-frame{width:min(100%,500px,max(300px,calc(116svh - 476px)));margin:0 auto}.section-task-figure .figure-note{text-align:center;font-size:.82rem;margin:8px 0 0}.section-task .hotspot{width:32px;height:32px;font-size:.8rem;font-weight:650}.section-task .hotspot.is-learning-active{color:#fff;background:#6553cb;border-color:#6553cb;box-shadow:0 0 0 5px #6553cb2e}.section-task .hotspot.is-correct{color:#fff;background:#0f8f6a;border-color:#0f8f6a}.section-task .hotspot.is-wrong{color:#fff;background:#c4473d;border-color:#c4473d}.section-task .hotspot em{left:36px;top:3px;font-size:.76rem;pointer-events:none}.section-task .hotspot em.label-left{left:auto;right:36px}.section-task .feedback{padding:12px;font-size:.9rem}.section-drag-preview{position:fixed;z-index:100;pointer-events:none;transform:translate(12px,-50%);border-radius:12px;padding:8px 12px;color:#fff;background:#6553cb;box-shadow:0 8px 24px #1b173040;font-size:.9rem}.lanes,.filter-board,.match-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.filter-board{grid-template-columns:1fr auto 1fr}.lane,.zone,.station-card,.player-copy{border-radius:24px;padding:14px;background:#ffffff9e}.lane h3{display:flex;gap:8px;align-items:center;font-size:1.2rem}.lane-coral h3 span{color:#e24b4b}.lane-gold h3 span{color:#b8860b}.slot{display:flex;flex-direction:column;width:100%;margin-bottom:8px;background:#fff}.slot small{color:#6d6780}.filter-wall{width:28px;display:grid;align-content:center;justify-items:center;gap:8px}.filter-wall span{width:10px;height:10px;border-radius:50%;background:#14b8a8}.filter-wall p{writing-mode:vertical-rl;margin:0;letter-spacing:.12em}.zone{display:flex;flex-direction:column;gap:8px}.zone.is-armed{outline:2px dashed var(--teal)}.zone-hit{background:transparent;border:0}.fact-toggle,.option{width:100%}.sort-help{color:#6d6780;font-size:.88rem}.sort-list{list-style:none;padding:0;margin:20px 0;display:grid;gap:10px}.sort-card{display:flex;align-items:center;gap:12px;min-height:72px;padding:12px 16px 12px 10px;border:1px solid #dcd4eb;border-radius:18px;background:#fffdf9;color:var(--ink);box-shadow:0 3px 12px #1b173006;transition:border-color .15s,background .15s,box-shadow .15s}.sort-card:focus-within{border-color:#8069de;box-shadow:0 0 0 3px #8069de18}.sort-card.is-dragging{background:#eee8ff;border:2px dashed #8069de;box-shadow:none}.sort-card.is-dragging>*{opacity:.25}.sort-card.is-ok{border-color:#83cdb2;background:#eaf8f0}.sort-card.is-bad{border-color:#e6a395;background:#fff0eb}.sort-handle{flex:none;display:grid;place-items:center;width:40px;min-height:44px;border:0;border-radius:10px;color:#766a94;background:#f3eef9;touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none}.sort-handle:hover{color:#6553cb;background:#e9e1ff}.sort-handle:active{cursor:grabbing}.sort-handle svg{width:16px;height:24px}.sort-position{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eee9f6;color:#6553a6;font-size:.85rem;font-weight:700}.sort-text{flex:1;font-weight:550;line-height:1.45}.sort-result{flex:none;font-weight:700;color:#a63d31}.sort-card.is-ok .sort-result{color:#0f8f6a}.sort-actions{display:flex;flex-wrap:wrap;gap:10px}.sort-drag-preview{position:fixed;z-index:100;pointer-events:none;display:flex;align-items:center;gap:18px;padding:12px 24px;border-radius:18px;border:2px solid #8069de;background:#f6f2ff;color:var(--ink);font-weight:550;line-height:1.45;box-shadow:0 18px 40px #1b173033;transform:rotate(-1deg);-webkit-user-select:none;user-select:none}.sort-preview-grip{flex:none;color:#6553cb;font-size:1.6rem}@media(max-width:600px){.sort-card{gap:8px;padding:10px 12px 10px 6px}.sort-position{width:24px;height:24px}.sort-text{font-size:.9rem}.sort-drag-preview{padding:12px;font-size:.9rem}}.ghost{color:#6d6780}.legend{display:flex;flex-wrap:wrap;gap:10px 16px;padding:0;list-style:none}.legend li{display:flex;gap:6px;align-items:center}.swatch{width:14px;height:14px;border-radius:50%;display:inline-block}.mark{width:1.1rem}.feedback{display:grid;gap:8px;margin-top:16px;padding:16px 18px;border-radius:22px;border:1px solid transparent}.feedback p{margin:0}.feedback-title,.feedback>strong{display:flex;align-items:center;gap:10px;margin:0;font-weight:680;font-size:1.05rem}.feedback-mark{width:28px;height:28px;display:grid;place-items:center;flex:none;border-radius:50%;font-weight:720;line-height:1}.feedback .btn{justify-self:start}.feedback .btn-ghost{margin-top:4px;border-color:currentColor;background:transparent;color:inherit}.feedback.is-ok{background:linear-gradient(180deg,#f7fdf9,#e8f7ef);color:#0d3b2e;border-color:#b7e4cc}.feedback.is-ok .feedback-mark{background:#0f8f6a;color:#fff}.feedback.is-bad{background:linear-gradient(180deg,#fff8f6,#fff0ec);color:#5c201c;border-color:#f0c2ba;box-shadow:inset 4px 0 #e24b4b}.feedback.is-bad .feedback-mark{background:#e24b4b;color:#fff}.is-ok{background:#e7f8f1;color:#0d3b2e}.is-bad{background:#fdecea;color:#5c201c}.callout{background:#fff;border-radius:16px;padding:12px}.zoom-bridge{display:flex;gap:10px;align-items:center;font-weight:650;margin-bottom:10px}.zoom-dot{width:18px;height:24px;border-radius:45% 55% 50% 50%;background:var(--coral);animation:zoom-pop 1.1s ease both}.nephron text{font-family:var(--sans)}.fig-kicker,.fig-label{font-size:15px;fill:#6d6780}.fig-label.dark{fill:#1b1730}.anatomy,.station{transition:opacity .3s ease}.nephron.is-focus .anatomy,.nephron.is-focus .station{opacity:.35}.nephron.is-focus .anatomy.is-on,.nephron.is-focus .station.is-on{opacity:1}.station{cursor:pointer}.station circle{fill:#fff;stroke:#1b1730;stroke-width:2}.station.is-on circle{fill:var(--ink)}.station text{fill:var(--ink);font-size:14px;text-anchor:middle;pointer-events:none}.station.is-on text{fill:#fff}.particle{opacity:0}.particle-cell{fill:#e24b4b}.particle-filt{fill:#14b8a8}.particle-back{fill:#7c6cf0}.mode-switch{display:flex;gap:8px;margin-bottom:12px}.mode-switch button{border-radius:999px;padding:8px 12px;border:1px solid rgba(27,23,48,.16);background:#fff}.mode-switch button.is-on{background:var(--ink);color:#fff}.player-copy{position:sticky;top:68px}.predict{border:0;margin:12px 0 0;padding:0;display:grid;gap:8px}.predict label{display:flex;gap:8px;align-items:flex-start}.transport{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px}.scrubber{flex:1;min-width:160px}.scrubber input{width:100%;accent-color:#9a4d32}.static-beats{padding-left:18px}.static-beats button{background:transparent;border:0;text-align:left}.static-beats .is-on{font-weight:700}.task-title{margin-top:28px}.balance-lab{color:#f8f3ed;border-radius:28px;padding:clamp(20px,2.4vw,32px);background:radial-gradient(ellipse at 20% 35%,#15434a55,transparent 55%),radial-gradient(ellipse at 95% 10%,#48327044,transparent 50%),#101322;border:1px solid #ffffff14;box-shadow:0 24px 55px #1b173020}.balance-lab-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #ffffff16}.balance-eyebrow{display:block;color:#b6a2ff;font-size:.69rem;font-weight:650;text-transform:uppercase;letter-spacing:.15em;margin-bottom:8px}.balance-lab-header h3{font-size:clamp(1.5rem,2.5vw,2rem);margin:0}.balance-live{flex:none;display:inline-flex;gap:8px;align-items:center;font-size:.72rem;color:#a5cac7}.balance-live i{width:6px;height:6px;border-radius:50%;background:#75ebdc;box-shadow:0 0 12px #75ebdc}.balance-lab[data-playback=paused] .balance-live i{background:#f6d286;box-shadow:none}.balance-lab-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(270px,1fr);gap:20px;padding:26px 0;align-items:center}.balance-visual{min-width:0}.balance-figure{display:block;width:100%;overflow:visible}.balance-orbit{fill:none;stroke:#75ebdc;opacity:.06;stroke-width:1}.balance-orbit.outer{stroke-dasharray:3 9;opacity:.12;transform-origin:342px 254px;animation:balance-orbit 80s linear infinite}.balance-duct{filter:drop-shadow(0 0 18px #75ebdc15)}.balance-channels>g{opacity:.18;transition:opacity .6s}.balance-channels>g.is-open{opacity:1}.balance-channels .is-open path{animation:balance-current 2s linear infinite}.balance-channels .is-open rect{filter:drop-shadow(0 0 5px #b6a2ff90)}.balance-signal{opacity:.5}.balance-water-particles{filter:drop-shadow(0 0 5px #75ebdc80)}.balance-urine-fill{transition:y .8s ease,height .8s ease,fill .8s ease}.balance-surface{animation:balance-wave 2.4s ease-in-out infinite alternate}.balance-svg-labels{fill:#f8f3ed;font-family:var(--sans);font-size:18px;font-weight:550}.balance-svg-labels text{paint-order:stroke fill;stroke:#101322;stroke-width:4px;stroke-linejoin:round}.balance-svg-labels .balance-label-water{fill:#75ebdc;font-size:16px}.balance-svg-labels .balance-label-urine{fill:#f6d286}.balance-adh-label rect{fill:#221f3b;stroke:#b6a2ff55}.balance-adh-label text{fill:#d0c2ff;font-family:var(--sans);font-size:17px;font-weight:600}.balance-adh-label .balance-adh-detail{font-size:12px;font-weight:400;fill:#aca3c1}.balance-legend{display:flex;gap:20px;justify-content:center;margin-top:10px;font-size:.72rem;color:#a6adbf}.balance-legend span{display:inline-flex;align-items:center;gap:7px}.balance-legend i{width:7px;height:7px;border-radius:50%;background:#83f6e8}.balance-legend span:nth-child(2) i{background:#ff96aa}.balance-legend span:nth-child(3) i{background:#b6a2ff}.balance-dashboard{padding:20px;border-radius:20px;background:#ffffff04;border:1px solid #ffffff12}.balance-control-heading{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-bottom:16px}.balance-control-heading .balance-eyebrow{margin:0}.balance-strength{color:#d0c2ff;font-size:.72rem;border-radius:999px;padding:5px 9px;background:#b6a2ff16}.balance-control{display:grid;gap:12px;font-size:.85rem;font-weight:550}.balance-control input{accent-color:#b6a2ff;width:100%;cursor:pointer;height:22px;margin:0}.balance-range-labels{display:flex;justify-content:space-between;margin-top:-8px;font-size:.65rem;font-weight:400;color:#a6adbf}.balance-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.balance-presets button{border-radius:10px;border:1px solid #ffffff18;background:#ffffff04;padding:8px 6px;color:#c2bfd1;font-size:.76rem;transition:background .2s,border-color .2s}.balance-presets button[aria-pressed=true]{border-color:#b6a2ff;background:#b6a2ff20;color:#e8e0ff}.balance-presets button:hover{background:#b6a2ff28}.balance-response{border-top:1px solid #ffffff14;margin-top:20px;padding-top:18px;min-height:166px;animation:balance-reveal .5s ease both}.balance-response h4{font-family:var(--serif);letter-spacing:-.02em;font-size:1.4rem;line-height:1.2;margin:0 0 10px;font-weight:550}.balance-response p{color:#bcbdd0;font-size:.8rem;line-height:1.5;margin:0}.balance-readouts{display:grid;gap:16px;margin-top:18px}.balance-readout-label{display:block;font-size:.67rem;color:#a6adbf;margin-bottom:4px}.balance-readouts strong{font-size:.82rem;font-weight:550;color:#75ebdc}.balance-urine-readout strong{color:#f6d286}.balance-meter{height:5px;border-radius:5px;background:#ffffff10;margin-top:8px;overflow:hidden}.balance-meter>span{display:block;height:100%;background:#75ebdc;border-radius:inherit;transform-origin:left;transition:transform .8s}.balance-urine-readout .balance-meter>span{background:#f6d286}.balance-challenge{display:flex;gap:24px;justify-content:space-between;align-items:center;border:1px solid #b6a2ff40;border-radius:18px;padding:18px 20px;background:#b6a2ff09}.balance-challenge strong{display:block;font-size:.93rem;font-weight:550}.balance-challenge p{font-size:.77rem;color:#bcbdd0;margin:6px 0 0}.balance-observations{display:grid;gap:8px;flex:none;font-size:.75rem;color:#989aaf}.balance-observations .is-seen{color:#75ebdc}.balance-lab .feedback{font-size:.88rem}@keyframes balance-orbit{to{transform:rotate(360deg)}}@keyframes balance-current{to{stroke-dashoffset:-22}}@keyframes balance-wave{to{transform:translate(-28px)}}@keyframes balance-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.balance-lab.is-reduced *,.balance-lab.is-reduced *:before,.balance-lab.is-reduced *:after{animation:none!important;transition:none!important}@media(max-width:900px){.balance-lab-grid{grid-template-columns:1fr}.balance-figure{width:min(100%,620px);margin:auto}.balance-response{min-height:0}.balance-readouts{grid-template-columns:1fr 1fr}}@media(max-width:600px){.balance-lab-header{align-items:flex-start;flex-direction:column}.balance-dashboard{padding:16px}.balance-challenge{align-items:stretch;flex-direction:column}.balance-observations{grid-template-columns:1fr 1fr}}.link-map{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-bottom:16px}.link-map strong{width:92px;height:112px;display:grid;place-items:center;border-radius:46% 54% 50% 50%;background:var(--coral);color:#3b1210}.link-map span{padding:12px;border-radius:16px;border:1px dashed var(--line)}.fact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.fact{border-radius:24px;padding:12px;background:#ffffff0a;border:1px solid var(--line)}.fact.is-open{background:var(--cream);color:var(--ink)}.fact-top{display:flex;gap:8px;align-items:flex-start}.fact-toggle{display:grid;gap:8px;background:transparent;border:0;text-align:left;padding:0}.fact-art{width:120px;height:72px}.fact.is-open .fact-art text{fill:#145c56}.fav{border:0;background:transparent;font-size:1.3rem;color:var(--muted)}.fav.is-on{color:var(--gold)}.fact-copy a{color:#0f766e}.options{display:grid;gap:8px}.option.is-correct{background:#e7f8f1;color:#0d3b2e}.option.is-wrong{background:#fdecea;color:#5c201c}.quiz-sheet{padding:clamp(20px,2.3vw,28px);border:1px solid #ffffff30;border-radius:30px;color:var(--ink);color-scheme:light;background:radial-gradient(ellipse at 100% 0,#ddd3ec80,transparent 45%),#f7f2e9;box-shadow:0 24px 70px #00000030}.quiz-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:18px}.quiz-eyebrow{margin:0 0 10px;color:#766188;font-size:.66rem;font-weight:650;letter-spacing:.15em;text-transform:uppercase}.quiz-header h2{margin:0 0 10px;font-size:clamp(2rem,3.2vw,3.2rem)}.quiz-header h2:focus{outline:none}.quiz-header>div>p:last-child{margin:0;color:#686073;font-size:.95rem}.quiz-header-badge{display:flex;align-items:center;gap:12px;flex:none;padding:13px 18px;border:1px solid #a394cd33;border-radius:16px;background:#ffffff50}.quiz-header-badge>span{color:#9174ac;font-size:2rem}.quiz-header-badge strong,.quiz-header-badge small{display:block}.quiz-header-badge strong{font-size:.85rem;font-weight:600}.quiz-header-badge small{margin-top:3px;color:#736a80;font-size:.72rem}.quiz{scroll-margin-top:68px}.quiz-progress{display:grid;grid-template-columns:150px 1fr 145px;align-items:center;gap:20px;padding:14px 0 18px;border-top:1px solid #211a3514}.quiz-progress p{margin:0;font-size:.78rem;color:#6c6178}.quiz-progress p strong{font-size:1.05rem;color:#352a47}.quiz-progress ol{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:0;margin:0;list-style:none}.quiz-progress button{display:grid;place-items:center;width:100%;height:32px;padding:0;border:1px solid #a394cd24;border-radius:8px;color:#736581;background:#eae4ef;font-size:.72rem;font-weight:600;transition:background .2s ease}.quiz-progress button.is-done{color:#59446f;background:#dfd3eb}.quiz-progress button.is-current{color:#f6f0ff;border-color:#524366;background:#524366;box-shadow:0 3px 8px #5143661a}.quiz-progress button:disabled{cursor:default;opacity:.6}.quiz-progress button:not(:disabled):hover{border-color:#9174ac}.quiz-progress-note{text-align:right;color:#796f83;font-size:.72rem}.quiz-workspace{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.85fr);align-items:stretch;gap:20px}.quiz-question-card{padding:clamp(20px,1.9vw,24px);border:1px solid #d9d0df;border-radius:22px;background:#fffdf8;box-shadow:0 6px 24px #29203e05;animation:quiz-reveal .3s ease both}.quiz-question-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;color:#81768a;font-size:.66rem}.quiz-topic{padding:5px 10px;border-radius:999px;background:#eee6f4;color:#69517d;font-size:.68rem;font-weight:600}.quiz-question-card h3{margin:0 0 10px;font-size:clamp(1.55rem,2.1vw,2.2rem);line-height:1.16}.quiz h3:focus{outline:none}.quiz-instruction{margin:0 0 16px;color:#81768a;font-size:.78rem}.quiz-options{display:grid;gap:8px}.quiz-option{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:11px 13px;border:1px solid #dcd5e1;border-radius:14px;background:#f8f5fa;color:#3a3248;text-align:left;font-size:.9rem;line-height:1.45;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.quiz-option:hover{border-color:#a18bb7;background:#f1ebf7;box-shadow:0 3px 12px #7b5c9810}.quiz-option-letter{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid #d8cce2;border-radius:10px;background:#ede6f3;color:#806393;font-size:.72rem;font-weight:650}.quiz-option-copy{flex:1}.quiz-option-copy small{display:block;margin-top:3px;font-size:.65rem;font-weight:550;opacity:.8}.quiz-option-mark{width:18px;height:18px;flex:none;display:grid;place-items:center;border:1px solid #c9bcd5;border-radius:50%;color:#87629f;font-size:.75rem;font-weight:700}.quiz-option.is-selected{border-color:#9476b0;box-shadow:0 0 0 1px #9476b0}.quiz-option.is-correct{background:#edf5ef;border-color:#80a891;color:#294b38;box-shadow:none}.quiz-option.is-correct .quiz-option-letter{background:#dcecdf;border-color:#bdd5c6;color:#48765a}.quiz-option.is-correct .quiz-option-mark{background:#4f7d61;border-color:#4f7d61;color:#fff}.quiz-option.is-wrong{background:#fbefed;border-color:#c58d85;color:#79413a;box-shadow:none}.quiz-option.is-wrong .quiz-option-letter{background:#f0dcd7;border-color:#e6bdb5;color:#9b5b50}.quiz-option.is-wrong .quiz-option-mark{background:#b66f62;border-color:#b66f62;color:#fff}.quiz-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid #211a3510}.quiz-primary{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:11px 17px;border:1px solid #4f3b68;border-radius:12px;color:#fcf8ff;background:linear-gradient(135deg,#69507f,#473458);box-shadow:0 5px 14px #5d427822;font-size:.8rem;font-weight:550;transition:box-shadow .2s ease,opacity .2s ease}.quiz-primary:hover:not(:disabled){box-shadow:0 5px 18px #5d427844}.quiz-primary:disabled{color:#8b8098;background:#ede7f2;border-color:#e2d9e9;box-shadow:none;cursor:default}.quiz-back{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 0;border:0;background:transparent;color:#7e6a8f;font-size:.8rem}.quiz-back:hover{color:#402752}.quiz-back:disabled{visibility:hidden}.quiz-insight{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(22px,2.5vw,32px);border:1px solid #ffffff15;border-radius:22px;color:#eee7f5;background:radial-gradient(ellipse at 100% 0,#80639545,transparent 70%),#242034;box-shadow:0 10px 24px #1b173019}.quiz-insight-symbol{display:grid;place-items:center;width:52px;height:52px;margin-bottom:28px;border:1px solid #c8b1e333;border-radius:16px;background:#b99bd914;color:#d7bee9;font-family:var(--serif);font-size:1.8rem}.quiz-insight-symbol svg{width:30px;height:30px}.quiz-insight .quiz-eyebrow{color:#bfa7d2}.quiz-insight h4{margin:0 0 14px;font-family:var(--serif);font-size:1.8rem;line-height:1.1;font-weight:500;letter-spacing:-.03em}.quiz-insight-message>p:last-child{margin:0 0 24px;color:#c4bbce;font-size:.86rem;line-height:1.65}.quiz-insight.is-answered .quiz-insight-message{animation:quiz-reveal .3s ease both}.quiz-insight.is-correct .quiz-insight-symbol{background:#98b49f1c;border-color:#98b49f45;color:#b5d0bd}.quiz-related{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:auto;padding:15px 0 0;border:0;border-top:1px solid #ffffff18;color:#e0d0ed;background:transparent;text-align:left}.quiz-related small,.quiz-related strong{display:block}.quiz-related small{color:#a898b9;font-size:.65rem;margin-bottom:5px}.quiz-related strong{font-size:.83rem;font-weight:500}.quiz-related>span:last-child{font-size:1.4rem}.quiz-related:hover{color:#fff}.quiz-insight-tip{display:flex;align-items:center;gap:10px;width:100%;margin-top:auto;padding-top:15px;border-top:1px solid #ffffff18;color:#a898b9;font-size:.72rem}.quiz :focus-visible{outline:3px solid #a394cd;outline-offset:3px}.quiz-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.quiz-result-intro{text-align:center;padding:16px 24px 24px}.quiz-score-ring{position:relative;width:180px;height:180px;margin:0 auto 22px}.quiz-score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.quiz-score-ring circle{fill:none;stroke-width:8}.quiz-score-track{stroke:#e5ddec}.quiz-score-fill{stroke:#9073a6;stroke-linecap:round}.quiz-score-ring>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.quiz-score-ring strong{font-family:var(--serif);font-size:4rem;line-height:1;font-weight:500}.quiz-score-ring strong span{font-family:var(--sans);font-size:1.3rem;color:#9d8aa9}.quiz-score-ring small{font-size:.75rem;color:#8a7997;margin-top:8px}.quiz-result h3{font-size:2rem;line-height:1.1;margin-bottom:14px}.quiz-result-intro>p:not(.quiz-eyebrow){font-size:.9rem;color:#786d82;margin:0 0 24px}.quiz-result-list{border-radius:22px;padding:28px;background:#242034;color:#eee7f5}.quiz-result-list .quiz-eyebrow{color:#baa5cd;margin-bottom:20px}.quiz-result-list>button{display:flex;align-items:center;gap:14px;width:100%;padding:17px 0;border:0;border-bottom:1px solid #ffffff13;color:inherit;text-align:left;background:transparent}.quiz-result-list>button:last-child{border-bottom:0}.quiz-result-list>button:hover{color:#fff}.quiz-result-mark{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid #bfa8d333;border-radius:11px;color:#c4aad8;background:#b99bd910}.quiz-result-mark.is-correct{color:#b5d0bd;background:#98b49f12;border-color:#98b49f33}.quiz-result-list strong,.quiz-result-list small{display:block}.quiz-result-list strong{font-size:.9rem;font-weight:550}.quiz-result-list small{margin-top:4px;color:#a89ab6;font-size:.71rem}.quiz-result-arrow{margin-left:auto;color:#ad94c0;font-size:1.25rem}@keyframes quiz-reveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}html[data-motion=reduced] .quiz *,html[data-motion=reduced] .quiz *:before{animation:none!important;transition:none!important}@media(max-width:1100px){.quiz-workspace{grid-template-columns:minmax(0,1.5fr) minmax(230px,.85fr);gap:16px}.quiz-header-badge{padding:10px 12px}.quiz-insight{padding:24px}.quiz-progress{grid-template-columns:125px 1fr;gap:16px}.quiz-progress-note{display:none}}@media(max-width:800px){.quiz-workspace,.quiz-result{grid-template-columns:1fr}.quiz-insight{display:grid;grid-template-columns:44px 1fr;gap:0 18px}.quiz-insight-symbol{width:44px;height:44px;margin:0;border-radius:13px}.quiz-insight h4{font-size:1.6rem}.quiz-insight-message>p:last-child{margin-bottom:18px}.quiz-related,.quiz-insight-tip{grid-column:2}.quiz-result-intro{padding-top:0}}@media(max-width:560px){.quiz-sheet{padding:20px 16px;border-radius:24px}.quiz-header{padding-bottom:20px}.quiz-header-badge{display:none}.quiz-header>div>p:last-child{font-size:.84rem}.quiz-progress{grid-template-columns:1fr;gap:12px;padding:16px 0 20px}.quiz-question-card{padding:20px 16px;border-radius:18px}.quiz-question-meta{margin-bottom:16px;font-size:.61rem}.quiz-question-card h3{font-size:1.65rem}.quiz-option{padding:12px;gap:9px;font-size:.86rem}.quiz-option-letter{width:26px;height:28px;border-radius:8px}.quiz-option-mark{width:16px;height:16px}.quiz-actions{flex-wrap:wrap;gap:8px}.quiz-actions .quiz-primary{margin-left:auto}.quiz-primary{padding:11px 12px;gap:10px;font-size:.75rem}.quiz-insight{padding:22px 18px;gap:0 14px}.quiz-insight-message>p:last-child{font-size:.82rem}.quiz-result-list{padding:24px 20px}}.soon{padding:32px 0 64px}@keyframes drift{to{background-position:30% 70%,60% 30%}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes pulse{50%{opacity:.72}}@keyframes zoom-pop{0%{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}@media(max-width:860px){.home-hero,.hero-grid,.player-layout,.lanes,.filter-board,.match-grid{grid-template-columns:1fr}.filter-wall{width:auto;grid-auto-flow:column}.filter-wall p{writing-mode:horizontal-tb}.player-copy{position:static}.stage-3d{min-height:360px;height:68vw}h1{font-size:clamp(2.3rem,11vw,3.4rem)}}@media(max-width:700px){.overview-roles{grid-template-columns:1fr}.section-task-layout{grid-template-columns:1fr;gap:18px}.section-task-figure{grid-row:1}.section-task-figure .figure-frame{width:min(100%,400px)}.section-labels{grid-template-columns:1fr 1fr}.section-task .hotspot{width:28px;height:28px}.section-task .hotspot em{left:50%;top:32px;transform:translate(-50%);max-width:110px;white-space:normal;line-height:1.1}.section-task .hotspot em.label-left{left:50%;right:auto}}@media(max-width:900px){:root{--header-height: 66px}.home,.module-page{padding-top:36px}.site-header{padding-inline:16px}.brand{font-size:1rem}.brand-mark{width:38px;height:38px;border-radius:12px}.brand-mark:before{width:13px;height:17px}.chapter-menu-toggle{height:42px;padding-inline:14px;gap:8px;border-radius:12px;font-size:.95rem}.chapter-menu-toggle svg{width:20px;height:20px}.progress-pill{display:inline-flex;align-items:center;min-height:40px;padding:8px 13px;font-size:.88rem}}@media(max-width:560px){.site-header{padding:0 14px;gap:10px}.header-brand{gap:10px}.brand-name,.progress-label{display:none}.header-actions{gap:8px}.progress-pill{padding:8px 12px}.chapter-menu-toggle{padding-inline:12px}.hotspot em{left:0;top:36px}}html[data-motion=reduced] body:before,html[data-motion=reduced] .draw,html[data-motion=reduced] .is-kidney,html[data-motion=reduced] .zoom-dot,html[data-motion=reduced] .part,html[data-motion=reduced] .anatomy,html[data-motion=reduced] .station{animation:none;transition:none}.section-phase .assembly-trigger{display:inline-flex;align-items:center;gap:8px;background:#ece3f6;border-color:#b6a2ce;color:#59416e}.assembly-trigger svg{width:20px;height:20px;flex:none}.assembly-dialog[open]{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;display:flex;flex-direction:column;overflow:hidden;color:#fff4ec;color-scheme:dark;background:radial-gradient(ellipse at 28% 43%,#5831483d,transparent 53%),radial-gradient(ellipse at 88% 20%,#5a47742e,transparent 54%),#0f1020;font-family:var(--sans);--assembly-accent: #ffc5d0}.assembly-dialog::backdrop{background:#0f1020}.assembly-dialog:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(#81708916 1px,transparent 1px),linear-gradient(90deg,#81708916 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse at center,black,transparent 85%);mask-image:radial-gradient(ellipse at center,black,transparent 85%)}.assembly-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px clamp(24px,4vw,70px);border-bottom:1px solid #ffffff12}.assembly-header p{margin:0 0 5px;color:#b5a6c7;text-transform:uppercase;font-size:.62rem;letter-spacing:.2em}.assembly-header h1{margin:0;font-family:var(--sans);font-size:1rem;font-weight:500;letter-spacing:0}.assembly-close{display:flex;align-items:center;gap:12px;background:#ffffff08;border:1px solid #ffffff22;color:#e6ddea;border-radius:30px;padding:8px 16px;font-size:.85rem}.assembly-close span{font-size:1.5rem;line-height:1}.assembly-content{position:relative;flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.85fr);gap:clamp(20px,4vw,80px);align-items:center;padding:14px clamp(24px,4vw,70px);overflow:auto}.assembly-visual{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.assembly-orbit{position:absolute;width:min(75%,calc(100dvh - 330px));aspect-ratio:1;border:1px solid #f8b7c916;border-radius:50%;pointer-events:none}.assembly-orbit-one{transform:rotate(-20deg) scaleX(.92);border-style:dashed}.assembly-orbit-two{width:min(94%,calc(100dvh - 290px));border-color:#ab91d514}.assembly-figure{position:relative;width:min(100%,720px,calc((100dvh - 270px)*1.1613));aspect-ratio:720 / 620}.assembly-figure:before{content:"";position:absolute;width:72%;height:90%;top:7%;left:4%;background:radial-gradient(ellipse,#ffc0cf15,transparent 66%);filter:blur(20px)}.assembly-svg{position:relative;overflow:visible}.assembly-svg>ellipse{fill:#080912;opacity:.6}.assembly-svg .section-outline{stroke:#f5b6c5;stroke-width:3;opacity:.35;stroke-dasharray:1800;animation:assembly-outline 2s ease both}.assembly-svg .assembly-part{transform-box:view-box;transform-origin:310px 310px;transition:opacity .55s,transform .8s,filter .7s;opacity:.82}.assembly-svg .assembly-part[data-part=cortex]{--part-x: -110px;--part-y: -70px;--part-rotate: -18deg}.assembly-svg .assembly-part[data-part=medulla]{--part-x: -60px;--part-y: -170px;--part-rotate: 13deg}.assembly-svg .assembly-part[data-part=pelvis]{--part-x: 170px;--part-y: -40px;--part-rotate: 22deg}.assembly-svg .assembly-part[data-part=ureter]{--part-x: 80px;--part-y: 150px;--part-rotate: 15deg}.assembly-svg .assembly-part[data-part=artery]{--part-x: 160px;--part-y: -90px;--part-rotate: -14deg}.assembly-svg .assembly-part[data-part=vein]{--part-x: 160px;--part-y: 80px;--part-rotate: 14deg}.assembly-svg .assembly-part.is-pending{opacity:0;transform:translate(var(--part-x),var(--part-y)) rotate(var(--part-rotate)) scale(.75);pointer-events:none}.assembly-svg .assembly-part.is-building{opacity:1;animation:assembly-piece 1.65s cubic-bezier(.16,.8,.22,1) both;filter:drop-shadow(0 0 9px var(--assembly-accent))}.assembly-svg .assembly-part[data-part=medulla].is-building>path{animation:assembly-pyramid 1.1s ease both}.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(2),.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(7){animation-delay:.16s}.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(3),.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(8){animation-delay:.32s}.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(4){animation-delay:.48s}.assembly-svg .assembly-part[data-part=medulla].is-building>path:nth-child(5){animation-delay:.64s}.assembly-callouts{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.assembly-callout{color:var(--callout-color)}.assembly-callout path{fill:none;stroke:currentColor;stroke-width:1.4;stroke-dasharray:1;stroke-dashoffset:1;animation:assembly-line .8s ease var(--callout-delay) forwards}.assembly-callout circle{fill:currentColor;animation:assembly-fade .5s ease var(--callout-delay) both}.assembly-callout .assembly-anchor-ring{fill:none;stroke:currentColor;stroke-width:1;opacity:.5}.assembly-callout text{fill:#fff6ef;paint-order:stroke fill;stroke:#101222;stroke-width:5px;stroke-linejoin:round;font-size:16px;font-family:var(--sans);font-weight:650;letter-spacing:.03em;animation:assembly-text .7s ease calc(var(--callout-delay) + .35s) both}.assembly-figure-corner{position:absolute;width:20px;height:20px;border-color:#cba9d84d;border-style:solid;pointer-events:none}.corner-top{top:5%;left:1%;border-width:1px 0 0 1px}.corner-bottom{right:1%;bottom:4%;border-width:0 1px 1px 0}.assembly-figure-note{margin:8px 0 0;font-size:.65rem;letter-spacing:.03em;color:#93899f;text-align:center}.assembly-copy{max-width:580px;padding:12px 0}.assembly-chapter{display:flex;align-items:center;gap:14px;color:var(--assembly-accent);margin-bottom:14px;animation:assembly-text .65s ease both}.assembly-chapter-number{display:inline-grid;place-items:center;font-family:var(--serif);font-size:1.8rem;line-height:1;width:45px;height:45px;border:1px solid #ffffff1e;border-radius:50%}.assembly-chapter>span:nth-child(2){font-size:.68rem;text-transform:uppercase;letter-spacing:.15em}.assembly-chapter i{height:1px;flex:1;background:linear-gradient(90deg,var(--assembly-accent),transparent);opacity:.3}.assembly-title{font-size:clamp(3rem,5.2vw,6.2rem);line-height:1.03;margin:0 0 22px;color:#fff1e7;font-weight:500}.assembly-title-word{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:top;margin-right:.2em;padding-bottom:.09em}.assembly-letter{display:inline-block;animation:assembly-letter .9s cubic-bezier(.18,.75,.23,1) var(--letter-delay) both}.assembly-body{color:#d1c9dc;font-size:clamp(.98rem,1.4vw,1.2rem);line-height:1.65;margin:0;animation:assembly-text .8s ease .35s both}.assembly-purpose{display:flex;gap:16px;align-items:flex-start;margin-top:24px;padding:18px 0;border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff18;animation:assembly-text .8s ease .7s both}.assembly-purpose>span{color:var(--assembly-accent);font-size:1.4rem;line-height:1.3}.assembly-purpose p{margin:0;color:var(--assembly-accent);font-size:1.12rem;font-weight:500;line-height:1.4}.assembly-location{color:#9c91ab;font-size:.82rem;margin:18px 0 0;animation:assembly-text .8s ease 1s both}.assembly-recap{display:grid;gap:10px;margin:20px 0}.assembly-recap p{margin:0;padding-left:14px;border-left:1px solid #a995c5;animation:assembly-text .8s ease .5s both}.assembly-recap p:nth-child(2){animation-delay:.65s}.assembly-recap p:nth-child(3){animation-delay:.8s}.assembly-recap strong,.assembly-recap span{display:block}.assembly-recap strong{font-size:.9rem;color:#e5d5f5;margin-bottom:3px;font-weight:500}.assembly-recap span{font-size:.8rem;color:#aea2bd;line-height:1.4}.assembly-return{border:1px solid #cbb4e5;background:#dbcaff;color:#261c35;padding:11px 18px;border-radius:30px;font-size:.85rem;animation:assembly-text .7s ease 1s both}.assembly-footer{position:relative;border-top:1px solid #ffffff14;padding:16px clamp(24px,4vw,70px) 18px;background:#0f1020de}.assembly-parts{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}.assembly-parts button{display:flex;gap:8px;align-items:center;background:transparent;border:1px solid #ffffff16;color:#a79db7;border-radius:30px;padding:7px 12px;font-size:.74rem;min-height:36px;transition:background .25s,color .25s,border-color .25s}.assembly-parts button>span{font-size:.66rem;width:17px;text-align:center}.assembly-parts button.is-built{color:#d5c7dd}.assembly-parts button.is-current{background:#ffffff0e;border-color:var(--assembly-accent);color:var(--assembly-accent)}.assembly-transport{display:flex;gap:16px;align-items:center}.assembly-progress{height:3px;flex:1;background:#ffffff12;overflow:hidden;border-radius:5px}.assembly-progress>div{height:100%;background:var(--assembly-accent);transform:scaleX(var(--assembly-progress, 0));transform-origin:left}.assembly-counter{color:#b4a4c5;font-size:.65rem;min-width:58px;letter-spacing:.08em}.assembly-buttons{display:flex;gap:6px}.assembly-buttons button{min-width:36px;min-height:36px;padding:6px 10px;border:1px solid #ffffff1a;background:#ffffff08;color:#e2d5ee;border-radius:25px;font-size:.82rem}.assembly-buttons button:disabled{opacity:.3;cursor:default}.assembly-buttons .assembly-play{min-width:100px}.assembly-key-hint{color:#80738f;font-size:.62rem}.assembly-dialog.is-complete .assembly-svg .assembly-part{opacity:1;filter:none}.assembly-dialog.is-paused *,.assembly-dialog.is-paused *:before,.assembly-dialog.is-paused *:after{animation-play-state:paused!important}.assembly-dialog.is-reduced *,.assembly-dialog.is-reduced *:before,.assembly-dialog.is-reduced *:after{animation:none!important;transition:none!important}.assembly-dialog.is-reduced .assembly-svg .assembly-part.is-building{transform:none;opacity:1}.assembly-dialog.is-reduced .assembly-callout path{stroke-dashoffset:0}.assembly-dialog.is-reduced .assembly-progress>div{transform:scaleX(calc((var(--assembly-step, 0) + 1) / 7))}@keyframes assembly-piece{0%{opacity:0;transform:translate(var(--part-x),var(--part-y)) rotate(var(--part-rotate)) scale(.75)}70%{opacity:1;transform:translateY(-5px) rotate(-1deg) scale(1.015)}to{opacity:1;transform:translate(0) rotate(0) scale(1)}}@keyframes assembly-pyramid{0%{opacity:0}to{opacity:1}}@keyframes assembly-outline{0%{stroke-dashoffset:1800}to{stroke-dashoffset:0}}@keyframes assembly-letter{0%{opacity:0;transform:translateY(115%) rotate(8deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes assembly-text{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes assembly-fade{0%{opacity:0}to{opacity:1}}@keyframes assembly-line{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(max-width:1000px){.assembly-content{gap:20px;grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.assembly-title{font-size:clamp(2.5rem,5vw,4rem)}.assembly-key-hint{display:none}.assembly-parts{gap:5px}.assembly-parts button{padding:6px 9px;font-size:.68rem}}@media(max-width:700px){.section-phase{flex-wrap:wrap}.section-phase .assembly-trigger{flex:1 0 100%;justify-content:center}.pathway-learning-grid{grid-template-columns:1fr 1fr}.pathway-learning-head,.pathway-practice-head{flex-direction:column;align-items:stretch}.pathway-practice-head .btn{align-self:stretch;text-align:center}.pathway-ready{align-self:flex-start}.pathway-learning-card{min-height:132px;padding:11px}.pathway-learning-card strong{font-size:.86rem}.pathway-learning-card p{font-size:.72rem}.assembly-header{padding:14px 18px}.assembly-header h1{font-size:.88rem}.assembly-close{padding:7px 12px;font-size:.75rem}.assembly-content{display:flex;flex-direction:column;gap:8px;align-items:stretch;padding:12px 22px 20px}.assembly-figure{width:min(100%,340px)}.assembly-copy{padding:10px 0}.assembly-chapter{margin-bottom:8px}.assembly-chapter-number{width:36px;height:36px;font-size:1.4rem}.assembly-title{font-size:2.8rem;margin-bottom:14px}.assembly-body{font-size:.95rem}.assembly-purpose{margin-top:16px;padding:14px 0}.assembly-purpose p{font-size:.98rem}.assembly-location{margin-top:12px}.assembly-footer{padding:12px 16px 14px}.assembly-parts{margin-bottom:12px}.assembly-parts button{font-size:.66rem;min-height:30px}.assembly-transport{gap:10px}.assembly-figure-note{font-size:.58rem}}.nephron-intro-card{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:center;padding:26px 32px;border:1px solid #bcacda;border-radius:24px;background:linear-gradient(125deg,#eee6fa,#fbf5ed);max-width:960px;margin:0 auto 24px}.nephron-intro-number{display:flex;flex-direction:column;text-align:center;color:#6950ac}.nephron-intro-number strong{font-family:var(--serif);font-size:clamp(2rem,4vw,3.4rem)}.nephron-intro-number span{font-size:.85rem}.nephron-intro-card h3{margin:0 0 10px}.nephron-intro-card p{margin:0}.nephron-animation-launch{text-align:center;margin-bottom:24px}.nephron-animation-launch p{margin:12px 0;font-size:.8rem;color:#655d74}.nephron-trigger{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:32px;border:1px solid #b6a2ce;color:#59416e;background:#ece3f6;font-weight:700}.nephron-explore{border-top:1px solid #d9cee4;padding-top:28px;animation:assembly-text .8s ease both}.nephron-explore-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;max-width:1000px;margin:auto}.nephron-explore-layout>.nephron{width:min(100%,380px);justify-self:center}.nephron-station-buttons{display:grid;gap:7px}.nephron-station-buttons button{display:flex;align-items:center;gap:10px;text-align:left;background:#fffaf3;color:#231d37;border:1px solid #d9cee4;border-radius:12px;padding:9px 12px;font-size:.85rem}.nephron-station-buttons button span{display:grid;place-items:center;border-radius:50%;width:25px;height:25px;flex:none;background:#e9e0f3}.nephron-station-buttons button[aria-pressed=true]{border-color:#7c6cf0;background:#eee9ff;box-shadow:inset 0 0 0 1px #7c6cf0}.nephron-station-copy{margin-top:22px;animation:assembly-text .45s ease both}.nephron-collecting-note{border-left:3px solid #c3a04c;padding-left:12px}.nephron-dialog .assembly-title{font-size:clamp(2.6rem,4.1vw,5rem)}.nephron-dialog .assembly-figure{aspect-ratio:760 / 620}.nephron-dialog.is-reduced .assembly-progress>div{transform:scaleX(var(--assembly-progress, 0))}.nephron-motion-svg{display:block;width:100%;height:100%;overflow:hidden}.nephron-micro-orbit{fill:none;stroke:#d9baff13;stroke-width:1}.nephron-micro-orbit.outer{stroke-dasharray:4 8;animation:nephron-orbit 55s linear infinite;transform-origin:340px 305px}.nephron-camera{transform-origin:0 0;transform-box:view-box;transition:transform 1.25s cubic-bezier(.2,.8,.2,1)}.nephron-kidney-zoom{opacity:0;transition:opacity .5s}.nephron-kidney-zoom.is-visible{opacity:1;animation:assembly-text 1s ease both}.nephron-zoom-line{fill:none;stroke:#c4b5fd;stroke-width:2;stroke-dasharray:5 5;animation:nephron-dash 2s linear infinite}.nephron-medulla-zone{fill:#92c5ff08}.nephron-zone-line{fill:none;stroke:#aaa5c04d;stroke-dasharray:7 7}.nephron-zone-label{fill:#bcb3c9;font-size:16px;letter-spacing:3px}.nephron-motion-part{transition:opacity .7s,filter .7s;opacity:.75}.nephron-motion-part.is-pending{opacity:.075}.nephron-motion-part.is-focus{opacity:1;filter:drop-shadow(0 0 7px var(--assembly-accent))}.nephron-motion-part.is-focus .nephron-draw-tube{stroke-dasharray:1;animation:nephron-tube 1.5s ease both}.nephron-motion-callout path{stroke-dasharray:1;animation:nephron-tube 1s .3s ease both}.nephron-motion-callout text{animation:assembly-text .7s .65s both}.nephron-motion-label{fill:#fff8ef;font-size:19px;font-weight:700;paint-order:stroke fill;stroke:#111425;stroke-width:6px;stroke-linejoin:round}.nephron-overview-key{font-size:21px;font-weight:700}@keyframes nephron-tube{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes nephron-dash{to{stroke-dashoffset:-20}}@keyframes nephron-orbit{to{transform:rotate(360deg)}}@media(max-width:700px){.nephron-intro-card{grid-template-columns:1fr;gap:18px;padding:20px;text-align:center}.nephron-explore-layout{grid-template-columns:1fr}.nephron-dialog .assembly-title{font-size:2.4rem}.nephron-dialog .assembly-key-hint{display:none}}.nephron-lesson{min-height:calc(100dvh - 100px)}.nephron-exchange text{fill:#fff8ef;font-size:20px;font-weight:700;paint-order:stroke fill;stroke:#111425;stroke-width:5px}.function-lesson{min-height:calc(100dvh - 100px)}.function-learning-intro{border:1px solid #bcacda;border-radius:24px;background:linear-gradient(125deg,#eee6fa,#fbf5ed);padding:28px;margin-bottom:24px}.function-learning-steps{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}.function-learning-steps span{padding:9px 14px;border-radius:30px;background:#fffaf399;color:#59416e;font-size:.85rem;font-weight:700}.function-trigger{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:32px;border:1px solid #b6a2ce;color:#59416e;background:#ece3f6;font-weight:700}.function-learning-hint{text-align:center;color:#655d74;margin:0;font-size:.8rem}.function-tests{animation:assembly-text .8s ease both}.function-test-card{padding:clamp(22px,3vw,38px);border:1px solid #dbcfdf;border-radius:24px;background:#fffaf3;margin-top:24px}.function-test-card>h3{font-size:clamp(1.5rem,2.5vw,2rem)}.function-test-card>p:not(.kicker){color:#655d74}.function-test-card .task{margin-top:14px}.function-test-card .predict legend{margin-bottom:14px;font-weight:650;line-height:1.5}.function-test-card .predict label{padding:14px;border:1px solid #ded4e6;border-radius:12px;background:#f7f1e6;line-height:1.4}.function-test-card .predict label.is-on{background:#eee9ff;border-color:#7c6cf0}.function-dialog .assembly-title{font-size:clamp(2.6rem,4.1vw,5rem)}.function-dialog .assembly-figure{aspect-ratio:760 / 620}.function-dialog.is-reduced .assembly-progress>div{transform:scaleX(var(--assembly-progress, 0))}.function-motion-svg{display:block;width:100%;height:100%;overflow:hidden}.function-direction{border:1px solid #ffffff20;border-radius:16px;padding:12px 16px;color:var(--assembly-accent);font-size:.9rem;animation:assembly-text .8s .8s both}.function-anatomy-labels text{fill:#ded2e8;font-size:17px;font-weight:600;paint-order:stroke fill;stroke:#111425;stroke-width:5px}.function-small-label{fill:#ffb2ba;font-size:17px;paint-order:stroke fill;stroke:#111425;stroke-width:5px}.function-filter-focus{filter:drop-shadow(0 0 8px #70e0cf88)}.function-exchange{animation:assembly-text .7s both}.function-callout-line{fill:none;stroke-width:2;stroke-dasharray:6 4}@media(max-width:700px){.function-dialog .assembly-title{font-size:2.4rem}.function-dialog .assembly-key-hint{display:none}.function-learning-intro{padding:20px 16px}.function-learning-steps{gap:6px}.function-learning-steps span{font-size:.7rem;padding:8px 10px}}.connection-dialog .assembly-title{font-size:clamp(2.6rem,4.1vw,5rem)}.connection-dialog.is-complete .assembly-title{font-size:clamp(2.3rem,3.3vw,4rem);margin-bottom:14px}.connection-dialog .assembly-recap{margin:14px 0;gap:8px}.connection-dialog .assembly-recap p:nth-child(4){animation-delay:.95s}.connection-trigger{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid #b6a2ce;border-radius:999px;background:#ece3f6;color:#59416e;font-weight:650}.connection-dialog .assembly-figure{aspect-ratio:760 / 620}.connection-dialog.is-reduced .assembly-progress>div{transform:scaleX(var(--assembly-progress, 0))}.connection-motion-svg{width:100%;height:100%;display:block;overflow:hidden}.connection-network-orbit{fill:none;stroke:#ad91c5;stroke-width:1;opacity:.1}.connection-network-orbit.outer{stroke-dasharray:3 9;transform-origin:352px 304px;animation:connection-orbit 65s linear infinite}.connection-camera{transform-origin:360px 310px;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.connection-camera-0{transform:translate(-6px,16px) scale(1.02)}.connection-camera-1{transform:translate(-12px) scale(1.035)}.connection-camera-2{transform:translate(-6px,-15px) scale(1.02)}.connection-camera-3{transform:translate(12px,-12px) scale(1.035)}.connection-camera-all{transform:none}.connection-kidney{filter:drop-shadow(0 0 20px #f3a6be22);animation:assembly-text 1s both}.connection-kidney-label{font-family:var(--sans);font-size:12px;letter-spacing:.22em;fill:#ffcfdb}.connection-route{opacity:.07;transition:opacity .65s}.connection-route.is-visible{opacity:.3}.connection-route.is-focus{opacity:1}.connection-route.is-focus>path{stroke-dasharray:1;animation:assembly-line 1.2s ease both}.connection-signals{filter:drop-shadow(0 0 5px currentColor)}.connection-node{opacity:.1;transition:opacity .7s,filter .7s}.connection-node.is-visible{opacity:.5}.connection-node.is-focus{opacity:1;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--connection-color) 15%,transparent))}.connection-node>rect{fill:#1e1c31;stroke:var(--connection-color);stroke-width:1.5}.connection-node.is-focus>rect{animation:connection-node-reveal .9s ease both}.connection-node text{font-family:var(--sans);font-size:13.5px;font-weight:550;fill:#fff5ee}.connection-node .connection-route-label{fill:var(--connection-color);font-size:13px;paint-order:stroke fill;stroke:#101222;stroke-width:5px;stroke-linejoin:round}.connection-node .connection-calcium-label{fill:#f6d286;font-size:13px}.connection-heart{transform-origin:550px 120px}.connection-heart.is-beating{animation:connection-heartbeat 1.1s ease-in-out infinite}.connection-pulse{stroke-dasharray:.2 .05;animation:connection-pulse 2.3s linear infinite}.connection-water-drop{transform-origin:94px 522px;animation:connection-drop 2.6s ease-in-out infinite}.connection-balance-waves{animation:connection-wave 3s ease-in-out infinite}.connection-direction{border:1px solid #ffffff20;border-radius:16px;padding:12px 16px;color:var(--assembly-accent);font-size:.9rem;animation:assembly-text .8s .8s both}.connection-lesson .match-row{border:1px solid #ded4e6;border-radius:18px;background:#f6f0fa;padding:18px}.connection-lesson .match-row>span{display:block;font-weight:650;margin-bottom:12px}.connection-lesson .match-row .slot{min-height:62px;border:1px dashed #a99abd;border-radius:12px;padding:12px;display:grid;place-items:center;background:#fffaf3;line-height:1.4}.connection-lesson .match-row .slot.is-filled{border-style:solid;border-color:#8d7cff;background:#eee9ff}.connection-lesson .match-row.is-ok{border-color:#68b89b;background:#effaf3}.connection-lesson .match-row.is-bad{border-color:#d98270;background:#fff0eb}.connection-lesson .chip-row{margin-block:18px}@keyframes connection-orbit{to{transform:rotate(360deg)}}@keyframes connection-node-reveal{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes connection-heartbeat{0%,70%,to{transform:scale(1)}18%,42%{transform:scale(1.1)}28%,52%{transform:scale(1.015)}}@keyframes connection-pulse{to{stroke-dashoffset:-1}}@keyframes connection-drop{50%{transform:translateY(-5px) scale(1.06)}}@keyframes connection-wave{50%{opacity:.4;transform:translate(4px)}}@media(max-width:700px){.connection-dialog .assembly-title{font-size:2.4rem}.connection-dialog .assembly-key-hint{display:none}.connection-dialog .assembly-figure{width:min(100%,420px)}}.fact-lesson{min-height:calc(100dvh - 100px)}.fact-dialog .assembly-title{font-size:clamp(2.5rem,3.8vw,4.6rem)}.fact-dialog.is-complete .assembly-title{font-size:clamp(2.4rem,3.5vw,4rem);margin-bottom:14px}.fact-dialog .assembly-recap{margin:14px 0;gap:8px}.fact-dialog .assembly-figure{aspect-ratio:760 / 620}.fact-dialog.is-reduced .assembly-progress>div{transform:scaleX(var(--assembly-progress, 0))}.fact-trigger{display:inline-flex;align-items:center;gap:10px;padding:14px 20px;border:1px solid #b6a2ce;border-radius:999px;background:#ece3f6;color:#59416e;font-weight:650}.fact-direction{border:1px solid #ffffff20;border-radius:16px;padding:12px 16px;color:var(--assembly-accent);font-size:.9rem;animation:assembly-text .8s .8s both}.fact-motion-svg{display:block;width:100%;height:100%;overflow:hidden}.fact-orbit{fill:none;stroke:var(--assembly-accent);stroke-width:1;opacity:.1}.fact-orbit.dashed{stroke-dasharray:3 9;transform-origin:380px 300px}.fact-orbit.is-moving{animation:connection-orbit 65s linear infinite}.fact-scene{animation:fact-scene-reveal 1.1s cubic-bezier(.2,.8,.2,1) both;transform-origin:380px 300px}.fact-number{font-size:76px;font-weight:650;font-family:var(--serif);fill:var(--assembly-accent);letter-spacing:-2px;animation:assembly-text .9s .5s both}.fact-number.medium{font-size:46px;letter-spacing:-1px}.fact-label{fill:#fff5ed;font-size:15px;letter-spacing:1.5px;font-weight:600;animation:assembly-text .8s .7s both}.fact-caption{fill:#fff5ed;font-size:17px;font-weight:550;paint-order:stroke fill;stroke:#111425;stroke-width:4px;stroke-linejoin:round}.fact-caption.small{font-size:15px}.fact-caption.muted{fill:#b8acc1}.fact-loupe{animation:fact-loupe-reveal 1.2s ease both;transform-origin:485px 293px}.fact-unit{animation:assembly-text .7s var(--fact-delay, 0ms) both}.fact-small-kidney{filter:drop-shadow(0 0 18px #ffb6cd22)}.fact-active-kidney{filter:drop-shadow(0 0 12px #ffb6cd44)}.fact-scene.is-moving .fact-active-kidney{animation:fact-kidney-glow 3.2s ease-in-out infinite}.fact-urine-fill{transform-origin:588px 470px;animation:fact-fill 1.8s .4s ease both}.fact-draw{stroke-dasharray:1;animation:assembly-line 1.7s .2s ease both}.fact-crystal{animation:fact-crystal-gather 2.2s var(--fact-delay, 0ms) cubic-bezier(.2,.8,.2,1) both}.fact-summary-symbol{font-family:var(--serif);font-size:52px;font-weight:650}.fact-library{border-top:1px solid #dacdde;padding-top:34px;margin-top:38px}@keyframes fact-scene-reveal{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fact-loupe-reveal{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes fact-fill{0%{transform:scaleY(.05)}to{transform:scaleY(1)}}@keyframes fact-crystal-gather{0%{opacity:0;transform:translate(var(--crystal-x),var(--crystal-y)) rotate(25deg)}30%{opacity:1}to{opacity:1;transform:translate(0) rotate(0)}}@keyframes fact-kidney-glow{50%{filter:drop-shadow(0 0 23px #ffb6cd88)}}@media(max-width:700px){.fact-dialog .assembly-title{font-size:2.4rem}.fact-dialog .assembly-key-hint{display:none}.fact-dialog .assembly-figure{width:min(100%,420px)}}.blender-preview{max-width:1300px;margin:0 auto;padding:36px 32px;display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}.blender-preview-copy h1{font-size:clamp(40px,5vw,72px);line-height:1.08}.kidney-model.stage-3d{height:auto;min-height:0;width:100%;background:radial-gradient(ellipse at 65% 24%,#43364f66,transparent 65%),linear-gradient(145deg,#252237,#121321 80%);text-align:left}.kidney-model-top{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 20px 0}.kidney-model-top>span{display:flex;align-items:center;gap:8px;color:#d7cbe6;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase}.kidney-model-top>span i{width:5px;height:5px;background:#c9b4e3;border-radius:50%;box-shadow:0 0 10px #c9b4e388}.model-rotate{display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid #b5a3cf30;border-radius:20px;background:#ffffff04;color:#afa0c3;font-size:.7rem}.model-rotate[aria-pressed=true]{color:#e4d4f4;background:#b5a3cf15;border-color:#b5a3cf55}.model-rotate span{font-size:1.1rem}.kidney-model-viewport{height:clamp(290px,43svh,420px);position:relative}.kidney-model-viewport canvas:active{cursor:grabbing!important}.kidney-model-note{position:absolute;bottom:7px;left:0;right:0;pointer-events:none;text-align:center;color:#b6a7c8;font-size:.65rem;letter-spacing:.02em}.kidney-model-poster{width:100%;height:100%;object-fit:contain}.kidney-model-label{display:inline-block;padding:5px 10px;color:#f6edf9;background:#181526e8;border:1px solid #d0b8e57a;box-shadow:0 5px 18px #0004;border-radius:30px;white-space:nowrap;font-size:11px}.kidney-model-toolbar{display:flex;gap:10px;padding:9px 20px 15px}.model-open{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 15px;border:1px solid #d2bde66b;border-radius:15px;color:#281d38;background:linear-gradient(135deg,#e4d6ef,#c3abd9);font-size:.85rem;font-weight:650;box-shadow:inset 0 1px #fff6,0 5px 20px #0002}.model-open>span:first-child{font-size:1.2rem}.model-open>span:last-child{margin-left:auto}.kidney-model-parts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:15px 20px 0;border-top:1px solid #ffffff0c;background:#080b1624}.kidney-model-parts button{min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #b8a1d12b;border-radius:11px;padding:9px 5px;font-size:.71rem;font-weight:500;color:#c9bddb;background:#ffffff04;transition:background .2s,border-color .2s,color .2s}.kidney-model-parts button:hover{background:#b29bcc18;border-color:#c2a5e26b}.kidney-model-parts button[aria-pressed=true]{background:#b29bcc29;border-color:#c2a5e2a6;color:#fff5ff}.kidney-model-parts button i{width:7px;height:7px;flex:none;border-radius:50%;background:var(--part-color)}.kidney-model-detail{padding:16px 20px 19px;min-height:111px;background:#080b1624}.kidney-model-detail strong{color:#f0e3f6;font-size:.87rem;font-weight:600}.kidney-model-detail p{margin:6px 0 0;color:#bdb0cb;font-size:.78rem;line-height:1.6}@media(max-width:800px){.blender-preview{padding:24px 18px;grid-template-columns:1fr;gap:24px}.kidney-model-viewport{height:330px}.kidney-model-top{padding-inline:15px}.kidney-model-top>span{font-size:.61rem;letter-spacing:.09em}.kidney-model-toolbar,.kidney-model-parts,.kidney-model-detail{padding-inline:15px}.kidney-model-parts button{font-size:.68rem}.kidney-model-detail{min-height:125px}}@media(prefers-reduced-motion:reduce){.kidney-model-parts button{transition:none}}@media(max-width:480px){.kidney-model-parts{grid-template-columns:repeat(2,minmax(0,1fr))}.kidney-model-parts button{min-height:40px;font-size:.76rem}}
