@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@300;400&display=swap";.rb{--rb-gap: 16px;--rb-panel-w: 320px;display:flex;height:100vh;background:var(--bg);color:var(--text);font-family:var(--font);overflow:hidden}.rb-stage{position:relative;flex:1;min-width:0;background:radial-gradient(120% 90% at 70% 10%,rgba(200,169,126,.06),transparent 60%),#0e0f12}.rb-stage-hint{position:absolute;left:50%;bottom:18px;transform:translate(-50%);font-size:11px;letter-spacing:.04em;color:var(--text-muted);background:#0c0c0e99;border:1px solid var(--card-border);padding:6px 12px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;-webkit-user-select:none;user-select:none}.rb-panel{width:var(--rb-panel-w);min-width:var(--rb-panel-w);background:var(--sidebar);border-right:1px solid var(--card-border);display:flex;flex-direction:column;height:100vh}.rb-panel-head{padding:20px 20px 16px;border-bottom:1px solid var(--card-border)}.rb-brand{font-size:11px;letter-spacing:.22em;color:var(--text-dim);text-transform:uppercase}.rb-title{margin-top:4px;font-size:17px;font-weight:600;letter-spacing:-.01em;color:var(--text)}.rb-title .rb-title-accent{color:var(--accent)}.rb-fixed-top{padding:14px 18px 4px;display:flex;flex-direction:column;gap:12px}.rb-back{display:inline-block;font-size:11px;color:var(--text-dim);text-decoration:none;margin-bottom:8px;transition:color .15s ease}.rb-back:hover{color:var(--accent)}.rb-scroll{flex:1;min-height:0;overflow:hidden;padding:14px 18px 12px;display:flex;flex-direction:column;gap:10px}.rb-acc{flex:0 0 auto;display:flex;flex-direction:column;min-height:0;border:1px solid var(--card-border);border-radius:var(--radius);background:var(--card-bg);overflow:hidden}.rb-acc--open{flex:0 1 auto;border-color:var(--input-focus)}.rb-acc-head{flex:0 0 auto;width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;cursor:pointer;font-family:var(--font)}.rb-acc-head:hover .rb-acc-label{color:var(--text)}.rb-acc-label{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);transition:color .15s ease}.rb-acc--open .rb-acc-label{color:var(--accent)}.rb-acc-chevron{color:var(--text-muted);transition:transform .18s ease,color .15s ease}.rb-acc--open .rb-acc-chevron{transform:rotate(90deg);color:var(--accent)}.rb-acc-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px 14px 16px;display:flex;flex-direction:column;gap:var(--rb-gap)}.rb-acc-body::-webkit-scrollbar{width:5px}.rb-acc-body::-webkit-scrollbar-track{background:transparent}.rb-acc-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}.rb-scroll::-webkit-scrollbar{width:5px}.rb-scroll::-webkit-scrollbar-track{background:transparent}.rb-scroll::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}.rb-section-label{display:flex;align-items:baseline;justify-content:space-between;font-size:10.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);margin-bottom:10px}.rb-section-label .rb-hint{font-weight:400;letter-spacing:.02em;color:var(--text-muted);text-transform:none}.rb-segment{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:3px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius)}.rb-segment button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:7px;padding:8px 0;font-family:var(--font);font-size:12.5px;font-weight:500;letter-spacing:.01em;color:var(--text-dim);background:transparent;cursor:pointer;transition:color .15s ease,background .15s ease}.rb-segment button:hover{color:var(--text)}.rb-segment button[aria-pressed=true]{background:var(--accent);color:#17150f;font-weight:600;box-shadow:0 1px #00000040}.rb-segment--sm{grid-template-columns:1fr 1fr;margin-top:10px}.rb-segment--sm button{padding:6px 0;font-size:12px}.rb-dims{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rb-field{display:flex;flex-direction:column;gap:6px}.rb-field-label{font-size:11px;color:var(--text-dim)}.rb-input-wrap{display:flex;align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:0 10px;transition:border-color .15s ease,box-shadow .15s ease}.rb-input-wrap:focus-within{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--accent-dim)}.rb-input-wrap input{flex:1;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text);font-family:var(--font);font-size:14px;font-variant-numeric:tabular-nums;padding:9px 0;outline:none}.rb-input-wrap .rb-unit{font-size:11px;color:var(--text-muted);padding-left:6px}.rb-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rb-fixture{display:flex;align-items:center;gap:10px;padding:11px 12px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);color:var(--text);font-family:var(--font);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:border-color .15s ease,transform .1s ease,background .15s ease}.rb-fixture:hover{border-color:var(--input-focus);background:#202025}.rb-fixture:active{transform:translateY(1px)}.rb-fixture svg{width:22px;height:22px;flex:0 0 22px;color:var(--accent)}.rb-fixture-label{line-height:1.1}.rb-fixture-dim{display:block;font-size:10.5px;color:var(--text-muted);font-weight:400;margin-top:2px}.rb-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.rb-tile{position:relative;display:flex;flex-direction:column;gap:0;padding:0;border:1px solid var(--card-border);border-radius:var(--radius);overflow:hidden;background:var(--card-bg);cursor:pointer;transition:border-color .15s ease,transform .1s ease}.rb-tile:hover{transform:translateY(-1px)}.rb-tile-swatch{height:56px;width:100%;background-size:cover;background-position:center}.rb-tile-name{padding:7px 10px;font-size:12px;color:var(--text)}.rb-tile[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.rb-tile[aria-pressed=true] .rb-tile-name{color:var(--accent);font-weight:600}.rb-tile-check{position:absolute;top:6px;right:6px;width:18px;height:18px;display:none;align-items:center;justify-content:center;background:var(--accent);color:#17150f;border-radius:50%}.rb-tile[aria-pressed=true] .rb-tile-check{display:flex}.rb-tile-name{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.rb-tile-size{font-size:9.5px;color:var(--text-muted);font-variant-numeric:tabular-nums}.rb-add-tile{width:100%;margin-top:10px;padding:9px 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font);font-size:12px;color:var(--text-dim);background:transparent;border:1px dashed var(--card-border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s ease,color .15s ease}.rb-add-tile:hover{border-color:var(--input-focus);color:var(--text)}.rb-add-tile-form{margin-top:10px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius)}.rb-file{display:flex;align-items:center;justify-content:center;height:64px;border:1px dashed var(--input-border);border-radius:8px;background:var(--input-bg);cursor:pointer;overflow:hidden}.rb-file:hover{border-color:var(--input-focus)}.rb-file-ph{font-size:12px;color:var(--text-dim)}.rb-file-thumb{width:100%;height:100%;object-fit:cover}.rb-tin{width:100%;padding:8px 10px;font-family:var(--font);font-size:13px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--text);outline:none}.rb-tin:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--accent-dim)}.rb-add-tile-dims{display:flex;align-items:center;gap:8px}.rb-add-tile-dims .rb-input-wrap{flex:1}.rb-add-tile-dims .rb-x{color:var(--text-muted)}.rb-add-tile-actions{display:flex;gap:8px;align-items:center}.rb-add-tile-actions .rb-btn-primary{width:auto;flex:1;padding:9px 0}.rb-add-tile-actions .rb-mini-btn{flex:0 0 auto;padding:9px 14px}.rb-waste{color:var(--text-muted);font-size:10.5px}.rb-takeoff-total{display:flex;align-items:baseline;justify-content:space-between;padding:14px;background:linear-gradient(180deg,var(--accent-dim),transparent);border:1px solid var(--card-border);border-radius:var(--radius);margin-bottom:10px}.rb-takeoff-total .rb-to-label{font-size:11px;letter-spacing:.04em;color:var(--text-dim);text-transform:uppercase}.rb-takeoff-total .rb-to-value{font-size:22px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.rb-takeoff-total .rb-to-value span{font-size:13px;color:var(--text-dim);font-weight:500;margin-left:3px}.rb-bytile{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.rb-bytile-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-dim)}.rb-bytile-row .rb-dot{width:8px;height:8px;border-radius:2px;margin-right:8px;flex:0 0 8px}.rb-bytile-row .rb-bytile-name{display:flex;align-items:center;flex:1}.rb-bytile-row .rb-bytile-m2{font-variant-numeric:tabular-nums;color:var(--text)}.rb-zones{display:flex;flex-direction:column;gap:6px}.rb-zone{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;font-size:12px}.rb-zone-meta{color:var(--text-dim);font-variant-numeric:tabular-nums}.rb-zone-meta strong{color:var(--text);font-weight:600}.rb-zone-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--text-muted);cursor:pointer;width:22px;height:22px;border-radius:6px;font-size:15px;line-height:1;transition:color .15s ease,background .15s ease}.rb-zone-remove:hover{color:#e7b4a6;background:#e764501f}.rb-empty{font-size:12px;color:var(--text-muted);line-height:1.5}.rb-selection{padding:12px 14px;background:var(--card-bg);border:1px solid var(--card-border);border-left:2px solid var(--accent);border-radius:var(--radius)}.rb-selection-name{font-size:13px;font-weight:600;color:var(--text)}.rb-selection-dims{margin-top:4px;font-size:11.5px;color:var(--text-dim);font-variant-numeric:tabular-nums}.rb-selection-actions{display:flex;gap:8px;margin-top:10px}.rb-finish{display:flex;align-items:center;gap:8px;margin-top:10px}.rb-finish-label{font-size:11.5px;color:var(--text-dim);flex:0 0 auto}.rb-finish-select{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font);font-size:12px;padding:7px 10px;border-radius:7px;border:1px solid var(--card-border);background:var(--input-bg);color:var(--text);cursor:pointer}.rb-finish-select:hover{border-color:var(--input-focus)}.rb-place-actions{display:flex;margin-top:12px}.rb-place-actions .rb-mini-btn{flex:1}.rb-mini-btn{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font);font-size:12px;padding:7px 0;border-radius:7px;border:1px solid var(--card-border);background:var(--input-bg);color:var(--text);cursor:pointer;transition:border-color .15s ease}.rb-mini-btn:hover{border-color:var(--input-focus)}.rb-mini-btn.rb-danger:hover{border-color:#e7645099;color:#e7b4a6}.rb-kbd{font-size:10px;color:var(--text-muted);border:1px solid var(--card-border);border-radius:4px;padding:1px 4px;margin-left:6px;font-variant-numeric:tabular-nums}.rb-footer{padding:14px 18px 18px;border-top:1px solid var(--card-border);display:flex;flex-direction:column;gap:10px}.rb-footer-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid var(--card-border);background:var(--sidebar)}.rb-footer-total{display:flex;flex-direction:column;line-height:1.15;margin-right:auto}.rb-footer-total span{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-dim)}.rb-footer-total strong{font-size:14px;color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.rb-footer-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font);font-size:12.5px;font-weight:600;padding:9px 14px;border-radius:8px;border:1px solid var(--card-border);background:var(--input-bg);color:var(--text);cursor:pointer;transition:border-color .15s ease,filter .15s ease}.rb-footer-btn:hover{border-color:var(--input-focus)}.rb-footer-btn--accent{background:var(--accent);color:#17150f;border-color:var(--accent)}.rb-footer-btn--accent:hover{filter:brightness(1.06)}.rb-footer-btn:disabled{opacity:.45;cursor:not-allowed}.rb-btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font-family:var(--font);font-size:13.5px;font-weight:600;letter-spacing:.02em;padding:12px 0;border:0;border-radius:var(--radius);background:var(--accent);color:#17150f;cursor:pointer;transition:filter .15s ease,transform .1s ease}.rb-btn-primary:hover{filter:brightness(1.06)}.rb-btn-primary:active{transform:translateY(1px)}.rb-link{text-align:center;font-size:12px;color:var(--text-dim);text-decoration:none;transition:color .15s ease}.rb-link:hover{color:var(--accent)}.rb-plan{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:radial-gradient(120% 90% at 50% 0%,rgba(200,169,126,.05),transparent 60%),#0e0f12;z-index:5}.rb-plan-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--card-border);flex-wrap:wrap}.rb-plan-title{font-size:12px;color:var(--text-dim);letter-spacing:.02em}.rb-plan-actions{display:flex;align-items:center;gap:8px}.rb-plan-rect{display:flex;align-items:center;gap:6px}.rb-plan-rect input{width:64px;padding:6px 8px;font-family:var(--font);font-size:12px;font-variant-numeric:tabular-nums;background:var(--input-bg);border:1px solid var(--input-border);border-radius:7px;color:var(--text);outline:none}.rb-plan-rect input:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--accent-dim)}.rb-plan-rect span{color:var(--text-muted);font-size:12px}.rb-plan-apply{width:auto;padding:8px 16px}.rb-mini-btn{white-space:nowrap}.rb-btn-primary:disabled{opacity:.45;cursor:not-allowed}.rb-plan-error{margin:10px 16px 0;padding:8px 12px;font-size:12px;color:#f0c5b8;background:#e764501f;border:1px solid rgba(231,100,80,.4);border-radius:8px}.rb-plan-svg{flex:1;width:100%;min-height:0;touch-action:none;-webkit-user-select:none;user-select:none}.rb-plan-grid line{stroke:#ffffff0d;stroke-width:6}.rb-plan-grid .rb-plan-axis{stroke:#c8a97e38;stroke-width:8}.rb-plan-fill{fill:#c8a97e1a;stroke:none}.rb-plan-edge{stroke:var(--accent);stroke-width:14;stroke-linecap:round}.rb-plan-edge--preview{stroke:var(--text-dim);stroke-dasharray:30 24}.rb-plan-len{fill:var(--text);font-family:var(--font);text-anchor:middle;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:#0e0f12;stroke-width:18}.rb-plan-len--edit{fill:var(--accent);cursor:pointer}.rb-plan-corner{fill:var(--accent);stroke:#0e0f12;stroke-width:6;cursor:grab}.rb-plan-corner--close{fill:var(--text)}.rb-plan-cursor{fill:none;stroke:var(--accent);stroke-width:8}.rb-plan-guide{stroke:#cdab78;stroke-width:6;stroke-dasharray:26 20;opacity:.9}.rb-plan-part{fill:#7882868c;stroke:#8a8681;stroke-width:6;cursor:grab}.rb-plan-part--sel{fill:#2fb7ad73;stroke:#2fb7ad;stroke-width:10}.rb-plan-snap{fill:none;stroke:#33d6c0;stroke-width:10}.rb-plan-dist{fill:#33d6c0;font-family:var(--font);text-anchor:middle;font-variant-numeric:tabular-nums;paint-order:stroke;stroke:#0e0f12;stroke-width:18}.rb-plan-seg-edit{position:absolute;left:50%;bottom:20px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:10px 14px;background:#141416f5;border:1px solid var(--card-border);border-radius:var(--radius);box-shadow:0 8px 24px #0006}.rb-plan-seg-edit span{font-size:12px;color:var(--text-dim)}.rb-plan-seg-edit input{width:80px;padding:6px 8px;font-family:var(--font);font-size:13px;font-variant-numeric:tabular-nums;background:var(--input-bg);border:1px solid var(--accent);border-radius:7px;color:var(--text);outline:none;text-align:center}.rb-parts{display:flex;flex-direction:column;gap:8px;margin-top:10px}.rb-part{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:10px}.rb-part--sel{border-color:#2fb7ad;box-shadow:0 0 0 1px #2fb7ad inset}.rb-part-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px}.rb-part-title{font-size:12px;font-weight:600;color:var(--text)}.rb-part-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.rb-pfield{display:flex;flex-direction:column;gap:3px}.rb-pfield span{font-size:10px;color:var(--text-dim)}.rb-pfield input{width:100%;padding:6px 7px;font-family:var(--font);font-size:12px;font-variant-numeric:tabular-nums;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text);outline:none}.rb-pfield input:focus{border-color:var(--input-focus);box-shadow:0 0 0 2px var(--accent-dim)}.rb-export-pdf{width:100%;margin-bottom:12px;padding:10px 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font);font-size:13px;font-weight:500;color:var(--text);background:var(--card-bg);border:1px solid var(--accent);border-radius:var(--radius);cursor:pointer;transition:background .15s ease}.rb-export-pdf:hover{background:#202025}.rb-save-msg{margin-top:8px;font-size:12px}.rb-save-msg--saved{color:var(--accent)}.rb-save-msg--error{color:#e7b4a6}.rb-save-msg--saving,.rb-save-msg--idle{color:var(--text-dim)}.rb-designs{display:flex;flex-direction:column;gap:6px}.rb-design-row{display:flex;align-items:stretch;gap:6px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;transition:border-color .15s ease,background .15s ease}.rb-design-row:hover{border-color:var(--input-focus);background:#202025}.rb-design-open{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;text-align:left;background:transparent;border:0;color:var(--text);font-family:var(--font);font-size:12.5px;cursor:pointer}.rb-design-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rb-design-date{flex:0 0 auto;font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.rb-design-del{flex:0 0 auto;width:30px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-left:1px solid var(--card-border);background:transparent;color:var(--text-muted);font-size:16px;line-height:1;cursor:pointer;border-radius:0 8px 8px 0;transition:color .15s ease,background .15s ease}.rb-design-del:hover{color:#e7b4a6;background:#e764501f}.rb-dim-label{position:absolute;transform:translate(-50%,-50%);font-family:var(--font);font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--text);background:#0c0c0ec7;border:1px solid var(--card-border);border-radius:6px;padding:2px 7px;pointer-events:none;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rb-dim-label.rb-dim-fixture{color:var(--accent);border-color:#c8a97e59}.rb-dim-label.rb-dim-measure{color:#17150f;background:var(--accent);border-color:var(--accent);font-weight:600;font-size:12px;transform:none}.rb-dim-label.rb-dim-editable{pointer-events:auto;cursor:text}.rb-dim-label.rb-dim-guide{pointer-events:auto;cursor:pointer;color:#cdab78;border-color:#cdab7880;font-weight:600;min-width:30px;min-height:22px;padding:4px 9px;text-align:center;touch-action:manipulation}.rb-dim-label.rb-dim-guide:hover{background:#141416eb;border-color:var(--accent)}.rb-dim-label.rb-dim-guide .rb-dim-input{width:60px;font-size:12px}.rb-dim-label.rb-dim-snap{color:#17150f;background:#33d6c0;border-color:#33d6c0;font-weight:600;font-size:10px;letter-spacing:.04em;text-transform:uppercase;transform:none}.rb-dim-input{width:56px;font-family:var(--font);font-size:11px;font-variant-numeric:tabular-nums;text-align:center;color:var(--text);background:#0c0c0ef2;border:1px solid var(--accent);border-radius:6px;padding:2px 4px;outline:none}.rbx{--ink:#101214;--porcelain:#EFEBE3;--stone:#9AA0A8;--stone-dim:#5E646C;--champagne:#CBA96F;--copper:#B27B58;--glass:rgba(16,18,20,.6);--glass-border:rgba(239,235,227,.1);--serif:"Cormorant Garamond",serif;--sans:"Inter",-apple-system,sans-serif;--mono:"IBM Plex Mono",monospace;position:fixed;top:0;right:0;bottom:0;left:0;background:#0c0e10;color:var(--porcelain);font-family:var(--sans);font-size:13px;-webkit-font-smoothing:antialiased;overflow:hidden}.rbx *{box-sizing:border-box}.rbx button{font-family:inherit;color:inherit;background:none;border:none;cursor:pointer;text-align:left;padding:0;margin:0}.rbx input{font-family:inherit}.rbx .screen{display:none;height:100%;position:relative;overflow:hidden}.rbx .screen.active{display:block}.rbx .topbar{position:absolute;top:0;left:0;right:0;height:70px;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:linear-gradient(to bottom,rgba(12,14,16,.6),transparent);pointer-events:none}.rbx .topbar>*{pointer-events:auto}.rbx .brand{font-size:13px;font-weight:500}.rbx .brand em{font-style:normal;color:var(--champagne)}.rbx .brand span{display:block;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#efebe38c;font-weight:500;margin-bottom:2px}.rbx .stagenav{display:flex;gap:4px;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:99px;padding:4px}.rbx .st{padding:8px 18px;border-radius:99px;font-size:11.5px;font-weight:500;color:var(--stone);transition:all .2s;display:flex;gap:8px;align-items:center}.rbx .st .n{font-family:var(--mono);font-size:9px;font-weight:300;color:var(--stone-dim)}.rbx .st:hover:not(:disabled){color:var(--porcelain)}.rbx .st.active{color:#191307;background:var(--champagne)}.rbx .st.active .n{color:#6b5a32}.rbx .st:disabled{opacity:.45;cursor:not-allowed}.rbx .top-right{display:flex;gap:10px;align-items:center}.rbx .pill{padding:9px 18px;border-radius:99px;font-size:11.5px;font-weight:500;border:1px solid var(--glass-border);background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color .2s}.rbx .pill:hover{border-color:#efebe34d}.rbx .pill.gold{border-color:#cba96f80;color:var(--champagne)}.rbx .pill.saved{color:var(--champagne)}.rbx .glasscard{background:#121417c7;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 28px 70px #00000080}.rbx #rbx-plan{background:radial-gradient(120% 90% at 50% 0%,#191c20,#0f1113 60%)}.rbx .plan-left{position:absolute;left:26px;top:96px;width:318px;z-index:30;padding:24px 22px;max-height:calc(100% - 130px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--stone-dim) transparent}.rbx .plan-left .eyebrow{font-size:9px;letter-spacing:.28em;color:var(--stone);text-transform:uppercase;font-weight:500}.rbx .plan-left h2{font-family:var(--serif);font-size:27px;font-weight:500;margin:8px 0 4px}.rbx .plan-left h2 em{font-style:italic;color:var(--champagne)}.rbx .plan-left p{font-size:12px;color:var(--stone);line-height:1.55;margin-bottom:18px}.rbx .start{display:flex;align-items:center;gap:14px;padding:15px 14px;border-radius:14px;width:100%;border:1px solid var(--glass-border);margin-bottom:8px;cursor:pointer;transition:all .2s}.rbx .start:hover{border-color:#efebe340;background:#efebe308}.rbx .start.active{border-color:#cba96f80;background:#cba96f12}.rbx .start .ic{width:38px;height:38px;border-radius:10px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);color:var(--stone)}.rbx .start.active .ic{color:var(--champagne);border-color:#cba96f73}.rbx .start .ic svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.rbx .start .t{font-size:12.5px;font-weight:500}.rbx .start .s{font-size:11px;color:var(--stone);margin-top:2px}.rbx .tmpl-row{display:flex;gap:8px;margin:2px 0 8px}.rbx .tmpl{flex:1;padding:10px 8px;border-radius:11px;border:1px solid var(--glass-border);font-size:10.5px;color:var(--stone);text-align:center;transition:all .2s}.rbx .tmpl:hover{color:var(--champagne);border-color:#cba96f73}.rbx .tmpl svg{display:block;margin:0 auto 6px;width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.3}.rbx .calib{margin-top:18px;padding-top:16px;border-top:1px solid var(--glass-border);font-size:11.5px;color:var(--stone);line-height:1.6}.rbx .calib strong{color:var(--porcelain);font-weight:500}.rbx .calib .kbd{font-family:var(--mono);color:var(--champagne);font-size:10.5px}.rbx .calib-live{margin-top:10px;padding:10px 12px;border-radius:11px;border:1px solid rgba(203,169,111,.5);background:#cba96f12;font-size:11.5px;line-height:1.55}.rbx .calib-live b{color:var(--champagne);font-weight:500}.rbx .calib-input{display:flex;align-items:center;gap:8px;margin-top:8px}.rbx .calib-input input{width:90px;background:#16181b;border:1px solid rgba(203,169,111,.55);border-radius:8px;color:var(--porcelain);font-family:var(--mono);font-size:12px;padding:6px 9px;outline:none}.rbx .calib-input span{font-family:var(--mono);font-size:10.5px;color:var(--stone)}.rbx .gold-mini{background:var(--champagne);color:#191307;padding:7px 14px;border-radius:99px;font-size:11px;font-weight:600}.rbx .plan-stage{position:absolute;top:0;right:0;bottom:0;left:0;padding:84px 26px 26px 372px}.rbx .plan-cta{position:absolute;bottom:26px;right:26px;z-index:30;display:flex;align-items:center;gap:16px;padding:12px 12px 12px 22px}.rbx .plan-cta .m{font-size:12px;color:var(--stone)}.rbx .plan-cta .m b{color:var(--porcelain);font-family:var(--mono);font-weight:400}.rbx .gold-btn{background:var(--champagne);color:#191307;padding:12px 24px;border-radius:99px;font-size:12.5px;font-weight:600;transition:transform .2s,box-shadow .2s}.rbx .gold-btn:hover{transform:translateY(-1px);box-shadow:0 10px 28px #cba96f47}.rbx .rb-plan{position:relative;width:100%;height:100%;display:flex;flex-direction:column;background:transparent;border:none}.rbx .rb-plan-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;border-radius:14px;background:#121417c7;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);margin-bottom:10px}.rbx .rb-plan-title{font-size:11.5px;color:var(--stone)}.rbx .rb-plan-actions{display:flex;align-items:center;gap:8px}.rbx .rb-plan-rect{display:flex;align-items:center;gap:6px;color:var(--stone);font-size:11px}.rbx .rb-plan-rect input{width:64px;background:#16181b;border:1px solid var(--glass-border);border-radius:8px;color:var(--porcelain);font-family:var(--mono);font-size:11.5px;padding:6px 8px;outline:none}.rbx .rb-plan-rect input:focus{border-color:#cba96f8c}.rbx .rb-mini-btn{padding:7px 14px;border-radius:99px;font-size:11px;font-weight:500;border:1px solid var(--glass-border);background:transparent;color:var(--porcelain);transition:border-color .2s;flex:none}.rbx .rb-mini-btn:hover{border-color:#efebe34d}.rbx .rb-btn-primary{background:var(--champagne);color:#191307;padding:8px 18px;border-radius:99px;font-size:11.5px;font-weight:600;border:none}.rbx .rb-btn-primary:disabled{opacity:.4;cursor:not-allowed}.rbx .rb-plan-error{margin:0 0 10px;padding:9px 14px;border-radius:11px;border:1px solid rgba(231,100,80,.5);background:#e7645014;color:#e7b4a6;font-size:11.5px}.rbx .rb-plan-svg{flex:1;min-height:0;width:100%;border-radius:18px;background:radial-gradient(100% 100% at 50% 30%,#15181b,#0e1012);border:1px solid var(--glass-border)}.rbx .rb-plan-grid line{stroke:#efebe30d;stroke-width:6}.rbx .rb-plan-grid .rb-plan-axis{stroke:#efebe31a}.rbx .rb-plan-fill{fill:#cba96f12}.rbx .rb-plan-edge{stroke:#cba96f;stroke-width:16;stroke-linecap:round}.rbx .rb-plan-edge--preview{stroke:#efebe3;stroke-dasharray:60 45}.rbx .rb-plan-corner{fill:#cba96f;stroke:#0c0e10;stroke-width:8}.rbx .rb-plan-corner--close{fill:#efebe3}.rbx .rb-plan-cursor{fill:#efebe3a6}.rbx .rb-plan-len{fill:#efebe3;font-family:IBM Plex Mono,monospace;font-weight:300;paint-order:stroke;stroke:#16181b;stroke-width:26px;stroke-linejoin:round;text-anchor:middle;cursor:default}.rbx .rb-plan-len--edit{cursor:pointer;fill:#cba96f}.rbx .rb-plan-guide{stroke:#cba96f66;stroke-width:8;stroke-dasharray:40 30}.rbx .rb-plan-part{fill:#efebe329;stroke:#efebe366;stroke-width:6;cursor:grab}.rbx .rb-plan-part--sel{fill:#cba96f4d;stroke:#cba96f}.rbx .rb-plan-snap{fill:none;stroke:#cba96f;stroke-width:10}.rbx .rb-plan-dist{fill:#efebe3;font-family:IBM Plex Mono,monospace;text-anchor:middle;paint-order:stroke;stroke:#16181b;stroke-width:26px}.rbx .rb-plan-underlay{opacity:.35}.rbx .rb-plan-calib-pt{fill:none;stroke:#efebe3;stroke-width:10}.rbx .rb-plan-calib-line{stroke:#efebe3;stroke-width:10;stroke-dasharray:34 26}.rbx .rb-plan-seg-edit{position:absolute;left:50%;bottom:22px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:13px;background:#121417e6;border:1px solid rgba(203,169,111,.5);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);font-size:11.5px;color:var(--stone);z-index:5}.rbx .rb-plan-seg-edit input{width:84px;background:#16181b;border:1px solid rgba(203,169,111,.55);border-radius:8px;color:var(--porcelain);font-family:var(--mono);font-size:12px;padding:6px 9px;outline:none}.rbx .viewport{position:absolute;top:0;right:0;bottom:0;left:0}.rbx .viewport>div{position:absolute;top:0;right:0;bottom:0;left:0}.rbx .viewport canvas{display:block}.rbx .viewport .rb-dim-label{background:#16181b!important;border:1px solid rgba(239,235,227,.12)!important;border-radius:9px!important;padding:6px 12px!important;font-family:IBM Plex Mono,monospace!important;font-size:11.5px!important;font-weight:300!important;color:#efebe3!important;letter-spacing:0!important}.rbx .viewport .rb-dim-editable,.rbx .viewport .rb-dim-measure{border-color:#cba96f8c!important}.rbx .viewport .rb-dim-label input{font-family:IBM Plex Mono,monospace!important;color:#efebe3!important;background:transparent!important}.rbx .drawer{position:absolute;right:24px;top:96px;bottom:110px;width:300px;z-index:30;display:flex;flex-direction:column;overflow:hidden}.rbx .drawer-head{padding:18px 20px 0}.rbx .drawer-head .eyebrow{font-size:9px;letter-spacing:.28em;color:var(--stone);text-transform:uppercase;font-weight:500}.rbx .drawer-head h2{font-family:var(--serif);font-size:23px;font-weight:500;margin-top:5px}.rbx .dtabs{display:flex;gap:2px;padding:14px 14px 10px;flex-wrap:wrap}.rbx .dtab{padding:6px 12px;border-radius:99px;font-size:10.5px;font-weight:500;color:var(--stone);transition:all .2s}.rbx .dtab:hover{color:var(--porcelain)}.rbx .dtab.active{color:var(--champagne);background:#cba96f1f}.rbx .dscroll{flex:1;overflow-y:auto;padding:2px 14px 14px;scrollbar-width:thin;scrollbar-color:var(--stone-dim) transparent}.rbx .prod{display:flex;align-items:center;gap:12px;padding:11px 10px;border-radius:13px;width:100%;border:1px solid transparent;cursor:pointer;transition:all .2s}.rbx .prod:hover{background:#efebe30a;border-color:var(--glass-border)}.rbx .prod.selected{background:#cba96f1a;border-color:#cba96f66}.rbx .sw{width:40px;height:40px;border-radius:9px;flex-shrink:0;border:1px solid var(--glass-border)}.rbx .pi{flex:1;min-width:0}.rbx .pn{font-size:11.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rbx .pd{font-family:var(--mono);font-size:9.5px;font-weight:300;color:var(--stone);margin-top:3px}.rbx .pp{font-family:var(--serif);font-size:15px;font-weight:500}.rbx .dfoot{padding:12px 20px;border-top:1px solid var(--glass-border);font-size:10.5px;color:var(--stone);line-height:1.5}.rbx .dfoot b{color:var(--champagne);font-weight:500}.rbx .selchip{position:absolute;left:96px;bottom:24px;z-index:35;display:flex;align-items:center;gap:14px;padding:12px 16px}.rbx .selchip .sn{font-size:12px;font-weight:500}.rbx .selchip .sd{font-family:var(--mono);font-size:10px;font-weight:300;color:var(--stone);margin-top:2px}.rbx .selchip select{background:#16181b;border:1px solid var(--glass-border);border-radius:8px;color:var(--porcelain);font-family:var(--sans);font-size:11px;padding:6px 8px;outline:none}.rbx .selchip input{width:64px;background:#16181b;border:1px solid var(--glass-border);border-radius:8px;color:var(--porcelain);font-family:var(--mono);font-size:11px;padding:6px 8px;outline:none}.rbx .selchip .cb{padding:7px 12px;border-radius:9px;font-size:11px;border:1px solid var(--glass-border);transition:border-color .2s}.rbx .selchip .cb:hover{border-color:#efebe34d}.rbx .selchip .cb.danger:hover{border-color:#e7645099;color:#e7b4a6}.rbx .selchip .lbl{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--stone);display:block;margin-bottom:3px}.rbx .quoterail{position:absolute;left:50%;bottom:24px;transform:translate(-50%);z-index:34;display:flex;align-items:center;gap:22px;padding:14px 24px}.rbx .qi .l{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-weight:500}.rbx .qi .v{font-size:12px;margin-top:3px}.rbx .qi .v span{color:var(--stone)}.rbx .qi .v input{background:transparent;border:none;border-bottom:1px dashed rgba(239,235,227,.25);color:var(--porcelain);font-size:12px;width:110px;outline:none;padding:0 0 1px}.rbx .qi .v input:focus{border-bottom-color:var(--champagne)}.rbx .qdiv{width:1px;height:30px;background:var(--glass-border)}.rbx .qtotal .l{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-weight:500}.rbx .qtotal .v{font-family:var(--serif);font-size:26px;font-weight:500;line-height:1.1}@media(prefers-reduced-motion:no-preference){.rbx .screen.active .glasscard{animation:rbx-rise .5s cubic-bezier(.2,.7,.2,1) both}@keyframes rbx-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.rbx .rail.glasscard{animation-name:rbx-rise-rail}.rbx .quoterail.glasscard{animation-name:rbx-rise-quote}@keyframes rbx-rise-quote{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.rbx .screen.active .shelf.glasscard,.rbx .screen.active .ghost-hint.glasscard{animation-name:rbx-rise-quote}.rbx .screen.active .filmstrip.glasscard{animation-name:rbx-rise-rail}@keyframes rbx-rise-rail{0%{opacity:0;transform:translateY(calc(-50% + 8px))}to{opacity:1;transform:translateY(-50%)}}}.rbx :focus-visible{outline:2px solid var(--champagne);outline-offset:2px;border-radius:8px}.rbx .viewtoggle{display:flex;gap:2px;background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:99px;padding:3px}.rbx .viewtoggle button{padding:7px 16px;border-radius:99px;font-size:11px;font-weight:500;color:var(--stone);transition:all .2s}.rbx .viewtoggle button.active{color:#191307;background:var(--champagne)}.rbx .viewtoggle button:hover:not(.active){color:var(--porcelain)}.rbx .filmstrip{position:absolute;left:18px;top:50%;transform:translateY(-50%);z-index:35;display:flex;flex-direction:column;gap:8px;padding:10px;max-height:calc(100% - 200px);overflow-y:auto;scrollbar-width:none}.rbx .film{width:104px;border-radius:12px;border:1px solid var(--glass-border);overflow:hidden;background:#101214;transition:border-color .2s;position:relative}.rbx .film img{display:block;width:100%;height:64px;object-fit:cover;background:#15181b}.rbx .film .fl{position:absolute;left:7px;bottom:5px;font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--porcelain);text-shadow:0 1px 4px rgba(0,0,0,.8);font-weight:500}.rbx .film:hover{border-color:#efebe34d}.rbx .film.active{border-color:var(--champagne);box-shadow:0 0 0 1px #cba96f66}.rbx .overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:25;pointer-events:none}.rbx .overlay .dim-line,.rbx .overlay .dim-tick{stroke:#efebe352;stroke-width:1}.rbx .overlay .guide-line{stroke:#cba96f;stroke-width:1.4;stroke-dasharray:6 5}.rbx .overlay .guide-line.amber{stroke:#d9973f}.rbx .chip{position:absolute;transform:translate(-50%,-50%);z-index:26;pointer-events:none;background:#16181b;border:1px solid rgba(203,169,111,.55);border-radius:8px;padding:4px 9px;font-family:var(--mono);font-size:10.5px;font-weight:400;color:var(--porcelain);white-space:nowrap}.rbx .chip span{color:var(--stone);margin-left:4px}.rbx .chip.quiet{border-color:#efebe32e}.rbx .chip.amber{border-color:#d9973fbf;color:#e8b36a}.rbx .chip.green{border-color:#7aa874b3;color:#a8c9a2}.rbx .addpill{position:absolute;left:50%;bottom:24px;transform:translate(-50%);z-index:36;padding:11px 22px;border-radius:99px;font-size:12px;font-weight:600;background:var(--champagne);color:#191307;box-shadow:0 12px 34px #00000073;transition:transform .2s}.rbx .addpill:hover{transform:translate(-50%,-1px)}.rbx .shelf{position:absolute;left:50%;bottom:22px;transform:translate(-50%);z-index:36;width:min(760px,72vw);padding:16px 18px 14px}.rbx .shelf-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.rbx .shelf-head .eyebrow{font-size:9px;letter-spacing:.28em;color:var(--stone);text-transform:uppercase;font-weight:500}.rbx .shelf-head h3{font-family:var(--serif);font-size:19px;font-weight:500}.rbx .shelf-close{color:var(--stone);font-size:16px;padding:4px 8px}.rbx .shelf-close:hover{color:var(--porcelain)}.rbx .shelf .dtabs{padding:0 0 10px}.rbx .shelf-items{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin;scrollbar-color:var(--stone-dim) transparent}.rbx .shelf-item{flex:0 0 128px;border:1px solid var(--glass-border);border-radius:13px;padding:10px;transition:all .2s;text-align:left}.rbx .shelf-item:hover{border-color:#cba96f80;background:#cba96f0f}.rbx .shelf-item .sw{width:100%;height:44px;border-radius:8px;border:1px solid var(--glass-border);display:block;margin-bottom:8px}.rbx .shelf-item .n{font-size:10.5px;font-weight:500;line-height:1.3;height:27px;overflow:hidden}.rbx .shelf-item .d{font-family:var(--mono);font-size:9px;font-weight:300;color:var(--stone);margin-top:4px}.rbx .shelf-item .p{font-family:var(--serif);font-size:13.5px;margin-top:4px}.rbx .shelf-empty{font-size:11px;color:var(--stone);padding:14px 4px}.rbx .ghost-hint{position:absolute;left:50%;bottom:24px;transform:translate(-50%);z-index:36;padding:10px 20px;font-size:11.5px;color:var(--porcelain)}.rbx .ghost-hint b{color:var(--champagne)}.rbx .inspector{position:absolute;right:24px;top:96px;width:284px;z-index:35;padding:18px 18px 16px;max-height:calc(100% - 220px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--stone-dim) transparent}.rbx .inspector .eyebrow{font-size:9px;letter-spacing:.28em;color:var(--stone);text-transform:uppercase;font-weight:500}.rbx .inspector h3{font-family:var(--serif);font-size:21px;font-weight:500;margin:5px 0 12px}.rbx .insp-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rbx .insp-field{border:1px solid var(--glass-border);border-radius:10px;padding:8px 10px}.rbx .insp-field .l{font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--stone);font-weight:500;display:block;margin-bottom:3px}.rbx .insp-field input,.rbx .insp-field select{width:100%;background:transparent;border:none;outline:none;color:var(--porcelain);font-family:var(--mono);font-size:12.5px;font-weight:300;padding:0}.rbx .insp-field select{font-family:var(--sans);font-size:11.5px}.rbx .insp-field select option{background:#16181b}.rbx .insp-field.ro input{color:var(--stone)}.rbx .insp-status{margin:10px 0 0;padding:9px 12px;border-radius:10px;font-size:11px;line-height:1.45;border:1px solid rgba(239,235,227,.14);color:var(--stone)}.rbx .insp-status.green{border-color:#7aa8748c;color:#a8c9a2}.rbx .insp-status.amber{border-color:#d9973fa6;color:#e8b36a}.rbx .insp-status .mono{font-family:var(--mono)}.rbx .insp-actions{display:flex;gap:8px;margin-top:12px}.rbx .insp-btn{flex:1;text-align:center;padding:8px 0;border-radius:9px;font-size:11px;font-weight:500;border:1px solid var(--glass-border);transition:all .15s}.rbx .insp-btn:hover{border-color:#efebe359}.rbx .insp-btn.danger:hover{border-color:#e7645099;color:#e7b4a6}.rbx .insp-takeoff{margin-top:12px;border-top:1px solid var(--glass-border);padding-top:10px;font-size:11px;color:var(--stone);line-height:1.7}.rbx .insp-takeoff b{color:var(--porcelain);font-family:var(--mono);font-weight:400}.rbx .surfcard{position:absolute;right:24px;bottom:86px;z-index:34;width:264px;padding:14px 16px;display:flex;gap:12px;align-items:center;cursor:pointer;transition:border-color .2s}.rbx .surfcard:hover{border-color:#cba96f80}.rbx .surfcard .sw{width:44px;height:44px;border-radius:10px;border:1px solid var(--glass-border);flex-shrink:0}.rbx .surfcard .t{font-size:11.5px;font-weight:500}.rbx .surfcard .d{font-family:var(--mono);font-size:9.5px;font-weight:300;color:var(--stone);margin-top:3px;line-height:1.5}.rbx .surfcard .c{font-family:var(--serif);font-size:15px;margin-left:auto}.rbx .quotechip{position:absolute;right:24px;bottom:24px;z-index:36;display:flex;align-items:baseline;gap:9px;padding:11px 18px;cursor:pointer;transition:border-color .2s}.rbx .quotechip:hover{border-color:#cba96f80}.rbx .quotechip .l{font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-weight:500}.rbx .quotechip .v{font-family:var(--serif);font-size:21px;font-weight:500}.rbx .quotepanel{position:absolute;right:24px;bottom:76px;z-index:37;width:320px;padding:16px 18px;max-height:60%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--stone-dim) transparent}.rbx .quotepanel h3{font-family:var(--serif);font-size:19px;font-weight:500;margin-bottom:10px}.rbx .qrow{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--stone);padding:5px 0;border-bottom:1px solid rgba(239,235,227,.06)}.rbx .qrow .qn{color:var(--porcelain)}.rbx .qrow .qm{font-family:var(--mono);font-weight:300}.rbx .qrow.total{border-bottom:none;margin-top:6px;font-size:12px}.rbx .qrow.total .qm{font-family:var(--serif);font-size:18px;color:var(--porcelain)}.rbx .qsec{font-size:8.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--stone-dim);font-weight:500;margin-top:10px}.rbx .qwaste{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--stone);margin-top:8px}.rbx .qwaste input{width:44px;background:#16181b;border:1px solid var(--glass-border);border-radius:6px;color:var(--porcelain);font-family:var(--mono);font-size:10.5px;padding:3px 6px;outline:none;text-align:right}:root{--bg: #0c0c0e;--sidebar: #141416;--card-bg: #1c1c20;--card-border: rgba(255, 255, 255, .06);--text: #f0ede8;--text-dim: #8a8681;--text-muted: #5a5652;--accent: #c8a97e;--accent-glow: rgba(200, 169, 126, .15);--accent-dim: rgba(200, 169, 126, .08);--input-bg: #232328;--input-border: rgba(255, 255, 255, .08);--input-focus: rgba(200, 169, 126, .4);--radius: 10px;--font: "Inter", system-ui, -apple-system, BlinkMacSystemFont, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#root{min-height:100vh}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:380px;background:var(--sidebar);border-right:1px solid var(--card-border);display:flex;flex-direction:column;z-index:2}.sidebar-header{padding:24px 20px 20px;border-bottom:1px solid var(--card-border)}.studio-return{display:block;background:none;border:none;cursor:pointer;padding:10px 2px 12px;margin:-10px -2px 0;text-align:left;font-family:var(--font);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--text-dim);transition:color .16s ease}.studio-return:hover,.studio-return:focus-visible{color:var(--accent);outline:none}.brand-name{font-size:13px;letter-spacing:.28em;font-weight:600;color:var(--accent)}.brand-tagline{font-size:11px;letter-spacing:.12em;color:var(--text-dim);margin-top:3px;text-transform:uppercase}.sidebar-scroll{flex:1;overflow-y:auto;padding:14px 14px 20px}.sidebar-scroll::-webkit-scrollbar{width:4px}.sidebar-scroll::-webkit-scrollbar-track{background:transparent}.sidebar-scroll::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:14px 16px 12px;margin-bottom:10px}.card--summary{background:linear-gradient(135deg,var(--card-bg),rgba(200,169,126,.04));border-color:#c8a97e1f}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.card-title{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--text-dim)}.card-badge{font-size:10px;color:var(--text-muted);letter-spacing:.08em}.card-sub{margin-top:14px;padding-top:12px;border-top:1px solid var(--card-border)}.card-sub-label{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.dim{margin-bottom:12px}.dim--compact{margin-bottom:8px}.dim-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.dim-label{font-size:12px;font-weight:500;color:var(--text);letter-spacing:.02em}.dim-input-wrap{display:flex;align-items:center;gap:4px}.dim-input{width:58px;padding:4px 6px;font-size:13px;font-weight:600;font-family:var(--font);border-radius:6px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);text-align:right;outline:none;transition:border-color .15s,box-shadow .15s}.dim-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.dim-mm{font-size:10px;color:var(--text-muted);font-weight:500;letter-spacing:.04em}.dim-computed{font-size:13px;font-weight:600;color:var(--text-dim)}.dim-hint{font-size:10px;color:var(--text-muted);margin-top:2px;letter-spacing:.02em}.range{-webkit-appearance:none;width:100%;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--accent),rgba(200,169,126,.3));outline:none;cursor:pointer}.range::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:99px;background:var(--text);border:2px solid var(--accent);box-shadow:0 0 8px #c8a97e40;cursor:pointer;transition:transform .1s}.range::-webkit-slider-thumb:hover{transform:scale(1.15)}.range::-moz-range-thumb{width:14px;height:14px;border-radius:99px;background:var(--text);border:2px solid var(--accent);cursor:pointer}.chip-row{display:flex;gap:6px;flex-wrap:wrap}.chip{border-radius:99px;border:1px solid var(--input-border);padding:5px 12px;font-size:11px;font-family:var(--font);background:transparent;color:var(--text-dim);cursor:pointer;transition:all .15s;letter-spacing:.02em}.chip:hover{border-color:#ffffff26;color:var(--text)}.chip:disabled{opacity:.35;cursor:not-allowed}.slab-warning{margin-top:10px;padding:8px 10px;border-radius:6px;font-size:11px;line-height:1.45;color:#e8c98a;background:#c8a97e14;border:1px solid rgba(200,169,126,.35)}.mat-tile-badge{position:absolute;top:4px;right:4px;padding:2px 6px;border-radius:99px;font-size:8px;letter-spacing:.08em;text-transform:uppercase;background:#0c0c0ed9;color:var(--accent);border:1px solid rgba(200,169,126,.4);pointer-events:none}.spec-info{font-size:10px;color:var(--text-muted);cursor:help}.chip:disabled:hover{border-color:var(--input-border);color:var(--text-dim)}.chip--on{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.chip--product{display:inline-flex;align-items:center;gap:6px}.chip--product svg{flex:0 0 auto}.margin-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 14px}.mat-current{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:var(--accent-dim);border:1px solid rgba(200,169,126,.2);margin-bottom:10px}.mat-current-swatch{width:36px;height:36px;border-radius:6px;flex-shrink:0;border:1px solid rgba(255,255,255,.08)}.mat-current-info{flex:1}.mat-current-name{font-size:12px;font-weight:600;color:var(--accent)}.mat-current-finish{font-size:10px;color:var(--text-muted);margin-top:1px}.mat-search{width:100%;padding:6px 10px;font-size:12px;font-family:var(--font);border-radius:6px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);outline:none;margin-bottom:8px;transition:border-color .15s}.mat-search:focus{border-color:var(--accent)}.mat-search::placeholder{color:var(--text-muted)}.mat-list{max-height:280px;overflow-y:auto;border-radius:6px;border:1px solid var(--card-border);background:#00000026}.mat-list::-webkit-scrollbar{width:4px}.mat-list::-webkit-scrollbar-track{background:transparent}.mat-list::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:2px}.mat-group{padding:0}.mat-group-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);padding:8px 10px 4px;position:sticky;top:0;background:var(--card-bg);z-index:1}.mat-item{display:flex;align-items:center;gap:8px;width:100%;padding:5px 10px;border:none;background:transparent;color:var(--text);font-family:var(--font);font-size:11px;cursor:pointer;text-align:left;transition:background .1s}.mat-item:hover{background:#ffffff0a}.mat-item--on{background:var(--accent-dim)}.mat-item-swatch{width:22px;height:22px;border-radius:4px;flex-shrink:0;border:1px solid rgba(255,255,255,.06)}.mat-item-name{flex:1;font-weight:500}.mat-item-finish{font-size:9px;color:var(--text-muted);letter-spacing:.06em}.spec-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:3px 0}.spec-row span{color:var(--text-dim)}.spec-row strong{color:var(--text);font-weight:500;letter-spacing:.02em}.cta-btn{width:100%;margin-top:14px;padding:10px 0;border-radius:99px;border:none;background:linear-gradient(135deg,var(--accent),#b08d5e);color:#0c0c0e;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;font-family:var(--font);transition:all .2s;box-shadow:0 4px 20px #c8a97e33}.cta-btn:hover{box-shadow:0 6px 30px #c8a97e59;transform:translateY(-1px)}.cta-btn--secondary{background:transparent;border:1px solid var(--accent);color:var(--accent);box-shadow:none;margin-top:6px}.cta-btn--secondary:hover{background:var(--accent-dim);box-shadow:none}.reset-btn{width:100%;margin-top:6px;padding:7px 0;border-radius:99px;border:1px solid var(--card-border);background:transparent;color:var(--text-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;font-family:var(--font);transition:all .15s}.reset-btn:hover{border-color:#ffffff1f;color:var(--text-dim)}.preview{flex:1;position:relative;background:radial-gradient(ellipse at 30% 20%,#1e1e22,#0c0c0e 70%);overflow:hidden;min-width:0}.three-wrap,.three-canvas-wrap{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.view-reset-chip{position:absolute;right:20px;bottom:16px;padding:5px 12px;border-radius:99px;font-size:10px;letter-spacing:.06em;font-family:var(--font);background:#0c0c0ebf;color:var(--accent);border:1px solid rgba(200,169,126,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;transition:border-color .15s,color .15s}.view-reset-chip:hover{border-color:var(--accent)}.three-canvas{display:block}.preview-hint-float{position:absolute;top:16px;right:20px;font-size:10px;letter-spacing:.1em;color:var(--text-muted);pointer-events:none}.overlay{position:absolute;bottom:16px;left:16px;right:16px;pointer-events:none;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}.overlay--show{opacity:1;transform:translateY(0)}.overlay-row{display:flex;gap:6px;flex-wrap:wrap}.overlay-tag{padding:5px 12px;border-radius:99px;font-size:10px;letter-spacing:.06em;background:#0c0c0ebf;color:var(--accent);border:1px solid rgba(200,169,126,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.toast-shelf{position:absolute;left:50%;bottom:56px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:30;pointer-events:none}.toast{pointer-events:auto;max-width:440px;padding:9px 16px;border-radius:99px;font-size:11px;font-family:var(--font);letter-spacing:.04em;text-align:center;background:#0c0c0eeb;color:var(--text);border:1px solid rgba(200,169,126,.45);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;animation:toast-in .22s ease-out}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:960px){.app-shell{flex-direction:column;height:auto;min-height:100vh;overflow:visible}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--card-border);order:2}.sidebar-scroll{overflow-y:visible}.preview{position:sticky;top:0;height:55vh;z-index:5;order:1}}.price-block{margin-top:12px;padding-top:12px;border-top:1px solid var(--card-border)}.price-band{font-size:10px;color:var(--text-muted);letter-spacing:.06em;margin-bottom:8px}.price-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:2px 0;color:var(--text-dim)}.price-row strong{color:var(--text);font-weight:500}.price-row--total{margin-top:6px;padding-top:8px;border-top:1px solid var(--card-border);font-size:14px}.price-row--total span{color:var(--text);font-weight:500}.price-row--total strong{color:var(--accent);font-size:15px;font-weight:600}.price-invalid{margin-top:12px;padding:10px 12px;border-radius:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#fca5a5;font-size:11px;line-height:1.4}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:24px;box-shadow:0 30px 80px #00000080;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;gap:16px}.modal-kicker{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:4px}.modal-title{margin:0;font-size:18px;font-weight:600;color:var(--text);letter-spacing:-.01em}.modal-close{width:32px;height:32px;border-radius:8px;border:1px solid var(--card-border);background:transparent;color:var(--text-dim);font-size:22px;line-height:1;cursor:pointer;transition:all .15s;font-family:var(--font)}.modal-close:hover{background:#ffffff0d;color:var(--text)}.modal-summary{background:#0003;border-radius:10px;padding:12px 14px;margin-bottom:18px}.modal-summary-row{display:flex;justify-content:space-between;font-size:12px;padding:3px 0;color:var(--text-dim)}.modal-summary-row strong{color:var(--text);font-weight:500}.modal-summary-row--total{margin-top:6px;padding-top:8px;border-top:1px solid var(--card-border)}.modal-summary-row--total strong{color:var(--accent);font-weight:600}.modal-form{display:flex;flex-direction:column;gap:14px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field label{font-size:11px;color:var(--text-dim);letter-spacing:.04em;font-weight:500}.form-field input,.form-field textarea{padding:9px 12px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font-family:var(--font);font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s;resize:vertical}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-muted)}.form-error{padding:10px 12px;border-radius:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;font-size:12px}.proj-picker{position:relative}.proj-picker-list{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;box-shadow:0 12px 32px #00000047;max-height:220px;overflow-y:auto;padding:4px}.proj-picker-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:none;border:none;border-radius:6px;padding:8px 10px;cursor:pointer;text-align:left;font-family:var(--font);font-size:13px;color:#2a2620}.proj-picker-row:hover,.proj-picker-row:focus-visible{background:#a0875f24;outline:none}.proj-picker-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-picker-row-count{flex-shrink:0;font-size:11px;color:#7a7469}.proj-picker-row--create{color:#8a6b2e;font-weight:600}.proj-picker-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px 8px 12px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font-size:13px}.proj-picker-clear{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:16px;line-height:1;padding:2px}.proj-picker-clear:hover{color:var(--text)}.chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chip-pick{padding:5px 11px;border-radius:999px;border:1px solid var(--card-border);background:transparent;color:var(--text-dim);font-family:var(--font);font-size:11.5px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.chip-pick:hover{background:#ffffff0f;color:var(--text);border-color:var(--accent)}.modal-actions{display:flex;gap:8px;margin-top:8px}.modal-actions .cta-btn{flex:1;margin-top:0}.modal-fine-print{margin:4px 0 0;font-size:10px;color:var(--text-muted);line-height:1.5;text-align:center}.modal-success{text-align:center;padding:20px 10px}.modal-success-check{width:64px;height:64px;border-radius:50%;background:var(--accent-dim);color:var(--accent);font-size:32px;line-height:64px;margin:0 auto 16px;border:2px solid var(--accent)}.modal-success h2{font-size:18px;color:var(--text);margin:0 0 8px}.modal-success p{font-size:13px;color:var(--text-dim);margin:0 0 6px}.modal-success-sub{color:var(--text-muted)!important;font-size:11px!important;margin-bottom:20px!important}.auth-shell{min-height:100vh;background:radial-gradient(ellipse at top,#1a1d28,#0c0c0e 60%);display:flex;align-items:center;justify-content:center;padding:20px}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);color:var(--text-dim);font-size:14px}.auth-card{max-width:420px;width:100%;background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;padding:36px 32px 30px;box-shadow:0 30px 80px #0006}.auth-card--admin{border-color:#c8a97e4d}.auth-brand{text-align:center;margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid var(--card-border)}.auth-brand-name{font-size:16px;letter-spacing:.3em;font-weight:600;color:var(--accent)}.auth-brand-sub{font-size:11px;letter-spacing:.16em;color:var(--text-dim);margin-top:4px;text-transform:uppercase}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-title{margin:0 0 6px;font-size:20px;font-weight:600;color:var(--text);letter-spacing:-.01em}.auth-subtitle{margin:0 0 10px;font-size:12px;color:var(--text-dim);line-height:1.5}.auth-link{background:transparent;border:none;color:var(--accent);font-size:12px;font-family:var(--font);cursor:pointer;text-align:center;padding:6px;text-decoration:underline;text-underline-offset:2px}.auth-link:hover{color:#e0c89e}.auth-footer{font-size:10px;color:var(--text-muted);text-align:center;margin-top:22px;padding-top:16px;border-top:1px solid var(--card-border);line-height:1.5}.user-badge{margin-top:10px;padding-top:10px;border-top:1px solid var(--card-border);font-size:10px;color:var(--text-dim);display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-badge span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-link{background:transparent;border:none;color:var(--accent);font-size:10px;font-family:var(--font);cursor:pointer;padding:2px 6px;border-radius:4px}.user-link:hover{background:var(--accent-dim)}.quote-dest{background:var(--accent-dim);border:1px solid rgba(200,169,126,.2);border-radius:8px;padding:10px 14px;margin-top:4px}.quote-dest-label{font-size:10px;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase}.quote-dest-email{font-size:13px;color:var(--accent);font-weight:600;margin-top:2px}.admin-shell{min-height:100vh;background:#0c0c0e;color:var(--text)}.admin-header{background:var(--sidebar);border-bottom:1px solid var(--card-border);padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.admin-brand{font-size:13px;letter-spacing:.28em;font-weight:600;color:var(--accent)}.admin-brand-sub{font-size:10px;letter-spacing:.12em;color:var(--text-dim);margin-top:3px;text-transform:uppercase}.admin-header-right{display:flex;align-items:center;gap:10px}.admin-user{font-size:12px;color:var(--text-dim)}.admin-btn{border-radius:6px;border:1px solid var(--card-border);background:transparent;color:var(--text);padding:7px 14px;font-size:11px;font-family:var(--font);cursor:pointer;transition:all .15s}.admin-btn:hover{background:#ffffff0a}.admin-btn--ghost{border-color:transparent;color:var(--text-dim)}.admin-btn--ghost:hover{color:var(--text)}.admin-btn--small{padding:4px 10px;font-size:10px}.admin-tabs{background:var(--card-bg);border-bottom:1px solid var(--card-border);padding:0 24px;display:flex;gap:4px}.admin-tab{background:transparent;border:none;color:var(--text-dim);padding:14px 20px;font-size:12px;font-family:var(--font);cursor:pointer;border-bottom:2px solid transparent;letter-spacing:.02em;transition:all .15s}.admin-tab:hover{color:var(--text)}.admin-tab--on{color:var(--accent);border-bottom-color:var(--accent)}.admin-main{padding:24px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.admin-section-title{font-size:13px;color:var(--text-dim);letter-spacing:.02em}.admin-filters{display:flex;gap:6px;flex-wrap:wrap}.admin-chip{border-radius:99px;border:1px solid var(--card-border);background:transparent;color:var(--text-dim);padding:5px 12px;font-size:11px;font-family:var(--font);cursor:pointer;transition:all .15s}.admin-chip:hover{color:var(--text);border-color:#ffffff26}.admin-chip--on{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.admin-chip--primary{background:var(--accent);color:#0c0c0e;border-color:var(--accent);font-weight:600}.admin-chip--primary:hover{background:#b08d5e;color:#0c0c0e}.admin-empty{padding:48px;text-align:center;color:var(--text-muted);font-size:13px;background:var(--card-bg);border-radius:10px;border:1px dashed var(--card-border)}.admin-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--card-bg);border-radius:10px;overflow:hidden;border:1px solid var(--card-border);font-size:12px}.admin-table th{text-align:left;padding:10px 14px;font-size:10px;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-weight:600;background:#0003;border-bottom:1px solid var(--card-border)}.admin-table td{padding:12px 14px;border-bottom:1px solid var(--card-border);color:var(--text);vertical-align:top}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#ffffff05}.admin-cell-sub{font-size:10px;color:var(--text-muted);margin-top:2px}.admin-select{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text);border-radius:6px;padding:5px 8px;font-size:11px;font-family:var(--font);cursor:pointer}.status-pill{display:inline-block;padding:3px 10px;border-radius:99px;font-size:10px;letter-spacing:.04em;text-transform:capitalize;white-space:nowrap}.status-pill--quote_sent{background:#c8a97e1f;color:var(--accent);border:1px solid rgba(200,169,126,.3)}.status-pill--invoice_requested{background:#f0a0501f;color:#f0a050;border:1px solid rgba(240,160,80,.3)}.status-pill--invoiced{background:#50c8781f;color:#50c878;border:1px solid rgba(80,200,120,.3)}.status-pill--cancelled{background:#c850501f;color:#c85050;border:1px solid rgba(200,80,80,.3)}.status-pill--active{background:#50c8781f;color:#50c878}.status-pill--inactive{background:#9696961f;color:var(--text-muted)}.status-pill--admin{background:var(--accent-dim);color:var(--accent)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:20px}.stat-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:14px 16px}.stat-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.stat-value{font-size:22px;font-weight:700;color:var(--text);letter-spacing:-.01em}.admin-search{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text);border-radius:99px;padding:5px 14px;font-size:11px;font-family:var(--font);outline:none;min-width:220px;transition:border-color .15s}.admin-search:focus{border-color:var(--accent)}.admin-search::placeholder{color:var(--text-muted)}.modal--wide{max-width:640px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.detail-col{background:#00000026;border-radius:8px;padding:12px 14px}.detail-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 6px;font-weight:600}.detail-value{font-size:12px;color:var(--text);line-height:1.6}.detail-value a{color:var(--accent);text-decoration:none}.detail-value a:hover{text-decoration:underline}.detail-section{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--card-border)}.detail-section:last-of-type{border-bottom:none}.detail-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:2px}.detail-table td{padding:5px 0;color:var(--text)}.detail-table td:first-child{color:var(--text-dim);width:45%}.detail-notes{background:#00000026;border-radius:6px;padding:10px 12px;font-size:12px;color:var(--text);white-space:pre-wrap;line-height:1.5}.admin-select--large{width:100%;padding:8px 12px;font-size:13px}.detail-docs{display:flex;gap:8px;flex-wrap:wrap}.mat-current{display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:8px;border:1px solid var(--card-border);background:#0000002e;margin-bottom:10px}.mat-current-thumb{width:44px;height:44px;border-radius:6px;object-fit:cover;border:1px solid var(--card-border);flex-shrink:0}.mat-current-name{font-size:12px;font-weight:600;color:var(--text);letter-spacing:.01em}.mat-current-meta{font-size:10px;color:var(--text-dim);margin-top:2px}.mat-grid-scroll{max-height:280px;overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}.mat-grid-scroll::-webkit-scrollbar{width:6px}.mat-grid-scroll::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:99px}.mat-brand-group+.mat-brand-group{margin-top:12px}.mat-brand-label{font-size:9px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--text-dim);margin-bottom:6px;padding-left:2px}.mat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px}.mat-tile{display:flex;flex-direction:column;align-items:stretch;background:transparent;border:1px solid var(--card-border);border-radius:8px;padding:0;overflow:hidden;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;font-family:inherit;font-size:0;position:relative}.mat-tile img{width:100%;height:48px;object-fit:cover;display:block}.mat-tile-name{padding:4px 5px 5px;font-size:9px;line-height:1.15;color:var(--text-dim);text-align:center;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#00000040}.mat-tile:hover{border-color:#ffffff2e;transform:translateY(-1px)}.mat-tile:hover .mat-tile-name{color:var(--text)}.mat-tile--on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 4px 14px #c8a97e2e}.mat-tile--on .mat-tile-name{color:var(--accent);background:var(--accent-dim);font-weight:600}.admin-topnav{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--sidebar);border-bottom:1px solid var(--card-border)}.admin-brand-name{font-size:13px;letter-spacing:.28em;font-weight:600;color:var(--accent)}.admin-topnav-right{display:flex;align-items:center;gap:14px}.admin-user-email{font-size:12px;color:var(--text-dim)}.admin-signout{border-radius:6px;border:1px solid var(--card-border);background:transparent;color:var(--text);padding:7px 14px;font-size:11px;font-family:var(--font);cursor:pointer;letter-spacing:.04em}.admin-signout:hover{background:#ffffff0d}.admin-body{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 56px)}.admin-sidebar{background:var(--card-bg);border-right:1px solid var(--card-border);padding:18px 12px}.admin-nav{display:flex;flex-direction:column;gap:2px}.admin-nav-item{text-align:left;background:transparent;border:none;color:var(--text-dim);padding:10px 14px;font-size:13px;font-family:var(--font);border-radius:6px;cursor:pointer;transition:all .12s;letter-spacing:.02em}.admin-nav-item:hover{background:#ffffff0a;color:var(--text)}.admin-nav-item--on{background:var(--accent-dim);color:var(--accent);font-weight:600}.admin-main{padding:32px 36px}.admin-section{margin-bottom:28px}.admin-h1{margin:0 0 6px;font-size:22px;font-weight:600;color:var(--text);letter-spacing:.01em}.admin-subtitle{margin:0;font-size:13px;color:var(--text-dim)}.admin-empty{border:1px dashed var(--card-border);border-radius:10px;padding:60px 24px;text-align:center;background:#ffffff04}.admin-empty-icon{font-size:30px;color:var(--text-dim);margin-bottom:10px}.admin-empty-title{font-size:14px;color:var(--text);margin-bottom:4px;letter-spacing:.02em}.admin-empty-sub{font-size:12px;color:var(--text-dim)}.auth-card--wide{max-width:480px}.auth-divider{height:1px;background:var(--card-border);margin:18px 0 14px}.auth-inline-link{color:var(--accent);text-decoration:none;font-weight:600}.auth-inline-link:hover{text-decoration:underline}.admin-pill{display:inline-block;padding:3px 9px;border-radius:99px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;border:1px solid var(--card-border);color:var(--text-dim)}.admin-pill--pending,.admin-pill--new{background:#d8a8501f;color:var(--accent);border-color:#d8a85066}.admin-pill--approved,.admin-pill--quoted,.admin-pill--ordered{background:#6ec8821f;color:#6ec882;border-color:#6ec88266}.admin-pill--rejected,.admin-pill--lost{background:#dc645a1f;color:#dc645a;border-color:#dc645a66}.admin-pill--contacted{background:#78a0dc1f;color:#78a0dc;border-color:#78a0dc66}.form-field-error{margin-top:4px;font-size:11px;color:#dc645a;letter-spacing:.02em}.admin-table--clickable tr:hover td{background:#ffffff06}.admin-filter-label{font-size:11px;letter-spacing:.04em;color:var(--text-dim);text-transform:uppercase;margin-right:8px}.admin-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1100;display:flex;justify-content:flex-end}.admin-panel{background:var(--sidebar, #1a1c1f);border-left:1px solid var(--card-border);width:min(560px,100vw);height:100vh;overflow-y:auto;display:flex;flex-direction:column}.admin-panel-header{padding:18px 24px;border-bottom:1px solid var(--card-border);display:flex;justify-content:space-between;align-items:flex-start}.admin-panel-kicker{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim)}.admin-panel-title{margin:4px 0 0;font-size:18px;letter-spacing:.04em;font-family:var(--monospace-font, ui-monospace, monospace);color:var(--accent)}.admin-panel-body{padding:18px 24px 32px}.admin-panel-group{margin-bottom:20px}.admin-panel-group-title{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin:0 0 8px;font-weight:600}.admin-panel-group-body{border:1px solid var(--card-border);border-radius:8px;background:#ffffff04;padding:4px 12px}.admin-detail-row{display:grid;grid-template-columns:140px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04);align-items:baseline}.admin-detail-row:last-child{border-bottom:none}.admin-detail-label{font-size:11px;color:var(--text-dim);letter-spacing:.02em}.admin-detail-value{font-size:13px;color:var(--text);word-break:break-word}.configurator-userbar{position:absolute;top:14px;right:18px;z-index:60;display:flex;align-items:center;gap:12px;padding:7px 12px;background:#141416c7;border:1px solid var(--card-border);border-radius:8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:var(--font)}.configurator-userbar-email{font-size:12px;color:var(--text-dim);letter-spacing:.01em}.configurator-userbar-signout{border:1px solid var(--card-border);background:transparent;color:var(--text);font-family:var(--font);font-size:11px;letter-spacing:.04em;padding:6px 12px;border-radius:6px;cursor:pointer;transition:background .15s,border-color .15s}.configurator-userbar-signout:hover{background:#ffffff0f;border-color:#d8a85080}.cabinet-field-label{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);margin:14px 0 6px;font-weight:600}.cabinet-field-label:first-of-type{margin-top:4px}.cabinet-text{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text);font-family:var(--font);font-size:12px;letter-spacing:.01em;padding:8px 10px;outline:none;transition:border-color .12s,box-shadow .12s;resize:vertical}.cabinet-text:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--accent-dim)}.cabinet-text::placeholder{color:var(--text-muted)}.cabinet-select{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;color:var(--text);font-family:var(--font);font-size:12px;letter-spacing:.01em;padding:8px 10px;cursor:pointer}.cabinet-select:focus{border-color:var(--input-focus);outline:none}.cabinet-cladded-note{margin-top:10px;padding:9px 11px;background:var(--accent-dim);border-left:2px solid var(--accent);border-radius:4px;font-size:12px;color:var(--text);line-height:1.45}.cabinet-cladded-note strong{color:var(--accent);font-weight:600}.cabinet-supplier-links{margin-top:6px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:11px;color:var(--text-dim)}.cabinet-supplier-links a{color:var(--accent);text-decoration:none;font-weight:600}.cabinet-supplier-links a:hover{text-decoration:underline}.cabinet-supplier-lead{color:var(--text-muted);font-size:10px;letter-spacing:.01em}.cabinet-supplier-dot{color:var(--text-muted);margin:0 2px}.cabinet-dims{margin-top:16px;padding:12px 13px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px}.cabinet-dims-title{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-weight:600}.cabinet-dims-note{font-size:10px;color:var(--text-muted);margin:2px 0 8px}.cabinet-dims-rows{display:flex;flex-direction:column;gap:4px}.cabinet-dims-rows>div{display:flex;justify-content:space-between;align-items:baseline;font-size:12px}.cabinet-dims-rows span{color:var(--text-dim)}.cabinet-dims-rows strong{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.cabinet-dims-warning{margin-top:10px;padding:8px 10px;background:#dc645a1a;border-left:2px solid #dc645a;border-radius:4px;font-size:11px;line-height:1.45;color:#f4c7c3}.custom-material{margin-top:12px;padding-top:12px;border-top:1px solid var(--card-border)}.custom-material-btn{width:100%;background:transparent;color:var(--text);border:1px dashed var(--card-border);border-radius:6px;padding:11px 14px;font-family:var(--font);font-size:11px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:border-color .12s,background .12s,color .12s}.custom-material-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.custom-material-drop{border:1px dashed var(--card-border);border-radius:8px;padding:16px;background:#ffffff04;cursor:pointer;transition:border-color .12s,background .12s}.custom-material-drop:hover,.custom-material-drop--over{border-color:var(--accent);background:var(--accent-dim)}.custom-material-drop-text{text-align:center}.custom-material-drop-title{font-size:12px;color:var(--text);letter-spacing:.02em;margin-bottom:4px}.custom-material-drop-hint{font-size:10px;color:var(--text-dim);letter-spacing:.02em}.custom-material-drop-loaded{display:flex;align-items:center;gap:12px;text-align:left}.custom-material-drop-thumb{width:56px;height:56px;object-fit:cover;border-radius:4px;border:1px solid var(--card-border);flex-shrink:0}.custom-material-drop-loaded .custom-material-drop-text{text-align:left;min-width:0}.custom-material-drop-name{font-size:12px;color:var(--text);font-weight:600;margin-bottom:2px;word-break:break-all}.custom-material-error{margin-top:8px;padding:8px 11px;background:#dc645a1a;border-left:2px solid #dc645a;border-radius:4px;font-size:11px;color:#f4c7c3;letter-spacing:.01em;line-height:1.4}.cladded-toggle{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--card-border);border-radius:6px;background:#ffffff04;font-size:12px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.cladded-toggle input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);cursor:pointer}.cladded-num{width:110px}.cladded-hint{font-size:10px;color:var(--text-muted);margin-top:3px;letter-spacing:.02em}.cabinet-cladded-info{margin-top:16px;padding:9px 11px;background:#ffffff06;border-left:2px solid var(--text-dim);border-radius:4px;font-size:11px;color:var(--text-dim);letter-spacing:.02em;line-height:1.4}.share-page{position:relative;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background:var(--bg)}.share-wordmark{position:absolute;top:20px;left:24px;z-index:3}.share-stage{position:relative;flex:1;min-height:0}.share-hint{position:absolute;bottom:12px;left:50%;transform:translate(-50%);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);pointer-events:none}.share-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 24px;border-top:1px solid var(--card-border);background:var(--sidebar)}.share-specs{display:flex;flex-wrap:wrap;gap:6px 28px;min-width:0}.share-spec{display:flex;flex-direction:column;gap:2px}.share-spec span{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-dim)}.share-spec strong{font-size:12px;font-weight:500;color:var(--text);white-space:nowrap}.share-enquire-btn{width:auto;margin-top:0;padding:12px 26px;text-decoration:none;text-align:center;flex-shrink:0;display:inline-block}@media(max-width:640px){.share-strip{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom))}.share-specs{gap:4px 18px}.share-wordmark{top:14px;left:16px}}.share-page--message{align-items:center;justify-content:center}.share-message{max-width:420px;padding:24px;text-align:center;color:var(--text-dim);font-size:13px}.share-message h1{font-size:18px;font-weight:600;letter-spacing:.04em;color:var(--text);margin-bottom:10px}.share-message p{line-height:1.7;margin-bottom:8px}.share-message .share-enquire-btn{margin-top:16px}.share-link-row{margin-top:14px}.share-link-input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);font-family:var(--font);font-size:12px;letter-spacing:.02em}.share-link-input:focus{outline:none;border-color:var(--input-focus)}.share-showroom-logo{max-width:160px;max-height:44px;object-fit:contain;display:block;background:#f4efe5;padding:8px 14px;border-radius:8px}.branding-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius);padding:18px 20px;margin-bottom:22px}.branding-row{display:flex;gap:36px;flex-wrap:wrap;margin-top:14px}.branding-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--text-dim);margin-bottom:10px}.branding-logo-block{min-width:220px}.branding-logo-preview{background:#f4efe5;border-radius:8px;padding:14px 18px;display:inline-block}.branding-logo-preview img{max-width:180px;max-height:56px;object-fit:contain;display:block}.branding-logo-placeholder{background:#f4efe5;color:#2e2822;border-radius:8px;padding:18px;font-size:13px;letter-spacing:.24em;text-transform:uppercase;display:inline-block}.branding-logo-actions{display:flex;gap:8px;align-items:center;margin-top:10px;max-width:240px}.branding-upload-btn{display:inline-block;text-align:center;padding:8px 18px;width:auto;margin-top:0;cursor:pointer}.branding-btn--busy{opacity:.5;pointer-events:none}.branding-hint{font-size:11px;color:var(--text-muted);margin-top:8px;max-width:240px}.branding-mode-block{display:flex;flex-direction:column;gap:8px;max-width:380px}.branding-mode-option{text-align:left;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:10px 14px;cursor:pointer;color:var(--text);font-family:var(--font);transition:border-color .15s}.branding-mode-option strong{display:block;font-size:12px;margin-bottom:3px}.branding-mode-option span{font-size:11px;color:var(--text-dim);line-height:1.5}.branding-mode-option--on{border-color:var(--accent);background:var(--accent-dim)}.quote-pdf-btn{background:transparent;border:1px solid var(--accent);color:var(--accent);border-radius:99px;padding:4px 14px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font);cursor:pointer;transition:background .15s}.quote-pdf-btn:hover{background:var(--accent-dim)}.quote-pdf-btn:disabled{opacity:.5;cursor:default}
