:root{--bg:#f4f3ef;--paper:#fff;--ink:#233c36;--muted:#7a827c;--line:#e2e5df;--accent:#d5e0cd;--wood:#c3a987;--warn:#916b36}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #a3b896;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:29px;line-height:1.25;font-weight:500;letter-spacing:-1px;margin-bottom:0}h2{font-size:23px;font-weight:500;line-height:1.3;letter-spacing:-.5px}h3{font-size:16px;font-weight:600}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:#fcfcf9;border-right:1px solid var(--line);padding:35px 22px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:600;line-height:1.4}.brand small{display:block;font-size:8px;letter-spacing:1.3px;color:var(--muted);margin-top:6px}.brand-symbol{font:italic 37px Georgia,serif;background:var(--ink);color:#fff;width:47px;height:47px;display:grid;place-items:center;border-radius:14px}.project-mini{margin:32px 0 29px;display:flex;gap:12px;align-items:center;font-size:12px;color:var(--muted)}.tiny-dot{width:6px;height:6px;background:#94a888;border-radius:50%}nav{display:grid;gap:8px}.nav{border:0;background:transparent;text-align:left;color:#727e76;padding:13px 10px;border-radius:8px;font-size:12px}.nav span{font-size:19px;margin-right:12px}.nav.active{background:#e9eee5;color:var(--ink);font-weight:600}.sidebar-bottom{margin-top:auto;font-size:12px;color:var(--muted)}.edition,.eyebrow{font-size:9px;letter-spacing:1.7px;font-weight:600}.sidebar-bottom p{margin:14px 0 25px}.text-button{border:0;background:none;color:var(--muted);padding:0;font-size:12px}main{margin-left:248px;padding:30px 36px 0;max-width:1900px}header{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:0 0 26px}.eyebrow{display:block;color:var(--muted);margin-bottom:10px}.header-actions{display:flex;align-items:center;gap:15px}#sync{font-size:11px;color:var(--muted);max-width:145px}.button,.primary{border:1px solid var(--line);padding:10px 15px;border-radius:7px;background:#fff;color:var(--ink);font-size:12px;font-weight:500;display:inline-block;text-decoration:none}.primary{background:var(--ink);color:#fff;border-color:var(--ink)}button:hover,.button:hover{filter:brightness(.96)}.avatar{border:0;border-radius:50%;width:36px;height:36px;background:#e3d8c6;color:#5e543f}.notice{background:#eeeae0;color:#75664e;border-radius:7px;padding:12px 15px;display:flex;gap:12px;font-size:11px;line-height:1.5;margin-bottom:26px}.notice p{margin:0}.notice>span{border:1px solid #ad9e81;width:16px;height:16px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;font-size:10px;margin-top:1px}.tab{display:none}.tab.active{display:block}.studio-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.variant-control label{font-size:8px;letter-spacing:1.4px;color:var(--muted);display:block;margin-bottom:3px}select{color:var(--ink);padding:8px;border:1px solid var(--line);border-radius:6px;background:#fff;max-width:100%}.variant-control select{border:0;background:transparent;padding-left:0;font-weight:500;font-size:15px}.segmented{display:flex;padding:4px;background:#e8eae3;border-radius:8px}.segmented button{background:none;border:0;padding:8px 15px;color:var(--muted);border-radius:5px;font-size:11px}.segmented button.active{background:#fff;color:var(--ink);box-shadow:0 1px 4px #233c3610}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px}.canvas-card{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;min-width:0}.canvas-head{display:flex;justify-content:space-between;align-items:center;gap:5px;padding:17px 22px;border-bottom:1px solid #f0f0eb;font-size:12px}.pill{font-size:7px;color:#7e8b75;background:#f0f3ec;padding:4px 7px;border-radius:4px;letter-spacing:1px}#viewport{height:510px;position:relative;background:#fdfdfb;overflow:hidden}#plan,#scene{width:100%;height:100%;touch-action:none}#plan svg{width:100%;height:100%}#plan .room{cursor:pointer}#plan .room:hover{fill:#e5ebdd!important}#plan .furn{cursor:pointer}#plan .furn:hover rect{stroke:#6b8b65;stroke-width:.035}#plan .selected{stroke:#476e50;stroke-width:.045}.view-tools{position:absolute;right:14px;top:14px;display:grid;gap:7px}.view-tools button{background:#ffffffed;border:1px solid var(--line);color:var(--ink);width:31px;height:31px;border-radius:5px}.viewport-caption{position:absolute;bottom:15px;left:18px;font-size:9px;color:#848d83;pointer-events:none;background:#ffffffd9;padding:4px 7px;border-radius:4px}.canvas-footer{padding:12px 18px;display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);font-size:8px;color:var(--muted)}.legend-line{display:inline-block;width:16px;border-top:3px solid #475750;vertical-align:middle;margin-right:6px}.inspector{background:#fff;border:1px solid var(--line);border-radius:10px;padding:21px;max-height:620px;overflow:auto}.inspector h2{font-size:20px;margin-bottom:7px}.inspector p{font-size:11px;color:var(--muted);line-height:1.5}.inspector-title{border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:17px}label{display:block;font-size:11px;font-weight:500;margin-bottom:12px}input,textarea{display:block;border:1px solid var(--line);border-radius:6px;padding:9px 10px;color:var(--ink);background:#fff;width:100%;margin-top:7px;outline:none}input:focus,textarea:focus{border-color:#829a78;box-shadow:0 0 0 2px #9aaf8420}textarea{resize:vertical}.material-picker{padding-bottom:15px}.material-picker label{margin-bottom:7px}.material-picker select{width:100%;font-size:11px}#swatches{display:flex;gap:7px;margin-top:12px}#swatches i{width:24px;height:24px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 1px #e3e5de}.comment-compose{padding-top:17px;border-top:1px solid var(--line)}.comment-compose .primary{width:100%}.comments-heading{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px}.comments-heading h3{margin:0;font-size:12px}.comments-heading span{font-size:10px;color:var(--muted)}.comment{border-top:1px solid #edf0e8;padding:12px 0;font-size:11px}.comment p{color:var(--ink);margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.comment small{color:var(--muted);font-size:9px}.comment button{font-size:9px;border:0;background:#edf1e8;color:#677b5f;border-radius:4px;padding:3px 7px;margin-top:7px}.comment.resolved{opacity:.6}.empty{font-size:11px;color:var(--muted);padding:9px 0}.concept-note{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;padding:30px 5px}.concept-note h2{font-size:20px;margin-bottom:10px}.concept-note p{font-size:12px;color:var(--muted);max-width:580px}.concept-check{display:grid;align-content:start;gap:6px;font-size:11px;color:#687962;padding-top:4px}.concept-check span:before{content:'↗';margin-right:10px}.concept-check strong{font-size:10px;color:var(--warn);font-weight:400;margin-top:10px}.section-intro{padding:14px 0 24px;max-width:750px}.section-intro h2{font-size:30px}.section-intro p{color:var(--muted);font-size:13px}.download{margin-right:8px}.requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.requirement{display:flex;align-items:flex-start;gap:13px;background:white;border:1px solid var(--line);padding:19px;border-radius:8px;margin:0}.requirement input{width:17px;height:17px;flex-shrink:0;accent-color:var(--ink);margin-top:4px}.requirement strong{display:block;font-size:13px}.requirement small{display:block;color:var(--muted);font-size:11px;line-height:1.6;margin-top:4px}.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;background:white;border:1px solid var(--line);padding:26px;border-radius:10px;margin-bottom:30px}.facts-grid select{display:block;width:100%;margin-top:7px}.facts-grid button{justify-self:start}.release-card{display:flex;justify-content:space-between;align-items:center;padding:25px;background:#e8ede3;border-radius:10px;margin-bottom:24px;gap:20px}.release-card h3{margin-bottom:5px}.release-card p{margin:0;font-size:12px;color:var(--muted)}.status-warn{padding:5px 9px;border-radius:5px;background:#f4ead5;color:var(--warn);font-size:10px;white-space:nowrap}.sheet{display:grid;grid-template-columns:45px 1fr 145px;gap:15px;background:#fff;border-bottom:1px solid var(--line);padding:17px 20px}.sheet>span:first-child{font-size:11px;color:var(--muted)}.sheet strong{font-size:12px}.sheet p{font-size:11px;color:var(--muted);margin:5px 0}.sheet-status{font-size:10px;color:var(--warn);text-align:right}.handover{padding:26px;border:1px solid #d8dcca;border-radius:8px;margin:25px 0}.handover p,.handover a{font-size:12px;color:var(--muted)}figure{background:white;border:1px solid var(--line);border-radius:8px;padding:20px;margin:0 0 25px}figure img{width:100%;height:auto}figcaption{font-size:11px;color:var(--muted);margin-top:12px}.history-item{background:#fff;border:1px solid var(--line);padding:20px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-radius:8px}.history-item p{font-size:12px;margin:0}.history-item small{font-size:10px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:10px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#233c36;color:white;padding:12px 22px;border-radius:8px;z-index:30;opacity:0;pointer-events:none;font-size:12px;max-width:90vw}#toast.show{opacity:1}dialog{border:1px solid var(--line);border-radius:14px;padding:30px;max-width:90vw}dialog::backdrop{background:#233c3660}#login{position:fixed;inset:0;background:#edf0e6;z-index:40;display:grid;place-items:center}#login[hidden]{display:none}.login-card{background:#fff;padding:45px;border-radius:18px;width:390px;max-width:90vw}.login-card .brand-symbol{margin-bottom:30px}.login-card p{font-size:12px;color:var(--muted)}.login-card h1{margin-bottom:15px}.login-card label{margin-top:25px}.login-card button{width:100%}#furniture-editor{background:#f4f5ef;padding:12px;border-radius:6px;margin-bottom:15px}#furniture-editor label{margin-bottom:7px}#furniture-editor input{margin-top:3px;padding:5px}#three-error{position:absolute;inset:100px 40px;text-align:center;font-size:13px}.hint{font-size:10px!important;margin:9px 0 0}[hidden]{display:none!important}
@media(min-width:1600px){#viewport{height:620px}.inspector{max-height:725px}}@media(max-width:1200px){.sidebar{width:205px;padding:30px 15px}main{margin-left:205px;padding:25px 22px 0}.workspace{grid-template-columns:minmax(0,1fr) 255px;gap:12px}.inspector{padding:16px}#viewport{height:450px}h1{font-size:25px}.header-actions{gap:8px}#sync{max-width:100px;font-size:9px}.canvas-footer{font-size:7px}}
@media(max-width:950px){.sidebar{width:75px;padding:23px 14px}.brand>span:last-child,.project-mini,.sidebar-bottom{display:none}.nav{font-size:0;padding:10px}.nav span{font-size:22px;margin:0}nav{margin-top:30px}main{margin-left:75px}.workspace{grid-template-columns:minmax(0,1fr) 240px}#viewport{height:400px}.concept-note{gap:20px}.variant-control select{font-size:12px}.segmented button{padding:7px 10px}}
@media(max-width:700px){.sidebar{position:static;width:auto;display:block;padding:15px 18px;background:#fcfcf9;border-bottom:1px solid var(--line)}.brand>span:last-child{display:block}.brand-symbol{width:38px;height:38px;font-size:30px}.brand{font-size:13px}.brand small{font-size:7px}.sidebar nav{display:flex;overflow:auto;gap:7px;margin:15px -6px -5px;padding-bottom:5px}.nav{font-size:9px;white-space:nowrap;padding:7px 10px}.nav span{display:none}main{margin:0;padding:22px 16px 0}header{align-items:flex-start;padding-bottom:20px}h1{font-size:22px}.eyebrow{font-size:7px;letter-spacing:1.3px}#sync{max-width:75px;font-size:8px}.avatar{display:none}.header-actions{flex-direction:column-reverse;align-items:flex-end;gap:5px}.button,.primary{font-size:11px}.notice{font-size:9px;margin-bottom:19px}.studio-top{display:block}.segmented{width:max-content;margin-top:13px}.workspace{display:block}.canvas-head{padding:13px 15px;font-size:11px}#viewport{height:360px}.canvas-footer{font-size:7px;padding:10px}.viewport-caption{font-size:8px;left:10px;bottom:9px}.inspector{margin-top:15px;max-height:none;padding:22px}.inspector-title{margin-bottom:12px}.material-picker{max-width:320px}.concept-note{display:block;padding:24px 2px}.concept-check{margin-top:18px}.requirements,.facts-grid{grid-template-columns:1fr}.section-intro h2{font-size:25px}.release-card{display:block;padding:20px}.release-card .status-warn{display:inline-block;margin-top:15px}.sheet{grid-template-columns:28px 1fr;gap:10px;padding:16px 12px}.sheet-status{grid-column:2;text-align:left}.section-intro .button{margin-top:10px}footer{font-size:8px}.history-item{padding:14px}figure{padding:10px}}
