@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+Devanagari:wght@400;500;600;700&display=swap";:root{color-scheme:light;font-family:DM Sans,Nirmala UI,Noto Sans Devanagari,system-ui,sans-serif;color:#1f2d27;background:#e7ebe4;font-synthesis:none;--ink: #1e2b26;--muted: #6e7973;--line: #d7ddd5;--paper: #fbfcf8;--green: #264d3b;--green-soft: #e3ece5;--gold: #cda549;--blue: #4b78a6;--shadow: 0 12px 34px rgba(28,45,37,.1)}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{min-width:320px;overflow:hidden;background:radial-gradient(circle at 65% 0%,#f7f8f1,#e7ebe4 55%,#dce3da)}button,input,select{font:inherit}button{cursor:pointer}.topbar{height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px;background:#fbfcf8f0;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:relative;z-index:20}.brand-lockup{display:flex;align-items:center;min-width:0}.brand-lockup h1{font-size:15px;line-height:1;margin:0;letter-spacing:-.02em;white-space:nowrap}.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}.language-control{display:flex;align-items:center;gap:5px;padding:2px 3px 2px 7px;min-height:29px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#6d7871;font-size:8.5px;font-weight:700}.language-control select{border:0;outline:0;background:#f1f4ef;color:var(--ink);border-radius:5px;padding:4px 6px;font-size:9px;font-weight:700}.button{min-height:29px;border-radius:7px;border:1px solid var(--line);padding:0 9px;font-size:9px;font-weight:700;white-space:nowrap;transition:.18s ease}.button:hover{transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:progress;transform:none}.button-quiet{background:#fff;color:var(--ink)}.button-primary{color:#fff;background:var(--green);border-color:var(--green)}.workspace{height:calc(100dvh - 48px);min-height:0;padding:4px;display:flex;flex-direction:column;gap:4px}.control-deck,.viewer-card,.details-drawer{background:#fbfcf8f5;border:1px solid rgba(201,209,199,.9);border-radius:9px;box-shadow:var(--shadow)}.control-deck{flex:none;width:fit-content;max-width:100%;padding:4px 5px;display:grid;gap:3px;z-index:5}.control-row{min-width:0}.primary-controls{display:grid;grid-template-columns:270px 180px 180px 220px 270px;justify-content:start;gap:4px;align-items:stretch;overflow-x:auto;scrollbar-width:thin}.secondary-controls{display:flex;justify-content:space-between;align-items:center;gap:6px;border-top:1px solid #e3e7e0;padding-top:3px}.control-block,.switch-card{min-width:0;min-height:43px;border:1px solid #dfe4dc;border-radius:7px;background:#fff;padding:4px 5px}.control-label{min-height:14px;margin-bottom:2px;display:flex;align-items:baseline;gap:6px;white-space:nowrap;overflow:hidden}.control-label strong,.switch-card strong{display:block;font-size:9px;line-height:1.1}.control-label small,.switch-card small{display:block;margin-top:1px;color:var(--muted);font-size:7px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.control-label strong,.control-label small{display:inline;flex:none;margin-top:0}.control-label small{flex:1;min-width:0}.segmented{display:grid;gap:1px;padding:1px;background:#e9ede7;border-radius:6px}.segmented-four{grid-template-columns:repeat(4,1fr)}.segmented-three{grid-template-columns:repeat(3,1fr)}.segmented-two{grid-template-columns:repeat(2,1fr)}.segmented button{border:0;min-height:21px;padding:0 3px;border-radius:5px;background:transparent;color:#69736d;font-size:8px;font-weight:700;line-height:1.05}.segmented button:hover{background:#fff9;color:var(--ink)}.segmented button.active{background:#fff;color:#254b39;box-shadow:0 2px 8px #24403121}.switch-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 6px;position:relative;cursor:pointer}.switch-card input{position:absolute;opacity:0;pointer-events:none}.switch{grid-row:1;grid-column:1;width:30px;height:17px;border-radius:20px;background:#cbd1ca;padding:3px;transition:.2s ease}.switch:after{content:"";display:block;width:11px;height:11px;background:#fff;border-radius:50%;box-shadow:0 2px 5px #00000029;transition:.2s ease}.switch-card input:checked+.switch{background:#315d47}.switch-card input:checked+.switch:after{transform:translate(13px)}.rear-options.is-disabled{opacity:.34;pointer-events:none}.layer-chips,.view-toolbar{display:flex;align-items:center;gap:3px;min-width:0}.layer-chips{flex-wrap:wrap}.row-title{font-size:7.2px;font-weight:800;color:#748078;letter-spacing:.08em;margin-right:1px}.layer-chips label{display:flex;align-items:center;gap:4px;min-height:22px;padding:0 6px;border:1px solid #dce2da;border-radius:5px;background:#fff;color:#536159;font-size:8px;font-weight:700;cursor:pointer;white-space:nowrap}.layer-chips input{width:11px;height:11px;accent-color:#315d47}.layer-chips .dimension-chip{border-color:#d4bc68;background:#fff9e7;color:#6b5513}.view-toolbar{padding:1px;border-radius:6px;background:#e9ede7;flex:none}.view-toolbar .row-title{padding-left:5px}.view-toolbar button{border:0;min-width:36px;height:22px;padding:0 5px;border-radius:5px;background:transparent;color:#6f7972;font-size:8px;font-weight:700}.view-toolbar button.active{background:var(--green);color:#fff}.viewer-card{position:relative;flex:1 1 auto;min-height:310px;min-width:0;overflow:hidden;background:#dfe5de}.scene{position:absolute;inset:0}.scene canvas{width:100%;height:100%;display:block;outline:none}.scene-help,.orientation{position:absolute;bottom:10px;padding:6px 8px;border-radius:7px;background:#fcfdfadb;color:#647169;font-size:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.scene-help{left:11px}.orientation{right:11px;display:flex;align-items:center;gap:5px;font-weight:700;letter-spacing:.06em}.north-arrow{color:#b06a3c;font-size:16px}.tv-badge{display:none;position:absolute;left:50%;bottom:14px;transform:translate(-50%);width:min(390px,calc(100% - 28px));padding:8px 11px;border-radius:9px;background:#f7faf7f0;border:1px solid #c9d5cd;box-shadow:0 9px 24px #1f2e2624;text-align:center;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.tv-badge.show{display:block}.tv-badge strong{display:block;font-size:10px;color:#263f35}.tv-badge span{display:block;margin-top:2px;color:#627068;font-size:8px}.pdf-progress{display:none;position:absolute;inset:0;z-index:25;align-items:center;justify-content:center;gap:10px;background:#e2e8e1c7;color:#244435;font-size:11px;font-weight:700;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.pdf-progress.show{display:flex}.spinner{width:20px;height:20px;border-radius:50%;border:3px solid #bfcfc4;border-top-color:var(--green);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:absolute;bottom:48px;left:50%;transform:translate(-50%,10px);background:#1d342a;color:#fff;padding:7px 11px;border-radius:7px;font-size:9px;opacity:0;pointer-events:none;transition:.24s ease;z-index:30}.toast.show{opacity:1;transform:translate(-50%)}.details-drawer{flex:none;width:fit-content;max-width:100%;align-self:flex-start;overflow:hidden}.details-drawer[open]{width:100%}.details-drawer:not([open]) .drawer-hint{display:none}.details-drawer summary{min-height:31px;padding:3px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none}.details-drawer summary::-webkit-details-marker{display:none}.details-drawer summary>span:first-child{display:flex;align-items:baseline;gap:9px;min-width:0}.details-drawer summary b{font-size:7px;color:#79847d;letter-spacing:.1em}.details-drawer summary strong{font-size:15px;letter-spacing:-.03em}.details-drawer summary em{color:#5f6d65;font-size:8.5px;font-style:normal}.drawer-hint{font-size:8px;color:#6d7871}.details-body{border-top:1px solid #e0e5de;padding:9px 12px 11px;display:grid;gap:9px;max-height:250px;overflow:auto}.metric-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.metric-strip>div{min-height:45px;padding:7px 9px;border:1px solid #e0e5dd;border-radius:8px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}.metric-strip span{color:#7a857f;font-size:7.5px}.metric-strip strong{font-size:9.5px}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.info-card{padding:8px 9px;border-radius:8px;background:#f2f4ef;border:1px solid #e0e4de}.info-card strong{display:block;font-size:8.5px}.info-card span{display:block;margin-top:3px;color:#68736d;font-size:7.6px;line-height:1.35}.roof-card{background:#e9f0f7;border-color:#cad8e7}.warning-card{background:#f7f0dc;border-color:#e7d7aa}.legend-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px 14px;font-size:7.8px;color:#59655e}.legend-row>strong{color:var(--ink);font-size:8.5px}.legend-row span{display:flex;align-items:center;gap:5px}.legend-row b{font-weight:600}.legend-row i{width:10px;height:10px;border-radius:3px;background:var(--swatch);box-shadow:inset 0 0 0 1px #00000014}@media(max-width:1100px){.topbar{padding:0 8px}.compact-action{display:none}.control-deck{width:100%}.primary-controls{display:flex;overflow-x:auto;scrollbar-width:thin;padding-bottom:2px}.primary-controls>*{flex:0 0 170px}.primary-controls .size-block{flex-basis:220px}.secondary-controls{overflow-x:auto;scrollbar-width:thin}.layer-chips{flex-wrap:nowrap}.metric-strip{grid-template-columns:repeat(3,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){body{overflow:auto}html,body,#app{height:auto;min-height:100%}.topbar{height:auto;min-height:50px;padding:5px 7px;align-items:flex-start}.brand-lockup h1{font-size:12.5px;line-height:1.1;white-space:normal;max-width:155px}.top-actions{gap:5px;flex-wrap:wrap}.language-control{min-height:31px;padding-left:6px}.language-control>span{display:none}.language-control select{max-width:92px}.button{min-height:31px;padding:0 8px;font-size:8px}.workspace{height:auto;min-height:calc(100dvh - 50px);padding:4px}.control-deck{order:2}.viewer-card{order:1;height:62vh;min-height:430px;flex:none}.details-drawer{order:3}.secondary-controls{align-items:flex-start}.view-toolbar{position:sticky;right:0}.scene-help{display:none}.details-drawer{width:100%}.details-drawer summary{min-height:36px;align-items:flex-start}.details-drawer summary>span:first-child{display:grid;gap:1px}.drawer-hint{display:none}.metric-strip{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr}}
