:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background:#0f0f1a;color:#e2e8f0;overflow:hidden}.app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:0 12px;height:44px;background:#16162a;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:10px}.app-logo{font-size:1.3rem;color:#60a5fa}.design-name{background:transparent;border:1px solid transparent;color:#e2e8f0;font-size:.9rem;padding:4px 8px;border-radius:4px;width:200px}.design-name:focus{border-color:#60a5fa66;outline:none;background:#ffffff0a}.topbar-center{flex:1;text-align:center}.tool-hint{font-size:.78rem;color:#ffffff73}.topbar-right{display:flex;align-items:center;gap:8px}.snap-toggle{display:flex;align-items:center;gap:4px;font-size:.78rem;color:#ffffff8c;cursor:pointer}.btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#e2e8f0;padding:4px 10px;border-radius:4px;font-size:.75rem;cursor:pointer}.btn:hover{background:#ffffff1a}.btn-primary{background:#60a5fa33;border-color:#60a5fa4d;color:#93c5fd}.btn-primary:hover{background:#60a5fa4d}.main{display:flex;flex:1;overflow:hidden}.sidebar-left{width:180px;background:#13132a;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0}.toolbar{padding:8px}.toolbar-title,.panel-title{font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;color:#ffffff59;padding:8px 8px 4px;font-weight:600}.tool-btn{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;background:transparent;border:1px solid transparent;border-radius:4px;color:#ffffffb3;cursor:pointer;font-size:.78rem;text-align:left}.tool-btn:hover{background:#ffffff0d}.tool-btn.active{background:#60a5fa26;border-color:#60a5fa40;color:#93c5fd}.tool-icon{font-size:1rem;width:20px;text-align:center}.tool-label{white-space:nowrap}.furniture-toggle{background:transparent;border:none;border-top:1px solid rgba(255,255,255,.06);color:#ffffff80;font-size:.72rem;padding:8px 12px;text-align:left;cursor:pointer}.furniture-toggle:hover{color:#ffffffb3}.furniture-library{padding:4px 8px 8px;border-top:1px solid rgba(255,255,255,.04)}.furniture-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.furniture-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 4px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:4px;color:#fff9;cursor:pointer;font-size:.65rem}.furniture-item:hover{background:#60a5fa1a;border-color:#60a5fa33;color:#93c5fd}.furniture-preview{border-radius:2px;min-width:14px;min-height:14px}.canvas-container{flex:1;position:relative;overflow:hidden}.canvas-container canvas{width:100%;height:100%;display:block}.sidebar-right{width:200px;background:#13132a;border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0}.properties-panel,.stats-panel{padding:8px;border-bottom:1px solid rgba(255,255,255,.06)}.panel-empty{font-size:.75rem;color:#ffffff4d;padding:8px 0}.prop-group{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.prop-group label{font-size:.75rem;color:#ffffff80}.prop-value{font-size:.78rem;color:#fffc;font-family:ui-monospace,monospace}.prop-group input[type=number],.prop-group input[type=text]{width:70px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:3px;color:#e2e8f0;padding:2px 6px;font-size:.78rem;text-align:right}.prop-group input[type=color]{width:32px;height:24px;border:1px solid rgba(255,255,255,.1);border-radius:3px;background:transparent;cursor:pointer;padding:0}.btn-danger{width:100%;margin-top:8px;padding:5px;background:#ef444426;border:1px solid rgba(239,68,68,.25);color:#fca5a5;border-radius:4px;font-size:.75rem;cursor:pointer}.btn-danger:hover{background:#ef444440}.stat-row{display:flex;justify-content:space-between;padding:3px 0;font-size:.78rem;color:#ffffff80}.stat-row span:last-child{font-family:ui-monospace,monospace;color:#ffffffb3}.stats-panel{border-bottom:none}
