@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap";
:root{--ink:#26352f;--muted:#87918b;--border:#e6eae5;--green:#285c48;--soft:#edf3ec;--amber:#bc8747;--rail:#24352e;--font:"DM Sans", Arial, sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-size:14px;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}button,select{color:inherit}button{background:0 0;border:0}button:disabled{opacity:.35;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #55846a}button svg{flex-shrink:0}button:hover:not(:disabled){filter:brightness(.96)}.studio{background:#f9faf7;flex-direction:column;height:100dvh;display:flex}.topbar{border-bottom:1px solid var(--border);z-index:40;background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;height:77px;padding:0 25px 0 20px;display:flex}.identity{align-items:center;gap:13px;display:flex}.brand-mark{width:39px;height:39px;color:var(--green);background:#f2f6ef;border:1px solid #d7e2d6;border-radius:10px;place-items:center;display:grid}.identity h1{font-family:"Manrope", var(--font);letter-spacing:-.7px;white-space:nowrap;margin:0 0 4px;font-size:19px;font-weight:800}.identity h1 span{color:#c5cdc6;padding:0 7px;font-size:18px;font-weight:400}.identity h1 em{color:#89938b;font-style:normal;font-weight:450}.identity p{color:#849087;margin:0;font-size:12px}.topbar-center{align-items:center;gap:10px;margin-left:auto;margin-right:auto;display:flex}.project-tag{letter-spacing:1.4px;color:#87968b;font-size:10px;font-weight:700}.revision{color:#8a938d;background:#f0f2ee;border-radius:4px;padding:3px 6px;font-size:10px}.top-actions{align-items:center;gap:10px;display:flex}.save-state{color:#8b978d;margin-right:7px;font-size:11px}.button{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-size:12px;font-weight:600;display:flex}.primary{background:var(--green);color:#fff}.secondary{background:#fff;border:1px solid #dde3dc}.icon-button{color:#738175;border-radius:5px;place-items:center;width:32px;height:32px;display:grid}.dropdown-wrap{position:relative}.dropdown{border:1px solid var(--border);z-index:80;background:#fff;border-radius:8px;min-width:220px;padding:6px;position:absolute;top:45px;right:0;box-shadow:0 12px 38px #20342c1c}.dropdown button{text-align:left;border-radius:4px;width:100%;padding:11px 12px;font-size:13px}.dropdown button:hover{background:var(--soft)}.workspace{flex:1;min-height:0;display:flex}.rail{background:var(--rail);z-index:35;flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:center;width:62px;padding:20px 0 19px;display:flex}.rail-main{flex-direction:column;gap:13px;display:flex}.rail button{color:#94a599;border-radius:7px;place-items:center;width:39px;height:41px;display:grid;position:relative}.rail button.active{color:#eef5dd;background:#3b5144}.rail button.active:before{content:"";background:#c1d3b3;border-radius:2px;width:2px;height:21px;position:absolute;top:10px;left:-12px}.canvas-area{background:#e8edf0;flex:1;min-width:0;position:relative;overflow:hidden}.canvas-toolbar{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;gap:15px;padding:24px 25px;display:flex;position:absolute;top:0;left:0;right:0}.canvas-toolbar>*{pointer-events:auto}.view-title{flex-direction:column;gap:5px;min-width:145px;display:flex}.eyebrow{letter-spacing:1.7px;color:#8b9690;font-size:9px;font-weight:700}.view-title strong{color:#4b5b54;font-size:14px;font-weight:550}.scenario-tabs{background:#fff;border:1px solid #dee5df;border-radius:8px;align-items:center;gap:2px;padding:4px;display:flex;box-shadow:0 3px 8px #30453707}.scenario-tabs button{color:#7c8780;border-radius:5px;justify-content:center;align-items:center;gap:5px;min-width:80px;padding:8px 11px;font-size:12px;font-weight:500;display:flex}.scenario-tabs button.selected{background:var(--green);color:#fff;box-shadow:0 1px 3px #25493322}.panel-toggle{color:#6a7e74}.viewports{width:100%;height:100%;display:flex;position:relative}.viewport{touch-action:none;flex:1;min-width:0;height:100%;position:relative}.viewport>div:first-child{height:100%!important}.viewport.measuring canvas{cursor:crosshair}.phase-stamp{letter-spacing:1.25px;color:#6f8079;pointer-events:none;align-items:center;gap:7px;font-size:9px;font-weight:650;display:flex;position:absolute;top:103px;left:25px}.phase-stamp>span{letter-spacing:0;border:1px solid #b9c8bf;border-radius:3px;padding:2px 4px;font-size:10px}.phase-stamp small{display:none}.split .phase-stamp{flex-wrap:wrap;max-width:240px;font-size:9px;line-height:1.5;top:101px;left:18px}.split .phase-stamp small{letter-spacing:0;color:#8a9791;width:100%;margin-left:27px;font-size:10px;font-weight:400;display:block}.compare-divider{pointer-events:none;z-index:7;border-left:1px solid #bbc7c4;align-items:center;display:flex;position:absolute;top:87px;bottom:85px;left:50%}.compare-divider svg{box-sizing:content-box;color:#819287;background:#fff;border-radius:50%;margin-left:-18px;padding:9px;box-shadow:0 2px 6px #30403315}.floating-tools{z-index:20;background:#fff;border:1px solid #dbe3dc;border-radius:9px;flex-direction:column;gap:3px;padding:5px;display:flex;position:absolute;top:50%;left:23px;transform:translateY(-40%);box-shadow:0 3px 15px #2945330b}.floating-tools button{color:#819086;border-radius:5px;place-items:center;width:34px;height:35px;display:grid}.floating-tools button.active{color:#39624a;background:#e9f0e5}.floating-tools>span{background:#e9ede7;height:1px;margin:4px}.bottom-controls{z-index:20;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;bottom:49px;left:25px;right:25px}.bottom-controls>*{pointer-events:auto}.view-presets{background:#ffffffed;border:1px solid #dce5df;border-radius:7px;gap:1px;padding:4px;display:flex;box-shadow:0 4px 15px #24382b09}.view-presets button{color:#7a887e;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:8px 9px;font-size:11px;display:flex}.view-presets button.selected{color:#335843;background:#edf2e8}.display-controls{background:#fff;border:1px solid #dce5df;border-radius:7px;align-items:center;padding:5px;display:flex}.display-controls select{color:#67796e;outline-offset:0;background:0 0;border:0;max-width:112px;padding:6px 4px;font-size:11px}.display-controls button{border-left:1px solid var(--border);color:#88948c;place-items:center;padding:3px 8px;display:grid}.display-controls button.selected{color:var(--green)}.orientation-note{color:#8e9e95;pointer-events:none;align-items:center;gap:7px;font-size:10px;display:flex;position:absolute;bottom:19px;left:26px}.orientation-symbol{font-size:16px;font-weight:400}.model-label{color:#4f6457;white-space:nowrap;pointer-events:none;background:#fffffff0;border:1px solid #d8e0d8;border-radius:4px;padding:6px 9px;font-size:10px;box-shadow:0 3px 10px #2836260a}.model-label span{color:#91a08e;margin-left:5px;font-size:9px}.measure-label{white-space:nowrap;color:#fff;pointer-events:none;background:#31533f;border-radius:4px;padding:7px 11px;font-size:13px;font-weight:600;box-shadow:0 3px 10px #182d2525}.measure-prompt{z-index:22;color:var(--green);white-space:nowrap;background:#fff;border-radius:6px;align-items:center;gap:10px;max-width:90%;padding:10px 12px;font-size:12px;display:flex;position:absolute;top:145px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #21372a18}.measure-prompt button{color:#7d8d80;place-items:center;display:grid}.selection-card{z-index:20;background:#fff;border:1px solid #d9e3d8;border-radius:7px;flex-wrap:wrap;align-items:center;gap:10px;padding:13px 15px;font-size:12px;display:flex;position:absolute;bottom:104px;right:25px;box-shadow:0 4px 20px #2b423218}.selection-card>span{letter-spacing:1.4px;color:#93a08f;width:100%;font-size:8px}.selection-card button{color:#7b8b7d;align-items:center;gap:4px;font-size:11px;display:flex}.selection-card strong{font-size:12px;font-weight:600}.walk-guide{color:#fff;white-space:nowrap;pointer-events:none;background:#203b2dd9;border-radius:7px;padding:12px 18px;font-size:12px;line-height:1.7;position:absolute;bottom:135px;left:50%;transform:translate(-50%)}.walk-guide small{opacity:.6;font-size:10px}.inspector{border-left:1px solid var(--border);z-index:30;background:#fff;flex-direction:column;flex-shrink:0;width:321px;min-height:0;display:flex}.inspector-heading{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:88px;padding:24px 21px 19px;display:flex}.inspector-heading h2{font-family:"Manrope", var(--font);letter-spacing:-.4px;margin:6px 0 0;font-size:19px;font-weight:750}.inspector-scroll{scrollbar-width:thin;scrollbar-color:#d2dacf transparent;flex:1;min-height:0;padding:0 21px 24px;overflow-y:auto}.design-intro{padding:20px 0 16px}.unit-pill{letter-spacing:.85px;color:#7c9275;background:#eff3eb;border-radius:3px;padding:4px 6px;font-size:9px;font-weight:650}.design-intro p{color:#939b92;margin:11px 0 0;font-size:12px;line-height:1.65}.metrics{background:#f6f8f3;border:1px solid #e5ebe0;border-radius:7px;grid-template-columns:1fr 1fr;gap:10px;padding:14px 12px;display:grid}.metrics>div+div{border-left:1px solid #e0e7da;padding-left:11px}.metrics span{color:#84927c;margin-bottom:8px;font-size:10px;display:block}.metrics strong{font-size:23px;font-family:"Manrope", var(--font);letter-spacing:-1px;color:#34573f;white-space:nowrap;font-weight:650;display:block}.metrics em{letter-spacing:0;font-size:12px;font-style:normal}.metrics small{color:#99a28f;margin-top:5px;font-size:8px;line-height:1.4;display:block}.metrics .danger{color:#a94a37}.history-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 0 12px;display:flex}.history-row button{color:#83907f;align-items:center;gap:5px;padding:5px;font-size:10px;display:flex}.parameter-group{border-bottom:1px solid var(--border)}.parameter-group summary{cursor:pointer;justify-content:space-between;align-items:center;padding:18px 0;font-size:12px;font-weight:600;list-style:none;display:flex}.parameter-group summary::-webkit-details-marker{display:none}.parameter-group summary svg{color:#96a08e;transition:transform .15s;transform:rotate(-90deg)}.parameter-group[open] summary svg{transform:none}.parameter-fields{padding-bottom:5px}.parameter{padding:0 0 17px}.parameter label{color:#7c8976;align-items:center;gap:6px;margin-bottom:10px;font-size:11px;display:flex}.parameter-unit{color:#a2ad9c;margin-left:auto;font-size:10px}.source-dot,.provisional-dot{background:#7d9a76;border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.provisional-dot{background:#bc975c}.parameter-inputs{align-items:center;gap:16px;display:flex}.parameter input[type=number]{text-align:right;width:66px;font-family:var(--font);color:#52664b;appearance:textfield;background:#fbfcf9;border:1px solid #dfe6d9;border-radius:4px;padding:7px 6px;font-size:12px;font-weight:500}.parameter input[type=number]::-webkit-inner-spin-button{display:none}input[type=range]{appearance:none;accent-color:#547b4e;cursor:pointer;outline-offset:7px;background:#e1e9d9;border-radius:5px;flex:1;width:100%;height:3px}input[type=range]::-webkit-slider-thumb{appearance:none;background:#fff;border:2px solid #638359;border-radius:50%;width:11px;height:11px;box-shadow:0 1px 3px #32552b20}input[type=range]::-moz-range-thumb{background:#fff;border:2px solid #638359;border-radius:50%;width:8px;height:8px}.field-note{color:#a1895f;background:#faf7ef;border:1px solid #eee6d7;border-radius:6px;align-items:flex-start;gap:9px;margin-top:19px;padding:12px;display:flex}.field-note svg{flex-shrink:0;margin-top:1px}.field-note strong{font-size:11px;font-weight:600}.field-note p{color:#9f977f;margin:5px 0 0;font-size:11px;line-height:1.65}.field-note>p{margin:0}.local-actions{justify-content:space-between;align-items:center;padding-top:20px;display:flex}.local-actions button{color:#879779;align-items:center;gap:6px;padding:4px 0;font-size:11px;display:flex}.inspector-footer{border-top:1px solid var(--border);color:#95a18e;background:#fcfdfb;flex-shrink:0;justify-content:center;align-items:center;gap:5px;height:39px;font-size:8px;display:flex}.inspector-footer .provisional-dot{margin-left:10px}.statusbar{color:#8f9b88;z-index:40;background:#fafcf8;border-top:1px solid #dfe5df;flex-shrink:0;justify-content:space-between;align-items:center;gap:20px;height:28px;padding:0 17px;font-size:9px;display:flex}.statusbar>span{align-items:center;gap:6px;display:flex}.status-square{background:#6a8860;border-radius:1px;width:5px;height:5px}.status-separator{color:#c8d1c1;padding:0 4px}.panel-description{color:#87937f;margin:20px 0;font-size:12px;line-height:1.75}.layer-list{flex-direction:column;gap:3px;display:flex}.layer{text-align:left;color:#89947e;border-radius:5px;align-items:center;gap:9px;width:100%;padding:12px 8px;font-size:12px;display:flex}.layer span{color:#53654c;flex:1}.layer:hover,.selected-layer{background:#edf3e7}.section-label{letter-spacing:1.6px;color:#a0a890;margin:27px 0 15px;font-size:9px;font-weight:600}.switch-row{color:#748267;justify-content:space-between;align-items:center;padding:11px 2px;font-size:12px;display:flex}.switch-row input{accent-color:var(--green);cursor:pointer;width:16px;height:16px}.sun-control{border-top:1px solid var(--border);margin-top:15px;padding:20px 0 15px}.sun-control>div{color:#8d977f;align-items:center;gap:7px;margin-bottom:20px;font-size:12px;display:flex}.sun-control strong{font-weight:500}.sun-control span{margin-left:auto}.sun-control p{color:#9da38e;margin-top:14px;font-size:10px;line-height:1.7}.full-width{width:100%}.photo-card{text-align:left;border:1px solid var(--border);background:#fff;border-radius:7px;width:100%;margin-bottom:19px;padding:0;display:block;overflow:hidden}.photo-card>img{object-fit:cover;width:100%;height:152px;display:block}.photo-card>div{align-items:center;gap:8px;padding:13px 12px 0;display:flex}.photo-card span{color:#a4ad97;font-size:9px}.photo-card strong{flex:1;font-size:12px;font-weight:550}.photo-card svg{color:#9aa790}.photo-card>p{color:#959e89;margin:8px 12px 14px;font-size:11px;line-height:1.65}.info-project{color:#526b47;padding:29px 0 4px}.info-project h3{font-family:"Manrope", var(--font);letter-spacing:-.4px;margin:13px 0 7px;font-size:20px}.info-project p{color:#939f84;font-size:12px;line-height:1.7}.basis-list{margin:0;padding:0;list-style:none}.basis-list li{color:#778769;align-items:center;gap:8px;padding:7px 0;font-size:11px;display:flex}.basis-list svg{color:#79966a}.inspector h4{margin:23px 0 -9px;font-size:12px;font-weight:600}.small-note{color:#a1aa91;border-top:1px solid var(--border);margin-top:26px;padding-top:17px;font-size:10px;line-height:1.75}.toast{z-index:100;color:#f6f9ef;background:#253e2f;border-radius:8px;align-items:center;gap:17px;max-width:calc(100vw - 30px);padding:13px 15px;font-size:12px;line-height:1.6;display:flex;position:fixed;bottom:45px;left:50%;transform:translate(-50%);box-shadow:0 5px 25px #132d2528}.toast button{color:inherit;place-items:center;padding:3px;display:grid}.loading-model,.canvas-error{color:#778a76;flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex;position:absolute;inset:0}.canvas-error{text-align:center;z-index:25;background:#edf1ec;padding:25px}.canvas-error h2{font-size:18px}.canvas-error button{background:var(--green);color:#fff;border-radius:5px;padding:10px 20px}.spinner{border:2px solid #d5decd;border-top-color:#58704c;border-radius:50%;width:22px;height:22px;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot{background:#e8edf0;flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex}.boot h1{font-size:24px;font-weight:600}.boot p{color:#849180;font-size:13px}.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:120;background:#14261ede;justify-content:center;align-items:center;padding:35px;display:flex;position:fixed;inset:0}.photo-modal{background:#fff;border-radius:9px;max-width:min(1100px,90vw);max-height:90vh;position:relative;overflow:auto}.photo-modal>img{object-fit:contain;background:#172b20;width:100%;max-height:72vh;display:block}.photo-modal>div{padding:18px 23px}.photo-modal h3{font-family:"Manrope", var(--font);margin:0 0 6px;font-size:17px}.photo-modal p{color:#8b9882;margin:0;font-size:12px}.modal-close{z-index:2;background:#fff;border:1px solid #e1e8db;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:13px;right:13px}.modal-close svg{width:17px}.help-modal{background:#fff;border-radius:12px;max-width:500px;padding:35px;position:relative}.help-modal>svg{color:#5d7d51}.help-modal h2{font-family:"Manrope", var(--font);letter-spacing:-.5px;max-width:330px;margin:21px 0 13px;font-size:23px;line-height:1.4}.help-modal p{color:#8e9c81;font-size:13px;line-height:1.8}.help-modal dl{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:1fr 1.5fr;gap:14px 17px;margin:20px 0;padding:20px 0;font-size:12px;display:grid}.help-modal dt{font-weight:600}.help-modal dd{color:#96a18a;margin:0}.help-modal small{color:#a7af9a;font-size:10px}@media (min-width:1700px){.inspector{width:355px}.inspector-scroll{padding-left:25px;padding-right:25px}.topbar{height:83px}.canvas-toolbar{padding:28px 32px}.view-title strong{font-size:16px}.identity h1{font-size:21px}.parameter label,.parameter-group summary{font-size:13px}}@media (max-width:1150px){.topbar-center,.save-state{display:none}.inspector{width:289px}.topbar{padding-left:16px;padding-right:16px}.canvas-toolbar{padding:20px 17px}.view-title{min-width:0}.view-title strong{font-size:12px}.view-title .eyebrow{font-size:8px}.scenario-tabs button{min-width:60px;padding:8px;font-size:11px}.bottom-controls{left:17px;right:17px}.view-presets button{padding:8px 6px;font-size:10px}.view-presets button svg{display:none}.display-controls select{max-width:90px;font-size:10px}.phase-stamp{left:18px}.floating-tools{left:17px}.rail{width:54px}.rail button.active:before{left:-8px}.identity h1{font-size:17px}.status-navigation{display:none!important}}@media (max-width:800px){.topbar{height:67px;padding:0 12px}.identity{gap:9px}.brand-mark{border-radius:7px;width:32px;height:32px}.identity h1{font-size:15px}.identity h1 em,.identity h1 span{display:none}.identity p{font-size:10px}.top-actions{gap:6px}.top-actions>.icon-button{display:none}.button{padding:9px;font-size:11px}.rail{width:46px}.rail button{width:33px}.inspector{width:min(310px,86vw);position:absolute;top:67px;bottom:28px;right:0;box-shadow:-7px 0 30px #243b2d15}.canvas-toolbar{gap:8px;padding:17px 13px}.view-title{display:none}.scenario-tabs{margin:0 auto}.scenario-tabs button{min-width:73px}.panel-toggle{background:#ffffffe6;position:absolute;right:10px}.phase-stamp{top:79px;left:15px}.split .phase-stamp{top:80px}.bottom-controls{bottom:47px;left:13px;right:13px}.display-controls{display:none}.floating-tools{padding:3px;left:12px}.floating-tools button{width:30px;height:32px}.orientation-note{font-size:8px;left:14px}.statusbar{gap:8px;padding:0 10px;font-size:8px}.statusbar>span:last-child{display:none}.measure-prompt{white-space:normal;width:max-content;max-width:88%;font-size:10px;top:125px}.selection-card{max-width:220px;bottom:99px;right:12px}.model-label{padding:4px 6px;font-size:8px}.model-label span{display:none}.walk-guide{white-space:normal;width:max-content;max-width:90%;font-size:10px}.photo-modal{max-width:96vw}.modal-backdrop{padding:12px}.help-modal{padding:25px}.inspector-heading{height:78px;padding-top:17px}}.simplified .topbar{justify-content:flex-start;height:68px;padding:0 24px}.address-title{font-family:"Manrope", var(--font);letter-spacing:-.7px;margin:0;font-size:24px;font-weight:750}.address-title span{color:#7b887e;font-weight:450}.simplified .canvas-toolbar{justify-content:center}.simplified .panel-toggle{position:absolute;right:24px}.simplified .bottom-controls{bottom:23px}.simplified .inspector-heading{height:75px}.simplified .inspector-heading h2{margin:0}.simplified .inspector-scroll{padding-top:20px}.simplified .phase-stamp{letter-spacing:.5px;text-transform:none;font-size:11px;font-weight:500}.simplified .selection-card{bottom:83px}@media (max-width:800px){.simplified .topbar{height:66px;padding:0 15px}.address-title{letter-spacing:-.4px;font-size:18px}.simplified .inspector{top:66px;bottom:0}.simplified .panel-toggle{right:10px}.simplified .bottom-controls{bottom:18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
