:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #eef3f3;--ink: #17252f;--muted: #79736a;--line: #ddd7ce;--panel: #ffffff;--panel-soft: #f7f9f8;--teal: #b07b2c;--primary-strong: #8a5f1e;--green: #7a7a2e;--amber: #c08327;--red: #c45149;--wood: #9a6742;--shadow: 0 18px 55px rgba(24, 42, 50, .14)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:linear-gradient(130deg,#ffffffc7,#fff0 30%),var(--bg);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr}.topbar{min-height:76px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid var(--line);background:#ffffffc2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.auth-control{display:flex;align-items:center;gap:10px}.auth-user{display:inline-flex;align-items:center;gap:6px;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:760}.auth-user svg{color:var(--teal);flex-shrink:0}.auth-user-button{min-height:30px;padding:0 2px;border:0;background:transparent;cursor:pointer}.auth-user-button:hover{color:var(--ink)}.auth-overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:18px;background:#17252f6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-dialog{width:min(420px,100%);display:grid;gap:12px;padding:22px;border-radius:14px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}.auth-dialog-head{display:flex;align-items:center;justify-content:space-between}.auth-dialog-head h2{font-size:18px}.auth-dialog-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.4;font-weight:720}.auth-form{display:grid;gap:12px}.auth-form label{display:grid;gap:5px;font-size:12px;font-weight:800;color:var(--ink)}.auth-form input{min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:9px;font-size:14px}.auth-form input:focus-visible{outline:2px solid var(--primary-strong);outline-offset:1px}.auth-form .primary-action{margin-top:4px}.auth-success,.auth-error{display:grid;gap:4px;margin:0;padding:9px 10px;border-radius:8px;font-size:12px;font-weight:760;line-height:1.35;overflow-wrap:anywhere}.auth-success{border:1px solid rgba(122,122,46,.24);background:#7a7a2e17;color:#5f642a}.auth-error{border:1px solid rgba(196,81,73,.24);background:#c4514914;color:#84433e}.auth-dialog-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px}.auth-toggle{justify-self:center;background:none;border:none;color:var(--primary-strong);font-size:12px;font-weight:800;cursor:pointer}.account-status-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.account-status-panel h3{margin:0 0 4px;font-size:13px;font-weight:900}.account-status-panel p{margin:0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.35}.verified-pill{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(122,122,46,.24);background:#7a7a2e17;color:#5f642a;font-size:12px;font-weight:900;white-space:nowrap}.danger-zone{margin-top:4px;padding-top:12px;border-top:1px solid rgba(196,81,73,.18)}.danger-zone h3{margin:0 0 4px;color:#84433e;font-size:13px;font-weight:900}.danger-zone p{margin:0;color:var(--muted);font-size:12px;font-weight:700;line-height:1.4}.danger-action{min-height:40px;border:1px solid rgba(196,81,73,.28);border-radius:9px;background:#c451491a;color:#84433e;font-size:13px;font-weight:900}.danger-action:not(:disabled):hover{background:#c4514929}.danger-action:disabled{opacity:.48;cursor:not-allowed}.brand{display:flex;align-items:center;gap:12px;min-width:260px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(145deg,#3a2410,#9a6742);color:#fff;font-size:13px;font-weight:760;letter-spacing:0;box-shadow:0 10px 25px #3a241038}.brand strong,.brand span{display:block}.brand strong{font-size:15px;line-height:1.2}.brand span{color:var(--muted);font-size:12px;margin-top:2px}.pipeline{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.pipeline-step{height:34px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:12px;font-weight:700}.pipeline-step span{width:14px;height:14px;display:grid;place-items:center}.pipeline-step.active{color:var(--teal);border-color:#b07b2c59;background:#b07b2c14}.pipeline-step.complete{color:var(--green)}.workspace{min-height:calc(100vh - 76px);display:grid;grid-template-columns:minmax(300px,360px) minmax(420px,1fr) minmax(300px,360px);gap:16px;padding:16px}.walkthrough-workspace{grid-template-columns:minmax(300px,340px) minmax(520px,1fr) minmax(300px,340px)}.left-column,.config-panel,.quest-panel,.decision-panel{min-width:0}.panel{background:var(--panel);border:1px solid rgba(212,222,220,.92);border-radius:8px;box-shadow:0 12px 36px #23303714}.intake-panel,.review-panel,.config-panel,.quest-panel,.decision-panel{padding:16px;height:100%;max-height:calc(100vh - 108px);overflow:auto}.panel-heading{display:flex;gap:10px;align-items:flex-start;margin-bottom:16px}.panel-heading svg{color:var(--teal);margin-top:2px;flex:0 0 auto}h1,h2,h3,p{margin:0}h1{font-size:clamp(24px,2.2vw,38px);line-height:1.02;letter-spacing:0}h2{font-size:17px;line-height:1.2;letter-spacing:0}h3{font-size:12px;line-height:1;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}p{color:var(--muted);font-size:13px;line-height:1.45}.dropzone{min-height:210px;display:grid;place-items:center;text-align:center;gap:8px;padding:22px;border:1.5px dashed rgba(176,123,44,.36);border-radius:8px;background:linear-gradient(160deg,#b07b2c1a,#c9ad831a),#fbfcfc;color:var(--ink)}.dropzone input,.image-upload input{inline-size:1px;block-size:1px;position:absolute;opacity:0;pointer-events:none}.dropzone svg{color:var(--teal)}.dropzone strong{font-size:17px}.dropzone span{color:var(--muted);font-size:13px}.primary-action,.secondary-action,.export-actions button{min-height:42px;border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:760;letter-spacing:0}.primary-action{width:100%;margin-top:16px;padding:0 15px;color:#fff;background:linear-gradient(135deg,#6f4a16,var(--primary-strong));box-shadow:0 12px 28px #b07b2c3d}.primary-action.compact,.secondary-action.compact{width:auto;margin:0;white-space:nowrap}.secondary-action.compact{padding:0 15px}.secondary-action{width:100%;margin-top:12px;color:var(--teal);background:#b07b2c14;border:1px solid rgba(176,123,44,.16)}.guardrail-note{display:flex;align-items:flex-start;gap:8px;color:#71521e;background:#d69b2d1f;border:1px solid rgba(214,155,45,.2);padding:10px;border-radius:8px;margin-top:12px;font-size:12px;line-height:1.4}.project-library{display:grid;gap:8px;margin-top:16px}.project-library p{padding:10px 0}.project-library button{width:100%;min-height:50px;display:grid;grid-template-columns:18px 1fr;align-items:center;gap:9px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.project-library svg{color:var(--teal)}.project-library strong,.project-library small{display:block}.project-library strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.project-library small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;color:var(--muted);font-size:11px}.project-library-row{display:flex;align-items:stretch;gap:8px}.project-library-row>button:first-child{flex:1 1 auto;min-width:0}.project-library-row .icon-button{display:inline-flex;flex:0 0 auto;width:42px;min-height:50px}.project-library-row .icon-button svg{color:var(--muted)}.project-library-row .icon-button:hover svg{color:var(--red)}.field-grid{display:grid;grid-template-columns:1fr 100px;gap:10px}label{color:var(--muted);font-size:12px;font-weight:700}input,select{width:100%;height:38px;margin-top:5px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:13px;font-weight:650}input:focus-visible,button:focus-visible,.image-upload:focus-within{outline:3px solid rgba(176,123,44,.18);outline-offset:2px}.finding-list{display:grid;gap:8px;margin-top:14px}.finding-row{width:100%;display:grid;grid-template-columns:88px 1fr 20px;align-items:center;gap:9px;text-align:left;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--panel-soft);color:var(--ink)}.finding-row svg{color:#68778266}.finding-row.confirmed svg{color:var(--green)}.extraction-overview{display:grid;gap:9px;margin-top:12px;padding:11px;border:1px solid rgba(176,123,44,.16);border-radius:8px;background:#b07b2c0f}.extraction-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.extraction-grid span{min-height:42px;display:grid;align-content:center;padding:7px;border:1px solid rgba(176,123,44,.12);border-radius:8px;background:#fff;color:var(--muted);font-size:10px;font-weight:800}.extraction-grid strong{color:var(--ink);font-size:16px;line-height:1}.finding-row strong,.finding-row small{display:block}.finding-row strong{font-size:12px;margin-bottom:3px}.finding-row small{color:var(--muted);font-size:11px;line-height:1.32}.confidence-pill{min-width:78px;height:25px;display:inline-grid;place-items:center;border-radius:999px;color:#fff;font-size:10px;font-weight:800}.confidence-pill.high{background:var(--green)}.confidence-pill.medium{background:#9a6a1f}.confidence-pill.low{background:var(--red)}.room-editor,.opening-editor,.fixture-editor{margin-top:16px;display:grid;gap:9px}.model-page-card{display:grid;grid-template-columns:1fr 108px auto;gap:8px;align-items:end;margin-top:14px;padding:11px;border:1px solid rgba(176,123,44,.16);border-radius:8px;background:#b07b2c0f}.model-page-card p{margin-top:5px;font-size:11px}.model-page-card button,.editor-headline button{min-height:38px;padding:0 10px;border:1px solid rgba(176,123,44,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--teal);background:#b07b2c14;font-size:11px;font-weight:850;white-space:nowrap}.model-page-card button:disabled{cursor:not-allowed;opacity:.48}.calibration-card,.calibration-loading{margin-top:14px;border:1px solid var(--line);border-radius:8px;background:#fff}.calibration-loading{min-height:140px;display:grid;place-items:center;color:var(--teal);font-size:12px;font-weight:800}.calibration-card{padding:10px}.calibration-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px}.calibration-head p{margin-top:5px;font-size:11px}.calibration-status{height:24px;display:inline-flex;align-items:center;padding:0 8px;border-radius:999px;background:#c083271f;color:#71521e;font-size:10px;font-weight:850}.calibration-status.ready{background:#7a7a2e1f;color:var(--green)}.pdf-page-controls{min-height:34px;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-bottom:9px}.pdf-page-controls button{min-height:32px;padding:0 9px;border:1px solid rgba(176,123,44,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:4px;color:var(--teal);background:#b07b2c14;font-size:11px;font-weight:850}.pdf-page-controls button:disabled{cursor:not-allowed;opacity:.46}.pdf-page-controls span{min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--muted);font-size:11px;font-weight:850}.calibration-tools{display:grid;grid-template-columns:112px 1fr;gap:8px;align-items:end}.segmented-control{min-height:38px;display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.segmented-control button{border:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--muted);background:transparent;font-size:11px;font-weight:850}.segmented-control button.active{color:var(--teal);background:#fff;box-shadow:0 4px 12px #182a3214}.calibration-canvas-wrap{position:relative;margin-top:10px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);cursor:crosshair}.calibration-canvas-wrap canvas{display:block;width:100%;height:auto}.calibration-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.calibration-overlay line{stroke:#d8615a;stroke-width:.012;stroke-linecap:round}.calibration-overlay circle{fill:#d8615a;stroke:#fff;stroke-width:.006}.calibration-metrics{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;margin-top:9px}.calibration-metrics span{min-height:30px;display:inline-flex;align-items:center;padding:0 8px;border-radius:8px;background:var(--panel-soft);color:var(--muted);font-size:11px;font-weight:800}.calibration-metrics button{min-height:30px;padding:0 9px;border:0;border-radius:8px;background:#b07b2c1a;color:var(--teal);font-size:11px;font-weight:850}.raster-signal{display:grid;gap:3px;margin-top:9px;padding:9px;border:1px solid rgba(176,123,44,.16);border-radius:8px;background:#b07b2c0f}.raster-signal.attention{border-color:#d69b2d47;background:#d69b2d1f}.raster-signal span,.raster-signal small{color:var(--muted);font-size:10px;font-weight:800}.raster-signal strong{color:var(--ink);font-size:12px}.room-row,.fixture-row,.opening-row{display:grid;grid-template-columns:1fr 58px 58px 68px 68px;gap:8px;align-items:end}.fixture-row{grid-template-columns:1fr 62px 62px 72px}.editor-headline{display:flex;align-items:center;justify-content:space-between;gap:8px}.opening-row{grid-template-columns:repeat(4,minmax(0,1fr));padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.opening-row>input{grid-column:span 2}.opening-row>label:first-of-type{grid-column:span 2}.stage{min-width:0;display:grid;grid-template-rows:auto minmax(460px,1fr) auto;gap:12px}.stage-header{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:4px 2px 0}.stage-header p{margin-top:7px}.scene-shell{min-height:460px;position:relative;overflow:hidden;border-radius:8px;background:#e7e2d8;box-shadow:var(--shadow);isolation:isolate}.scene-loading{min-height:460px;display:grid;place-items:center;border-radius:8px;background:linear-gradient(145deg,#b07b2c1a,#9a67421f),#e7e2d8;color:var(--teal);font-size:13px;font-weight:800;box-shadow:var(--shadow)}.scene-shell canvas{display:block;width:100%!important;height:100%!important}.scene-shell.measuring canvas{cursor:crosshair}.viewer-hud,.viewer-scale{position:absolute;z-index:5;pointer-events:none;display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 10px;border:1px solid rgba(255,255,255,.72);border-radius:8px;background:#ffffffd6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);font-size:12px;font-weight:760;box-shadow:0 8px 22px #17252f1f}.viewer-hud{left:12px;top:12px}.viewer-scale{right:12px;top:12px;flex-direction:column;align-items:flex-end;gap:1px;padding:8px 10px}.viewer-scale span{color:var(--muted);font-size:11px;font-weight:700}.viewer-comfort{position:absolute;left:12px;right:12px;bottom:58px;z-index:5;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;border:1px solid rgba(255,255,255,.72);border-radius:8px;background:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--ink);box-shadow:0 8px 22px #17252f1f;pointer-events:none}.viewer-comfort span{color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.viewer-comfort strong{font-size:12px}.status-dot{width:8px;height:8px;border-radius:99px;background:var(--amber);box-shadow:0 0 0 4px #c0832729}.status-dot.active{background:var(--green);box-shadow:0 0 0 4px #7a7a2e29}.vr-entry-button{position:absolute!important;left:12px!important;bottom:12px!important;z-index:10!important;border-radius:8px!important;background:#17252f!important;border:0!important;color:#fff!important;font:760 12px Inter,system-ui,sans-serif!important;letter-spacing:0!important}.save-status{position:fixed;left:16px;bottom:16px;z-index:30;min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:0 10px;border:1px solid rgba(212,222,220,.92);border-radius:8px;background:#ffffffe0;color:var(--muted);box-shadow:0 10px 30px #17252f1f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11px;font-weight:800}.save-status svg{color:var(--green)}.summary-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.summary-rail div{min-height:50px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#ffffffb8;color:var(--muted);font-size:12px;font-weight:760}.summary-rail svg{color:var(--teal)}.summary-rail .attention{color:#71521e;background:#d69b2d1f;border-color:#d69b2d33}.summary-rail .decision-grade-chip.ready{color:#5c5a22;background:#7a7a2e1a;border-color:#7a7a2e3d}.summary-rail .decision-grade-chip.caution{color:#71521e;background:#c083271f;border-color:#c0832738}.summary-rail .decision-grade-chip.blocked{color:#84433e;background:#c451491a;border-color:#c451493d}.summary-rail .decision-grade-chip.ready svg{color:var(--green)}.summary-rail .decision-grade-chip.caution svg{color:var(--amber)}.summary-rail .decision-grade-chip.blocked svg{color:var(--red)}.toggle-stack{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.toggle-stack label{display:flex;align-items:center;gap:9px;color:var(--ink)}.toggle-stack input{width:16px;height:16px;margin:0;accent-color:var(--teal)}.material-list{display:grid;gap:8px;margin-top:14px}.material-card{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff}.material-card.active{border-color:#b07b2c7a;box-shadow:0 0 0 3px #b07b2c14}.material-card button{min-width:0;padding:0;border:0;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;text-align:left;background:transparent;color:var(--ink)}.material-swatch{width:42px;height:42px;border:1px solid rgba(23,37,47,.12);border-radius:8px;box-shadow:inset 0 0 0 1px #ffffff70}.material-card strong,.material-card small{display:block}.material-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.material-card small{margin-top:3px;color:var(--muted);font-size:11px}.image-upload{min-height:30px;padding:0 9px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(176,123,44,.18);border-radius:8px;background:#b07b2c14;color:var(--teal);font-size:11px;font-weight:800;position:relative;overflow:hidden;white-space:nowrap}.online-image-form{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:end}.online-image-form input{height:32px;margin:0;font-size:11px}.online-image-form button{min-height:32px;padding:0 9px;border:1px solid rgba(176,123,44,.18);border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;color:var(--teal);background:#b07b2c14;font-size:11px;font-weight:850;white-space:nowrap}.product-search-panel,.room-finish-panel{display:grid;gap:9px;margin-top:14px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.product-search-panel p{margin-top:5px;font-size:11px}.product-search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.product-search-form input{margin:0}.product-search-form button{min-height:38px;padding:0 11px;border:0;border-radius:8px;display:inline-flex;align-items:center;gap:6px;color:#fff;background:var(--primary-strong);font-size:12px;font-weight:850}.product-search-form button:disabled{opacity:.58}.product-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-results article{min-width:0;display:grid;grid-template-columns:1fr 30px;gap:5px;align-items:stretch}.product-results article>button,.product-results a{border:1px solid var(--line);border-radius:8px;background:#fff}.product-results article>button{min-width:0;padding:6px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:7px;text-align:left;color:var(--ink)}.product-result-image{width:44px;height:44px;border-radius:7px;background-position:center;background-size:cover}.product-results strong,.product-results small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-results strong{font-size:11px}.product-results small{margin-top:4px;color:var(--muted);font-size:10px}.product-results a{display:grid;place-items:center;color:var(--teal)}.room-finish-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;align-items:end}.room-finish-row strong{min-height:38px;display:flex;align-items:center;color:var(--ink);font-size:12px}.qr-card{display:grid;place-items:center;gap:9px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.qr-card img,.qr-placeholder{width:min(100%,220px);aspect-ratio:1;border:1px solid rgba(23,37,47,.12);border-radius:8px;background:#fff}.qr-placeholder{display:grid;place-items:center;color:var(--muted);font-size:11px;font-weight:850;text-transform:uppercase}.qr-card span{max-width:100%;overflow:hidden;color:var(--muted);font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.review-link-box{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-top:12px;padding:8px;border:1px solid var(--line);border-radius:8px;background:#fff}.review-link-box span{overflow:hidden;color:var(--muted);font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.review-link-box button{min-height:32px;padding:0 9px;border:1px solid rgba(176,123,44,.18);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:var(--teal);background:#b07b2c14;font-size:11px;font-weight:850}.review-session-note{margin-top:8px;color:var(--muted);font-size:11px;font-weight:750}.share-management{display:grid;gap:10px;margin-top:12px;padding:10px;border:1px solid rgba(176,123,44,.18);border-radius:8px;background:#b07b2c12}.share-management-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.share-management h3{margin:0;color:var(--ink);font-size:12px;font-weight:900}.share-management p{margin:3px 0 0;color:var(--muted);font-size:11px;font-weight:740;line-height:1.35}.share-management-head button,.share-session-main button,.share-invite-row button,.share-invite-form button{min-height:30px;padding:0 9px;border:1px solid rgba(176,123,44,.2);border-radius:8px;display:inline-flex;align-items:center;gap:5px;color:var(--teal);background:#fff;font-size:11px;font-weight:850}.share-session-list{display:grid;gap:8px}.share-session-row{display:grid;gap:8px;padding:8px;border:1px solid rgba(23,37,47,.08);border-radius:8px;background:#fff}.share-session-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.share-session-row strong,.share-session-row span,.share-invite-row strong,.share-invite-row span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-session-row strong,.share-invite-row strong{color:var(--ink);font-size:11px;font-weight:880}.share-session-row span,.share-invite-row span{margin-top:2px;color:var(--muted);font-size:10px;font-weight:740}.share-invite-list{display:grid;gap:6px;padding-top:7px;border-top:1px solid rgba(23,37,47,.08)}.share-invite-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.share-invite-row button{min-width:30px;justify-content:center;padding:0}.share-invite-form{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;padding:8px;border:1px dashed rgba(23,37,47,.14);border-radius:8px;background:#ffffff9e}.share-invite-form input,.share-invite-form select{width:100%;min-width:0;height:32px;margin:0;border:1px solid rgba(212,222,220,.98);border-radius:8px;background:#fff;color:var(--ink);font-size:11px;font-weight:740}.share-invite-form button{width:100%;justify-content:center}.share-invite-form button:disabled{opacity:.48;cursor:not-allowed}.review-warning-list{display:grid;gap:7px;margin-top:10px}.review-warning-list p{display:grid;grid-template-columns:16px 1fr;gap:6px;margin:0;padding:8px;border:1px solid rgba(216,97,90,.22);border-radius:8px;background:#d8615a14;color:#84433e;font-size:11px;font-weight:760;line-height:1.3}.review-warning-list svg{margin-top:1px}.readiness-summary{display:grid;gap:10px;margin-top:14px;padding:12px;border-radius:10px;border:1px solid var(--line);background:var(--panel-soft)}.readiness-summary.ready{border-color:#7a7a2e52;background:#7a7a2e14}.readiness-summary.caution{border-color:#c0832752;background:#c0832717}.readiness-summary.blocked{border-color:#c4514952;background:#c4514914}.readiness-headline{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start}.readiness-headline strong{display:block;color:var(--ink);font-size:13px;font-weight:800}.readiness-headline p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4;font-weight:720}.readiness-summary.ready .readiness-headline svg{color:var(--green)}.readiness-summary.caution .readiness-headline svg{color:var(--amber)}.readiness-summary.blocked .readiness-headline svg{color:var(--red)}.readiness-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.readiness-list li{display:grid;grid-template-columns:16px 1fr;gap:6px;padding:8px;border-radius:8px;font-size:11px;line-height:1.35;font-weight:720}.readiness-list strong{display:block;margin-bottom:2px;font-size:11.5px}.readiness-list.blockers li{border:1px solid rgba(196,81,73,.22);background:#c4514912;color:#84433e}.readiness-list.blockers svg{color:var(--red);margin-top:1px}.readiness-list.cautions li{border:1px solid rgba(192,131,39,.22);background:#c0832714;color:#71521e}.readiness-list.cautions svg{color:var(--amber);margin-top:1px}.readiness-banner{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;margin-top:12px;padding:10px;border-radius:8px;border:1px solid rgba(196,81,73,.24);background:#c4514914}.readiness-banner.caution{border-color:#c0832742;background:#c083271a}.readiness-banner svg{margin-top:1px;color:var(--red)}.readiness-banner.caution svg{color:var(--amber)}.readiness-banner strong{display:block;color:var(--ink);font-size:12px;font-weight:800}.readiness-banner p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4;font-weight:720}.measurement-grade-warning{display:grid;grid-template-columns:16px 1fr;gap:6px;margin:0;padding:8px;border-radius:8px;border:1px solid rgba(196,81,73,.22);background:#c4514912;color:#84433e;font-size:11px;font-weight:740;line-height:1.35}.measurement-grade-warning svg{margin-top:1px;color:var(--red)}.add-layer-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px}.add-layer-row select{min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font-size:12px;font-weight:700}.add-layer-upload{min-height:34px;padding:0 12px;display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(176,123,44,.2);border-radius:8px;background:#b07b2c1a;color:var(--teal);font-size:12px;font-weight:800;position:relative;overflow:hidden;white-space:nowrap;cursor:pointer}.add-layer-upload input{inline-size:1px;block-size:1px;position:absolute;opacity:0;pointer-events:none}.design-layers-empty{margin-top:12px;padding:12px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:11px;line-height:1.4;font-weight:700}.design-layer-row{display:grid;gap:9px;margin-top:10px;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.design-layer-head{display:grid;grid-template-columns:minmax(0,1fr) auto 32px 32px;gap:7px;align-items:center}.design-layer-head input{min-height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;font-size:12px;font-weight:760}.design-layer-head select{min-height:32px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:11px;font-weight:720}.icon-button{min-height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--muted);cursor:pointer}.icon-button:hover{color:var(--ink);border-color:#b07b2c4d}.design-layer-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.layer-fixture-count{color:var(--muted);font-size:11px;font-weight:760}.layer-scale-button{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 10px;border-radius:8px;border:1px solid rgba(192,131,39,.3);background:#c083271a;color:#71521e;font-size:11px;font-weight:800;cursor:pointer}.layer-scale-button.confirmed{border-color:#7a7a2e4d;background:#7a7a2e1a;color:#5c5a22}.placement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.placement-grid label{display:grid;gap:4px;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.placement-grid input{min-height:30px;padding:0 8px;border:1px solid var(--line);border-radius:7px;font-size:12px;font-weight:740}.plan-align-wrap{margin-top:12px;display:grid;gap:6px}.plan-align-svg{width:100%;aspect-ratio:4 / 3;display:block;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);touch-action:none}.plan-align-svg:focus-visible{outline:2px solid var(--primary-strong);outline-offset:2px}.plan-room{fill:var(--panel);stroke:var(--line);stroke-width:1.2}.plan-room-label{fill:var(--muted);font-weight:760;pointer-events:none}.plan-base-fixture{fill:var(--line);fill-opacity:.55;stroke:var(--muted);stroke-opacity:.4;stroke-width:1;pointer-events:none}.plan-layer-fixture{fill:var(--wood);fill-opacity:.2;stroke:var(--wood);stroke-width:1.3;cursor:grab}.plan-layer-fixture.selected{fill:var(--teal);fill-opacity:.24;stroke:var(--teal)}.plan-layer-bounds{fill:none;stroke:var(--primary-strong);stroke-width:1.5;stroke-dasharray:5 4;pointer-events:none}.plan-rotate-stalk{stroke:var(--primary-strong);stroke-width:1.5;pointer-events:none}.plan-rotate-handle{fill:var(--primary-strong);stroke:var(--panel);stroke-width:2;cursor:grab}.plan-align-svg:active .plan-layer-fixture.selected,.plan-align-svg:active .plan-rotate-handle{cursor:grabbing}.plan-align-hint,.plan-align-empty{color:var(--muted);font-size:11px;font-weight:720;line-height:1.4}.plan-align-empty{margin-top:12px;padding:12px;border:1px dashed var(--line);border-radius:8px}.design-layer-row{cursor:pointer}.design-layer-row.selected{border-color:var(--primary-strong);box-shadow:0 0 0 1px var(--primary-strong) inset}.comfort-card,.review-checklist,.measurement-tool-panel{display:grid;gap:9px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.comfort-card div,.review-checklist div{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start}.comfort-card svg,.review-checklist svg{color:var(--teal)}.comfort-card span{color:var(--ink);font-size:12px;font-weight:760;line-height:1.35}.review-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.review-status-grid div{min-height:68px;padding:10px;border-radius:8px;background:linear-gradient(145deg,#17252ff5,#4a341ef0);color:#fff}.review-status-grid strong,.review-status-grid span{display:block}.review-status-grid strong{font-size:24px;line-height:1}.review-status-grid span{margin-top:8px;color:#ffffffbd;font-size:10px;font-weight:800}.review-checklist div.ready svg{color:var(--green)}.review-checklist p{font-size:11px;line-height:1.35}.review-checklist strong{display:block;color:var(--ink);font-size:12px;margin-bottom:3px}.measurement-tool-panel>div:first-child p{color:var(--muted);font-size:11px;font-weight:720;line-height:1.35}.measurement-tool-panel .compact{width:100%}.measurement-list{display:grid;gap:7px}.measurement-list div{display:grid;grid-template-columns:minmax(0,1fr) 30px;gap:8px;align-items:center;padding:8px;border:1px solid rgba(31,49,63,.09);border-radius:8px;background:#fff}.measurement-list span,.measurement-list strong{display:block}.measurement-list span{min-width:0;color:var(--muted);font-size:11px;font-weight:800}.measurement-list strong{overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.measurement-list button{width:30px;height:30px;border:1px solid rgba(216,97,90,.2);border-radius:8px;display:grid;place-items:center;color:#b24d46;background:#d8615a14}.decision-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.decision-strip div{min-height:62px;padding:10px;border-radius:8px;background:linear-gradient(145deg,#17252ff5,#4a341ef0);color:#fff}.decision-strip strong,.decision-strip span{display:block}.decision-strip strong{font-size:23px;line-height:1}.decision-strip span{margin-top:7px;color:#ffffffbd;font-size:11px;font-weight:760}.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.export-actions button{color:var(--ink);background:#fff;border:1px solid var(--line)}@media(max-width:1180px){.workspace{grid-template-columns:minmax(280px,330px) minmax(460px,1fr)}.config-panel,.quest-panel,.decision-panel{grid-column:1 / -1;max-height:none}.material-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.topbar{position:static;align-items:flex-start;flex-direction:column}.pipeline{justify-content:flex-start}.workspace{min-height:auto;grid-template-columns:1fr;padding:12px}.intake-panel,.review-panel,.config-panel{max-height:none;height:auto}.stage{grid-template-rows:auto 72vh auto}.stage-header{align-items:flex-start;flex-direction:column}.primary-action.compact{width:100%}.summary-rail,.material-list,.export-actions,.review-status-grid,.review-link-box,.online-image-form,.product-search-form,.product-results,.model-page-card,.room-finish-row,.field-grid,.room-row,.opening-row,.fixture-row,.extraction-grid,.pdf-page-controls,.calibration-tools,.calibration-metrics,.add-layer-row{grid-template-columns:1fr}.placement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.save-status{left:12px;right:12px;justify-content:center}}
