@charset "UTF-8";
:root{--bg:#f3f3ed;--surface:#fafaf6;--ink:#23332f;--muted:#64716b;--line:#d9dfd5;--accent:#20705e;--soft:#e5eee5;--white:#fff;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--orange:#ab622d;--shadow:0 16px 48px #20362a12;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-size:14px;line-height:1.65}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}a{color:inherit;text-decoration:none}small,.eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.06em}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}
header{height:67px;display:flex;justify-content:space-between;align-items:center;padding:0 30px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:10px;align-items:center;font-size:17px}.brand svg{color:var(--accent)}.brand span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--muted);margin-left:10px}header nav{display:flex;align-items:center;gap:24px;font-size:12px}header nav button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%}.heading{padding:26px 30px 25px;display:flex;justify-content:space-between;align-items:center;gap:24px}.eyebrow{color:var(--accent);font-size:10px;letter-spacing:.14em}h1{font:500 34px/1.3 Georgia,"Songti SC","SimSun",serif;letter-spacing:-.02em;margin:8px 0}h1 span{font-family:inherit;font-size:27px;margin-left:25px;font-weight:400}.heading p{margin:7px 0 0;color:var(--muted);font-size:12px}.edition{font-size:12px;white-space:nowrap}.edition small{display:block;margin-top:8px;color:var(--muted)}.status{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px}
.workspace{display:grid;grid-template-columns:185px minmax(0,1fr) 325px;border-top:1px solid var(--line);margin:0 30px;border-left:1px solid var(--line);border-right:1px solid var(--line);align-items:start}.directory{padding:20px 12px;position:sticky;top:0;min-width:0}.rail-heading{font-size:11px;display:flex;justify-content:space-between;margin:0 8px 22px;color:var(--muted)}.sector{display:flex;text-align:left;width:100%;gap:12px;padding:14px 10px;margin:2px 0;border:1px solid transparent;border-radius:4px;align-items:center}.sector:hover{background:var(--soft)}.sector.active{background:var(--surface);border-color:var(--line);box-shadow:0 2px 4px #273f2710}.sector .number{font:11px var(--mono);color:var(--muted);width:17px}.sector strong{font-size:12px;display:block;font-weight:550}.sector small{font-size:9px;letter-spacing:0;color:var(--muted);display:block;margin-top:3px}.sector .dot{margin-left:auto;flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--sector)}.compare{margin:24px 8px 0;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);width:calc(100% - 16px);text-align:left;font-size:11px}.compare span{float:right}.rail-note{padding:30px 8px;color:var(--muted)}.rail-note b{font-size:10px;color:var(--accent)}.rail-note p{font-family:Georgia,"Songti SC",serif;font-size:19px;line-height:1.8}.rail-note small{font:10px/1.8 inherit}
.visual{border-left:1px solid var(--line);border-right:1px solid var(--line);background:var(--surface);min-width:0}.viewbar{height:61px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 21px}.segmented{display:flex;padding:3px;background:var(--bg);border:1px solid var(--line);border-radius:5px}.segmented button{font-size:11px;padding:6px 12px;border-radius:3px}.segmented .active{background:var(--white);box-shadow:0 1px 4px #0001;color:var(--accent);font-weight:600}#tour{font-size:11px}#tour span{margin-left:12px;color:var(--accent)}#sceneWrap{height:535px;position:relative;overflow:hidden;background:#edf0e7}#canvasHost{position:absolute;inset:0}#canvasHost canvas{display:block;touch-action:none}.scene-heading{position:absolute;top:22px;left:24px;z-index:2;pointer-events:none;max-width:85%}.scene-heading small{color:#467568;font-size:9px}.scene-heading h2{font:400 22px/1.4 Georgia,"Songti SC",serif;margin:6px 0}.scene-heading p{font-size:10px;margin:0;color:var(--muted)}#labels{position:absolute;inset:0;pointer-events:none}.model-label{position:absolute;transform:translate(-50%,-50%);font-size:10px;line-height:1.2;background:var(--surface);border:1px solid var(--line);padding:8px 10px;border-radius:3px;white-space:nowrap;pointer-events:auto;box-shadow:0 3px 10px #162f1512;z-index:2}.model-label i{display:inline-block;width:5px;height:5px;background:var(--s);border-radius:50%;margin-right:5px}.model-label.active{border-color:var(--accent);color:var(--accent);font-weight:600}.model-label small{font-size:9px;opacity:.6;margin-left:6px}.scene-tools{position:absolute;bottom:70px;right:18px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:5px;z-index:3;box-shadow:var(--shadow)}.scene-tools button{width:33px;height:33px;border-bottom:1px solid var(--line);font:16px var(--mono)}.scene-tools button:last-child{border:0;font-size:11px}.scene-tools button:hover{background:var(--soft)}.scene-bottom{position:absolute;bottom:0;left:0;right:0;min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:9px 18px;border-top:1px solid #64705f22;gap:10px;background:var(--surface);z-index:3}.scene-bottom>span{font-size:9px;color:var(--muted)}#enter{white-space:nowrap;color:var(--accent);font-weight:600;font-size:11px}.stepper{display:grid;grid-template-columns:repeat(var(--step-count,4),minmax(0,1fr));border-top:1px solid var(--line);padding:0 20px;gap:10px}.stepper button{text-align:left;padding:14px 0 10px;font-size:11px;border-top:2px solid transparent}.stepper button.active{border-color:var(--accent);color:var(--accent);font-weight:600}.stepper small{display:block;margin-bottom:5px;font-size:9px;color:var(--muted)}.stage-note{display:flex;gap:14px;padding:6px 20px 18px;align-items:baseline;min-height:64px}.stage-note small{white-space:nowrap;color:var(--accent);font-size:9px}.stage-note p{font-size:11px;color:var(--muted);margin:0}.simulator{border-top:1px solid var(--line);padding:22px 24px}.sim-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.sim-heading small{font-size:9px;color:var(--accent)}h3{font-size:15px;margin:4px 0 0;font-weight:550}.assumption{font-size:9px;color:var(--orange);border:1px solid #b2865d55;padding:4px 7px;white-space:nowrap}.sim-controls{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:22px 0 15px;font-size:11px}.sim-controls output{float:right;font-family:var(--mono);font-weight:600;color:var(--accent)}input[type=range]{display:block;width:100%;margin:10px 0;height:20px;accent-color:var(--accent);cursor:pointer}.flow-output{display:flex;justify-content:space-between;align-items:center;gap:12px}.flow-output>div{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:0 8px}.flow-output span{font-size:10px;color:var(--muted);grid-column:span 2}.flow-output b{font:28px var(--mono);font-weight:400}.flow-output small{font-size:9px;color:var(--muted)}.flow-output i{font-style:normal;color:#98a399}.sim-meter{height:3px;background:var(--line);margin:17px 0 9px}.sim-meter span{display:block;width:50%;height:100%;background:var(--accent);transition:width .3s}#simNote{font-size:11px;margin:0;color:var(--muted);min-height:37px}details{font-size:10px;color:var(--muted);margin-top:15px}summary{cursor:pointer}details p{line-height:1.9}
.panel{padding:24px 22px;background:var(--bg);min-width:0}.panel-top small{color:var(--accent);font-size:9px}.panel-top h2{font-size:25px;font-weight:500;margin:12px 0 10px;letter-spacing:-.04em}.panel-top p{font-size:12px;color:var(--muted);line-height:1.8;margin:0 0 23px}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);margin-bottom:23px}.tabs button{font-size:11px;padding:10px 0;border-bottom:2px solid transparent}.tabs button.active{border-color:var(--accent);color:var(--accent);font-weight:600}.panel-section{margin-bottom:25px}.panel-section>small{font-size:9px;letter-spacing:.04em;color:var(--accent);display:block;margin-bottom:9px}.panel-section h3{font-size:14px;margin:0 0 8px}.panel-section p{font-size:12px;line-height:1.85;margin:0;color:var(--muted)}.insight{border-left:2px solid var(--accent);padding:13px 15px;background:var(--soft);font-size:12px;margin:23px 0;line-height:1.85}.panel-section ul{padding-left:16px;margin:0;color:var(--muted);font-size:12px}.panel-section li{margin:7px 0}.fact-pair{display:grid;grid-template-columns:67px 1fr;gap:15px;font-size:11px;padding:11px 0;border-bottom:1px solid var(--line)}.fact-pair span{color:var(--muted)}.fact-pair b{font-weight:450}.source{display:block;border-top:1px solid var(--line);padding:12px 0;font-size:11px;color:var(--accent)}.source small{display:block;color:var(--muted);font:10px/1.7 inherit;margin-top:5px}.ticker{display:inline-block;padding:4px 8px;border:1px solid var(--line);font-size:11px;margin:5px 5px 0 0}.ticker.link:hover{border-color:var(--accent)}.layer-stack{display:grid;gap:7px}.layer-card{padding:10px 11px;border:1px solid var(--line);text-align:left;background:var(--surface)}.layer-card:hover,.layer-card.active{border-color:var(--accent);background:var(--soft)}.layer-card b{display:flex;align-items:baseline;gap:8px;font-size:12px}.layer-card b i,.exposure-row button i{font:9px var(--mono);color:var(--accent)}.layer-card b em{margin-left:auto;color:var(--muted);font-size:10px;font-style:normal;font-weight:400}.layer-card p{font-size:10px;margin:6px 0!important;line-height:1.65}.layer-card>div{display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.layer-card strong{color:var(--accent);font-weight:550}.exposure-row{border-top:1px solid var(--line);padding:12px 0}.exposure-row>button{width:100%;display:grid;grid-template-columns:25px auto 1fr;gap:6px;text-align:left;align-items:baseline}.exposure-row>button b{font-size:12px}.exposure-row>button span{text-align:right;font-size:9px;color:var(--muted)}.mapping-note{font-size:10px!important;margin-top:14px!important}.deep-link{display:block;margin-top:28px;border:1px solid var(--line);padding:13px 15px;font-size:12px;font-weight:550}.deep-link span{float:right}.deep-link small{display:block;color:var(--muted);font:10px/1.8 inherit;margin-top:8px}footer{padding:18px 30px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px}footer span:last-child{font:9px var(--mono)}#loader,#fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:var(--surface);z-index:4;gap:12px;font-size:12px}#fallback{flex-direction:column;padding:60px;text-align:center}#fallback p{max-width:300px;font-size:12px;color:var(--muted)}#retry{border:1px solid var(--line);padding:8px 20px}.loading-dot{width:10px;height:10px;background:var(--accent);border-radius:50%;animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.2;transform:scale(.6)}}.skip{position:fixed;left:12px;top:-90px;background:var(--surface);padding:12px;z-index:100}.skip:focus{top:12px}
dialog{border:1px solid var(--line);background:var(--surface);color:var(--ink);max-width:850px;width:calc(100% - 40px);max-height:85dvh;padding:25px 30px;box-shadow:var(--shadow);border-radius:8px}dialog::backdrop{background:#122c24aa;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.dialog-top button{font-size:24px}#dialogBody h2{font:28px Georgia,"Songti SC",serif}#dialogBody p{font-size:13px;color:var(--muted)}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;min-width:560px}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--line)}th{font-size:10px;color:var(--muted);font-weight:500}td:first-child{color:var(--accent)}.dialog-action{padding:10px 20px;background:var(--accent);color:var(--white);border-radius:3px;margin-top:15px}
body.dark{--bg:#172520;--surface:#1d2e27;--ink:#e2e9dd;--muted:#abb9ac;--line:#3b4b3f;--accent:#8bbd99;--soft:#283e30;--white:#293d32;--orange:#e4b077;color-scheme:dark}body.dark #sceneWrap{background:#1e3028}body.dark .scene-heading small{color:var(--accent)}
@media(min-width:1650px){.workspace{grid-template-columns:220px minmax(0,1fr) 370px}#sceneWrap{height:610px}.panel{padding:26px 28px}.panel-top h2{font-size:28px}.panel-section p{font-size:13px}.sector strong{font-size:13px}}
@media(max-width:1180px){header{padding:0 18px}.heading{padding:22px 18px}.workspace{margin:0 18px;grid-template-columns:155px minmax(0,1fr) 280px}.panel{padding:22px 17px}.directory{padding:20px 7px}.sector{gap:7px;padding:13px 5px}.sector strong{font-size:11px}.heading h1{font-size:29px}.heading h1 span{font-size:23px;margin-left:16px}.edition{display:none}.scene-heading h2{font-size:18px}.sim-heading{display:block}.assumption{display:inline-block;margin-top:8px}.flow-output>div{display:block}.flow-output span,.flow-output small{display:block}.flow-output b{font-size:25px}.scene-bottom>span{max-width:52%}.tabs{gap:15px}}
@media(max-width:950px){.workspace{grid-template-columns:155px minmax(0,1fr)}.panel{grid-column:1/-1;border-top:1px solid var(--line);display:grid;grid-template-columns:240px 1fr;gap:0 25px}.panel-top{grid-row:1/3}.tabs{grid-column:2}.deep-link{grid-column:1;grid-row:3}.panelBody{grid-column:2}.rail-note{position:static}#sceneWrap{height:510px}}
@media(max-width:640px){header{height:58px;padding:0 15px}.brand{font-size:15px;gap:7px}.brand span{display:none}header nav{gap:12px}header nav a{font-size:10px}header nav a:first-child{display:none}header nav button{width:28px;height:28px}.heading{padding:22px 17px 20px}.heading h1{font-size:30px}.heading h1 span{display:block;margin:5px 0 0;font-size:22px}.heading p{max-width:310px;line-height:1.85;font-size:11px}.eyebrow{font-size:8px}.workspace{display:block;margin:0 12px}.directory{padding:0 8px;position:static}.rail-heading,.rail-note{display:none}#sectorList{display:flex;overflow:auto;gap:5px;padding:10px 0;scrollbar-width:thin}.sector{width:auto;flex-shrink:0;padding:10px;gap:6px;margin:0}.sector small,.sector .dot{display:none}.sector strong{font-size:11px}.sector .number{font-size:9px;width:auto}.compare{display:block;margin:0 0 8px;padding:8px 4px;width:100%;font-size:10px;border-top:0}.visual{border-left:0;border-right:0}.viewbar{height:53px;padding:0 13px}#sceneWrap{height:420px}.scene-heading{top:17px;left:17px;max-width:91%}.scene-heading h2{font-size:18px}.scene-heading p{font-size:9px}.scene-heading small{font-size:8px}.model-label{font-size:9px;padding:7px 6px}.model-label small{display:none}.scene-tools{right:10px;bottom:66px}.scene-tools button{width:30px;height:30px}.scene-bottom{padding:9px 12px}.scene-bottom>span{font-size:8px;max-width:48%}#enter{font-size:10px}.stepper{padding:0 15px;gap:7px;grid-template-columns:repeat(var(--step-count,4),minmax(88px,1fr));overflow-x:auto}.stepper button{font-size:10px}.stage-note{padding:5px 15px 18px;gap:10px}.stage-note p{font-size:10px}.simulator{padding:20px 16px}.sim-heading h3{font-size:14px}.sim-controls{gap:20px}.sim-controls label{font-size:10px}.flow-output small{font-size:8px}.panel{display:block;padding:25px 20px}.panel-top h2{font-size:26px}.panel-top p{font-size:12px}.tabs{gap:28px}.panel-section p{font-size:13px}.layer-card p{font-size:11px}.exposure-row>button{grid-template-columns:22px auto}.exposure-row>button span{grid-column:2;text-align:left}.deep-link{margin-top:20px}footer{padding:17px;display:block;font-size:9px}footer span{display:block;margin-top:7px}dialog{padding:18px;width:calc(100% - 24px)}#dialogBody h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media(min-width:641px) and (max-width:950px){#panelBody{grid-column:2;grid-row:2/4}}
