:root{font-family:Inter,"Segoe UI",sans-serif;color:#23332f;background:#f3f5f1;font-synthesis:none;--accent:#126854;--line:#dce3dc}*{box-sizing:border-box}body{margin:0;display:flex;min-height:100vh}button,input,select{font:inherit}button,.button{border:1px solid #ccd6cd;border-radius:7px;background:white;padding:9px 13px;color:#23332f;cursor:pointer;white-space:nowrap}button:hover,.button:hover{background:#e9f0e9}button:disabled{opacity:.45;cursor:wait}.primary{background:var(--accent);color:white;border-color:var(--accent)}.primary:hover{background:#0f5444}input,select{width:100%;border:1px solid #cdd7ce;border-radius:6px;background:white;padding:9px;color:inherit}label{display:block;font-size:12px;font-weight:600;color:#52645b}label input,label select{display:block;margin-top:6px;font-size:14px;font-weight:400}h1,h2,h3,p{margin:0}h1{font-size:26px;letter-spacing:-.7px}h3{font-size:15px}.rail{width:210px;position:fixed;inset:0 auto 0 0;background:#142d27;color:#dae7df;padding:32px 20px;display:flex;flex-direction:column}.brand{font-size:29px;font-weight:750;letter-spacing:-1.5px;color:white;text-decoration:none;line-height:1.1}.brand span{display:block;color:#9fceb6}.rail-label{font-size:10px;letter-spacing:1.6px;color:#8da79a;margin:44px 0 15px}.rail-action{background:#25473a;border:none;color:white;text-align:left}.project-link{background:transparent;color:#bad0c3;border:none;width:100%;text-align:left;margin-top:8px;overflow:hidden;text-overflow:ellipsis}.project-link.active{background:#315345;color:white}.rail-bottom{margin-top:auto;font-size:12px;line-height:1.8}.rail-bottom span{color:#8da79a;font-size:10px}main{margin-left:210px;padding:30px 32px;width:calc(100% - 210px);max-width:2000px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:12px}.eyebrow{color:#718277;font-size:10px;letter-spacing:1.5px;margin-bottom:8px}.badge{display:inline-block;border:1px solid #c5dace;border-radius:5px;color:#436953;background:#e5efe5;padding:6px 9px;font-size:11px;white-space:nowrap}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:10px}.card{padding:24px}#welcome{display:grid;grid-template-columns:1.15fr 1fr;gap:45px;max-width:1080px;margin-top:65px;align-items:start}.hero{padding:30px 0}.hero h2{font-size:clamp(32px,4vw,55px);letter-spacing:-2px;line-height:1.12;margin:25px 0}.hero p{max-width:450px;line-height:1.7;color:#53685c}.hero .honest{margin-top:25px;font-size:12px;border-left:3px solid #8cb89a;padding-left:14px}#create-form{display:grid;gap:20px}small,.muted{font-size:11px;color:#718277;line-height:1.5}.steps{display:flex;align-items:center;gap:25px;font-size:12px;margin-bottom:16px;color:#667a6c}.steps .badge{margin-left:auto}.source-bar{padding:18px;display:flex;justify-content:space-between;gap:20px;align-items:center}.source-bar p{font-size:12px;color:#718277;margin-top:6px}.actions{display:flex;flex-wrap:wrap;gap:8px}.toolbar{display:flex;align-items:end;gap:12px;margin:20px 0}.toolbar label:first-child{width:260px}.toolbar label:nth-child(2){width:75px}.toolbar .muted{margin-left:auto;max-width:160px}.studio-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.panel{overflow:hidden}.panel-heading{padding:15px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:54px}.panel-heading span{font-size:11px;color:#708474}.panel-heading button{font-size:11px;padding:6px 9px}.plan-actions{display:flex;gap:5px;padding:10px;flex-wrap:wrap}.plan-actions button{font-size:11px;padding:7px 9px}.plan-scroll{height:365px;overflow:auto;background:#f1f2ee;border-top:1px solid #e8ede8}#plan{display:block;width:100%;min-width:540px;height:auto;touch-action:none}#plan polygon{cursor:pointer}.calibration-row{padding:12px;display:flex;align-items:end;gap:10px}.calibration-row label{max-width:150px}.calibration-row span{font-size:10px;color:#7c887b;align-self:center}#three-view{height:419px;position:relative;background:#eaf0e9}#three-view canvas{display:block;width:100%;height:100%}#three-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;font-size:12px;line-height:1.9;color:#6e8071;pointer-events:none}.viewer-note{font-size:10px;color:#718277;padding:12px 16px;line-height:1.7}.review-grid{display:grid;grid-template-columns:.75fr 1.5fr 1fr;gap:18px;margin-top:18px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}#room-form>.field-grid,#room-form>label,#room-form>.actions,#room-form>p{margin:15px 18px}.room-list{padding:8px;max-height:320px;overflow:auto}.room-item{width:100%;border:0;display:flex;justify-content:space-between;gap:12px;text-align:left;margin-bottom:4px;white-space:normal}.room-item.active{background:#e3efe4}.room-item small{display:block;margin-top:3px}.room-item strong{font-size:12px}.notes{padding:15px 18px;font-size:11px;color:#637666;max-height:350px;overflow:auto;line-height:1.7}.notes p{margin-bottom:12px;border-bottom:1px solid #edf1ed;padding-bottom:10px}footer{font-size:10px;color:#839084;margin:22px 0}#message{padding:12px 16px;border-radius:6px;background:#e0ede1;border:1px solid #bcd5bf;font-size:12px;margin-bottom:15px}#message.error{background:#fff0df;border-color:#e4c9a6;color:#7f4b21}[hidden]{display:none!important}@media(max-width:1200px){.review-grid{grid-template-columns:1fr 1.6fr}.review-grid>.panel:last-child{grid-column:1/-1}.toolbar{flex-wrap:wrap}.toolbar .muted{display:none}}@media(max-width:900px){.rail{width:160px;padding:25px 14px}main{margin-left:160px;width:calc(100% - 160px);padding:24px 18px}.studio-grid,#welcome,.review-grid{grid-template-columns:1fr}#welcome{margin-top:15px;gap:15px}.source-bar{align-items:start;flex-direction:column}.steps{gap:12px;flex-wrap:wrap}.review-grid>.panel:last-child{grid-column:auto}}@media(max-width:600px){.rail{display:none}main{margin-left:0;width:100%;padding:18px 12px}header{align-items:start}h1{font-size:21px}.field-grid{grid-template-columns:1fr}.plan-scroll{height:280px}#three-view{height:320px}}
#drawing-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:260px;margin:28px 0 18px;padding:28px;border:2px dashed #87b6a3;border-radius:18px;background:#e7f0e9;cursor:pointer;text-align:center;color:#165842}#drawing-drop-zone>span:first-child{font-size:42px}#drawing-drop-zone strong{font-size:24px;letter-spacing:-.5px}#drawing-drop-zone>span:last-child{font-size:14px}#drawing-drop-zone:hover,#drawing-drop-zone.drag-active{background:#d8eadd;border-color:#126854}#drawing-drop-zone:focus-visible{outline:3px solid #126854;outline-offset:5px}
.model-workbench{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:20px;align-items:start;margin:20px 0}.model-workbench>.panel{min-width:0}.model-workbench #three-view{height:610px}.model-drawer{max-height:840px;overflow:auto}.model-drawer>.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.model-drawer input,.model-drawer select,.model-drawer textarea{min-width:0;max-width:100%}.model-drawer>details{margin:16px}.model-drawer .actions{flex-wrap:wrap}.model-drawer button{white-space:normal}.workbench-controls{display:flex;align-items:center;gap:16px;margin:16px 0}.workbench-controls span{line-height:1.6}.review-grid:has(+ #height-review){grid-template-columns:1fr 1fr}@media(max-width:1050px){.model-workbench{grid-template-columns:minmax(0,1fr) 330px}}@media(max-width:800px){.model-workbench{grid-template-columns:1fr}.model-drawer{max-height:none}.model-workbench #three-view{height:420px}.workbench-controls{align-items:flex-start;flex-direction:column}}
.project-facts-panel{padding:16px;border:1px solid var(--line);border-radius:8px;background:#f0f5ef}.project-facts-panel>p{margin-top:12px}.project-fact{padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.project-fact p{font-size:12px;line-height:1.6;margin:8px 0}.project-fact button{white-space:normal}
/* Let the plan scroll inside its panel instead of pushing the 3D viewer off-screen. */
#workspace .studio-grid{grid-template-columns:minmax(0,1fr)}
#workspace .panel,main,header>div{min-width:0}
.model-controls{padding:12px 16px;border-bottom:1px solid var(--line)}.model-controls p{font-size:11px;line-height:1.5;margin-top:8px;color:#637666}.model-controls select{max-width:100%}.opening-inspection{padding:12px 16px;border-top:1px solid var(--line);overflow-wrap:anywhere}.opening-inspection summary{cursor:pointer;font-size:12px;font-weight:600}.opening-inspection label{margin-top:12px}#opening-inspector{font-size:11px;line-height:1.7;max-height:240px;overflow:auto;margin-top:12px}#opening-inspector p{margin-bottom:10px}
#workspace .calibration-row{flex-wrap:wrap}
@media(max-width:900px){#workspace .studio-grid{grid-template-columns:1fr}}
.site-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:12px 0;padding:14px}.site-controls label{flex:1 1 150px}.site-controls p{width:100%}
.agent-panel{margin:18px 0}.agent-notice,#chat-form,#agent-runs{margin:16px 18px}#chat-form{display:flex;gap:12px;align-items:end}#chat-form label{flex:1}textarea{width:100%;font:inherit;padding:10px;border:1px solid var(--line);border-radius:6px;margin-top:6px}.agent-run{padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.agent-run p{white-space:pre-wrap;margin:8px 0}.agent-run pre{overflow:auto;max-height:260px;background:#f3f5f1;padding:12px}.agent-run button{margin-top:10px}#agent-runs{max-height:500px;overflow:auto}
#job-form{display:grid;gap:16px;margin-top:16px}
.ai-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.6}
.ai-consent input{flex:0 0 auto;width:auto;margin:3px 0 0;padding:0}
#job-readiness{font-size:12px;color:#667a6c;line-height:1.6}
.coverage-panel{margin-top:18px}.coverage-panel>p,.coverage-panel>.actions,.coverage-panel>details{margin-top:14px}.coverage-panel summary{cursor:pointer;font-size:13px;font-weight:600}.coverage-panel details[open]>button{margin:12px 0}.coverage-row{border:1px solid #dce3dc;border-radius:7px;padding:14px;margin:12px 0;overflow-wrap:anywhere}.coverage-row>.field-grid,.coverage-row>label{margin-top:12px}.coverage-row>strong{font-size:11px}.coverage-questions{max-height:230px;overflow:auto;font-size:12px;line-height:1.6;margin-top:14px}.coverage-questions p{margin:8px 0}.coverage-row input[type=checkbox]{width:auto;display:block}.coverage-panel textarea{width:100%;font:inherit;border:1px solid #cdd7ce;border-radius:6px;padding:8px}
#agent-review-panel{margin:18px;overflow-wrap:anywhere}#agent-review-panel details{margin:14px 0}#agent-review-panel summary{cursor:pointer;font-weight:600}#agent-review-panel table{width:100%;border-collapse:collapse;margin:14px 0}#agent-review-panel th,#agent-review-panel td{text-align:left;border-bottom:1px solid var(--line);padding:9px}#agent-review-panel label{margin:12px 0;font-size:12px;line-height:1.6}#agent-review-panel input[type=checkbox]{display:inline-block;width:auto;margin:0 8px 0 0}.candidate-scene{height:320px;background:#eaf0e9;border:1px solid var(--line);border-radius:8px;margin-top:12px}.candidate-scene canvas{display:block;max-width:100%}.candidate-questions{border-left:3px solid #ce9b4c;padding-left:12px;margin:14px 0}.candidate-questions p{font-size:12px}.candidate-scene+p{margin-top:8px}
#hierarchy-panel{margin-top:18px;overflow-wrap:anywhere}#hierarchy-panel>p,#hierarchy-panel>details{margin-top:14px}#hierarchy-panel summary{cursor:pointer;font-size:13px;font-weight:600}#hierarchy-panel form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}#hierarchy-panel textarea{width:100%;font:inherit;border:1px solid #cdd7ce;border-radius:6px;padding:9px;min-height:75px}#hierarchy-panel input[type=checkbox]{width:auto;display:inline-block;margin:0 8px 0 0}#hierarchy-panel details details{margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:6px}#hierarchy-panel details p{font-size:12px;line-height:1.6;margin:10px 0}#hierarchy-panel details button{margin:4px}#hierarchy-panel small{display:block}@media(max-width:800px){#hierarchy-panel form{grid-template-columns:1fr}}
.native-source-controls label {display:flex;align-items:center;gap:8px;margin:8px 0;}
.native-source-controls input[type="checkbox"] {width:auto;margin:0;flex:none;}
.source-profile-record{margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:7px;overflow-wrap:anywhere;background:#f6f8f4}
.source-profile-record p{margin:6px 0;line-height:1.5}
.source-profile-record p:first-child{font-weight:650}
.pdf-source-review{margin:16px 0;overflow-wrap:anywhere}.pdf-source-review summary{font-size:13px;font-weight:650;cursor:pointer}.pdf-source-review p{font-size:12px;line-height:1.6;margin:12px 0}.pdf-source-review select{margin:8px 0}.pdf-source-review button{margin:6px 8px 8px 0}.pdf-source-review svg{display:block;max-width:100%;background:white;border:1px solid var(--line);border-radius:6px}.pdf-source-review path{cursor:pointer}
.drawing-setup-panel{margin:12px 16px;padding:12px;border:1px solid var(--line);border-radius:7px;background:#f6f8fb;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.drawing-setup-panel summary{cursor:pointer;font-weight:650}.drawing-setup-panel .field-grid{margin:12px 0;grid-template-columns:repeat(2,minmax(0,1fr))}.drawing-setup-panel button{margin:4px 0}.drawing-setup-panel input[type=checkbox]{width:auto;display:inline-block;margin-right:8px}.drawing-setup-panel [role=status]{margin-top:12px}@media(max-width:700px){.drawing-setup-panel .field-grid{grid-template-columns:1fr}}
.calibration-quantities{max-height:330px;overflow:auto;margin:12px 0}.calibration-quantities table{width:100%;border-collapse:collapse}.calibration-quantities th,.calibration-quantities td{text-align:left;padding:8px;border-bottom:1px solid var(--line)}.calibration-quantities p{margin:10px 0}#calibration-review-panel button{white-space:normal}
.opening-editor{padding:12px 16px;border-top:1px solid var(--line);font-size:12px;line-height:1.6;overflow-wrap:anywhere}.opening-editor summary{font-weight:650;cursor:pointer}.opening-editor p,.opening-editor .field-grid,.opening-editor .actions,.opening-editor form>label{margin:12px 0}.opening-editor input[type=checkbox]{display:inline-block;width:auto;margin:0 8px 0 0}.opening-editor button{white-space:normal}.opening-editor .field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.opening-edit-preview{max-height:250px;overflow:auto;background:#f6f8fb;padding:0 10px}.opening-edit-preview:empty{display:none}@media(max-width:700px){.opening-editor .field-grid{grid-template-columns:1fr}}
.load-editor{margin-top:18px;overflow-wrap:anywhere}.load-content{padding:16px;font-size:12px;line-height:1.6}.load-content p,.load-content .actions,.load-content>label{margin:12px 0}.load-editor details{padding:10px;border:1px solid var(--line);border-radius:6px;margin:10px 0}.load-editor summary{font-weight:650;cursor:pointer}.load-editor label{margin:10px 0}.load-editor small{display:block}.load-editor input[type=checkbox]{width:auto;display:inline-block}.load-editor button{white-space:normal}.load-inputs{max-height:600px;overflow:auto}.load-content table{width:100%;border-collapse:collapse;display:block;overflow:auto;margin:12px 0}.load-content th,.load-content td{padding:8px;text-align:left;border-bottom:1px solid var(--line)}.load-content h4{margin:16px 0 8px}.load-item{padding:8px;border-top:1px solid var(--line)}
.mobile-projects{display:none}@media(max-width:600px){.mobile-projects{display:block}.rail.mobile-open{display:flex;z-index:30;top:75px;bottom:0;box-shadow:6px 0 20px #0003;overflow:auto}.rail.mobile-open .rail-label{margin-top:20px}#project-list{overflow:auto}.rail.mobile-open .rail-bottom{padding-top:16px}header{gap:8px;flex-wrap:wrap}}
