:root{--bg-dark:#0d1420;--bg-card:#162032;--sidebar-bg:#0a1018;--primary:#3b82f6;--primary-hover:#2563eb;--secondary:#06b6d4;--accent:#f43f5e;--living:#22c55e;--sanitary:#06b6d4;--bedroom:#a78bfa;--text-main:#f0f6ff;--text-muted:#7a90b0;--border:#1e3050;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--glass:#0d1420bf;--glass-border:#ffffff14;--toolbar-h:52px;--palette-w:220px;--props-w:240px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg-dark);color:var(--text-main);height:100vh;overflow:hidden}#editor-app{grid-template-columns:var(--palette-w) 1fr var(--props-w);grid-template-rows:var(--toolbar-h) 1fr;grid-template-areas:"toolbar toolbar toolbar""palette canvas props";height:100vh;display:grid}#editor-toolbar{background:var(--sidebar-bg);border-bottom:1px solid var(--border);z-index:10;grid-area:toolbar;align-items:center;gap:.5rem;padding:0 1rem;display:flex}.toolbar-left{align-items:center;margin-right:auto;display:flex}.toolbar-brand{color:var(--text-muted);font-size:.85rem;font-family:var(--font-heading);align-items:center;gap:.5rem;text-decoration:none;transition:color .2s;display:flex}.toolbar-brand:hover{color:var(--text-main)}.toolbar-brand strong{color:var(--primary);font-weight:600}.toolbar-brand svg{color:var(--primary)}.toolbar-centre{align-items:center;gap:.35rem;display:flex}.toolbar-right{align-items:center;gap:.35rem;margin-left:auto;display:flex}.toolbar-sep{background:var(--border);width:1px;height:24px;margin:0 .4rem}.tool-btn{border:1px solid var(--border);background:var(--bg-card);color:var(--text-muted);font-family:var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:.35rem;padding:.35rem .65rem;font-size:.72rem;font-weight:500;transition:all .15s;display:flex}.tool-btn:hover{border-color:var(--primary);color:var(--text-main)}.tool-btn.active{border-color:var(--primary);color:var(--primary);background:#3b82f626}.tool-btn.accent{border-color:var(--primary);color:var(--primary);background:#3b82f633}.tool-btn.accent:hover{background:var(--primary);color:#fff}.tool-btn.danger{color:var(--accent);border-color:#f43f5e4d}.tool-btn.danger:hover{border-color:var(--accent);background:#f43f5e26}#palette{background:var(--sidebar-bg);border-right:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;grid-area:palette;gap:1.25rem;padding:1rem .75rem;display:flex;overflow-y:auto}#palette h2{font-family:var(--font-heading);color:var(--text-main);font-size:.85rem;font-weight:600}.palette-group h3{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.5rem;font-size:.6rem;font-weight:600}.palette-items{grid-template-columns:1fr 1fr;gap:.4rem;display:grid}.palette-item{border:1.5px solid var(--border);background:var(--bg-card);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem .25rem;transition:all .15s;display:flex}.palette-item:hover{border-color:var(--primary);background:#3b82f614;transform:translateY(-1px)}.palette-item.selected{border-color:var(--primary);background:#3b82f62e;box-shadow:0 0 12px #3b82f640}.palette-preview{width:40px;height:32px;position:relative}.palette-preview canvas{width:100%;height:100%}.palette-label{color:var(--text-muted);text-align:center;font-size:.62rem;line-height:1.2}#canvas-area{cursor:crosshair;background:radial-gradient(at 50% 30%,#0e1e35 0%,#070d17 100%);grid-area:canvas;position:relative;overflow:hidden}#editor-canvas{width:100%;height:100%;display:block}#canvas-coords{background:var(--glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--glass-border);color:var(--text-muted);pointer-events:none;border-radius:6px;padding:.3rem .6rem;font-family:monospace;font-size:.68rem;position:absolute;bottom:.75rem;left:.75rem}#properties-panel{background:var(--sidebar-bg);border-left:1px solid var(--border);scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex-direction:column;grid-area:props;gap:1rem;padding:1rem .75rem;display:flex;overflow-y:auto}#properties-panel h2{font-family:var(--font-heading);color:var(--text-main);font-size:.85rem;font-weight:600}.props-empty{text-align:center;color:var(--text-muted);opacity:.5;flex:1;justify-content:center;align-items:center;font-size:.75rem;line-height:1.6;display:flex}.props-form{flex-direction:column;gap:.6rem;display:flex}.prop-row{align-items:center;gap:.5rem;display:flex}.prop-row label{width:72px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:.68rem;font-weight:500}.prop-row input[type=number],.prop-row input[type=text]{border:1px solid var(--border);background:var(--bg-card);color:var(--text-main);font-family:var(--font-body);border-radius:6px;outline:none;flex:1;padding:.35rem .5rem;font-size:.75rem;transition:border-color .15s}.prop-row input:focus{border-color:var(--primary)}.prop-row input[type=color]{border:1px solid var(--border);background:var(--bg-card);cursor:pointer;border-radius:6px;width:32px;height:28px;padding:2px}.prop-row span{color:var(--text-main);text-transform:capitalize;font-size:.75rem;font-weight:500}
