.experience{color:#25394c;background:#f3f5f7;flex-direction:column;height:100dvh;min-height:720px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft Yahei,sans-serif;display:flex;overflow:hidden}.experience button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.experience-header{z-index:10;background:#ffffffd9;border-bottom:1px solid #e1e7ec;flex-shrink:0;justify-content:space-between;align-items:center;height:76px;padding:0 38px;display:flex}.experience-brand{color:#246fa8;align-items:center;gap:13px;font-family:Georgia,serif;font-size:36px;font-style:italic;font-weight:600;display:flex}.experience-brand>span{letter-spacing:-1px;color:#25374a;font:600 23px Inter,system-ui,sans-serif}.experience-brand>small{letter-spacing:2px;color:#8494a4;border-left:1px solid #dbe3ea;margin-left:12px;padding-left:24px;font:9px Inter,system-ui,sans-serif}.experience-header-actions{align-items:center;gap:20px;display:flex}.experience-header-actions>button{color:#5c7185;border-radius:7px;padding:9px;font-size:11px}.experience-header-actions>button:hover{background:#e9eff4}.local-pill{color:#73879a;align-items:center;gap:6px;font-size:10px;display:flex}.local-pill i,.scene-context i{background:#63a4b1;border-radius:100%;width:5px;height:5px;display:inline-block}.experience-stage{flex:1;min-height:0;position:relative}.experience-canvas{transition:opacity .6s;position:absolute;inset:0 0 0 24%;overflow:hidden}.experience-canvas .scene-root{width:100%;height:100%}.experience-canvas .selection-card{top:100px;right:35px}.experience-loading{color:#8da1b1;place-content:center;height:100%;font-size:13px;display:grid}.experience-topline{color:#8a9bab;letter-spacing:.5px;pointer-events:none;justify-content:space-between;align-items:center;font-size:10px;display:flex;position:absolute;inset:24px 38px auto}.experience-topline i{color:#bac7d0;margin:0 8px;font-style:normal}.experience-topline>div{pointer-events:auto;background:#ffffffc9;border:1px solid #e0e7ec;border-radius:20px;padding:3px;display:flex}.experience-topline button{color:#91a0ae;border-radius:18px;padding:5px 13px;font-size:10px}.experience-topline button.active{color:#397aaf;background:#e9f1f9}.north-marker{color:#8397aa;flex-direction:column;align-items:center;gap:5px;font-size:10px;display:flex;position:absolute;bottom:35px;right:43px}.north-marker span{font-size:27px;font-weight:200}.north-marker small{font-size:8px}.editorial-eyebrow{letter-spacing:2.2px;color:#7e94a8;font-size:9px;font-weight:500;display:block}.prompt-intro{pointer-events:none;z-index:2;position:absolute;top:24%;left:5.2%}.prompt-intro h1{letter-spacing:-1.3px;margin:18px 0 21px;font-size:clamp(29px,3.1vw,49px);font-weight:450;line-height:1.35}.prompt-intro h1>span{color:#6e91aa}.prompt-intro p{color:#8799aa;font-size:12px;line-height:2}.intro-tags{color:#7392a9;gap:17px;margin-top:25px;font-size:10px;display:flex}.intro-tags>span{align-items:center;gap:5px;display:flex}.prompt-dock{z-index:5;align-self:center;width:min(940px,100% - 80px);padding-bottom:27px;position:relative}.preset-choices{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:15px;display:grid}.preset-choices>button{text-align:left;background:#ffffff8f;border:1px solid #dfe6ed;border-radius:12px;justify-content:flex-start;padding:13px 17px;transition:background .2s,border .2s,box-shadow .2s}.preset-choices>button:hover{background:#fff;border-color:#aec8df}.preset-choices>button.active{background:#fff;border-color:#9cbdd8;box-shadow:0 4px 12px #3965840b}.preset-choices>button>span{color:#a5b5c2;align-self:flex-start;margin-top:3px;margin-right:5px;font-size:9px}.preset-choices>button>div{flex-direction:column;flex:1;gap:5px;display:flex}.preset-choices b{color:#3e5c74;font-size:12px;font-weight:500}.preset-choices small{color:#899eaf;font-size:9px}.preset-choices svg{color:#9eb6c9}.prompt-composer{background:#fff;border:1px solid #d9e3eb;border-radius:19px;align-items:center;gap:18px;padding:19px 21px;display:flex;box-shadow:0 13px 40px #335d7a0c,0 2px 3px #335d7a05}.prompt-composer>svg{color:#7da2bd;flex-shrink:0}.prompt-composer textarea{resize:none;color:#567087;background:0 0;border:0;outline:0;flex:1;height:48px;font-family:inherit;font-size:12px;line-height:1.9}.prompt-composer .start-demo{color:#fff;background:#367fb7;border-radius:13px;flex-shrink:0;width:42px;height:42px;box-shadow:0 4px 9px #367fb727}.prompt-composer .start-demo:hover{background:#226ba2;transform:translateY(-1px)}.composer-caption{color:#96a6b4;justify-content:space-between;padding:12px 5px 0;font-size:9px;display:flex}.phase-building .experience-canvas,.phase-tour .experience-canvas,.phase-finished .experience-canvas{left:23%}.building-story,.tour-story{z-index:4;width:280px;animation:.7s both story-arrive;position:absolute;top:17%;left:4.2%}.building-story h1,.tour-story h1{letter-spacing:-.7px;max-width:280px;margin:15px 0 18px;font-size:31px;font-weight:450;line-height:1.48}.building-story p,.tour-story>p{color:#71899c;font-size:12px;line-height:2}.build-checklist{flex-direction:column;gap:20px;margin-top:30px;display:flex}.build-checklist>div{color:#a3b3c0;align-items:center;gap:13px;font-size:11px;transition:color .4s;display:flex}.build-checklist>div>span{color:#95acbc;border:1px solid #d7e1e9;border-radius:50%;place-items:center;width:22px;height:22px;font-size:8px;display:grid}.build-checklist>div.current{color:#3b7fae}.build-checklist>div.current>span{color:#3981b4;background:#e0edf7;border-color:#accbe2}.build-checklist>div.done{color:#637f92}.build-checklist>div.done>span{color:#66938b;background:#e3eeeb;border-color:#cadeda}.building-story>small{color:#8b9ead;margin-top:23px;font-size:9px;line-height:1.8;display:block}.story-metric{flex-wrap:wrap;align-items:baseline;gap:7px;margin:22px 0 18px;display:flex}.story-metric strong{letter-spacing:-1.5px;color:#477d9f;font-variant-numeric:tabular-nums;font-size:44px;font-weight:350}.story-metric>span{color:#869eaf;font-size:12px}.story-metric>small{color:#8a9fae;flex:1 0 100%;margin-top:1px;font-size:10px}.story-note{color:#8fa2b1;border-top:1px solid #dce5ec;padding-top:14px;font-size:9px;line-height:1.9}.scene-context{pointer-events:none;border-left:1px solid #d8e3eb;flex-direction:column;gap:7px;padding-left:14px;display:flex;position:absolute;top:86px;right:42px}.scene-context>span{color:#859daf;align-items:center;gap:6px;font-size:9px;display:flex}.scene-context>b{color:#587c97;font-size:13px;font-weight:400}.scene-context>small{color:#9bafbd;font-size:8px}.tour-dock{z-index:5;align-self:center;width:min(990px,100% - 80px);padding-bottom:24px}.tour-controls{background:#ffffffcf;border:1px solid #dce6ee;border-radius:14px 14px 0 0;align-items:center;gap:13px;padding:12px 18px;display:flex}.tour-controls>button{color:#7293ad;border-radius:8px;width:32px;height:32px}.tour-controls>button:hover{background:#e8f1f8}.tour-controls>button.tour-play{color:#fff;background:#367fb7}.tour-controls>div:not(.tour-spacer){flex-direction:column;gap:4px;display:flex}.tour-controls b{color:#4e6c82;font-size:11px;font-weight:500}.tour-controls small{color:#91a6b7;font-size:9px}.tour-spacer{flex:1}.chapter-track{background:#edf2f6;border:1px solid #dce6ee;border-top:0;border-radius:0 0 14px 14px;grid-template-columns:repeat(6,1fr);display:grid;overflow:hidden}.chapter-track>button{color:#8aa0b3;gap:8px;padding:17px 5px;font-size:10px;position:relative}.chapter-track>button.active{color:#3679ac;background:#ffffffbf}.chapter-track>button:hover:not(:disabled){background:#f8fbfd}.chapter-track>button>i{transform-origin:0;background:#6c9dbf;height:2px;transition:transform .1s linear;position:absolute;bottom:0;left:0;right:0}.sun-slider{color:#7290a4;margin-top:20px;font-size:10px;display:block}.sun-slider>b{float:right;font-weight:500}.sun-slider>input{accent-color:#b9a46d;width:100%;margin:13px 0 6px;display:block}.sun-slider>span{color:#a2afba;justify-content:space-between;font-size:8px;display:flex}.economics-controls{background:#ffffffa3;border:1px solid #dce6ed;border-radius:10px;flex-wrap:wrap;gap:10px;margin-top:16px;padding:13px;display:flex}.economics-controls>label{color:#7a91a4;align-items:center;gap:6px;width:100%;font-size:9px;display:flex}.economics-controls input{color:#577a95;text-align:right;background:#fff;border:1px solid #d7e3ed;border-radius:5px;width:62px;padding:4px 5px;font-size:11px}.cashflow{border-bottom:1px solid #dce6ed;justify-content:space-around;align-items:flex-end;width:100%;height:64px;margin-top:2px;padding-bottom:5px;display:flex}.cashflow>div{flex-direction:column;align-items:center;gap:4px;display:flex}.cashflow span{background:linear-gradient(#7ca9c6,#adc7d8);border-radius:3px 3px 0 0;width:19px}.cashflow span.negative{background:#c8aea1}.cashflow small{color:#94a6b5;font-size:8px}.economics-controls>p{color:#879cac;justify-content:space-between;width:100%;font-size:9px;display:flex}.economics-controls>p>b{color:#5c809c;font-weight:500}.economics-controls>small{color:#91a4b4;font-size:8px}.demo-error{z-index:20;color:#956545;background:#fff7ed;border:1px solid #e3c9b7;border-radius:10px;align-items:center;gap:20px;max-width:85vw;padding:12px 20px;font-size:12px;display:flex;position:absolute;top:84px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #684b1715}.demo-error>button{color:#7c8ea0;white-space:nowrap;text-decoration:underline}.study-modal-backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:100;background:#243e5936;place-items:center;display:grid;position:fixed;inset:0}.study-modal{background:#fafcfe;border:1px solid #fff;border-radius:20px;width:min(690px,90vw);max-height:84vh;padding:38px;position:relative;overflow:auto;box-shadow:0 20px 90px #1d344b22}.study-modal h2{margin:13px 0 17px;font-size:27px;font-weight:450}.study-modal>p,.study-modal li{color:#70889e;font-size:12px;line-height:1.9}.study-modal h3{color:#4a6c85;margin:23px 0 13px;font-size:12px}.study-modal ul{padding-left:18px}.study-modal li{margin:8px 0}.close-study{color:#8a9eae;position:absolute;top:18px;right:18px}.research-link{color:#68869e;border-top:1px solid #e3eaf0;align-items:center;gap:12px;padding:12px 0;display:flex}.research-link>small{color:#96a8b7;flex-shrink:0;width:68px;font-size:9px}.research-link>span{flex:1;font-size:11px;line-height:1.5}.research-link:hover{color:#2f79b3}.assumption-grid{background:#eef3f7;border-radius:10px;grid-template-columns:1fr 1fr;gap:10px;padding:15px;display:grid}.assumption-grid>div{color:#758da2;justify-content:space-between;font-size:10px;display:flex}.assumption-grid dd{color:#456a86;margin:0}.back-to-experience{z-index:60;color:#6689a6;background:#fff;border:1px solid #e3ebf1;border-radius:6px;padding:6px 10px;font-size:10px;position:fixed;top:22px;left:405px}.phase-finished .story-metric strong{color:#4f8a8d}@keyframes story-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (height>=880px){.prompt-intro{top:28%}.tour-story{top:21%}.building-story{top:24%}.experience-canvas{inset:0 0 0 19%}}@media (height<=790px){.experience{min-height:650px}.experience-header{height:62px}.prompt-dock{padding-bottom:17px}.preset-choices{margin-bottom:10px}.preset-choices>button{padding:10px 14px}.prompt-composer{padding:14px 18px}.prompt-intro{top:23%}.building-story,.tour-story{top:15%}.tour-story h1,.building-story h1{margin:11px 0 12px;font-size:27px}.tour-story>p{font-size:11px;line-height:1.8}.story-metric{margin:13px 0}.story-metric strong{font-size:36px}.story-note{padding-top:9px}.economics-controls{gap:5px;margin-top:9px;padding:9px}.tour-dock{padding-bottom:15px}.chapter-track>button{padding:13px 5px}.build-checklist{gap:13px;margin-top:18px}}@media (width<=1050px){.experience-header{padding:0 24px}.experience-brand>small,.local-pill{display:none}.prompt-intro h1{font-size:34px}.prompt-intro{left:4%}.building-story,.tour-story{width:240px;left:4%}.tour-story h1{font-size:27px}.experience-canvas{left:22%}.experience-topline{left:30px;right:25px}.scene-context{right:25px}.prompt-dock,.tour-dock{width:calc(100% - 48px)}.preset-choices small{font-size:8px}.preset-choices>button{padding:12px}.scene-context>small{display:none}}@media (width<=700px){.experience{height:auto;min-height:900px}.experience-header{height:64px;padding:0 18px}.experience-header-actions{gap:6px}.experience-header-actions>button{font-size:9px}.experience-brand>span{font-size:19px}.experience-stage{flex:none;height:620px}.experience-canvas,.phase-building .experience-canvas,.phase-tour .experience-canvas,.phase-finished .experience-canvas{inset:210px 0 0}.prompt-intro{top:75px;left:25px}.prompt-intro h1{margin:10px 0;font-size:30px}.prompt-intro p{display:none}.intro-tags{margin-top:10px}.prompt-dock{width:calc(100% - 28px)}.preset-choices{gap:5px}.preset-choices>button{padding:9px 6px}.preset-choices>button>span,.preset-choices>button>svg,.preset-choices small{display:none}.preset-choices b{font-size:10px}.prompt-composer{gap:10px;padding:13px}.prompt-composer textarea{height:84px;font-size:11px}.composer-caption{gap:15px;font-size:8px;line-height:1.7}.tour-story,.building-story{width:calc(100% - 50px);top:70px;left:25px}.tour-story h1,.building-story h1{margin:10px 0;font-size:26px}.tour-story>p{max-width:450px;font-size:11px}.story-metric{text-align:right;justify-content:flex-end;max-width:155px;position:absolute;top:240px;right:5px}.story-metric strong{font-size:29px}.story-metric>small,.story-note{font-size:8px}.scene-context{display:none}.tour-dock{width:calc(100% - 28px)}.chapter-track{grid-template-columns:repeat(3,1fr)}.chapter-track>button{padding:12px}.tour-controls{gap:8px;padding:10px}.tour-controls b{font-size:10px}.tour-controls small{font-size:8px}.economics-controls{width:210px;margin-top:16px}.sun-slider{width:210px}.build-checklist{grid-template-columns:1fr 1fr;gap:10px;display:grid}.building-story>small{margin-top:12px}.north-marker{bottom:20px;right:23px}.study-modal{padding:25px}.assumption-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.tour-story,.building-story{animation:none}.experience *{scroll-behavior:auto}}.experience-canvas{-webkit-mask-image:linear-gradient(90deg,#0000,#000 12%),linear-gradient(#000 87%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12%),linear-gradient(#000 87%,#0000);-webkit-mask-composite:source-in;mask-composite:intersect}.experience[data-chapter=economics] .tour-story{top:10%}.experience[data-chapter=economics] .tour-story h1{margin:12px 0;font-size:27px}.experience[data-chapter=economics] .story-metric{margin:13px 0}.cashflow{border-bottom:0;align-items:stretch;height:78px;padding-bottom:0;position:relative}.cashflow:before{content:"";background:#dbe5ed;height:1px;position:absolute;top:50%;left:0;right:0}.cashflow>div{width:28px;height:100%;position:relative}.cashflow span{position:absolute;bottom:50%}.cashflow span.negative{border-radius:0 0 3px 3px;top:50%;bottom:auto}.cashflow small{position:absolute;bottom:0}@media (height<=790px){.experience[data-chapter=economics] .tour-story{top:9%}.experience[data-chapter=economics] .story-metric strong{font-size:29px}.experience[data-chapter=economics] .tour-story>p{font-size:10px}.experience[data-chapter=economics] .economics-controls{gap:3px}.cashflow{height:65px}}@media (width<=700px){.experience[data-chapter=economics] .tour-story{top:70px}.experience[data-chapter=economics] .story-metric{top:280px}}.experience .sun-slider>input{margin:15px 0 12px}.assembly-count{color:#286eab;font-variant-numeric:tabular-nums;align-items:center;gap:12px;margin-top:32px;display:flex}.assembly-count>strong{letter-spacing:-4px;font-size:68px;font-weight:300;line-height:1}.assembly-count>span{font-size:16px}.assembly-count small{color:#8a9eaf;letter-spacing:1px;margin-top:8px;font-size:10px;display:block}.assembly-timeline{padding:0 22px 16px}.experience .assembly-timeline input[type=range]{accent-color:#328dcc;cursor:ew-resize;width:100%;height:2px;margin:8px 0 17px}.assembly-timeline>div{justify-content:space-between;display:flex}.assembly-timeline button{color:#93a4b3;border-radius:5px;padding:4px 6px;font-size:11px}.assembly-timeline button span{font-variant-numeric:tabular-nums;opacity:.6;font-size:9px}.assembly-timeline button.active{color:#257bb9;background:#e9f2f8}.rebuild-button{color:#5182a5;font-size:11px}.experience[data-phase=building] .building-story{max-width:265px}.experience[data-phase=building] .building-story h1{letter-spacing:-1.4px;font-size:34px;line-height:1.45}.experience[data-phase=building] .building-story>p{max-width:230px;font-size:12px;line-height:1.9}.experience[data-phase=building] .experience-canvas{inset:0 0 0 20%}.experience[data-phase=building] .tour-dock{border-color:#d6e4ed;box-shadow:0 18px 60px #5e86a516,0 0 0 5px #fff5}.tour-story>p{max-width:260px}@media (width<=700px){.experience[data-phase=building] .building-story h1{font-size:24px}.assembly-count{margin-top:14px}.assembly-count>strong{font-size:42px}.assembly-timeline{padding:0 10px 12px}.assembly-timeline button{gap:4px;padding:4px 2px;font-size:10px}.experience[data-phase=building] .experience-canvas{inset:100px 0 0}.rebuild-button{font-size:0;gap:0!important}}.experience[data-phase=building] .building-story h1{white-space:pre-line}.experience .tour-controls>.rebuild-button{white-space:nowrap;width:auto;min-width:104px;padding:0 10px}.experience .tour-story h1{text-wrap:balance}@media (width<=700px){.experience .tour-controls>.rebuild-button{width:32px;min-width:32px;padding:0}}.composer-caption button{color:#567087;font:inherit;align-items:center;gap:5px;display:inline-flex}.composer-caption button:hover{color:#2679ba}.prompt-composer:focus-within{border-color:#95bad8}.prompt-composer .start-demo:disabled{opacity:.55;cursor:default;transform:none}.model-spinner{animation:1.1s linear infinite model-spin}@keyframes model-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.model-spinner{animation:none}}:root{color:#263647;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--blue:#1678cd;--line:#e7ebef;--muted:#8b98a5;--panel:#fff;background:#f3f5f7;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:12px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0;transition:background .2s,color .2s,box-shadow .2s,transform .2s}button:disabled{opacity:.4;cursor:not-allowed}button:not(:disabled):active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline-offset:3px;outline:2px solid #64acf0}button svg{flex-shrink:0}input,select{outline:0;min-width:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600}a{color:inherit;text-decoration:none}small{font-size:10px}svg{flex-shrink:0}::selection{color:#1266ac;background:#dcecff}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#d8e0e8;border-radius:8px}::-webkit-scrollbar-track{background:0 0}.app-shell{flex-direction:column;height:100dvh;min-height:660px;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--line);z-index:40;background:#fff;flex-shrink:0;align-items:center;gap:35px;height:65px;padding:0 26px;display:flex}.brand{letter-spacing:-1.3px;color:#203247;align-items:center;gap:10px;font-size:25px;font-weight:650;display:flex}.brand-mark{color:#fff;background:linear-gradient(150deg,#5199d5,#1972ba);border-radius:9px 9px 13px;place-items:center;width:31px;height:34px;padding-bottom:4px;font:600 29px Georgia,serif;display:grid;position:relative;box-shadow:0 2px 4px #256a9c1a}.brand-mark>span{background:#c9e9fb;border-radius:0 7px;width:8px;height:4px;position:absolute;top:6px;right:4px;transform:rotate(-35deg)}.brand-sub{letter-spacing:.5px;color:#9aa5b1;border-left:1px solid #e0e6ec;margin-left:7px;padding-left:16px;font-size:10px;font-weight:400}.breadcrumb{color:#9ca8b3;align-items:center;gap:11px;font-size:11px;display:flex}.breadcrumb b{color:#637488;font-weight:500}.version-tag{letter-spacing:1px;color:#a4aeb8;background:#f4f6f8;border:1px solid #e9edf1;border-radius:4px;padding:4px 6px;font-size:8px}.header-actions{align-items:center;gap:16px;margin-left:auto;display:flex}.engine-status{color:#8b9aab;align-items:center;gap:7px;margin-right:5px;font-size:10px;display:flex}.status-dot{background:#3f9eac;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.status-dot.offline{background:#a7b2bc}.icon-button{color:#8c9bad;border-radius:7px;justify-content:center;align-items:center;padding:7px;display:flex}.icon-button:hover{color:var(--blue);background:#f0f5fa}.secondary-button{color:#60758b;background:#fff;border:1px solid #dde5ee;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-size:10px;display:inline-flex;box-shadow:0 1px 2px #143c6310}.secondary-button:hover{color:var(--blue);background:#f6faff;border-color:#adcbe6}.text-button{color:#67809a;align-items:center;gap:5px;padding:3px 0;font-size:10px;display:inline-flex}.text-button:hover{color:var(--blue)}.workspace{flex:1;grid-template-columns:238px minmax(380px,1fr) 286px;min-height:0;display:grid}.settings-panel{border-right:1px solid var(--line);z-index:20;background:#fff;flex-direction:column;min-height:0;display:flex}.setup-content{flex:1;min-height:0;padding:24px 19px 16px;overflow:auto}.panel-heading{color:#a7b2bd;justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.eyebrow{letter-spacing:1.6px;color:#96a3b2;font-size:8px;font-weight:500}.project-title h1{letter-spacing:.5px;color:#25394f;margin-bottom:7px;font-size:21px;font-weight:550}.project-title>span{color:#a0acb8;font-size:10px}.template-switch{background:#f2f5f8;border-radius:7px;gap:2px;margin:19px 0;padding:3px;display:flex}.template-switch button{color:#8a9aaa;border-radius:5px;flex:1;padding:7px 3px;font-size:10px}.template-switch button.active{color:#3478b3;background:#fff;box-shadow:0 1px 5px #243b5814}.section-label{color:#536980;align-items:center;gap:8px;margin:19px 0 12px;font-size:11px;font-weight:500;display:flex}.section-label>span{color:#afbbc6;font-variant-numeric:tabular-nums;font-size:9px}.section-label small,.section-label>svg{color:#8f9ead;margin-left:auto;font-size:9px;font-weight:400}.plot-editor{background:#f9fbfd;border:1px solid #dfe7ee;border-radius:8px;overflow:hidden}.plot-tools{background:#fff;border-bottom:1px solid #e4ebf1;gap:2px;padding:5px 7px;display:flex}.plot-tools button{color:#9eabb8;border-radius:4px;place-items:center;width:25px;height:23px;display:grid}.plot-tools button.active{color:#2b82c9;background:#eaf3fd}.plot-tools button:hover{color:#397cac;background:#f0f5fa}.plot-tools>span{flex:1}.plot-svg{cursor:crosshair;touch-action:none;width:100%;height:113px;display:block}.plot-svg circle{cursor:grab}.plot-hint{color:#9cabb8;background:#fff;border-top:1px solid #e7edf2;justify-content:space-between;align-items:center;min-height:25px;padding:6px 7px;font-size:8px;display:flex}.plot-hint button{color:#1f7cc2;align-items:center;gap:3px;font-size:9px;display:flex}.plot-editor>.text-button{padding:6px 8px;font-size:9px}.dimension-inputs{align-items:center;gap:10px;margin:14px 0 18px;display:flex}.dimension-inputs label{color:#9aa8b6;flex:1;min-width:0;font-size:9px}.dimension-inputs label>div{background:#fbfcfd;border:1px solid #e3e9ef;border-radius:6px;align-items:center;margin-top:6px;padding:7px 8px;display:flex}.dimension-inputs input{color:#566e86;background:0 0;border:0;width:100%;font-size:12px}.dimension-inputs label span{color:#a3b0bc;font-size:9px}.dimension-inputs>span{color:#b6c0ca;padding-top:18px;font-size:11px}.slider-label{margin:0 0 18px;display:block}.slider-label>span{color:#899aab;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:10px;display:flex}.slider-label b{color:#5a7289;font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.slider-label small{color:#9aaab9;margin-left:5px;font-size:9px;font-weight:400}input[type=range]{appearance:none;background:linear-gradient(to right, #4c94d2 0%, #4c94d2 var(--fill,0%), #e4eaf0 var(--fill,0%), #e4eaf0 100%);cursor:pointer;border:0;border-radius:3px;width:100%;height:3px;margin:0;display:block}input[type=range]::-webkit-slider-thumb{appearance:none;background:#fff;border:2px solid #5797cc;border-radius:50%;width:11px;height:11px;box-shadow:0 1px 4px #2b6a9830}.compact-fields{gap:13px;margin-bottom:18px;display:flex}.compact-fields label{color:#91a0af;flex:1;justify-content:space-between;align-items:center;gap:7px;font-size:10px;display:flex}.compact-fields select{color:#6a8298;background:#fafbfd;border:1px solid #e4eaf0;border-radius:5px;max-width:59px;padding:6px 3px;font-size:10px}.budget-input{color:#93a3b2;margin-bottom:20px;font-size:10px;display:block}.budget-input>div{background:#f8fbff;border:1px solid #dbe7f3;border-radius:7px;align-items:center;gap:8px;margin-top:8px;padding:9px 11px;display:flex}.budget-input input{color:#2b679a;letter-spacing:.1px;background:0 0;border:0;width:100%;font-size:20px;font-weight:500}.budget-input>div>span{color:#8aaccc;font-size:14px}.budget-input small{letter-spacing:.5px;color:#a3b7c8;font-size:8px}.advanced{color:#91a3b4;margin:7px 0 0;font-size:10px}.advanced summary{cursor:pointer;justify-content:space-between;align-items:center;margin-bottom:15px;list-style:none;display:flex}.advanced[open] summary svg{transform:rotate(90deg)}.advanced .slider-label{margin-top:20px}.setup-footer{border-top:1px solid var(--line);background:#fff;flex-shrink:0;padding:13px 18px 18px}.setup-footer>div{color:#a3b2c1;justify-content:center;align-items:center;gap:5px;margin-bottom:11px;font-size:9px;display:flex}.generate-button{color:#fff;background:linear-gradient(#368bd1,#2477bc);border:1px solid #2776bd;border-radius:8px;align-items:center;gap:9px;width:100%;padding:12px 13px;font-size:11px;font-weight:500;display:flex;box-shadow:0 3px 7px #266ca62a,inset 0 1px #ffffff25}.generate-button>svg:last-child,.generate-button>span:last-child{margin-left:auto}.generate-button:hover{background:linear-gradient(#479bdf,#277fc8);box-shadow:0 4px 12px #327fb038}.center-panel{background:#f3f5f7;flex-direction:column;min-width:0;min-height:0;display:flex}.viewport{background:#f3f5f7;flex:1;min-height:340px;position:relative;overflow:hidden}.viewport:fullscreen{height:100vh}.viewport-heading{z-index:4;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute;top:26px;left:31px;right:23px}.viewport-heading .eyebrow{letter-spacing:1.8px;color:#9aa8b7;font-size:8px}.viewport-heading h2{letter-spacing:1px;color:#304256;margin:11px 0 12px;font-size:30px;font-weight:500}.scene-title-index{color:#b9c4cf;margin-left:4px;font-size:18px;font-weight:300}.viewport-heading p{color:#9baab9;letter-spacing:.2px;align-items:center;gap:9px;font-size:10px;display:flex}.viewport-heading p i{background:#b5c1cc;border-radius:50%;width:2px;height:2px}.view-tools{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;background:#ffffffdc;border:1px solid #e0e6ecc0;border-radius:9px;align-items:center;gap:2px;padding:4px;display:flex;box-shadow:0 3px 9px #28486308}.view-tools button{color:#8194a7;white-space:nowrap;border-radius:5px;align-items:center;gap:5px;padding:7px 8px;font-size:10px;display:flex}.view-tools button.active{color:#2b7ebe;background:#eaf3fc}.view-tools button:hover:not(:disabled){background:#f0f5fa}.view-tools button:nth-child(n+4){border-left:1px solid #edf1f5;border-radius:0;padding:7px}.heat-icon{background:linear-gradient(140deg,#2082d4,#7edcde);border-radius:50%;width:9px;height:9px}.canvas-wrap{position:absolute;inset:40px 0 35px}.scene-root{width:100%;height:100%;position:relative}.canvas-loading,.canvas-fallback{color:#8a9fb3;flex-direction:column;justify-content:center;align-items:center;gap:15px;height:100%;padding:40px;font-size:12px;display:flex}.scene-badge{color:#7c94a9;pointer-events:none;align-items:center;gap:7px;font-size:9px;display:flex;position:absolute;top:114px;left:32px}.scene-badge b{color:#4a83ae;letter-spacing:.5px;background:#f8fcffcc;border:1px solid #d4e2ee;border-radius:4px;padding:3px 5px;font-size:8px;font-weight:500}.live-signal{background:#4b95c6;border-radius:50%;width:5px;height:5px;box-shadow:0 0 0 3px #81bfe612}.zone-indicator{color:#8fa5b9;pointer-events:none;align-items:center;gap:6px;font-size:9px;display:flex;position:absolute;top:73px;right:26px}.zone-indicator>svg{color:#72afd4}.zone-indicator b{color:#4f8bb8;margin-left:3px;font-size:14px;font-weight:500}.zone-indicator small{color:#a9bbc9;font-size:9px}.zone-ticks{gap:3px;margin-left:5px;display:flex}.zone-ticks i{background:#d9e5ee;border-radius:2px;width:12px;height:3px}.zone-ticks i.active{background:#3d9ad2;box-shadow:0 0 8px #6fc4f144}.map-top-caption{color:#6f879d;pointer-events:none;align-items:center;gap:6px;font-size:9px;display:flex;position:absolute;bottom:111px;left:32px}.map-top-caption>.status-dot{background:#4c98c8}.map-top-caption>span:last-child{color:#a5b5c2;border-left:1px solid #d6e1e9;margin-left:5px;padding-left:10px;font-size:8px}.map-compass{pointer-events:none;color:#8aa0b3;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:153px;left:32px}.map-compass>span{letter-spacing:1px;color:#a8b7c5;font-size:8px}.map-compass>div{font-size:25px;font-weight:200;line-height:34px}.map-compass>small{color:#b0bdca;font-size:8px}.map-bottom-caption{color:#8ba0b3;pointer-events:none;align-items:center;gap:6px;font-size:8px;display:flex;position:absolute;bottom:115px;right:28px}.map-bottom-caption small{display:none}.legend-pipe{background:linear-gradient(#4499c9,#155582);border-radius:2px;width:17px;height:3px;box-shadow:0 1px 2px #0002}.legend-tree{background:#8ca284;border-radius:50%;width:4px;height:4px;margin-left:7px}.pressure-ramp{background:linear-gradient(90deg,#2489d8,#70d7e3);border-radius:5px;width:65px;height:4px}.scene-flow-controls{align-items:center;gap:10px;display:flex;position:absolute;bottom:141px;right:27px}.scene-flow-controls>button{color:#7293af;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffc7;border:1px solid #dfe8f0;border-radius:6px;align-items:center;gap:5px;padding:6px 8px;font-size:9px;display:flex}.scene-flow-controls>button.active{color:#3c8abb}.scene-flow-controls small{display:none}.scene-flow-controls:hover small{color:#92a5b5;white-space:nowrap;background:#fff;border:1px solid #e5ecf1;border-radius:4px;padding:4px 7px;font-size:8px;display:block;position:absolute;top:-25px;right:0}.viewport-summary{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:3;background:#fffd;border:1px solid #e1e8ed;border-radius:11px;grid-template-columns:repeat(4,1fr);min-height:72px;display:grid;position:absolute;bottom:17px;left:26px;right:26px;box-shadow:0 7px 22px #334c6210,0 1px 1px #fff}.viewport-summary>div{padding:13px 0 13px 20px;position:relative}.viewport-summary>div+div:before{content:"";background:#e7edf2;width:1px;position:absolute;top:20px;bottom:20px;left:0}.viewport-summary>div>span{color:#91a3b5;margin-bottom:7px;font-size:9px;display:block}.viewport-summary b{color:#415b73;letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:22px;font-weight:500}.viewport-summary b small{color:#a1b2c1;letter-spacing:0;font-size:9px;font-weight:400}.trace-panel{background:#fff;border-top:1px solid #e5ebf1;flex-shrink:0;padding:16px 28px 10px;position:relative}.trace-heading{color:#647f97;justify-content:space-between;align-items:center;font-size:11px;display:flex}.trace-heading>span,.trace-heading>div{align-items:center;gap:8px;display:flex}.mono{color:#b0bdc9;letter-spacing:1px;margin-left:5px;font-size:8px}.solver-tag{color:#98aebf;border:1px solid #e2eaf1;border-radius:4px;padding:3px 5px;font:8px ui-monospace,SFMono-Regular,Consolas,monospace}.trace-stage{align-items:center;gap:12px;padding:14px 0 11px;display:flex}.trace-stage-icon{color:#4f8ebf;background:#edf5fc;border:1px solid #dfecf7;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.trace-number{font-variant-numeric:tabular-nums;font-size:13px;font-weight:500}.trace-stage>div:nth-child(2){flex:1;min-width:0}.trace-stage h3{color:#536e86;margin-bottom:3px;font-size:11px;font-weight:500;line-height:1.5}.trace-stage p{color:#9caebd;font-size:8px;line-height:1.4}.trace-counter{flex-direction:column;align-items:flex-end;margin-left:16px;display:flex}.trace-counter b{color:#3a7cae;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:19px;font-weight:500}.trace-counter b span{color:#a5b8c8;font-size:10px;font-weight:400}.trace-counter small{color:#a2b5c5;margin-top:2px;font-size:8px}.solver-steps{gap:6px;margin-bottom:7px;display:flex}.solver-steps>div{color:#b1bfcb;white-space:nowrap;flex:1;align-items:center;gap:5px;font-size:8px;display:flex}.solver-steps>div>span{color:#b3c2d0;background:#f2f5f8;border-radius:50%;place-items:center;width:14px;height:14px;font-size:7px;display:grid}.solver-steps>div.current>span{color:#3486c3;background:#e6f1fc;box-shadow:0 0 0 3px #f5f9ff}.solver-steps>div.done{color:#799eac}.solver-steps>div.done>span{color:#7da9b0;background:#edf6f6}.solver-steps>div>i{background:#eaf0f5;flex:1;height:1px;margin:0 5px}.solver-steps>div:last-child>i{display:none}.progress-track{background:#eff4f8;border-radius:4px;height:2px;overflow:hidden}.progress-track>span{background:linear-gradient(90deg,#348bd0,#81c7e7);height:100%;transition:width .2s;display:block}.trace-details{color:#a3b6c7;z-index:5;font-size:8px;position:absolute;bottom:7px;right:28px}.trace-details>summary{cursor:pointer;text-align:right;background:#fff;padding:2px 5px;list-style:none}.trace-details[open]{margin-top:8px;position:relative;bottom:auto;right:auto}.trace-log{max-height:60px;padding-top:7px;font:8px ui-monospace,Consolas,monospace;overflow:auto}.trace-log>div{color:#849cb0;align-items:baseline;gap:9px;padding:3px 0;display:flex}.trace-log time{color:#b0c0cd;flex-shrink:0}.event-type{letter-spacing:.5px;color:#759fbe;min-width:50px;font-size:7px}.trace-log>div>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.replay-transport{color:#6a97b7;align-items:center;gap:8px;margin:5px 0 12px;display:flex}.replay-transport button{border:1px solid #e1ebf3;border-radius:4px;padding:5px;display:flex}.replay-transport input{background:#e1edf6;flex:1}.replay-transport>span{font-variant-numeric:tabular-nums;font-size:9px}.command-bar{background:#fff;border:1px solid #e0e8ef;border-radius:9px;flex-shrink:0;align-items:center;gap:9px;margin:10px 26px 13px;padding:8px 10px 8px 15px;display:flex;box-shadow:0 1px 4px #39536a05}.command-icon{color:#9bb1c4;font-size:20px;font-weight:300}.command-bar input{color:#607e98;background:0 0;border:0;flex:1;padding:4px 0;font-size:10px}.command-bar input::placeholder{color:#adbcca}.local-badge{color:#acbdcb;white-space:nowrap;align-items:center;gap:4px;font-size:8px;display:flex}.command-bar>button{color:#4e91c4;background:#edf5fd;border:1px solid #e2edf8;border-radius:5px;place-items:center;width:26px;height:26px;display:grid}.selection-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:12;background:#ffffffed;border:1px solid #dce8f0;border-radius:12px;width:207px;padding:15px;animation:.25s ease-out card-in;position:absolute;top:117px;right:25px;box-shadow:0 12px 38px #2c526525,0 2px 6px #1d435409}.selection-header{color:#7292ac;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:10px;display:flex}.selection-header>span{align-items:center;gap:6px;display:flex}.selection-header>button{color:#b0bfcc;padding:0;display:flex}.selection-card>strong{color:#3e749a;letter-spacing:-1px;font-variant-numeric:tabular-nums;font-size:30px;font-weight:400}.selection-card>strong small{color:#9db4c5;letter-spacing:0;font-size:10px}.selection-card>p{color:#a2b7c7;margin-top:6px;font-size:9px}.selection-metrics{border-top:1px solid #edf2f6;flex-direction:column;gap:9px;margin:14px 0;padding-top:10px;display:flex}.selection-metrics>span{color:#9badbc;justify-content:space-between;font-size:9px;display:flex}.selection-metrics b{color:#617d93;font-size:10px;font-weight:500}.selection-foot{color:#afc0cc;align-items:center;gap:5px;font-size:8px;display:flex}.results-panel{border-left:1px solid var(--line);scrollbar-gutter:stable;z-index:20;background:#fff;min-height:0;padding:24px 19px 18px;overflow:auto}.results-panel .panel-heading{margin-bottom:15px}.small-tag{color:#7aa1c1;white-space:nowrap;background:#f0f6fc;border:1px solid #e6eff7;border-radius:4px;padding:4px 5px;font-size:8px}.results-panel h2{color:#30475d;letter-spacing:.5px;margin-bottom:25px;font-size:21px;font-weight:550}.results-panel h2>span{letter-spacing:0;color:#a0afbd;margin-top:8px;font-size:9px;font-weight:400;line-height:1.7;display:block}.chart-card{border-bottom:1px solid #edf1f5;margin-bottom:19px;padding-bottom:17px}.section-title{color:#829ab0;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:10px;font-weight:400;display:flex}.section-title>svg{color:#a9bdcc}.frontier svg{width:100%;display:block;overflow:visible}.frontier text{fill:#a5b7c5;font-family:ui-monospace,monospace;font-size:8px}.frontier circle{cursor:crosshair;transition:fill .2s,r .2s}.chart-legend{color:#9bafbf;align-items:center;gap:12px;min-height:16px;font-size:8px;display:flex}.chart-legend span{align-items:center;gap:4px;display:flex}.chart-legend .muted{color:#b7c5cf;margin-left:auto}.chart-legend i{background:#bdc8d0;border-radius:50%;width:4px;height:4px}.chart-legend .lime{background:#549cd2}.chart-empty{color:#b8c6d1;place-items:center;height:154px;font-size:9px;display:grid;position:relative}.chart-grid{background-image:linear-gradient(#e6edf44f 1px,#0000 1px),linear-gradient(90deg,#e6edf44f 1px,#0000 1px);background-size:40px 30px;position:absolute;inset:15px}.solution-list{flex-direction:column;gap:10px;display:flex}.solution-card{text-align:left;background:#fff;border:1px solid #e5ecf2;border-radius:9px;width:100%;padding:14px 13px;position:relative;overflow:hidden;box-shadow:0 2px 3px #24436303}.solution-card:hover{background:#fafcfe;border-color:#c9ddec;box-shadow:0 4px 12px #214a6708}.solution-card.selected{background:linear-gradient(120deg,#f3f8fd,#fff);border-color:#8eb6d5;box-shadow:0 3px 11px #3a83b611}.solution-card.selected:before{content:"";background:#488cc1;border-radius:0 3px 3px 0;width:2px;position:absolute;top:16px;bottom:16px;left:0}.solution-top{color:#657e93;align-items:center;gap:8px;font-size:11px;display:flex}.solution-top b{font-weight:500}.solution-index{color:#b0c0ce;font-variant-numeric:tabular-nums;font-size:8px}.solution-code{color:#a5bdce;letter-spacing:.5px;margin-left:auto;font:8px ui-monospace,monospace}.solution-top svg{color:#4d96c8}.solution-stats{justify-content:space-between;gap:10px;margin-top:15px;display:flex}.solution-stats>span{color:#567792;letter-spacing:-.7px;font-variant-numeric:tabular-nums;font-size:22px;font-weight:400}.solution-stats>span:nth-child(2){text-align:right;font-size:20px}.solution-card.selected .solution-stats>span{color:#2d78af}.solution-stats em{color:#a4b9c9;letter-spacing:0;font-size:9px;font-style:normal;font-weight:400}.solution-stats small{color:#a8bbc9;letter-spacing:0;margin-top:6px;font-size:8px;font-weight:400;display:block}.selected-specs{padding:18px 0 11px}.selected-specs>div{color:#93a9ba;align-items:center;gap:8px;padding:6px 0;font-size:10px;display:flex}.selected-specs svg{color:#a8bdcd}.selected-specs b{color:#67869e;margin-left:auto;font-size:10px;font-weight:400}.validation-card{background:#f7fbfd;border:1px solid #e2edf4;border-radius:7px;margin:4px 0 17px;padding:12px}.validation-card>div{color:#84a7bf;align-items:center;gap:6px;font-size:10px;display:flex}.validation-card b{font-weight:500}.validation-card>div>span{color:#5d9ab9;margin-left:auto;font-size:14px;font-weight:500}.validation-card p{color:#a4b9c7;margin-top:9px;font-size:8px;line-height:1.9}.details-toggle{color:#81a0b6;border-bottom:1px solid #eaf0f5;justify-content:space-between;align-items:center;width:100%;padding:0 0 13px;font-size:10px;display:flex}.rotated{transform:rotate(180deg)}.engineering-details{padding:10px 0;font-size:9px}.engineering-details dl{grid-template-columns:1fr 1fr;gap:10px 3px;margin-bottom:18px;display:grid}.engineering-details dt{color:#9aafbf}.engineering-details dd{text-align:right;color:#6e92ae;margin:0;font-size:8px}.bom-row{color:#8ba5b8;border-top:1px solid #eef3f6;justify-content:space-between;align-items:center;gap:9px;padding:10px 0;display:flex}.bom-row small{color:#afc0cc;margin-top:4px;font-size:8px;display:block}.bom-row b{color:#7597b0;white-space:nowrap;font-weight:400}.full{width:100%;margin:8px 0}.method-note{color:#8fa9bc;margin-top:20px;font-size:9px}.method-note .status-dot{background:#8bb5c8;width:4px;height:4px;margin-right:5px}.method-note p{color:#b0c0cc;margin-top:8px;font-size:8px;line-height:1.9}.empty-solutions{text-align:center;padding:24px 8px 37px}.empty-icon{color:#a2bdd2;background:linear-gradient(135deg,#fcfdff,#f0f6fc);border:1px solid #e7eff6;border-radius:18px;place-items:center;width:65px;height:65px;margin:0 auto 21px;display:grid;transform:rotate(-7deg);box-shadow:inset 0 1px 1px #fff,0 5px 15px #52789506}.empty-icon svg{transform:rotate(7deg)}.empty-solutions h3{color:#7999b2;margin-bottom:11px;font-size:13px;font-weight:500}.empty-solutions p{color:#a8bdcc;font-size:10px;line-height:1.9}.empty-solutions>div:last-child{color:#acc0d0;justify-content:center;align-items:center;gap:5px;margin-top:26px;font-size:8px;display:flex}.empty-solutions i{background:#e2ebf3;width:1px;height:9px;margin:0 6px}.infeasible{color:#b59171;padding:16px 3px}.infeasible h3{margin:12px 0;font-size:13px;font-weight:500}.infeasible p{color:#b4a28f;margin:9px 0;font-size:10px;line-height:1.9}.rejection-details{color:#a0b4c4;margin-top:16px;font-size:9px}.rejection-details summary{cursor:pointer;justify-content:space-between;margin-bottom:10px;font-size:9px;list-style:none;display:flex}.rejection-details summary span{color:#b1c3d0;font-size:8px}.rejection-details>div{justify-content:space-between;margin:8px 0;display:flex}.rejection-details b{color:#ba9a7d;font-weight:400}.rejection-details p{color:#b4c3ce;font-size:8px;line-height:1.6}.statusbar{border-top:1px solid var(--line);color:#b0bfcc;background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;height:25px;padding:0 22px;font-size:8px;display:flex}.statusbar>span{letter-spacing:.3px;align-items:center;gap:6px;display:flex}.statusbar>span:first-child{letter-spacing:1px;font-size:7px}.statusbar i{background:#c0ccd5;border-radius:50%;width:2px;height:2px}.muted{color:#b0c0cd}.toast{z-index:100;color:#5488ae;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff5;border:1px solid #d7e6f0;border-radius:9px;align-items:center;gap:8px;padding:12px 20px;font-size:11px;display:flex;position:fixed;bottom:45px;left:50%;transform:translate(-50%);box-shadow:0 7px 30px #1f4f761a}.error-banner{z-index:100;color:#a68366;background:#fffaf5f5;border:1px solid #ebd6c2;border-radius:9px;align-items:center;gap:15px;max-width:640px;padding:13px 17px;font-size:11px;line-height:1.7;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #54320b12}.error-banner>button{padding:0;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:200;background:#38516a28;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.help-modal{background:#ffffffed;border:1px solid #e3eaf0;border-radius:18px;max-width:550px;max-height:90vh;padding:35px;position:relative;overflow:auto;box-shadow:0 30px 100px #27485c26}.modal-close{position:absolute;top:16px;right:16px}.help-modal h2{color:#4c6a82;margin:16px 0 24px;font-size:25px;font-weight:500;line-height:1.5}.help-modal>p{color:#8a9fb1;margin-bottom:15px;font-size:12px;line-height:1.9}.help-note{border-top:1px solid #e6edf3;margin:15px 0;padding:18px 0}.help-note b{color:#8c9fae;font-size:12px;font-weight:500}.help-note p{color:#a5b5c1;margin-top:8px;font-size:10px;line-height:1.9}.spin{animation:1.5s linear infinite spin}.pulsing{animation:1.3s ease-in-out infinite pulse}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.3}}@keyframes card-in{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width>=1650px){.workspace{grid-template-columns:266px minmax(500px,1fr) 318px}.setup-content,.results-panel{padding-left:24px;padding-right:24px}.viewport-heading{top:32px;left:40px}.viewport-heading h2{font-size:35px}.viewport-summary{bottom:23px;left:38px;right:38px}.viewport-summary>div{padding:16px 0 16px 25px}.viewport-summary b{font-size:25px}.canvas-wrap{inset:20px 0}.trace-panel{padding:18px 38px 12px}.trace-stage h3{font-size:12px}.trace-stage p{font-size:9px}.command-bar{margin-left:38px;margin-right:38px}.plot-svg{height:135px}.solution-stats>span{font-size:25px}.solution-stats>span:nth-child(2){font-size:22px}.scene-badge{top:140px;left:40px}}@media (width<=1180px){.brand-sub,.engine-status{display:none}.workspace{grid-template-columns:215px minmax(340px,1fr) 259px}.setup-content,.results-panel{padding:20px 15px}.setup-footer{padding:12px 15px 16px}.topbar{gap:25px;padding:0 20px}.header-actions{gap:12px}.view-tools{flex-wrap:wrap;justify-content:flex-end;max-width:170px}.view-tools button{padding:6px}.viewport-heading{top:24px;left:23px;right:17px}.viewport-heading h2{font-size:25px}.viewport-heading .eyebrow{font-size:7px}.viewport-heading p{gap:6px;font-size:8px}.viewport-summary{left:18px;right:18px}.viewport-summary>div{padding-left:12px}.viewport-summary b{font-size:18px}.viewport-summary>div>span{font-size:8px}.trace-panel{padding:14px 20px 10px}.trace-stage{gap:8px}.trace-stage h3{font-size:10px}.trace-counter{margin-left:7px}.trace-counter b{font-size:17px}.trace-counter small{font-size:7px}.trace-stage-icon{width:28px;height:28px}.mono{display:none}.command-bar{margin-left:18px;margin-right:18px}.local-badge{display:none}.scene-badge{font-size:8px;top:122px;left:23px}.map-top-caption{font-size:8px;left:23px}.map-top-caption>span:last-child{display:none}.map-compass{left:23px}.scene-flow-controls,.map-bottom-caption{right:22px}.solution-stats>span{font-size:20px}.solution-stats>span:nth-child(2){font-size:19px}.zone-indicator{top:103px;right:20px}.selection-card{width:180px;top:140px;right:20px}.solver-steps{gap:3px}.solver-steps>div{gap:4px;font-size:7px}}@media (width<=960px){.app-shell{height:auto;min-height:100dvh;overflow:visible}.workspace{grid-template-columns:215px minmax(0,1fr)}.results-panel{border-top:1px solid var(--line);grid-column:1/-1;padding:26px;overflow:visible}.results-panel .solution-list{grid-template-columns:repeat(3,1fr);display:grid}.results-panel .chart-card{max-width:400px}.selected-specs,.validation-card{max-width:420px}.engineering-details{max-width:600px}.center-panel{min-height:800px}.viewport{min-height:535px}.settings-panel{min-height:800px}.setup-content{max-height:660px}.breadcrumb,.statusbar>span:nth-child(2){display:none}.results-panel .empty-solutions{padding:12px}.results-panel .empty-icon{display:none}.results-panel .chart-empty{height:95px}}@media (width<=610px){.workspace{flex-direction:column;display:flex}.topbar{gap:10px;height:60px;padding:0 15px}.brand{font-size:22px}.brand-mark{width:27px;height:29px;font-size:25px}.header-actions{gap:7px}.header-actions .import-button{display:none}.header-actions .secondary-button{padding:7px;font-size:9px}.settings-panel{border-bottom:1px solid var(--line);min-height:0;max-height:none}.setup-content{max-height:360px;padding:22px;display:block}.setup-content .project-title,.setup-content .template-switch{vertical-align:middle;width:50%;display:inline-flex}.project-title{flex-direction:column}.template-switch{margin:0}.plot-svg{height:170px}.setup-footer{padding:10px 22px}.setup-footer>div{display:none}.center-panel{min-height:780px}.viewport{min-height:515px}.viewport-heading{top:23px;left:20px;right:15px}.viewport-heading h2{font-size:23px}.viewport-heading .eyebrow{font-size:6px}.scene-title-index{font-size:14px}.view-tools{gap:0;max-width:149px;padding:3px}.view-tools button{padding:6px;font-size:9px}.viewport-summary{left:15px;right:15px}.viewport-summary>div{padding-left:10px}.viewport-summary b{font-size:16px}.viewport-summary b small{font-size:8px}.viewport-summary>div>span{font-size:7px}.trace-stage-icon{display:none}.trace-stage p,.solver-steps>div{font-size:7px}.trace-counter{margin-left:3px}.trace-panel{padding:15px 18px 10px}.command-bar input{font-size:9px}.command-bar{margin:10px 15px 13px}.scene-badge{top:120px;left:20px}.map-top-caption{left:20px}.selection-card{width:167px;top:153px;right:16px}.zone-indicator{font-size:8px;top:119px;right:17px}.map-bottom-caption{font-size:7px;right:18px}.results-panel .solution-list{grid-template-columns:1fr}.results-panel .chart-card{max-width:none}.statusbar{padding:0 15px;font-size:7px}.help-modal{padding:27px}.help-modal h2{font-size:22px}.toast,.error-banner{width:90%;font-size:10px}}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.slider-label>span,.dimension-inputs label,.compact-fields label,.budget-input{color:#74889a;font-size:11px}.project-title>span,.results-panel h2>span{color:#8596a6;font-size:10px}.solution-top{color:#526c81;font-size:12px}.solution-stats small{color:#8da2b3;font-size:9px}.section-label{color:#536b7f;font-size:12px}.viewport-heading p{color:#8499ac;font-size:11px}.trace-stage h3{color:#4d6a82;font-size:12px}.trace-stage p{color:#8b9eae;font-size:9px}.solver-steps>div{font-size:9px}.solver-steps>div.current{color:#2f7bac}.chart-legend{font-size:9px}.selected-specs>div{color:#829aae}.method-note{color:#849eb1}.command-bar input{font-size:11px}.empty-solutions p{color:#8da7bb}.empty-solutions h3{color:#668ca8}.viewport-summary>div>span{color:#829bb0;font-size:10px}@media (width<=1180px){.trace-stage h3{font-size:10px}.trace-stage p,.solver-steps>div{font-size:8px}.viewport-heading p{font-size:9px}.viewport-summary>div>span{font-size:8px}}.focus-button{color:#5b95be;background:#f0f7fc;border:1px solid #d8e8f4;border-radius:5px;justify-content:center;align-items:center;gap:5px;width:100%;margin-bottom:10px;padding:7px;font-size:10px;display:flex}.focus-button:hover{background:#e5f2fc}
