:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #f4f0e7;--ink: #22231f;--muted: #6d6a62;--line: #d8d0c1;--panel: #fffaf0;--panel-strong: #ffffff;--accent: #efb941;--accent-2: #174a28;--danger: #9e3e32;--shadow: 0 18px 48px rgba(50, 40, 28, .12);--radius: 8px}*{box-sizing:border-box}html,body,#root{margin:0;min-width:0;min-height:100%}body{background:var(--bg);color:var(--ink)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:progress;opacity:.68}.loading-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.loading-shell>div{width:min(420px,100%);border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);padding:24px}.loading-logo{width:190px;max-width:100%;display:block;margin-bottom:18px;background:#000;border-radius:var(--radius);padding:10px}.loading-shell h1{margin:8px 0 6px;font-size:28px;line-height:32px}.loading-shell p{margin:0;color:var(--muted)}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(520px,1fr) 390px;background:var(--bg)}.project-rail,.inspector{background:#ede5d7;border-right:1px solid var(--line);padding:22px}.inspector{border-left:1px solid var(--line);border-right:0;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.brand-logo{width:116px;height:48px;object-fit:contain;border-radius:var(--radius);background:#000;padding:6px;border:1px solid rgba(23,74,40,.2)}.brand strong,.brand em,.project-panel h1,.project-panel p,.workspace-header strong,.workspace-header em,.inspector-section h2,.inspector-section p{display:block}.brand strong{font-size:17px;line-height:20px}.brand em,.workspace-header em,.project-panel p,.inspector-section p,.surface-item em,.swatch em,.line-item em{color:var(--muted);font-style:normal;font-size:13px;line-height:18px}.rail-nav{display:grid;gap:8px;margin-bottom:24px}.rail-nav button,.header-actions button,.secondary-action{min-height:42px;border-radius:var(--radius);border:1px solid var(--line);background:#ffffff7a;color:var(--ink);display:flex;align-items:center;gap:9px;padding:0 12px;font-weight:700}.rail-nav button.active{background:var(--ink);color:#fff7e8;border-color:var(--ink)}.project-panel,.inspector-section,.estimate-preview,.measurements-panel,.audit-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.project-panel h1,.inspector-section h2{margin:6px 0 4px;font-size:21px;line-height:25px}.eyebrow{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.status-stack{display:grid;gap:8px;margin-top:16px}.status-note{margin:12px 0 0;font-size:12px;line-height:17px}.status-note.error{color:var(--danger)}.metric{min-height:54px;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff94;display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:10px}.metric svg{grid-row:1 / span 2;color:var(--accent-2)}.metric span{color:var(--muted);font-size:12px;line-height:15px}.metric strong{font-size:14px;line-height:17px}.workspace{min-width:0;display:grid;grid-template-rows:82px minmax(460px,1fr) 250px}.workspace-header{display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid var(--line)}.workspace-header strong{font-size:24px}.header-actions{display:flex;gap:10px}.viewer-band{padding:18px 22px;min-height:0}.scene-canvas{width:100%;height:100%;min-height:440px;border-radius:var(--radius);overflow:hidden;border:1px solid #cbbfac;box-shadow:var(--shadow)}.lower-workspace{min-height:0;display:grid;grid-template-columns:1.3fr .7fr;gap:16px;padding:0 22px 20px}.section-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px}.section-heading h2{margin:0;font-size:16px}.surface-list,.line-items,.swatch-grid,.material-checks,.evidence-grid{display:grid;gap:8px}.surface-item,.line-item{width:100%;min-height:58px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff9e;padding:10px 12px}.surface-item.selected{border-color:var(--accent);background:#fff0d8}.surface-item strong,.line-item strong,.swatch strong{display:block;font-size:14px}.surface-item b,.line-item b{font-size:13px}.evidence-grid{grid-template-columns:1fr}.inspector{display:grid;align-content:start;gap:14px}.swatch{min-height:58px;display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff9e;text-align:left;padding:10px}.swatch.selected{border-color:var(--accent);background:#fff0d8}.swatch>span{grid-row:span 2;width:34px;height:34px;border-radius:var(--radius);border:1px solid rgba(0,0,0,.16)}.secondary-action{justify-content:center;width:100%;margin-top:10px;background:#fff7eb}.override-editor{display:grid;gap:12px}.toggle-row,.material-checks label{min-height:36px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;text-transform:capitalize}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-pair label{color:var(--muted);font-size:12px;font-weight:800}.field-pair input{width:100%;height:40px;margin-top:5px;border:1px solid var(--line);border-radius:var(--radius);background:#fffdfa;padding:0 10px;color:var(--ink);font-weight:800}.estimate-summary{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:12px}@media(max-width:1240px){.app-shell{grid-template-columns:250px minmax(0,1fr)}.inspector{grid-column:1 / -1;border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-preview{grid-column:1 / -1}}@media(max-width:860px){.app-shell{grid-template-columns:1fr}.project-rail,.inspector{border-right:0}.workspace{grid-template-rows:auto minmax(430px,62vh) auto}.workspace-header,.lower-workspace,.inspector{grid-template-columns:1fr}.workspace-header{align-items:start;gap:12px;padding:18px 22px;flex-direction:column}.header-actions{width:100%}.header-actions button{flex:1;justify-content:center}}
