.lab{--accent:#188d83;max-width:1376px;margin:auto;padding:32px 48px 64px}.lab .breadcrumb{margin:0 0 26px}.lab-heading{max-width:850px;margin-bottom:28px}.lab-heading h1{letter-spacing:-1.5px;margin:10px 0 18px;font-size:clamp(30px,4vw,52px);line-height:1.35}.lab-heading p:last-child{color:var(--muted);margin:0;font-size:14px;line-height:1.9}.lab .kicker{color:var(--accent);margin-bottom:12px}.workbench{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden}.bench-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:18px 24px;font-size:12px;display:flex}.bench-title span:last-child{color:var(--muted);font-family:IBM Plex Mono,monospace;font-size:10px}.lab svg{width:100%;max-width:100%;height:auto;display:block}.lab svg text{font-family:Noto Sans SC Variable,sans-serif}.lab svg [role=button]{cursor:pointer}.lab svg [role=button]:focus-visible{stroke:#096dbb;stroke-width:4px;outline:none}.lab-controls{border-top:1px solid var(--line);background:#f4f9fb;padding:22px 24px}.control-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.control-row+.control-row{margin-top:16px}.lab button,.lab select{color:var(--ink);background:#fff;border:1px solid #b8d0de;border-radius:6px;min-height:42px;padding:10px 14px;font-size:12px}.lab select{max-width:100%;font:inherit;font-size:12px}.lab button:hover{border-color:var(--accent)}.lab button.active,.lab button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.lab button.action{background:var(--accent);color:#fff;border-color:var(--accent)}.lab button:disabled{opacity:.5;cursor:default}.range-field{flex:1;min-width:0;font-size:12px;display:block}.range-field>span{justify-content:space-between;gap:12px;display:flex}.range-field output{color:var(--accent);font-family:IBM Plex Mono,monospace}.lab input[type=range]{accent-color:var(--accent);min-height:24px;margin:12px 0 0}.readouts{border-top:1px solid var(--line);background:#edf6fc;flex-wrap:wrap;gap:24px;padding:20px 24px;display:flex}.readouts>div{flex:1;min-width:100px}.readouts dt{color:var(--muted);margin:0 0 6px;font-size:11px}.readouts dd{color:var(--ink);margin:0;font:20px IBM Plex Mono,monospace}.feedback{color:#645321;background:#fff8dc;border-top:1px solid #eadcae;margin:0;padding:18px 24px;font-size:13px;line-height:1.8}.lab-notes{grid-template-columns:1.2fr 1fr;gap:40px;margin-top:36px;display:grid}.lab-notes h2{margin-bottom:14px;font-size:22px}.lab-notes p,.lab-notes li{color:var(--muted);font-size:13px;line-height:2}.lab-notes li+li{margin-top:8px}.model-note{border-left:3px solid var(--accent);padding-left:20px}.equation{color:var(--accent);padding:16px 0;font:clamp(20px,3vw,32px) IBM Plex Mono,monospace}.lab noscript p{color:#645321;background:#fff8dc;padding:18px 24px;font-size:13px;line-height:1.8}.wide-and-side{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.side-panel{border:1px solid var(--line);background:#f4f9fb;border-radius:12px;padding:24px}.side-panel h2{margin-bottom:20px;font-size:18px}.side-panel .range-field+.range-field{margin-top:22px}.side-panel .control-row{margin-top:20px}.side-panel .readouts{background:0 0;gap:18px;padding:20px 0}.side-panel .feedback{border:1px solid #eadcae;border-radius:8px;margin:16px 0 0;padding:16px}.split-views{grid-template-columns:1fr 1fr;display:grid}.split-views>div+div{border-left:1px solid var(--line)}.view-caption{text-align:center;color:var(--muted);margin:0;padding:10px;font-size:11px}.lab-summary{color:var(--muted);padding:0 24px 18px;font-size:12px;line-height:1.9}.legend{flex-wrap:wrap;gap:20px;padding:14px 24px;font-size:11px;display:flex}.legend i{vertical-align:middle;width:20px;height:3px;margin-right:7px;display:inline-block}.orbit-lab{--accent:#384e89}.three-lab{--accent:#6757ad}.bridge-lab,.gears-lab{--accent:#b97529}.area-svg{touch-action:none}.area-piece{cursor:grab}.area-piece.selected{stroke:#153b56;stroke-width:3px}.area-piece.placed{opacity:.8}.lab .small{color:var(--muted);font-size:11px;line-height:1.8}.node-choice{flex-wrap:wrap;gap:8px;display:flex}.node-choice button{min-width:42px}.bridge-board{background-color:#f4f9ff;background-image:linear-gradient(#dce9f4 1px,#0000 1px),linear-gradient(90deg,#dce9f4 1px,#0000 1px);background-size:28px 28px}.orbit-board{background:#eef4ff}.three-board{background:#f6f4ff}.gears-board{background:#fff9ef}.area-board{background:#f5faf7}.section-board{background:#f1faf8}.piece-picker button{border-bottom:4px solid var(--piece)}.piece-picker button[aria-pressed=true]{background:#153b56;border-color:#153b56}.area-evidence{background:#eaf7f2;padding:22px 24px}.area-evidence .equation{margin:8px 0;padding:0}.area-evidence p{color:var(--muted);margin:0;font-size:12px;line-height:1.9}@media (width<=1050px){.lab{padding-left:28px;padding-right:28px}.wide-and-side{grid-template-columns:1fr 260px;gap:16px}.side-panel{padding:18px}.lab-heading h1{font-size:38px}}@media (width<=750px){.lab{padding:26px 20px 40px}.lab-heading h1{letter-spacing:-1px;font-size:32px}.lab-heading p:last-child{font-size:13px}.wide-and-side,.lab-notes{grid-template-columns:1fr;gap:24px}.split-views{grid-template-columns:1fr}.split-views>div+div{border-left:0;border-top:1px solid var(--line)}.bench-title,.lab-controls,.readouts,.feedback{padding:16px}.bench-title{flex-wrap:wrap;gap:6px}.readouts{gap:16px}.readouts dd{font-size:17px}.range-field{flex-basis:100%}.lab button{padding:10px 12px;font-size:11px}.lab-notes{margin-top:28px}.lab-notes h2{font-size:20px}.equation{font-size:22px}.area-evidence{padding:18px}.legend{padding:14px 16px}.lab-summary{padding:0 16px 16px}.lab .control-row{gap:8px}}.lab [hidden]{display:none!important}.gear-captions{text-align:center;background:#fff9ef;flex-wrap:wrap;justify-content:space-around;gap:16px;padding:16px 20px 24px;display:flex}.gear-captions div{flex-direction:column;gap:8px;font-size:12px;display:flex}.gear-captions span{color:#896b42;font:11px IBM Plex Mono,monospace}.gears-lab #gear-svg{max-height:460px;padding:24px}@media (width<=750px){.gears-lab #gear-svg{padding:14px}.gear-captions{gap:14px;padding:12px 14px 18px}.gear-captions div{font-size:11px}.gear-captions span{font-size:10px}}.demo-dock{border-left:4px solid var(--accent);background:#eaf4f9;border-radius:0 10px 10px 0;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px;padding:20px 24px;display:flex}.demo-dock strong{margin-bottom:6px;font-size:15px;display:block}.demo-dock p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.demo-dock .control-row{flex-shrink:0;max-width:55%}.demo-caption{color:#245f55;background:#f0f8f5;border-bottom:1px solid #d9e8e2;margin:0;padding:15px 24px;font-size:13px;line-height:1.9}.learning-evidence{border:1px solid var(--line);background:#fff;border-radius:12px;margin-top:24px;padding:24px}.learning-evidence h2{margin:0 0 10px;font-size:22px}.learning-evidence h3{margin:0 0 16px;font-size:15px}.learning-evidence p{color:var(--muted);margin:10px 0;font-size:12px;line-height:1.9}.evidence-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.formula-live{overflow-wrap:anywhere;color:var(--ink);background:#f0f6fa;border-radius:8px;margin:14px 0;padding:16px 18px;font:15px/1.9 IBM Plex Mono,monospace}.formula-live .formula-rule{color:var(--accent);margin-bottom:6px;font-size:20px;display:block}.comparison-row{margin:14px 0}.comparison-row>div:first-child{justify-content:space-between;gap:12px;margin-bottom:7px;font-size:12px;display:flex}.comparison-row strong{font:12px IBM Plex Mono,monospace}.comparison-track{background:#eaf0f4;border-radius:3px;height:12px;overflow:hidden}.comparison-track span{border-radius:3px;min-width:0;height:100%;display:block}.chart-legend{flex-wrap:wrap;gap:12px;font-size:11px;line-height:1.8;display:flex}.learning-evidence svg{max-height:260px}.advanced-tools{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}.advanced-tools summary{cursor:pointer;padding:8px 0 16px;font-size:12px;font-weight:650}.live-table{border-collapse:collapse;width:100%;font-size:12px}.live-table th,.live-table td{text-align:left;border-bottom:1px solid var(--line);padding:9px 8px}.live-table td:last-child{font-family:IBM Plex Mono,monospace}.guide-steps{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.guide-steps span{background:#edf4f8;border-radius:4px;padding:7px 10px;font-size:11px}.guide-steps .current{background:var(--accent);color:#fff}.lesson-note{color:var(--muted);font-size:12px;line-height:1.9}.gears-lab .gear-workshop{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:stretch;display:grid}.gears-lab .gear-workshop>.lab-controls{border-top:0;border-left:1px solid var(--line)}.gears-lab .gear-workshop>.lab-controls>.control-row:last-child{grid-template-columns:1fr 1fr;gap:22px;display:grid}.gears-lab .gears-board{height:auto;min-height:230px}.gears-lab .gear-captions{height:auto}.turn-dials{grid-template-columns:1fr 1fr;gap:20px;display:grid}.turn-dials svg{width:100%;max-height:180px}.turn-dials p{text-align:center}.inspector{background:#fff8df;border:1px solid #ead8a3;border-radius:8px;margin:16px 0;padding:15px}.inspector p{font-size:12px;line-height:1.9}.bridge-lab #bridge-svg [role=button][aria-pressed=true]{stroke:#b97529;stroke-width:11px}@media (width<=850px){.evidence-grid{grid-template-columns:1fr;gap:24px}.demo-dock{flex-direction:column;align-items:start;padding:18px}.demo-dock .control-row{max-width:100%}.learning-evidence{padding:18px}.gears-lab .gear-workshop{grid-template-columns:1fr}.gears-lab .gear-workshop>.lab-controls{border-left:0;border-top:1px solid var(--line)}}@media (width<=500px){.gears-lab .gear-workshop>.lab-controls>.control-row:last-child{grid-template-columns:1fr}.formula-live{padding:14px;font-size:12px}.formula-live .formula-rule{font-size:17px}.learning-evidence h2{font-size:20px}.demo-caption{padding:15px 16px}.comparison-row>div:first-child{font-size:11px}.live-table{font-size:10px}.live-table td,.live-table th{padding:8px 4px}}.stacked-area{border-radius:4px;width:100%;height:25px;display:flex;overflow:hidden}.stacked-area span{color:#fff;text-align:center;padding:5px 0;font:11px IBM Plex Mono,monospace}.section-first{background:#edf8f5;border-left:4px solid #188d83;padding:18px 24px}.section-inspector{border-block:1px solid #d7e5ee;padding:16px 22px}.section-inspector [role=group]{flex-wrap:wrap;gap:8px;display:flex}.section-inspector button{min-height:44px}.section-inspector [aria-pressed=true]{outline-offset:2px;outline:3px solid #bc6419}#section-source{font-weight:600}#section-degenerate{color:#526c7d;font-size:.85rem}.section-lab svg [data-section-vertex],.section-lab svg [data-section-edge]{cursor:pointer}.section-lab details>summary{cursor:pointer;padding:16px}.section-lab .demo-dock{margin:0 0 20px}.section-lab #cut-plane,.section-lab #cube-section polygon,.section-lab #cube-section text{pointer-events:none}
