:root{--c-accent: #E2001A;--c-accent-hover: #f50f29;--c-accent-glow: rgba(226, 0, 26, .2);--c-bg: #0c0e12;--c-rail-top: #16191f;--c-rail-bottom: #121419;--c-header: #181b21;--c-panel: #1c2027;--c-panel-2: #191d23;--c-panel-hover: #23282f;--c-border: rgba(255,255,255,.06);--c-border-strong: rgba(255,255,255,.09);--c-border-swatch: rgba(255,255,255,.14);--c-text: #eef0f3;--c-text-bright: #ffffff;--c-text-2: #c7ccd3;--c-text-muted: #8a909a;--c-text-faint: #7b818b;--c-text-dim: #6b717a;--vp-bg: radial-gradient(120% 90% at 60% 18%, #21252d 0%, #13161b 48%, #0a0c0f 100%);--vp-grid: rgba(255,255,255,.045);--slider-track: rgba(255,255,255,.13);--slider-fill: var(--c-accent);--slider-thumb: #ffffff;--slider-thumb-shadow: 0 2px 9px rgba(0,0,0,.6);--font-ui: "Manrope", system-ui, -apple-system, sans-serif;--font-numeric: "Space Grotesk", "Manrope", sans-serif;--r-sm: 9px;--r-md: 10px;--r-lg: 11px;--r-xl: 12px;--r-pill: 99px;--rail-w: 368px;--rail-pad: 26px;--section-gap: 30px;--shadow-cta: 0 8px 22px var(--c-accent-glow);--shadow-float: 0 10px 30px rgba(0,0,0,.4)}.label-section{font:700 11px/1 var(--font-ui);letter-spacing:.18em;text-transform:uppercase;color:var(--c-text-faint)}:root{--mat-floor-default: #E6E7E9;--mat-wall-default: #F2F3F4;--mat-floor-hellgrau: #E6E7E9;--mat-floor-eiche: #9A6B43;--mat-floor-anthrazit: #3A3E46;--mat-floor-graphit: #1C1F24;--mat-floor-signalrot: #E2001A;--mat-wall-weiss: #F2F3F4;--mat-wall-lichtgrau: #D7DBE0;--mat-wall-anthrazit: #2B2E34;--mat-wall-signalrot: #E2001A;--mat-wall-stahlblau: #2E5A86}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;overflow:hidden}body{background:var(--c-bg);color:var(--c-text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}.app{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;overflow:hidden}.canvas-wrap{position:relative;flex:1;min-width:0;height:100%;background:var(--vp-bg)}.rail{width:var(--rail-w);min-width:var(--rail-w);height:100%;min-height:0;overflow-y:auto;background:linear-gradient(180deg,var(--c-rail-top),var(--c-rail-bottom));border-right:1px solid var(--c-border);display:flex;flex-direction:column}.rail::-webkit-scrollbar{width:9px}.rail::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:var(--r-pill);border:2px solid transparent;background-clip:content-box}.rail-header{position:sticky;top:0;z-index:5;padding:26px 26px 22px;border-bottom:1px solid var(--c-border);background:linear-gradient(180deg,#181b21 70%,#181b2100);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.rail-logo{height:34px;width:auto;display:block;margin-bottom:16px}.rail-subtitle{display:flex;align-items:center;gap:9px;font:600 12px var(--font-ui);letter-spacing:.16em;text-transform:uppercase;color:#9aa0a9}.rail-subtitle .dot{width:7px;height:7px;border-radius:50%;background:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.rail-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:var(--section-gap);flex:1}.rail-section{display:flex;flex-direction:column;gap:13px}.section-head{display:flex;justify-content:space-between;align-items:baseline}.area-badge{font:600 13px var(--font-numeric);color:var(--c-text-dim)}.seg{display:flex;gap:7px;padding:4px;background:#00000038;border:1px solid var(--c-border);border-radius:var(--r-md)}.seg__btn{flex:1;padding:9px 8px;border:none;border-radius:7px;background:transparent;color:var(--c-text-2);font:600 13px var(--font-ui);cursor:pointer;transition:all .14s ease}.seg__btn:hover{color:var(--c-text-bright)}.seg__btn--active{background:var(--c-accent);color:#fff;box-shadow:var(--shadow-cta)}.slider-field{display:flex;flex-direction:column}.slider-row-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:11px}.slider-row-label .name{font:500 13.5px var(--font-ui);color:var(--c-text-2)}.slider-row-label .val{font:600 14px var(--font-numeric);color:var(--c-text-bright)}.slider-row-label .val .unit{font:400 12px var(--font-numeric);color:var(--c-text-dim)}.slider{position:relative;height:20px;display:flex;align-items:center;cursor:pointer;touch-action:none}.slider-track{position:absolute;left:0;right:0;height:4px;border-radius:var(--r-pill);background:var(--slider-track)}.slider-fill{position:absolute;left:0;height:4px;border-radius:var(--r-pill);background:var(--slider-fill)}.slider-thumb{position:absolute;width:17px;height:17px;border-radius:50%;background:var(--slider-thumb);box-shadow:var(--slider-thumb-shadow);transform:translate(-50%);pointer-events:none}.slider-input{position:absolute;left:0;top:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.panel__note{margin:2px 0 0;font:500 12.5px var(--font-ui);color:var(--c-text-dim)}.surface{display:flex;flex-direction:column;gap:9px}.surface__label{font:500 13px var(--font-ui);color:var(--c-text-2)}.swatch-row{display:flex;gap:9px}.swatch{flex:1;height:34px;border-radius:var(--r-sm);cursor:pointer;border:1px solid var(--c-border-swatch);outline:none;padding:0;transition:all .14s ease}.swatch:hover{transform:translateY(-1px)}.swatch.active{border:2px solid var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-glow)}.color-field{display:flex;align-items:center;gap:11px;cursor:pointer}.color-field__swatch{position:relative;width:34px;height:34px;border-radius:var(--r-sm);border:1px solid var(--c-border-swatch);overflow:hidden;flex:0 0 auto}.color-field__input{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;width:calc(100% + 8px);height:calc(100% + 8px);padding:0;border:none;background:none;cursor:pointer}.color-field__text{display:flex;flex-direction:column;gap:2px}.color-field__label{font:500 13px var(--font-ui);color:var(--c-text-2)}.color-field__value{font:500 12px var(--font-numeric);color:var(--c-text-dim)}.palette{display:flex;flex-direction:column;gap:12px}.furn-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.furn-btn{display:flex;align-items:center;gap:10px;padding:12px 13px;background:var(--c-panel);border:1px solid var(--c-border);border-radius:var(--r-lg);color:#dfe3e8;font:600 13px var(--font-ui);cursor:pointer;text-align:left;transition:all .14s ease}.furn-btn:hover{background:var(--c-panel-hover);border-color:var(--c-border-swatch);transform:translateY(-1px)}.furn-btn__dot{width:11px;height:11px;border-radius:3px;flex:0 0 auto;box-shadow:inset 0 0 0 1px #00000040}.palette__count{margin:0;font:500 12px var(--font-ui);color:var(--c-text-dim)}.palette__hint{margin:0;padding:10px 12px;font:500 12px/1.45 var(--font-ui);color:var(--c-text-muted);background:#e2001a0f;border:1px dashed rgba(226,0,26,.3);border-radius:var(--r-md)}.placed{display:flex;flex-direction:column;gap:8px}.placed-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.placed-row{display:flex;align-items:center;background:var(--c-panel-2);border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;transition:border-color .14s ease}.placed-row--active{border-color:var(--c-accent)}.placed-row__select{flex:1;display:flex;align-items:center;gap:9px;padding:10px 12px;background:none;border:none;color:var(--c-text);font:600 13px var(--font-ui);text-align:left;cursor:pointer}.placed-row__dot{width:12px;height:12px;border-radius:3px;flex:0 0 auto;box-shadow:inset 0 0 0 1px #00000040}.placed-row__remove{padding:10px 13px;background:none;border:none;border-left:1px solid var(--c-border);color:var(--c-text-dim);font-size:12px;cursor:pointer;transition:all .14s ease}.placed-row__remove:hover{color:#fff;background:#e2001a29}.placed-clear{align-self:flex-start;padding:7px 12px;background:none;border:1px solid var(--c-border-strong);border-radius:var(--r-md);color:var(--c-text-muted);font:600 12px var(--font-ui);cursor:pointer;transition:all .14s ease}.placed-clear:hover{color:#fff;border-color:#e2001a80}.selection{display:flex;flex-direction:column;gap:11px}.selection__status{margin:0;font:600 13px var(--font-ui);color:var(--c-text-muted)}.selection--active .selection__status{color:var(--c-accent)}.selection__meta{display:flex;gap:14px;font:500 12px var(--font-numeric);color:var(--c-text-dim)}.selection__actions{display:flex;gap:8px}.btn-soft{flex:1;padding:10px 12px;background:var(--c-panel);border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text);font:600 13px var(--font-ui);cursor:pointer;transition:all .14s ease}.btn-soft:hover{background:var(--c-panel-hover);border-color:var(--c-border-swatch)}.btn-soft--danger:hover{color:#fff;background:#e2001a29;border-color:#e2001a80}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action-status{margin:0;padding:9px 11px;font:500 12px var(--font-ui);color:#d4f8df;background:#3cc86e24;border:1px solid rgba(60,200,110,.36);border-radius:var(--r-md)}.action-error{margin:0;padding:9px 11px;font:500 12px var(--font-ui);color:#ffd7d7;background:#e2001a24;border:1px solid rgba(226,0,26,.4);border-radius:var(--r-md)}.vp-overlay{position:absolute;z-index:3;pointer-events:none}.vp-overlay--tl{top:22px;left:24px}.vp-overlay--tr{top:22px;right:24px}.vp-overlay--tr,.vp-overlay .btn-ghost{pointer-events:auto}.vp-title{font:600 19px var(--font-numeric);color:var(--c-text-bright);letter-spacing:.01em}.vp-sub{margin-top:3px;font:500 12.5px var(--font-ui);color:var(--c-text-muted)}.btn-ghost{padding:9px 14px;border-radius:var(--r-md);background:#1c2027b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--c-border-strong);color:#cfd4db;font:600 12.5px var(--font-ui);cursor:pointer}.btn-ghost:hover{background:#282d35d9}.dim-chip{position:absolute;z-index:3;bottom:24px;left:50%;transform:translate(-50%);display:flex;padding:4px;border-radius:13px;background:#14171cb8;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--c-border-strong);box-shadow:var(--shadow-float)}.dim-chip .cell{padding:8px 16px;text-align:center}.dim-chip .cell .k{font:600 10px var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-faint)}.dim-chip .cell .v{font:600 15px var(--font-numeric);color:#fff}.dim-chip .sep{width:1px;height:26px;align-self:center;background:#ffffff1a}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){.app{flex-direction:column}.rail{width:100%;min-width:0;flex:0 0 auto;max-height:52%;border-right:none;border-bottom:1px solid var(--c-border)}.canvas-wrap{width:100%;height:auto;min-height:0}.vp-overlay--tl{display:none}}
