:root{--ink:#152d24;--green:#0b3025;--gold:#c9a96b;--cream:#f8f5ee;--line:#ced8c9;--sage:#e6eee8;--muted:#53675d;--red:#9b3e35}*{box-sizing:border-box}body{margin:0;font:15px/1.65 system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--cream)}[hidden]{display:none!important}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.15}h1{font-size:clamp(31px,3vw,44px);margin:5px 0 16px}h2{font-size:30px;margin:4px 0 20px}h3{font-size:17px;line-height:1.35;margin:0 0 14px}p{margin:0 0 17px}.fine{font-size:12px;color:var(--muted);line-height:1.7}.eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:650;color:#7e643d;margin:0 0 15px}button,.button{border:1px solid var(--green);background:var(--green);color:var(--cream);border-radius:5px;padding:12px 19px;font:600 13px/1.4 system-ui;min-height:44px;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;transition:background .15s,transform .15s}button:hover:not(:disabled){background:#245640;transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}button.outline,.button.outline{background:transparent;color:var(--green);border-color:#a0b095}button.text-button{padding:3px 0;min-height:30px;color:var(--muted);background:none;border:0}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 12px}input,select,textarea{display:block;width:100%;font:14px/1.5 system-ui;color:var(--ink);padding:11px 13px;border:1px solid #a9b9a5;background:#fffefa;border-radius:5px;max-width:100%}input[type=file]{font-size:12px;padding:10px 8px}input::file-selector-button{padding:5px;background:var(--sage);color:var(--green);border:0;border-radius:3px}textarea{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;resize:vertical}label{display:block;font-weight:600;font-size:12px;margin:14px 0 7px}.check{display:flex;align-items:flex-start;gap:10px;font-weight:500}.check input{width:18px;height:18px;flex-shrink:0;margin-top:3px}a{color:inherit;text-underline-offset:4px}:is(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--gold);outline-offset:4px}.wordmark{font-size:26px;font-weight:750;text-decoration:none;letter-spacing:-.05em;line-height:1.2}.wordmark span{font-weight:380}.skip{position:fixed;left:15px;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#login-screen{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr}.login-art{position:relative;padding:70px 9%;background:radial-gradient(ellipse at 70% 30%,#2c503e,#0b3025 80%);color:var(--cream);overflow:hidden}.login-art .wordmark{color:var(--gold);margin-bottom:90px}.login-art .eyebrow,.login-art .fine{color:#d1bd8d}.login-art h1{font-size:clamp(46px,5vw,72px);position:relative;z-index:1}.login-art em{color:#cfb786}.login-art>p:not(.eyebrow):not(.fine){max-width:470px;color:#cfdbd0}.architectural-lines{position:absolute;width:340px;height:520px;right:-120px;top:80px;border:1px solid #c9a96b55;transform:skewY(-17deg);background:repeating-linear-gradient(90deg,transparent 0,transparent 67px,#c9a96b22 68px),repeating-linear-gradient(0deg,transparent 0,transparent 89px,#c9a96b22 90px);pointer-events:none}.login-card{padding:80px 11%;align-self:center;max-width:650px}.login-card h2{font-size:42px}.login-card button{margin:24px 0 12px;width:100%}.login-card [role=alert]{color:var(--red)}#workspace{display:grid;grid-template-columns:242px 1fr}.sidebar{background:#0b211b;color:#cbd6cc;min-height:100vh;padding:32px 19px;position:sticky;top:0;height:100vh;overflow:auto}.sidebar .wordmark{display:block;color:#dfc997;margin-bottom:46px;font-size:23px}.sidebar .eyebrow{color:#abbca8}.sidebar .side{width:100%;display:flex;align-items:start;flex-direction:column;padding:13px 12px;border:1px solid transparent;color:#b9c8ba;background:none;margin-bottom:6px;font-size:13px}.sidebar .side small{font-size:10px;font-weight:400;margin-top:4px}.sidebar .side.active{background:#163e2f;color:#f6efd9;border-color:#74977433}.sidebar .inactive{opacity:.65}.divider{height:1px;background:#a4b69425;margin:24px 0}.sidebar label{color:#b8c6b7}.sidebar input,.sidebar select{background:#17342a;border-color:#42604f;color:#e2e7dc;font-size:12px}.sidebar button.outline{color:#d9c38d;border-color:#718260;margin-top:12px;width:100%}.sidebar-bottom{margin-top:50px;font-size:12px;overflow-wrap:anywhere}.sidebar .fine{color:#a4b49f}.sidebar-bottom button{margin-bottom:18px}main{min-width:0;padding:38px clamp(20px,3.5vw,66px) 60px}.topbar{display:flex;gap:30px;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:25px}.engine-box{max-width:270px;flex-shrink:0;font-size:12px}.engine-box .fine{margin:8px 0 2px}.dot{display:inline-block;width:7px;height:7px;background:#ad843d;border-radius:50%;margin-right:8px}.dot.available{background:#3d8e65}#global-status{margin:20px 0;padding:12px 16px;border:1px solid #c8d3c0;border-left:3px solid #9d8249;background:#efeee3;border-radius:3px;font-size:13px;overflow-wrap:anywhere}.steps{display:flex;gap:9px;flex-wrap:wrap;font-size:11px;margin:28px 0}.steps a{flex:1;border-bottom:1px solid #b9c9b2;text-decoration:none;padding:9px 0;white-space:nowrap;text-align:center;color:#4b6354}.card{background:#fffdfa;border:1px solid var(--line);border-radius:10px;padding:30px;margin:24px 0;box-shadow:0 9px 25px #0b302505;scroll-margin-top:16px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:30px}.section-head>button{flex-shrink:0;max-width:280px}.file-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}.notice{padding:16px 18px;background:#f0e9d9;border-left:2px solid #b49357;font-size:13px;margin:20px 0;color:#4c482e;overflow-wrap:anywhere}.domain-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.domain{padding:15px;border:1px solid #ccd5c3;border-radius:5px;min-width:0}.domain strong{display:block;font-size:12px;overflow-wrap:anywhere}.domain span{font-size:10px;display:block;line-height:1.5;color:#727353}.domain.invalid{border-left:3px solid #a45249}.domain.complete_static_subset{border-left:3px solid #58876b}.viewer-row{display:grid;grid-template-columns:1.3fr 1fr;gap:30px;margin:24px 0}.viewer-row>div{min-width:0}#geometry-canvas{width:100%;height:auto;background:#0e2a21;border-radius:7px;display:block;min-height:190px}#questions{max-height:375px;overflow-y:auto}.question{padding:10px 0;border-top:1px solid var(--line);font-size:12px}.question small{display:block;color:#71735b}.inputs-two{display:grid;grid-template-columns:1.3fr 1fr;gap:26px}.inputs-two>div{min-width:0}details{padding:17px 0;border-top:1px solid var(--line);margin-top:22px}summary{cursor:pointer;font-size:13px;font-weight:600}table{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed;margin:17px 0}td,th{padding:10px;border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere}th{font-weight:600;background:#edf1e6}.runrow{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;padding:15px 0;border-top:1px solid var(--line);font-size:12px;align-items:center}.runrow strong,.runrow span{display:block}.runrow button{padding:9px 15px}.timeline-item{padding:10px 15px;border-left:1px solid #9ead94;margin:0 0 0 12px;font-size:12px}.timeline-item strong{font-size:12px;color:#29503c}.timeline-item small{display:block;color:#73806a}.result-models{display:grid;grid-template-columns:1fr 1fr;gap:20px}.result-models>div{padding:24px;background:#edf1e8;border-radius:6px;min-width:0}.result-models .kpi{font:38px/1.1 Georgia,serif;margin:14px 0}.blocker{padding:9px 12px;margin-top:9px;border-left:2px solid #a07d38;background:#f4eedf;font-size:12px}.assistant-card{background:#122f25;color:#e1e8dd}.assistant-card .eyebrow{color:#c9af77}.assistant-card p{color:#cbd7c9}.assistant-card .fine{color:#aebaab}.assistant-card input,.assistant-card textarea,.assistant-card select{background:#1c4032;color:#f0f2e8;border-color:#59755c}.assistant-card button{background:#c9a96b;color:#0b3025;border-color:#c9a96b;margin-top:20px}.assistant-card form{display:grid;grid-template-columns:1fr 1fr;gap:7px 20px}.assistant-card form label{grid-column:1/-1;margin:7px 0}.assistant-card form select,.assistant-card textarea,.assistant-card form button{grid-column:1/-1}.assistant-card #assistant-answer{border-top:1px solid #8b9c7344;margin-top:25px;padding-top:22px;font-size:14px}.assistant-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:#bdcabc}.badge{display:inline-block;padding:4px 9px;border-radius:20px;background:#eee6cf;font-size:10px;color:#846124}.json-details pre{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere}footer{font-size:12px;border-top:1px solid var(--line);padding-top:28px;margin-top:30px}#share-result{overflow-wrap:anywhere}@media(max-width:1100px){#workspace{grid-template-columns:205px 1fr}.sidebar{padding:25px 14px}main{padding:28px 22px}.domain-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section-head{display:block}.section-head>button{margin:0 0 20px;max-width:100%}.topbar{display:block}.engine-box{max-width:100%;margin-top:20px}.viewer-row,.inputs-two{grid-template-columns:1fr}.card{padding:24px}}@media(max-width:700px){#login-screen{grid-template-columns:1fr}.login-art{padding:30px 25px}.login-art .wordmark{margin-bottom:32px}.login-art h1{font-size:44px}.login-card{padding:35px 25px}.login-art .fine{margin-bottom:0}#workspace{display:block}.sidebar{position:relative;height:auto;min-height:0;padding:22px}.sidebar .wordmark{margin-bottom:20px}.sidebar .side{display:inline-flex;width:auto;max-width:100%;margin:0 2px 4px;padding:9px 10px;font-size:11px}.sidebar .eyebrow{margin-bottom:10px}.sidebar .divider,.sidebar #project-form,.sidebar-bottom .fine{display:none}.sidebar-bottom{margin-top:15px;display:flex;gap:14px;align-items:center}.sidebar-bottom button{width:auto;margin:0;margin-left:auto;padding:9px 13px;min-height:38px}.sidebar #project-select{margin:12px 0}main{padding:22px 16px}.topbar h1{font-size:34px}.domain-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-grid,.result-models{grid-template-columns:1fr}.card{padding:22px 18px}.steps{gap:7px}.steps a{flex:0 0 calc(33% - 6px)}.runrow{grid-template-columns:1fr auto}.runrow>span{grid-column:1}.runrow button{grid-column:2;grid-row:1/3}#zones{overflow:auto}#zones table{min-width:480px}.viewer-row{gap:22px}button,.button{font-size:12px}h2{font-size:27px}.actions{gap:8px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
.fact{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #385144;padding:10px 0}.fact strong{text-align:right}.asset{padding:18px 0;border-bottom:1px solid #c4cfbf;display:flex;gap:10px;flex-wrap:wrap;align-items:center}.asset code{display:block;overflow-wrap:anywhere;font:11px monospace;width:100%}.asset strong{min-width:180px}.asset .text-button{font-size:12px}.json{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.65 monospace;max-height:420px;overflow:auto;padding:18px;background:#102b2410;color:inherit;border-radius:6px}.zone-row{display:grid;grid-template-columns:1fr 1.4fr 1fr 1fr;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid #c4cfbf}.run-row{display:flex;width:100%;justify-content:space-between;gap:15px;text-align:left;align-items:center;background:#eef0e7;color:#143a2b;margin:10px 0;border:1px solid #bdcbbb}.run-row.selected{border:2px solid #8b6c37}.event{border-left:2px solid #c9a96b;padding:12px 20px;margin-left:10px;display:grid;grid-template-columns:100px 1fr;gap:10px}.event p{grid-column:2}.output-card{background:#112e25;color:#f0ebda;padding:26px;border-radius:10px;min-width:0}.output-card h3{color:#f0ebda}.output-card .fine{color:#c6d1c2}.output-card .json{background:#234a3b}body.busy{cursor:progress}body.busy #main button{opacity:.8}input[type=range]{min-height:40px}.button-link{display:inline-flex;padding:13px 18px;border-radius:5px;background:#103e2d;color:white;text-decoration:none;border:1px solid #103e2d;align-items:center;font-size:14px;min-height:44px}.button-link.outline{background:transparent;color:#103e2d}.domain{padding:18px;border:1px solid #ced7c9;border-radius:7px;background:#f4f5ee}.domain strong{display:block;margin-bottom:8px}.domain .badge{font-size:11px}.domain.invalid{border-color:#b17653}.question{padding:12px 15px;border-left:2px solid #ae8b4a;background:#f3f0e4}.check{display:flex!important;align-items:center;gap:10px}.check input{width:auto!important}.engine-box.ready .dot{background:#7fb78b}.sidebar .outline{color:#e8dec6;border-color:#9ab69e}.sidebar form{margin-top:16px}.sidebar select{color:#153729}@media(max-width:760px){.sidebar #project-form{display:block!important}.zone-row{grid-template-columns:1fr 1fr}.run-row{flex-wrap:wrap}.event{grid-template-columns:1fr}.event p{grid-column:1}.fact{flex-direction:column;gap:5px}.fact strong{text-align:left}}
#main, .card, .section-head>*, .inputs-two>*, .viewer-row>*, .result-models>*{min-width:0}.fine,.notice,#global-status,#building-id,.event p,.event strong,.asset,.output-card,.run-row,.question,footer{overflow-wrap:anywhere}.sidebar input,.sidebar select,#main input,#main textarea,#main select{min-width:0;max-width:100%}#main canvas{max-width:100%;height:auto}.badge{overflow-wrap:anywhere}.run-row span{min-width:0}.domain-grid>*{min-width:0}
.sidebar select{color:#e6eadc;background:#17342a}.sidebar select option{background:#f8f5ee;color:#123b2a}

.steps{flex-wrap:wrap}.steps button{flex:1;min-width:140px;background:transparent;color:var(--green);border:1px solid var(--line)}.steps button[aria-current="step"]{background:var(--green);color:var(--cream);border-color:var(--green)}.steps button:disabled{opacity:.45;cursor:default}#authoring-review-summary details{margin-top:10px}#authoring-review-summary p{font-size:13px;overflow-wrap:anywhere}@media(max-width:700px){.steps button{flex:1 1 40%;min-width:0}}
