:root{font-family:Inter,"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;color:#e9f1f5;background:#07131e;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 74% -12%,#173449 0,#07131e 40%);min-width:320px}button,select,input{font:inherit}button{cursor:pointer}a{color:#89d5df}.app{max-width:1560px;margin:auto;padding:0 38px}.topbar{height:84px;display:flex;align-items:center;gap:36px;border-bottom:1px solid #263c4b}.brand{display:flex;gap:12px;align-items:center;min-width:210px}.brand-mark{width:35px;height:35px;border:1px solid #81c8d2;color:#9be3e5;display:grid;place-items:center;font-size:25px;border-radius:9px}.brand strong{display:block;letter-spacing:.11em;font-size:16px}.brand small{display:block;color:#8096a6;font-size:11px;margin-top:3px;letter-spacing:.1em}.model{display:flex;align-items:center;gap:12px;color:#849eac;font-size:12px;letter-spacing:.06em}.model b{font-size:13px;color:#dce9ed;font-weight:600}.model-line{width:25px;height:1px;background:#4e6978}.topright{margin-left:auto;color:#91a9b6;font-size:12px;display:flex;align-items:center;gap:9px}.live-dot{width:7px;height:7px;background:#74c6b2;border-radius:50%;box-shadow:0 0 10px #74c6b2}.intro{display:flex;justify-content:space-between;align-items:end;gap:28px;padding:39px 0 30px}.eyebrow,.section-number{color:#7bbcc9;font-size:12px;font-weight:700;letter-spacing:.15em}.intro h1{font-size:clamp(25px,2.4vw,39px);line-height:1.35;font-weight:650;margin:13px 0 10px;letter-spacing:-.025em}.intro p{color:#9aafbd;margin:0;font-size:15px}.intro-note{padding:16px 20px;background:#102534;border:1px solid #2a4757;border-radius:12px;min-width:213px}.intro-note span,.intro-note small{display:block;color:#8aa4b3;font-size:12px}.intro-note strong{display:block;margin:8px 0 6px;font-size:16px;font-weight:600}.control-panel,.stage-card,.readout-card,.detail-panel{border:1px solid #2b4656;background:#0d2030;border-radius:15px;box-shadow:0 16px 50px #0002}.control-panel{padding:21px 24px 18px}.control-heading,.visual-heading,.readout-head{display:flex;align-items:center;justify-content:space-between}.status{color:#a8c5d0;font-size:13px}.control-row{display:flex;align-items:center;gap:23px;margin:19px 0 17px}.transport{display:flex;align-items:center;gap:8px}.transport button{background:#182e40;border:1px solid #3e5a6b;border-radius:9px;color:#d9eaf0;height:42px;min-width:43px}.transport button:hover,.stage-nav button:hover{border-color:#86cfdb}.transport .play{background:#89d5db;color:#09232d;border-color:#89d5db;font-weight:750;padding:0 17px;min-width:132px}.progress-wrap{flex:1;display:flex;align-items:center;gap:15px;min-width:130px}.progress-wrap span{color:#afc2cb;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:#8ad4dd;height:6px;cursor:pointer}.control-select{display:flex;align-items:center;gap:8px;color:#8aa6b5;font-size:13px}.control-select select{background:#152d3d;color:#edf5f6;border:1px solid #3b5667;border-radius:7px;padding:8px}.modes{display:flex;gap:21px;align-items:center;border-top:1px solid #284253;padding-top:17px}.modes>span{color:#abc0cb;font-size:14px;white-space:nowrap}.segment{display:flex;gap:5px;padding:4px;background:#071926;border:1px solid #304b5b;border-radius:10px}.segment button{border:0;background:transparent;color:#a9c1cb;padding:8px 15px;border-radius:7px;min-width:112px;text-align:left;font-weight:800;font-size:13px;letter-spacing:.04em}.segment button small{display:block;font-weight:500;font-size:11px;letter-spacing:0;margin-top:3px;color:#88a4b3}.segment button.selected{background:#2a5365;color:#effaff;box-shadow:inset 0 0 0 1px #5c9dad}.segment button.selected small{color:#b6dee4}.mode-summary{color:#8ea8b6;font-size:13px;margin-left:auto;max-width:320px;line-height:1.5}.visual-area{margin-top:27px}.visual-heading{margin-bottom:12px}.legend{display:flex;gap:17px;color:#9bb4bf;font-size:12px}.legend span{display:flex;align-items:center;gap:7px}.legend i{display:block;width:9px;height:9px;border-radius:50%}.legend .neutral{background:#e7b77d}.legend .ion{background:#76c7e8}.legend .selected-ion{background:#a6f5cb;box-shadow:0 0 8px #80f3bb}.stage-card{overflow:hidden}.stage-top{padding:22px 25px 12px;display:flex;justify-content:space-between;align-items:center}.stage-top #stageIndex{font-size:12px;color:#7bbecb;letter-spacing:.12em;font-weight:800}.stage-top h2{font-size:21px;margin:6px 0 0;font-weight:650}.stage-type,.fact-pill,.chart-badge{border:1px solid #42606e;background:#183544;color:#a5d3d9;border-radius:99px;padding:7px 12px;font-size:12px;white-space:nowrap}.diagram-scroll{overflow-x:auto;scrollbar-color:#39596a transparent}.diagram{position:relative;min-width:980px;max-width:1420px;margin:auto;aspect-ratio:1200/450}.diagram svg,.diagram canvas{position:absolute;width:100%;height:100%;top:0;left:0}.diagram canvas{pointer-events:none}.schematic-label{fill:#7296a8;font-size:12px;letter-spacing:2px;font-weight:700}.unit-label{fill:#c5d6df;font-size:13px;font-weight:600}.unit-sub{fill:#86a1b0;font-size:11px}.unit-heading{fill:#8bd2d7;font-size:14px;font-weight:800;letter-spacing:1px}.bottom-label{fill:#728f9e;font-size:12px;letter-spacing:1px}.diagram svg g[id^=unit-]{transition:filter .35s,opacity .35s}.diagram svg g.active{filter:drop-shadow(0 0 10px #81d9de)}.diagram svg g.dim{opacity:.48}.stage-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #294657;padding:15px 25px 18px;min-height:76px}.stage-bottom>div:first-child{color:#bdcfd7;font-size:14px;line-height:1.55}.fact-pill{flex:none}.stage-nav{display:grid;grid-template-columns:repeat(11,1fr);gap:5px;margin-top:12px}.stage-nav button{background:#102636;color:#91abba;border:1px solid #284657;border-radius:8px;padding:10px 4px;text-align:center;min-height:59px;font-size:12px;line-height:1.25}.stage-nav button b{display:block;color:#718f9f;font-size:11px;margin-bottom:5px}.stage-nav button.active{background:#224a5b;color:#effaff;border-color:#79cbd4}.stage-nav button.active b{color:#a0e5e8}.readouts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:27px}.readout-card{padding:22px 24px 18px;min-width:0}.readout-head h3{font-size:18px;margin:7px 0 0}.chart-badge{background:#2a302b;color:#e2c98c;border-color:#665b40}.chart-badge.blue{background:#173b52;color:#a6d9ed;border-color:#476d80}.readout-card canvas{width:100%;height:auto;margin:15px 0 2px;display:block}.chart-note{color:#8099a8;font-size:12px;line-height:1.55}.detail-panel{display:flex;gap:24px;justify-content:space-between;align-items:center;margin:22px 0 30px;padding:23px 26px}.detail-panel h3{margin:8px 0 7px;font-size:18px}.detail-panel p{margin:0;color:#9bb2be;line-height:1.6;font-size:14px}.formula{flex:none;max-width:44%;color:#c1e8e9;background:#173846;border:1px solid #356575;border-radius:9px;padding:13px;font-size:13px;line-height:1.6}footer{border-top:1px solid #274151;color:#7f9aa9;font-size:12px;line-height:1.65;padding:20px 0 40px}footer p{margin:0 0 8px}footer small{color:#6c8795}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid #8fdee2;outline-offset:3px}@media(max-width:900px){.app{padding:0 16px}.topbar{height:70px}.model{display:none}.intro{align-items:start}.intro-note{display:none}.modes{flex-wrap:wrap;gap:12px}.mode-summary{margin-left:0;max-width:none}.stage-nav{display:flex;overflow-x:auto;padding-bottom:8px}.stage-nav button{min-width:94px}.readouts{grid-template-columns:1fr}.detail-panel{display:block}.formula{max-width:none;margin-top:17px}}@media(max-width:600px){.topright{font-size:0}.intro{padding:27px 0 23px}.intro h1{font-size:27px}.intro p{font-size:14px}.control-panel{padding:17px}.control-row{flex-wrap:wrap;gap:14px}.transport{width:100%}.transport .play{flex:1}.progress-wrap{order:2;min-width:100%;flex-direction:column-reverse;align-items:stretch;gap:6px}.control-select{margin-left:auto}.modes>span{width:100%}.segment{width:100%}.segment button{min-width:0;flex:1;padding:8px 7px;font-size:12px}.segment button small{font-size:10px}.stage-top{padding:16px}.stage-top h2{font-size:18px}.stage-type{display:none}.stage-bottom{padding:15px 16px;display:block}.fact-pill{display:inline-block;margin-top:11px}.legend{gap:7px;font-size:10px}.legend i{width:7px;height:7px}.readout-card{padding:18px}.detail-panel{padding:18px}}

.generation-label{display:inline-block;color:#bce8ec;font-weight:600;letter-spacing:0;margin-left:6px}
