:root{--blue:#1a73e8;--ink:#202124;--ink2:#5f6368;--line:#dadce0;--bg:#f8f9fa;--card:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 -apple-system,BlinkMacSystemFont,"Noto Sans TC",sans-serif}.wrap{max-width:1200px;margin:auto;padding:28px 22px 45px}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:600;color:var(--ink2)}h1{font-size:27px;letter-spacing:-.6px;line-height:1.35;margin:6px 0 9px}p{margin:0}.sub{color:var(--ink2);font-size:14px}button{font:inherit;border:0;background:transparent;color:var(--ink2);cursor:pointer;padding:9px 13px;border-radius:6px;line-height:1.4}button:hover{background:#eef1f4}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #1a73e8;outline-offset:3px}button:disabled{opacity:.45;cursor:default}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:none;color:#174ea6}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-top:16px}.tabs button{padding:12px 2px;border-radius:0;border-bottom:2px solid transparent;font-weight:600}.tabs button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.axis{margin:13px 0 18px;color:var(--ink2)}.cases{display:flex;gap:6px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.cases button{padding:6px 12px}.cases button[aria-pressed=true]{color:var(--blue);background:#e8f0fe}.cases span{font-size:12px;color:var(--ink2);margin-left:auto}.steps{display:flex;gap:9px;background:white;padding:6px;border:1px solid #e0e3e7;box-shadow:0 2px 4px #20212408;border-radius:12px;position:sticky;top:5px;z-index:6}.steps button{display:flex;align-items:center;gap:7px;padding:7px 11px;font-size:13px}.steps span{border-radius:50%;background:#f1f3f4;font-size:11px;display:inline-flex;width:21px;height:21px;align-items:center;justify-content:center}.steps button[aria-current=step]{background:#e8f0fe;color:#1967d2}.steps button[aria-current=step] span{background:var(--blue);color:white}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:27px;margin-top:19px}.visual{min-width:0}.scene-head{display:flex;justify-content:space-between;margin:0 0 9px;font-size:12px}.scene-head span{color:var(--ink2)}.stage{height:375px;position:relative;border-radius:14px;overflow:hidden;background:linear-gradient(155deg,#f2f5f8,#e7edf2)}.stage canvas{display:block;width:100%;height:100%}.loading{position:absolute;top:45%;width:100%;text-align:center;color:var(--ink2)}.loading.error{padding:20px;font-size:14px}.labels{position:absolute;inset:0;pointer-events:none;z-index:2}.label{position:absolute;transform:translate(-50%,-50%);font-size:12px;font-weight:600;color:#30363d;line-height:1.4;white-space:nowrap;border-radius:4px;padding:3px 6px;background:#fffE;box-shadow:0 1px 4px #2632380d}.label.small{font-size:11px;color:#515a63;background:#fffC;font-weight:400}.label.focus{background:#e8f0fe;color:#1967d2}.scene-tag{position:absolute;bottom:13px;left:14px;display:flex;gap:6px;align-items:center;font-size:12px;color:#1967d2;background:#fffE;border-radius:5px;padding:4px 8px}.dot{width:5px;height:5px;border-radius:50%;background:var(--blue)}.view-switch{position:absolute;top:10px;right:10px;display:flex;background:#fffE;padding:2px;border-radius:8px;box-shadow:0 1px 3px #2021240a}.view-switch button{font-size:11px;padding:4px 7px}.view-switch button[aria-pressed=true]{background:#e8f0fe;color:#1967d2}.transport{display:flex;align-items:center;gap:10px;margin:10px 0;color:var(--ink2);font-size:11px}.track{flex:1;background:#e1e5e9;height:3px;border-radius:3px;overflow:hidden}.track>div{height:100%;background:var(--blue);width:0}.controls{display:flex;align-items:center;gap:6px;margin:12px 0 7px}.controls button{font-size:12px}.controls .primary{background:var(--blue);color:white;padding:9px 18px;box-shadow:0 2px 3px #1a73e822}.controls .primary:hover{background:#1967d2}.text-button{margin-left:auto}.scene-caption{color:var(--ink2);font-size:11px;line-height:1.7}.guide{padding:4px 0}.guide-eyebrow{font-size:12px;color:var(--blue);font-weight:600}h2{font-size:22px;line-height:1.4;margin:10px 0 12px;letter-spacing:-.4px}.guide>p{color:var(--ink2);font-size:13px;line-height:1.9}.causal{margin-top:18px}.causal>div{padding:12px 0;border-top:1px solid var(--line)}.causal span{font-size:10px;color:var(--ink2)}.causal p{font-size:13px;margin-top:4px;line-height:1.8}.guide .look{color:var(--blue);font-size:12px;margin-top:7px}.mechanism{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:25px;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center}.mechanism h3{font-size:16px;line-height:1.5;margin:7px 0}.mechanism p{font-size:12px;color:var(--ink2)}.energy svg{display:block;width:100%;height:135px;overflow:visible}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin:20px 0 12px}.comparison>div{display:flex;gap:12px;font-size:12px}.comparison b{min-width:60px;color:var(--blue)}.comparison span{color:var(--ink2)}.root{font-size:12px;color:var(--ink2);margin:10px 0 23px}.sources{border-top:1px solid var(--line);font-size:12px}summary{cursor:pointer;padding:12px 0;color:var(--ink2);list-style:none;display:flex;justify-content:space-between}summary::after{content:'＋';color:var(--ink2)}details[open]>summary::after{content:'−'}.source-body{padding:0 10px 10px;color:var(--ink2);line-height:1.9}.source-body p{margin:8px 0}.source-body ol{padding-left:20px}.source-body li{margin-bottom:7px}.source-body pre,#qa-output{font:12px/1.8 monospace;white-space:pre-wrap;overflow-wrap:anywhere}footer{display:flex;gap:17px;color:var(--ink2);font-size:11px;margin-top:20px;flex-wrap:wrap}footer span{margin-right:auto}[hidden]{display:none!important}#qa{margin-top:20px}
@media(min-width:1120px){.stage{height:430px}.workspace{grid-template-columns:minmax(0,1fr) 310px;gap:33px}}@media(max-width:740px){.wrap{padding:22px 14px 32px}h1{font-size:23px}.sub{font-size:13px}.tabs{gap:22px}.tabs button{font-size:13px}.cases span{width:100%;margin-left:0;margin-top:2px}.workspace{grid-template-columns:1fr;gap:17px}.stage{height:310px}.steps{gap:2px}.steps button{flex:1;padding:7px 4px;font-size:12px;gap:5px;justify-content:center}.steps span{width:19px;height:19px;flex-shrink:0}.axis{font-size:12px}.mechanism{grid-template-columns:1fr;gap:14px;margin-top:17px}.comparison{grid-template-columns:1fr;gap:12px}.label{font-size:11px;padding:2px 5px}.label.small{font-size:10px}.guide{padding:0}h2{font-size:21px}.causal{margin-top:15px}.causal>div{padding:10px 0}.scene-tag{font-size:11px}.guide .look{margin-top:5px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.label-leader{position:absolute;height:1px;background:#718296;transform-origin:0 50%;z-index:-1}

/* Energy guide: one readable figure and its meaning, preserving the accepted 3D scene. */
.mechanism{display:block;padding:22px 0;margin-top:25px}.mechanism-heading h3{margin:7px 0 5px}.mechanism-heading p{max-width:780px}.energy-read-tabs{display:flex;gap:5px;margin:14px 0 16px;flex-wrap:wrap}.energy-read-tabs button{font-size:12px;padding:6px 11px}.energy-read-tabs button[aria-pressed=true]{background:#e8f0fe;color:#1967d2}.energy-work{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:center}.energy svg{height:auto;aspect-ratio:430/239;overflow:visible}.energy-readout h4{font-size:17px;line-height:1.5;margin:0 0 10px;letter-spacing:-.2px}.energy-readout p{font-size:13px;line-height:1.9;color:#30363d}.energy-readout .read-tip{font-size:12px;color:#5f6368;margin-top:12px}.energy-actions{display:flex;gap:6px;margin-top:13px;flex-wrap:wrap}.energy-actions button{font-size:12px;color:#1967d2;background:#eef4fd;padding:6px 11px}.energy-extra{margin-top:12px;font-size:12px;max-width:870px}.energy-extra summary{padding:6px 0;justify-content:flex-start;gap:15px}.energy-extra p{font-size:12px;line-height:1.9;margin-top:5px}
@media(max-width:740px){.energy-work{grid-template-columns:1fr;gap:17px}.energy-readout h4{font-size:16px}.energy-read-tabs{gap:2px;margin-bottom:14px}.energy-read-tabs button{padding:6px 9px;font-size:12px}.mechanism{padding:19px 0}.energy-extra{margin-top:17px}}

#energy-guide{scroll-margin-top:65px}

/* Origin uses the same route and a continuous silicon body; no extra parameters. */
.energy-figures{min-width:0}.origin-structure{margin:0 0 12px}.origin-structure figcaption{font-size:12px;color:#5f6368;margin-bottom:8px}.origin-structure svg{width:100%;height:auto;display:block;aspect-ratio:430/170}.origin-chain{list-style:none;counter-reset:origin;padding:0;margin:15px 0 0}.origin-chain li{counter-increment:origin;position:relative;padding:0 0 12px 29px}.origin-chain li:last-child{padding-bottom:0}.origin-chain li::before{content:counter(origin);position:absolute;left:0;top:2px;background:#e8f0fe;color:#1967d2;border-radius:50%;width:20px;height:20px;font-size:11px;display:grid;place-items:center}.origin-chain strong{font-size:13px;font-weight:600;display:block;line-height:1.65}.origin-chain span{font-size:12px;color:#5f6368;display:block;line-height:1.8;margin-top:3px}.energy-work:has(.origin-structure:not([hidden])){align-items:start}.energy-work:has(.origin-structure:not([hidden])) .energy-readout{padding-top:2px}
@media(max-width:740px){.energy-read-tabs{gap:4px}.energy-read-tabs button{padding:8px 10px;min-height:40px}.origin-chain{margin-top:12px}.origin-structure{margin-bottom:10px}.energy-extra summary,.sources>summary{min-height:40px}}

.origin-structure svg text{stroke:none}

/* Published lesson: teaching first; optional display controls stay collapsed. */
.display-settings{margin-top:12px}.display-settings .tabs{margin:0;padding-bottom:10px}.display-settings .tabs button{font-size:12px}.cases{margin-top:16px}

body.embedded .wrap{max-width:none;padding:0 0 12px}body.embedded .wrap>header,body.embedded .axis,body.embedded footer,body.embedded .display-settings{display:none}body.embedded .cases{margin-top:4px}body.embedded .steps{position:static}body.embedded .workspace{margin-top:15px}
