
:root{font-family:Inter,Arial,sans-serif;color:#193b36;background:#f5f5ef;--accent:#235f50;--line:#dbe0d6}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,label{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button:focus-visible,a:focus-visible,canvas:focus-visible,label:focus-within{outline:3px solid #ce8625;outline-offset:3px}header{display:flex;align-items:center;gap:15px;padding:23px 4vw;border-bottom:1px solid var(--line);background:#fafbf6}.wordmark{font-size:31px;font-weight:800;letter-spacing:-1.7px;color:inherit;text-decoration:none}.pill{font-size:10px;font-weight:700;letter-spacing:1px;border:1px solid #c8d1c2;border-radius:30px;padding:6px 9px}.tenant-picker{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:12px;color:#64716a}select{padding:9px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#193b36;max-width:290px}main{max-width:1500px;margin:auto;padding:38px 4vw 0}.intro{display:flex;justify-content:space-between;gap:28px;align-items:center;margin-bottom:28px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#738271}h1{font-size:clamp(34px,4vw,54px);line-height:1.04;letter-spacing:-2px;margin:17px 0}p{line-height:1.6;font-size:13px}h2{font-size:17px;letter-spacing:-.3px}h3{font-size:21px;font-weight:500;line-height:1.3}.intro>div>p:last-child{color:#617468}.notice{max-width:320px;border-left:3px solid #c69a54;padding:8px 20px;color:#706347}.notice strong{font-size:13px}.notice p{font-size:12px;margin:6px 0}.notice span{font-size:11px}nav{display:flex;gap:9px;margin:20px 0 22px}nav button{padding:11px 22px;border-radius:30px;border:1px solid var(--line);background:transparent;color:#496453;font-size:13px}nav button[aria-pressed=true]{background:#1e483c;color:white;border-color:#1e483c}.workspace{display:grid;grid-template-columns:210px minmax(300px,1fr) 220px;gap:20px;align-items:start}.materials,.inspector{padding:15px 0}.section-title{display:flex;align-items:center;gap:9px}.section-title h2{font-size:13px}.step{font-size:10px;display:inline-flex;border:1px solid #bbc7b8;border-radius:100%;width:25px;height:25px;align-items:center;justify-content:center;margin-right:4px}.muted{color:#7a867b;font-size:11px}.material{width:100%;display:flex;align-items:center;gap:10px;padding:10px;margin-bottom:7px;border:1px solid transparent;background:transparent;border-radius:10px;text-align:left;color:#315145}.material[aria-pressed=true]{border-color:#668d72;background:#edf1e5}.swatch{height:43px;width:43px;flex-shrink:0;border-radius:6px;background:repeating-linear-gradient(24deg,#8e9c94 0 4px,#c9d0c3 4px 7px,#657d70 7px 9px)}.material[data-kind=hardwood] .swatch,.material[data-kind=laminate] .swatch,.material[data-kind=bamboo] .swatch{background:repeating-linear-gradient(90deg,#b29061 0 9px,#c9a879 9px 18px,#896b47 18px 19px)}.material[data-kind=paint] .swatch{background:#d4bba2}.material[data-kind=wallpaper] .swatch{background:repeating-radial-gradient(ellipse at top,#93a087 0 5px,#cbd3bc 5px 10px)}.material[data-kind=interior] .swatch{background:linear-gradient(120deg,#cebfa7,#9cadaa)}.material strong{font-size:12px;font-weight:500;display:block}.material small{font-size:10px;color:#758473}.stage{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.stage-top{padding:14px 16px;display:flex;justify-content:space-between;align-items:center;font-size:12px}.stage-top>span{font-size:9px;letter-spacing:1px;color:#899185}.canvas-wrap{background:#e9ece2;min-height:330px;display:flex;align-items:center;justify-content:center;position:relative}#empty{text-align:center;padding:30px}#empty p{color:#758173}.empty-icon{font-size:35px;color:#859a80;margin-bottom:10px}#empty h2{font-size:23px}#surface{width:100%;height:auto;display:block;cursor:crosshair;touch-action:none}#surface[hidden],video[hidden]{display:none}video{width:100%;max-height:500px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 15px;border-radius:7px;font-size:12px;border:1px solid var(--line);text-decoration:none;text-align:center}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.secondary{background:#fff;color:#325541}.upload-label{cursor:pointer}.text-button{border:0;background:transparent;color:#5b715d;font-size:11px;padding:9px;text-decoration:underline;text-underline-offset:3px}#empty .text-button{display:block;margin:auto}.photo-tools{padding:12px;display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #e9ece5}.photo-tools .secondary{font-size:10px;min-height:30px;padding:7px 9px}.selection-bar{padding:10px 14px;background:#fbfcf8}.selection-bar p{font-size:11px;margin:3px 0}.selection-bar div{display:flex;gap:4px}.inspector{padding-left:4px}.inspector .primary,.inspector .secondary{width:100%;margin:8px 0 0}.inspector p{font-size:12px;color:#70806f}.inspector p.privacy{font-size:10px;margin-top:20px}#message{font-size:12px;padding:0 14px 12px;color:#805522}#message:empty{padding:0}.history{margin-top:34px;border-top:1px solid var(--line);padding-top:20px}.history-title{display:flex;align-items:center;justify-content:space-between}.history-title h2{font-size:22px;margin-top:0}#history{display:flex;gap:12px;overflow-x:auto;padding-bottom:15px}.history-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;min-width:180px}.history-card p{margin:5px 0;font-size:11px}.history-card button{padding:6px 9px;margin-right:5px;font-size:11px;border:1px solid var(--line);border-radius:5px;background:white;color:#355441}footer{padding:28px 0;display:flex;justify-content:space-between;font-size:11px;color:#89917f}footer a{color:#627e61}[hidden]{display:none!important}@media(max-width:1050px){.workspace{grid-template-columns:170px minmax(300px,1fr)}.inspector{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inspector .primary,.inspector .secondary{width:auto}.inspector h3{font-size:15px}.inspector p{max-width:280px}.inspector .muted{display:none}}@media(max-width:650px){header{flex-wrap:wrap;padding:16px 5vw}.tenant-picker{width:100%;margin:0;justify-content:space-between}main{padding:25px 5vw 0}.intro{display:block}.notice{max-width:none;margin-top:25px}.workspace{display:flex;flex-direction:column}.materials{width:100%}#materials{display:flex;gap:8px;overflow-x:auto}.material{min-width:170px}.stage{width:100%}.canvas-wrap{min-height:230px}.intro h1 br{display:none}.history-title{align-items:start}.history-title .text-button{max-width:150px}nav button{padding:10px 18px}footer{gap:15px}}
/* Independent controls on desktop; normal document flow on small screens. */
@media(min-width:1051px){.inspector{position:sticky;top:16px;max-height:calc(100vh - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px}.stage{position:sticky;top:16px}.canvas-wrap{max-height:60vh!important;overflow:auto}.workspace{grid-template-columns:180px minmax(300px,1fr) 285px}}
.inspector select{max-width:100%;width:100%}.inspector p{margin:10px 0}.selection-bar div{flex-wrap:wrap}.handle-legend{padding:8px;background:#edf7ff;color:#144d77!important;font-weight:600}.info-tip{display:inline-block;margin-left:6px;vertical-align:middle;font-size:12px;color:#315b51}.info-tip summary{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;border:1px solid #78988f;border-radius:50%;cursor:help;font-weight:bold;list-style:none}.info-tip span{display:none;padding:9px;background:#eef5f0;border-radius:6px;line-height:1.5;text-align:left}.info-tip:hover span,.info-tip:focus-within span,.info-tip[open] span{display:block}.info-tip[open]{display:block}.inspector #render-reason{color:#245744;font-weight:600}#joint-list select{margin-top:5px}

#material-filters{display:grid;gap:8px;margin-bottom:16px}#material-filters label{display:grid;gap:4px}#materials h3{font-size:13px;margin:20px 0 8px}#tag-list input{max-width:220px}
/* Group related editing tools while retaining one active-outline toolbar. */
.edit-card{display:block;border:1px solid #d8e2da;border-radius:12px;background:#fff;padding:14px;margin:0 0 12px;min-width:0}.edit-card h3{font-size:14px;font-weight:650;margin:0 0 10px;color:#244e42}.selection-bar{padding:12px;background:#f3f6f1}.selection-bar .edit-card{display:block}.selection-bar .edit-actions,.selection-bar .brush-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.edit-actions .text-button{background:#f6f8f4;border:1px solid #d9e1d6;border-radius:6px;text-decoration:none;padding:8px 10px;min-height:36px}.shared-editor{border-color:#9dbbaa;background:#f7fbf7}.shared-editor #protect-save{background:#235f50;color:white}.detection-consent{display:block;font-size:11px;margin:10px 0;line-height:1.5}.brush-controls label{font-size:12px}.edit-card .info-tip{font-weight:400}.edit-card .info-tip span{font-size:12px}.inspector .edit-card{width:100%;padding:12px}.inspector .edit-card h3{font-size:14px}.inspector .edit-card p{max-width:none}#selection{margin-top:10px;line-height:1.6}.edit-card #handle-legend:empty{display:none}@media(max-width:1050px){.inspector .edit-card{flex:1 1 250px}.inspector .edit-card .secondary,.inspector .edit-card .primary{width:100%}}
.review-guide{padding:12px;border-left:3px solid #53756a;background:#eef5ee;font-size:12px!important;line-height:1.7!important}#auto-map-review>div{display:flex;gap:8px;padding:5px 0;align-items:center}#auto-map-review>div .secondary:first-child{flex:1;text-align:left;justify-content:flex-start}

/* One non-modal guide; no automatic scrolling or focus changes. */
#guide-toggle{margin-left:auto;white-space:nowrap}.studio-guide{position:fixed;right:20px;bottom:20px;width:min(330px,calc(100vw - 32px));z-index:50;padding:16px;border:1px solid #8ab4a6;border-radius:14px;background:#f7fffb;box-shadow:0 8px 30px #17392b29;color:#193f34;font-size:14px}.studio-guide[hidden]{display:none}.studio-guide strong{font-size:16px}.studio-guide p{line-height:1.5;margin:8px 0 12px}.studio-guide>div:last-child{display:flex;flex-wrap:wrap;gap:8px}.studio-guide button{font-size:12px;min-height:36px}.guide-highlight{outline:3px solid #16846e!important;outline-offset:4px;scroll-margin:100px}.studio-guide .text-button{padding:4px;text-decoration:underline}@media(max-width:700px){.studio-guide{right:12px;bottom:12px;max-height:38vh;overflow:auto;font-size:13px}.studio-guide strong{font-size:14px}}
