:root {
  --bg: #f3f5f4;
  --panel: #ffffff;
  --ink: #171c1a;
  --muted: #66716d;
  --line: #d8dfdc;
  --soft: #eef2f0;
  --accent: #0f766e;
  --accent-dark: #095a54;
  --warn: #bd7417;
  --danger: #c3302d;
  --blue: #2d65a8;
  --brand-red: #e42b32;
  --sidebar: #15191b;
  --sidebar-active: #292f32;
  --sidebar-muted: #aeb8b4;
  --shadow: 0 1px 2px rgba(18, 27, 23, 0.06);
}

/* Warehouse 3D intake: photo/LiDAR collection and catalogue publishing. */
.production-theme #warehouseCatalogDialog .warehouse-catalog-browser-head {
  gap: 14px;
}

.production-theme #warehouseCatalogDialog .warehouse-model-intake-open {
  margin-left: auto;
  min-height: 36px;
  border: 0;
  border-radius: 8px;
  padding: 0 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #fff;
  background: #137b6e;
  font-weight: 700;
  white-space: nowrap;
}

.production-theme #warehouseCatalogDialog .warehouse-model-intake-open:hover { color: #fff; background: #0f665c; }
.production-theme #warehouseCatalogDialog .warehouse-model-intake-open .lucide { width: 18px; height: 18px; }

.production-theme .warehouse-model-intake-dialog {
  width: min(1480px, calc(100vw - 24px));
  height: min(920px, calc(100vh - 24px));
  max-width: none;
  max-height: none;
  margin: auto;
  padding: 0;
  border: 1px solid #cdd7d3;
  border-radius: 16px;
  background: #f4f7f6;
  color: #1c2825;
  box-shadow: 0 28px 80px rgb(13 29 24 / 28%);
  overflow: hidden;
}

.production-theme .warehouse-model-intake-dialog[open] { display: block; }
.production-theme .warehouse-model-intake-dialog::backdrop { background: rgb(14 25 22 / 60%); backdrop-filter: blur(4px); }
.production-theme .warehouse-model-intake-dialog > form { height: 100%; display: grid; grid-template-rows: auto minmax(0, 1fr); }

.production-theme .warehouse-model-intake-head {
  min-height: 88px;
  padding: 18px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: #fff;
  background: linear-gradient(120deg, #17221f, #253630);
}

.production-theme .warehouse-model-intake-head span,
.production-theme .warehouse-model-intake-section > header span,
.production-theme .warehouse-model-intake-aside section > span,
.production-theme .warehouse-model-intake-queue-head span {
  display: block;
  color: #82cfc1;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
}

.production-theme .warehouse-model-intake-head h2 { margin: 3px 0 2px; color: #fff; font-size: 24px; line-height: 1.1; }
.production-theme .warehouse-model-intake-head p { margin: 0; color: #c6d5d0; font-size: 12px; }
.production-theme .warehouse-model-intake-head > button {
  width: 38px;
  height: 38px;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 9px;
  display: grid;
  place-items: center;
  color: #fff;
  background: rgb(255 255 255 / 8%);
}

.production-theme .warehouse-model-intake-body { min-height: 0; display: grid; grid-template-columns: minmax(0, 1fr) 330px; }
.production-theme .warehouse-model-intake-form { min-width: 0; overflow: auto; padding: 20px 24px; }
.production-theme .warehouse-model-intake-aside { min-width: 0; overflow: auto; border-left: 1px solid #d9e1de; background: #fff; }
.production-theme .warehouse-model-intake-aside > section { padding: 20px; border-bottom: 1px solid #e1e7e5; }
.production-theme .warehouse-model-intake-aside h3 { margin: 3px 0 14px; font-size: 17px; }

.production-theme .warehouse-model-intake-section {
  margin-bottom: 16px;
  padding: 18px;
  border: 1px solid #d9e2df;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 8px rgb(29 52 45 / 4%);
}

.production-theme .warehouse-model-intake-section > header { margin-bottom: 16px; display: flex; align-items: flex-start; gap: 12px; }
.production-theme .warehouse-model-intake-section > header > b {
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: #fff;
  background: #137b6e;
  font-size: 12px;
}
.production-theme .warehouse-model-intake-section > header h3 { margin: 0 0 2px; font-size: 17px; }
.production-theme .warehouse-model-intake-section > header h3 small {
  margin-left: 6px;
  color: #78908a;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.production-theme .warehouse-model-intake-section > header p { margin: 0; color: #6b7773; font-size: 12px; }

.production-theme .warehouse-model-intake-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.production-theme .warehouse-model-intake-grid .wide { grid-column: 1 / -1; }
.production-theme .warehouse-model-intake-grid label,
.production-theme .warehouse-model-intake-quantity {
  min-width: 0;
  display: grid;
  gap: 5px;
  color: #52605c;
  font-size: 11px;
  font-weight: 700;
}
.production-theme .warehouse-model-intake-grid input,
.production-theme .warehouse-model-intake-grid select,
.production-theme .warehouse-model-intake-grid textarea {
  width: 100%;
  min-height: 40px;
  box-sizing: border-box;
  border: 1px solid #cfd9d5;
  border-radius: 8px;
  padding: 8px 10px;
  color: #17221f;
  background: #fbfcfc;
  font: inherit;
  font-size: 13px;
  font-weight: 500;
}
.production-theme .warehouse-model-intake-grid textarea { resize: vertical; }
.production-theme .warehouse-model-intake-grid input:focus,
.production-theme .warehouse-model-intake-grid select:focus,
.production-theme .warehouse-model-intake-grid textarea:focus { outline: 2px solid rgb(19 123 110 / 18%); border-color: #137b6e; }
.production-theme .warehouse-model-intake-dimensions { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.production-theme .warehouse-model-intake-modes {
  margin: -2px 0 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.production-theme .warehouse-model-intake-modes > div {
  min-height: 52px;
  padding: 9px 11px;
  border: 1px solid #d6e2de;
  border-radius: 8px;
  display: grid;
  grid-template-columns: auto 1fr;
  align-content: center;
  column-gap: 8px;
  background: #f6faf9;
}
.production-theme .warehouse-model-intake-modes .lucide { width: 18px; height: 18px; grid-row: 1 / span 2; color: #137b6e; }
.production-theme .warehouse-model-intake-modes strong { font-size: 11px; }
.production-theme .warehouse-model-intake-modes span { color: #71807b; font-size: 9px; }

.production-theme .warehouse-model-intake-upload-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.production-theme .warehouse-model-intake-drop {
  min-height: 112px;
  border: 1px dashed #91aaa2;
  border-radius: 10px;
  padding: 16px;
  display: grid;
  grid-template-columns: 30px 1fr;
  align-content: center;
  column-gap: 10px;
  color: #24423a;
  background: #f5faf8;
  cursor: pointer;
}
.production-theme .warehouse-model-intake-drop:hover { border-color: #137b6e; background: #edf8f5; }
.production-theme .warehouse-model-intake-drop.lidar { border-color: #879cc2; background: #f5f7fc; }
.production-theme .warehouse-model-intake-drop .lucide { width: 27px; height: 27px; grid-row: 1 / span 2; color: #137b6e; }
.production-theme .warehouse-model-intake-drop strong { font-size: 13px; }
.production-theme .warehouse-model-intake-drop span { margin-top: 3px; color: #74817d; font-size: 10px; line-height: 1.35; }
.production-theme .warehouse-model-intake-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

.production-theme .warehouse-model-intake-lidar-note {
  margin-top: 12px;
  padding: 11px 12px;
  border-radius: 9px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #28443d;
  background: #eaf5f2;
}
.production-theme .warehouse-model-intake-lidar-note .lucide { width: 20px; height: 20px; flex: 0 0 auto; color: #137b6e; }
.production-theme .warehouse-model-intake-lidar-note div { display: grid; gap: 2px; }
.production-theme .warehouse-model-intake-lidar-note strong { font-size: 12px; }
.production-theme .warehouse-model-intake-lidar-note span { color: #5e706a; font-size: 10px; line-height: 1.45; }

.production-theme .warehouse-model-intake-assets { margin-top: 14px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.production-theme .warehouse-model-intake-assets > article {
  min-width: 0;
  min-height: 84px;
  border: 1px solid #d8e0dd;
  border-radius: 9px;
  padding: 7px;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr) 24px;
  gap: 8px;
  background: #fbfcfc;
}
.production-theme .warehouse-model-intake-assets > article > img,
.production-theme .warehouse-model-intake-file-icon { width: 62px; height: 68px; border-radius: 6px; object-fit: cover; background: #e6ecea; }
.production-theme .warehouse-model-intake-file-icon { display: grid; place-items: center; align-content: center; gap: 4px; color: #38534c; }
.production-theme .warehouse-model-intake-file-icon .lucide { width: 24px; height: 24px; }
.production-theme .warehouse-model-intake-file-icon b { font-size: 9px; }
.production-theme .warehouse-model-intake-assets > article > div:nth-child(2) { min-width: 0; display: grid; align-content: center; gap: 4px; }
.production-theme .warehouse-model-intake-assets strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.production-theme .warehouse-model-intake-assets small { color: #74807c; font-size: 9px; }
.production-theme .warehouse-model-intake-assets select { min-width: 0; height: 26px; border: 1px solid #d2dbd8; border-radius: 5px; font-size: 9px; }
.production-theme .warehouse-model-intake-assets [data-model-intake-remove] { width: 24px; height: 24px; border: 0; border-radius: 5px; display: grid; place-items: center; color: #6e7975; background: transparent; }
.production-theme .warehouse-model-intake-assets [data-model-intake-remove] .lucide { width: 14px; height: 14px; }
.production-theme .warehouse-model-intake-assets-empty { grid-column: 1 / -1; padding: 18px; border: 1px dashed #d6dfdc; border-radius: 8px; color: #85908c; text-align: center; font-size: 11px; }

.production-theme .warehouse-model-intake-checklist { display: grid; gap: 7px; }
.production-theme .warehouse-model-intake-checklist > div { min-height: 28px; display: flex; align-items: center; gap: 8px; color: #697570; font-size: 11px; }
.production-theme .warehouse-model-intake-checklist .lucide { width: 16px; height: 16px; color: #a5afab; }
.production-theme .warehouse-model-intake-checklist > div.complete { color: #176d5f; font-weight: 700; }
.production-theme .warehouse-model-intake-checklist > div.complete .lucide { color: #15927f; }
.production-theme .warehouse-model-intake-checklist small { color: #9aa4a0; font-size: 8px; }

.production-theme .warehouse-model-intake-queue-head { display: flex; align-items: flex-start; justify-content: space-between; }
.production-theme .warehouse-model-intake-queue-head h3 { margin-bottom: 10px; }
.production-theme .warehouse-model-intake-queue-head > b { min-width: 28px; height: 28px; border-radius: 14px; display: grid; place-items: center; color: #137b6e; background: #e7f3f0; font-size: 11px; }
.production-theme .warehouse-model-intake-tasks { display: grid; gap: 7px; }
.production-theme .warehouse-model-intake-tasks > button {
  width: 100%;
  min-height: 64px;
  border: 1px solid #dde4e1;
  border-radius: 8px;
  padding: 9px;
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 9px;
  text-align: left;
  color: #24312d;
  background: #fff;
}
.production-theme .warehouse-model-intake-tasks > button:hover,
.production-theme .warehouse-model-intake-tasks > button.active { border-color: #62a99d; background: #f1f8f6; }
.production-theme .warehouse-model-intake-task-status { width: 8px; height: 8px; border-radius: 50%; background: #b6bfbc; }
.production-theme .warehouse-model-intake-task-status.photos { background: #e09c32; }
.production-theme .warehouse-model-intake-task-status.modeling { background: #4389d0; }
.production-theme .warehouse-model-intake-task-status.review { background: #8159c7; }
.production-theme .warehouse-model-intake-task-status.ready,
.production-theme .warehouse-model-intake-task-status.published { background: #15927f; }
.production-theme .warehouse-model-intake-tasks > button > div { min-width: 0; display: grid; gap: 2px; }
.production-theme .warehouse-model-intake-tasks strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.production-theme .warehouse-model-intake-tasks small { color: #7a8581; font-size: 9px; }
.production-theme .warehouse-model-intake-tasks em { color: #137b6e; font-size: 9px; font-style: normal; font-weight: 700; }
.production-theme .warehouse-model-intake-tasks .lucide { width: 14px; height: 14px; color: #88938f; }
.production-theme .warehouse-model-intake-tasks-empty { padding: 24px 10px; color: #929c98; text-align: center; font-size: 11px; }

.production-theme .warehouse-model-intake-actions {
  position: sticky;
  bottom: 0;
  z-index: 3;
  margin: 18px -24px -20px;
  min-height: 76px;
  padding: 14px 24px;
  border-top: 1px solid #d5dedb;
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgb(255 255 255 / 96%);
  box-shadow: 0 -8px 22px rgb(24 42 36 / 7%);
  backdrop-filter: blur(10px);
}
.production-theme #warehouseModelIntakeProgress { min-width: 0; margin-right: auto; color: #5d6c67; font-size: 11px; }
.production-theme .warehouse-model-intake-actions button { min-height: 40px; border-radius: 8px; padding: 0 15px; font-weight: 700; }
.production-theme .warehouse-model-intake-actions .primary { border: 0; display: inline-flex; align-items: center; gap: 8px; color: #fff; background: #137b6e; }
.production-theme .warehouse-model-intake-actions .primary:disabled { opacity: .55; }
.production-theme .warehouse-model-intake-actions .ghost { border: 1px solid #cbd6d2; color: #35443f; background: #fff; }

@media (max-width: 980px) {
  .production-theme .warehouse-model-intake-dialog { width: 100vw; height: 100vh; border: 0; border-radius: 0; }
  .production-theme .warehouse-model-intake-body { grid-template-columns: 1fr; overflow: auto; }
  .production-theme .warehouse-model-intake-form,
  .production-theme .warehouse-model-intake-aside { overflow: visible; }
  .production-theme .warehouse-model-intake-aside { border-left: 0; border-top: 1px solid #d9e1de; }
  .production-theme .warehouse-model-intake-dimensions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .production-theme .warehouse-model-intake-modes { grid-template-columns: 1fr; }
  .production-theme .warehouse-model-intake-assets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .production-theme .warehouse-model-intake-head { padding: 14px 16px; }
  .production-theme .warehouse-model-intake-head h2 { font-size: 20px; }
  .production-theme .warehouse-model-intake-form { padding: 12px; }
  .production-theme .warehouse-model-intake-section { padding: 14px; }
  .production-theme .warehouse-model-intake-grid,
  .production-theme .warehouse-model-intake-dimensions,
  .production-theme .warehouse-model-intake-upload-row,
  .production-theme .warehouse-model-intake-modes,
  .production-theme .warehouse-model-intake-assets { grid-template-columns: 1fr; }
  .production-theme .warehouse-model-intake-actions { margin-left: -12px; margin-right: -12px; padding: 10px 12px; flex-wrap: wrap; }
  .production-theme #warehouseModelIntakeProgress { flex: 1 0 100%; }
}

html {
  color-scheme: light;
  overflow-x: hidden;
}

body.production-theme {
  min-width: 320px;
  background: var(--bg);
  letter-spacing: 0;
}

.production-theme *,
.production-theme *::before,
.production-theme *::after {
  letter-spacing: 0;
}

.production-theme .lucide {
  width: 17px;
  height: 17px;
  flex: 0 0 17px;
  stroke-width: 1.8;
}

.production-theme button,
.production-theme input,
.production-theme select,
.production-theme textarea,
.production-theme summary,
.production-theme label {
  min-width: 0;
}

.production-theme button,
.production-theme .file-button,
.production-theme .primary,
.production-theme .ghost,
.production-theme .small,
.production-theme .estimate-mode-tab,
.production-theme .builder-tab,
.production-theme .project-tab {
  border-radius: 4px;
}

.production-theme .primary,
.production-theme .ghost,
.production-theme .small {
  min-height: 36px;
}

.production-theme .primary {
  background: var(--accent);
  box-shadow: none;
}

.production-theme .primary:hover,
.production-theme .primary:focus-visible {
  background: var(--accent-dark);
}

.production-theme .ghost {
  border-color: #d4dbd8;
  background: #fff;
}

.production-theme .ghost:hover,
.production-theme .small:hover {
  background: #f0f3f2;
}

.production-theme .small.primary:hover,
.production-theme .small.primary:focus-visible {
  background: var(--accent-dark);
  color: #fff;
}

.production-theme input,
.production-theme select,
.production-theme textarea {
  border-color: #d3dbd7;
  border-radius: 4px;
  background: #fff;
}

.production-theme input:focus,
.production-theme select:focus,
.production-theme textarea:focus,
.production-theme button:focus-visible,
.production-theme summary:focus-visible {
  outline: 2px solid rgba(45, 101, 168, 0.38);
  outline-offset: 1px;
  border-color: #7aa2d1;
}

.production-theme .action-with-icon,
.production-theme .notification-button,
.production-theme .data-actions-menu summary,
.production-theme .data-actions-popover > * {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.production-theme .tab {
  position: relative;
}

.production-theme .brand-911 {
  border-radius: 0;
}

.production-theme .brand-wordmark {
  letter-spacing: 0;
}

.production-theme .brand-wordmark span {
  color: var(--brand-red);
}

.production-theme .shell {
  padding-bottom: 24px;
}

.production-theme .topbar {
  display: block;
  margin: 0 0 16px;
  padding: 0;
  border: 0;
  background: transparent;
}

.production-theme .topbar-workspace {
  position: sticky;
  top: 0;
  z-index: 80;
  display: grid;
  grid-template-columns: minmax(150px, auto) minmax(240px, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 68px;
  padding: 10px 20px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.98);
}

.production-theme .topbar-workspace > div:first-child {
  min-width: 0;
}

.production-theme .eyebrow {
  color: #7d8783;
  font-size: 10px;
  font-weight: 800;
}

.production-theme .topbar h2 {
  margin-top: 2px;
  font-size: 21px;
  line-height: 1.15;
}

.production-theme .global-search-shell {
  justify-self: center;
  width: min(520px, 100%);
  max-width: none;
  align-self: center;
}

.production-theme .global-search-shell input {
  min-height: 38px;
  padding-inline: 13px;
  background: #f7f9f8;
}

.production-theme .topbar-actions {
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: nowrap;
}

.production-theme .topbar-actions > .ghost,
.production-theme .topbar-actions > .primary,
.production-theme .topbar-actions summary,
.production-theme .notification-button {
  min-height: 38px;
  padding-inline: 11px;
  white-space: nowrap;
}

.production-theme .global-save-button {
  border-color: #24704b;
  background: #24704b;
  color: #fff;
}

.production-theme .global-save-button:hover,
.production-theme .global-save-button:focus-visible {
  border-color: #1c5a3c;
  background: #1c5a3c;
}

.production-theme .app-release-badge {
  position: fixed;
  bottom: 8px;
  left: 12px;
  z-index: 110;
  padding: 4px 7px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 4px;
  background: rgba(21, 25, 27, 0.86);
  color: rgba(255, 255, 255, 0.72);
  font: 700 10px/1.2 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: 0.02em;
  pointer-events: none;
  backdrop-filter: blur(8px);
}

.production-theme .data-actions-menu {
  position: relative;
}

.production-theme .data-actions-menu summary {
  cursor: pointer;
  list-style: none;
}

.production-theme .data-actions-menu summary::-webkit-details-marker {
  display: none;
}

.production-theme .data-actions-menu[open] summary {
  background: #eef2f0;
}

.production-theme .data-actions-menu[open] summary .lucide:last-child {
  transform: rotate(180deg);
}

.production-theme .data-actions-popover {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  z-index: 120;
  display: grid;
  width: 228px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 14px 32px rgba(17, 24, 21, 0.14);
}

.production-theme .data-actions-popover > * {
  width: 100%;
  justify-content: flex-start;
  border-color: transparent;
}

.production-theme .notification-panel,
.production-theme .global-search-results {
  border-radius: 5px;
  box-shadow: 0 14px 32px rgba(17, 24, 21, 0.14);
}

.production-theme .view {
  padding: 0 20px 24px;
}

.production-theme .metric,
.production-theme .panel,
.production-theme dialog,
.production-theme .feature-panel {
  border-color: var(--line);
  border-radius: 5px;
  box-shadow: var(--shadow);
}

.production-theme .panel {
  padding: 16px;
}

.production-theme .panel h3,
.production-theme .form-head h3 {
  font-size: 17px;
}

.production-theme .panel-head,
.production-theme .form-head,
.production-theme .section-head {
  margin-bottom: 12px;
}

.production-theme .metrics {
  gap: 0;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: #fff;
}

.production-theme .metric {
  min-height: 86px;
  padding: 14px 16px;
  border: 0;
  border-right: 1px solid var(--line);
  border-radius: 0;
  box-shadow: none;
}

.production-theme .metric:last-child {
  border-right: 0;
}

.production-theme .metric strong {
  font-size: 22px;
}

.production-theme .dashboard-grid {
  gap: 12px;
}

.production-theme .readiness-center {
  margin-top: 12px;
}

.production-theme .readiness-row {
  padding-block: 10px;
}

.production-theme .readiness-signal,
.production-theme .status,
.production-theme .badge {
  border-radius: 3px;
}

.production-theme .table-wrap {
  border-color: var(--line);
  border-radius: 4px;
}

.production-theme table {
  font-size: 12px;
}

.production-theme th {
  background: #f4f6f5;
  color: #53605b;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.production-theme th,
.production-theme td {
  padding: 9px 10px;
  border-color: #e2e7e4;
}

.production-theme tbody tr:hover td {
  background: #f8faf9;
}

.production-theme .inventory-list-panel th {
  line-height: 1.15;
  overflow-wrap: anywhere;
  white-space: normal;
}

/* Project center */
.production-theme #estimates .estimate-mode-tabs {
  gap: 0;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--line);
}

.production-theme #estimates .estimate-mode-tab {
  min-height: 38px;
  padding-inline: 15px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--muted);
}

.production-theme #estimates .estimate-mode-tab.active {
  border-bottom-color: var(--accent);
  background: #fff;
  color: var(--ink);
}

.production-theme #estimates .editor-panel,
.production-theme #estimates .list-panel {
  box-shadow: none;
}

.production-theme #estimateForm > .form-head {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}

.production-theme #estimateForm > .form-head h3 {
  font-size: 23px;
}

.production-theme #estimateForm > .form-head .form-actions {
  gap: 6px;
}

.production-theme #estimateForm > .form-head .form-actions button {
  min-height: 34px;
  padding-inline: 10px;
  font-size: 12px;
}

.production-theme .project-stage-shell {
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto);
  padding: 0;
  overflow: hidden;
  border-radius: 4px;
  background: #fff;
}

.production-theme .project-stage-bar {
  min-height: 62px;
}

.production-theme .project-stage {
  display: grid;
  place-items: center;
  min-height: 62px;
  padding: 9px 6px;
  border-top-width: 3px;
  border-right: 1px solid #e5e9e7;
}

.production-theme .project-stage.current {
  background: #eaf5f2;
}

.production-theme .project-stage-actions {
  align-self: stretch;
  align-content: center;
  padding: 9px 12px;
  border-left: 1px solid var(--line);
  background: #f7f9f8;
}

.production-theme .project-production-control {
  border-radius: 4px;
  box-shadow: none;
}

.production-theme .project-tabs {
  gap: 0;
  flex-wrap: nowrap;
  margin-bottom: 14px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
}

.production-theme .project-tab {
  flex: 0 0 auto;
  min-height: 38px;
  padding-inline: 12px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #55625d;
  font-size: 12px;
}

.production-theme .project-tab:hover {
  background: #f4f7f5;
}

.production-theme .project-tab.active {
  border-bottom-color: var(--accent);
  background: #eef7f5;
  color: var(--accent-dark);
}

.production-theme .form-grid {
  gap: 10px 12px;
}

.production-theme .form-grid label,
.production-theme .operation-form label,
.production-theme .technical-plan-picker label,
.production-theme .technical-plan-meta label {
  color: #5d6965;
  font-size: 11px;
  font-weight: 700;
}

.production-theme .form-grid input,
.production-theme .form-grid select,
.production-theme .operation-form input,
.production-theme .operation-form select {
  margin-top: 5px;
}

/* Warehouse pult */
.production-theme #inventoryHome {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.production-theme #inventory .panel {
  padding: 0;
  overflow: hidden;
  box-shadow: none;
}

.production-theme .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.production-theme .warehouse-pult {
  --pult-bg: #151a1c;
  --pult-panel: #1d2325;
  --pult-line: #343c3f;
  --pult-muted: #9da9a5;
  --pult-green: #73c26b;
  --pult-amber: #d99229;
  --pult-red: #df4745;
  color: #f4f7f5;
  overflow: hidden;
  border: 1px solid #202729;
  border-radius: 4px;
  background: var(--pult-bg);
  box-shadow: 0 14px 35px rgba(8, 12, 13, 0.16);
}

.production-theme .warehouse-pult-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 68px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--pult-line);
  background: #111516;
}

.production-theme .warehouse-pult-heading {
  min-width: 180px;
}

.production-theme .warehouse-pult-eyebrow {
  display: block;
  margin-bottom: 2px;
  color: #e34a4e;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-heading h3 {
  margin: 0;
  color: #fff;
  font-size: 20px;
  line-height: 1.15;
}

.production-theme .warehouse-pult-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.production-theme .warehouse-pult-project-picker {
  display: grid;
  grid-template-columns: auto minmax(170px, 260px);
  align-items: center;
  gap: 7px;
  color: var(--pult-muted);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-project-picker select,
.production-theme .warehouse-pult-activity-head select,
.production-theme .warehouse-pult-scan-row select {
  min-height: 36px;
  border-color: #434c4f;
  background: #1b2022;
  color: #fff;
}

.production-theme .warehouse-pult-dark-button,
.production-theme .warehouse-pult-keyboard,
.production-theme .warehouse-pult-footer-button,
.production-theme .warehouse-pult-start,
.production-theme .warehouse-pult-row-action,
.production-theme .warehouse-pult-flow-step,
.production-theme .warehouse-pult-categories button,
.production-theme .warehouse-pult-scan-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-radius: 3px;
}

.production-theme .warehouse-pult-dark-button {
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid #434c4f;
  background: #1b2022;
  color: #eef2f0;
  font-weight: 700;
}

.production-theme .warehouse-pult-dark-button:hover,
.production-theme .warehouse-pult-keyboard:hover,
.production-theme .warehouse-pult-footer-button:hover {
  background: #2a3134;
}

.production-theme .warehouse-pult-dark-button:disabled {
  opacity: 0.45;
}

.production-theme .warehouse-pult-user {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 142px;
  padding-left: 10px;
  border-left: 1px solid #343c3f;
}

.production-theme .warehouse-pult-user > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid #697477;
  border-radius: 50%;
  color: #fff;
  font-size: 11px;
  font-weight: 850;
}

.production-theme .warehouse-pult-user div {
  display: grid;
  line-height: 1.2;
}

.production-theme .warehouse-pult-user strong {
  font-size: 12px;
}

.production-theme .warehouse-pult-user small {
  color: var(--pult-muted);
  font-size: 10px;
}

.production-theme .warehouse-pult-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-height: 64px;
  border-bottom: 1px solid var(--pult-line);
}

.production-theme .warehouse-pult-meta > div {
  display: grid;
  align-content: center;
  gap: 3px;
  min-width: 0;
  padding: 9px 15px;
  border-right: 1px solid var(--pult-line);
}

.production-theme .warehouse-pult-meta > div:last-child {
  border-right: 0;
}

.production-theme .warehouse-pult-meta span,
.production-theme .warehouse-pult-table-head span {
  color: var(--pult-muted);
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-meta strong {
  overflow: hidden;
  color: #f5f7f6;
  font-size: 13px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .warehouse-pult-scan-row {
  display: grid;
  grid-template-columns: 28px minmax(190px, auto) minmax(220px, 1fr) 130px auto 40px;
  align-items: center;
  gap: 10px;
  margin: 10px 14px 0;
  padding: 8px 9px 8px 14px;
  border: 2px solid #5cad62;
  border-radius: 4px;
  background: #1b2122;
  box-shadow: inset 0 0 0 1px rgba(115, 194, 107, 0.12);
}

.production-theme .warehouse-pult-scan-row > .lucide {
  width: 26px;
  height: 26px;
  color: #dce5e1;
}

.production-theme .warehouse-pult-scan-copy {
  display: grid;
  line-height: 1.15;
}

.production-theme .warehouse-pult-scan-copy strong {
  color: #f4f7f5;
  font-size: 14px;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-scan-copy span {
  color: var(--pult-muted);
  font-size: 10px;
}

.production-theme .warehouse-pult-scan-row input {
  min-height: 38px;
  border-color: #465052;
  background: #0f1314;
  color: #fff;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  font-weight: 750;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-scan-button {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid #76ca70;
  background: #5cad62;
  color: #0f2414;
  font-weight: 850;
}

.production-theme .warehouse-pult-keyboard {
  width: 40px;
  min-height: 38px;
  padding: 0;
  border: 1px solid #4b5557;
  background: #252b2d;
  color: #f4f7f5;
}

.production-theme .warehouse-pult-feedback {
  min-height: 16px;
  margin: 4px 15px 7px;
  color: #8ed086;
  font-size: 10px;
  font-weight: 750;
}

.production-theme .warehouse-pult-feedback.bad {
  color: #ff7774;
}

.production-theme .warehouse-pult-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 0 14px 10px;
  overflow: hidden;
  border: 1px solid #d6dcda;
  border-radius: 3px;
  background: #f7f8f7;
}

.production-theme .warehouse-pult-flow-step {
  position: relative;
  display: grid;
  grid-template-columns: 24px 1fr;
  grid-template-rows: auto auto;
  justify-content: initial;
  gap: 1px 7px;
  min-height: 54px;
  padding: 7px 13px;
  border: 0;
  border-right: 1px solid #d7ddda;
  background: #f8faf9;
  color: #48514e;
  text-align: left;
}

.production-theme .warehouse-pult-flow-step:last-child {
  border-right: 0;
}

.production-theme .warehouse-pult-flow-step .lucide {
  grid-row: 1 / span 2;
  align-self: center;
  color: #69736f;
}

.production-theme .warehouse-pult-flow-step span {
  font-size: 11px;
  font-weight: 800;
}

.production-theme .warehouse-pult-flow-step strong {
  color: #77817d;
  font-size: 9px;
  font-weight: 650;
}

.production-theme .warehouse-pult-flow-step.active {
  background: #eef8ed;
  color: #23833b;
}

.production-theme .warehouse-pult-flow-step.active .lucide,
.production-theme .warehouse-pult-flow-step.complete .lucide {
  color: #43a74d;
}

.production-theme .warehouse-pult-flow-step.complete::after {
  position: absolute;
  right: 8px;
  bottom: 6px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #58b95e;
  content: "";
}

.production-theme .warehouse-pult-flow-step.disabled {
  opacity: 0.58;
}

.production-theme .warehouse-pult-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 0 14px;
  border: 1px solid #d8dedb;
  border-bottom: 0;
  border-radius: 3px 3px 0 0;
  background: #fff;
}

.production-theme .warehouse-pult-metric {
  display: grid;
  grid-template-columns: 38px 1fr auto;
  align-items: center;
  gap: 8px;
  min-height: 68px;
  padding: 8px 13px;
  border-right: 1px solid #dde2df;
  color: #252a28;
}

.production-theme .warehouse-pult-metric:last-child {
  border-right: 0;
}

.production-theme .warehouse-pult-metric > .lucide {
  width: 34px;
  height: 34px;
  padding: 5px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.production-theme .warehouse-pult-metric div {
  display: grid;
}

.production-theme .warehouse-pult-metric span {
  color: #525b57;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-metric strong {
  color: #202522;
  font-size: 24px;
  line-height: 1;
}

.production-theme .warehouse-pult-metric small {
  color: #59635f;
  font-size: 10px;
  font-weight: 750;
}

.production-theme .warehouse-pult-metric.ready { color: #43a34c; }
.production-theme .warehouse-pult-metric.missing,
.production-theme .warehouse-pult-metric.damaged { color: #d33b39; }
.production-theme .warehouse-pult-metric.replacement { color: #c37a15; }
.production-theme .warehouse-pult-metric.total { color: #3e4743; }

.production-theme .warehouse-pult-categories {
  display: flex;
  gap: 5px;
  margin: 0 14px;
  padding: 7px 9px;
  overflow-x: auto;
  border: 1px solid #d8dedb;
  border-bottom: 0;
  background: #f5f7f6;
  scrollbar-width: thin;
}

.production-theme .warehouse-pult-categories button {
  flex: 0 0 auto;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid #d4dad7;
  background: #fff;
  color: #3d4642;
  font-size: 10px;
  font-weight: 800;
}

.production-theme .warehouse-pult-categories button b {
  padding: 1px 5px;
  border-radius: 9px;
  background: #edf0ee;
  color: #68716d;
  font-size: 9px;
}

.production-theme .warehouse-pult-categories button.active {
  border-color: #242a2c;
  background: #242a2c;
  color: #fff;
}

.production-theme .warehouse-pult-categories button.active b {
  background: #4a5255;
  color: #fff;
}

.production-theme .warehouse-pult-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px;
  min-height: 360px;
  margin: 0 14px;
  border: 1px solid #d8dedb;
  background: #fff;
}

.production-theme .warehouse-pult-table-shell {
  min-width: 0;
  background: #fff;
}

.production-theme .warehouse-pult-table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 7px 11px;
  border-bottom: 1px solid #d8dedb;
  color: #252b28;
}

.production-theme .warehouse-pult-table-head > div {
  display: grid;
}

.production-theme .warehouse-pult-table-head strong {
  font-size: 12px;
}

.production-theme .warehouse-pult-table-head small {
  color: #6d7773;
  font-size: 10px;
}

.production-theme .warehouse-pult-table-wrap {
  max-height: 500px;
  overflow: auto;
  scrollbar-width: thin;
}

.production-theme .warehouse-pult-table {
  min-width: 920px;
  border-collapse: separate;
  border-spacing: 0;
  color: #1f2522;
  font-size: 10px;
}

.production-theme .warehouse-pult-table thead {
  position: sticky;
  top: 0;
  z-index: 3;
}

.production-theme .warehouse-pult-table th {
  padding: 7px 8px;
  border-right: 1px solid #dce1df;
  border-bottom: 1px solid #cfd6d3;
  background: #f3f5f4;
  color: #4c5551;
  font-size: 8px;
  font-weight: 850;
  text-transform: uppercase;
  white-space: nowrap;
}

.production-theme .warehouse-pult-table td {
  height: 50px;
  padding: 5px 8px;
  border-right: 1px solid #e0e5e2;
  border-bottom: 1px solid #e0e5e2;
  vertical-align: middle;
}

.production-theme .warehouse-pult-table tr:hover td {
  background: #f7faf8;
}

.production-theme .warehouse-pult-number {
  color: #727c78;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  text-align: center;
  white-space: nowrap;
}

.production-theme .warehouse-pult-table th:first-child,
.production-theme .warehouse-pult-table td:first-child {
  width: 38px;
  min-width: 38px;
}

.production-theme .warehouse-pult-thumb {
  display: grid;
  place-items: center;
  width: 46px;
  height: 36px;
  overflow: hidden;
  background: #f2f4f3;
}

.production-theme .warehouse-pult-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.production-theme .warehouse-pult-thumb-placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #84908b;
}

.production-theme .warehouse-pult-name {
  min-width: 190px;
}

.production-theme .warehouse-pult-name strong,
.production-theme .warehouse-pult-name span,
.production-theme .warehouse-pult-table td > small,
.production-theme .warehouse-pult-code,
.production-theme .warehouse-pult-barcode {
  display: block;
}

.production-theme .warehouse-pult-name strong {
  color: #1d2320;
  font-size: 10px;
  line-height: 1.25;
}

.production-theme .warehouse-pult-name span,
.production-theme .warehouse-pult-table td > small {
  margin-top: 2px;
  color: #747e7a;
  font-size: 8px;
}

.production-theme .warehouse-pult-progress-value.complete {
  color: #2a9a40;
}

.production-theme .warehouse-pult-code {
  max-width: 135px;
  overflow: hidden;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .warehouse-pult-barcode {
  position: relative;
  max-width: 135px;
  margin-top: 3px;
  padding-top: 10px;
  overflow: hidden;
  color: #68716d;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .warehouse-pult-barcode::before {
  position: absolute;
  inset: 0 0 auto;
  height: 8px;
  background: repeating-linear-gradient(90deg, #111 0 1px, transparent 1px 3px, #111 3px 5px, transparent 5px 7px);
  content: "";
}

.production-theme .warehouse-pult-location,
.production-theme .warehouse-pult-assignee {
  display: block;
  max-width: 110px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .warehouse-pult-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 82px;
  padding: 4px 6px;
  border-radius: 3px;
  font-size: 8px;
  font-weight: 850;
  white-space: nowrap;
}

.production-theme .warehouse-pult-status .lucide {
  width: 12px;
  height: 12px;
  flex-basis: 12px;
}

.production-theme .warehouse-pult-status.ready { background: #e1f4e2; color: #27883b; }
.production-theme .warehouse-pult-status.missing,
.production-theme .warehouse-pult-status.damaged { background: #fde6e4; color: #c83432; }
.production-theme .warehouse-pult-status.replacement,
.production-theme .warehouse-pult-status.incomplete { background: #fff0d8; color: #b66d0d; }

.production-theme .warehouse-pult-row-action {
  width: 30px;
  min-height: 30px;
  padding: 0;
  border: 1px solid #202627;
  background: #202627;
  color: #fff;
}

.production-theme .warehouse-pult-empty {
  display: grid;
  justify-items: center;
  gap: 4px;
  min-height: 220px;
  align-content: center;
  color: #5d6763;
  text-align: center;
}

.production-theme .warehouse-pult-empty .lucide {
  width: 30px;
  height: 30px;
}

.production-theme .warehouse-pult-empty span {
  font-size: 10px;
}

.production-theme .warehouse-pult-activity {
  min-width: 0;
  border-left: 1px solid var(--pult-line);
  background: #171c1e;
  color: #eef2f0;
}

.production-theme .warehouse-pult-activity-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 7px 10px;
  border-bottom: 1px solid var(--pult-line);
  text-transform: uppercase;
}

.production-theme .warehouse-pult-activity-head strong {
  font-size: 10px;
}

.production-theme .warehouse-pult-activity-head select {
  min-height: 28px;
  padding-block: 0;
  font-size: 9px;
}

.production-theme .warehouse-pult-activity-list {
  max-height: 500px;
  overflow-y: auto;
  scrollbar-width: thin;
}

.production-theme .warehouse-pult-activity-item {
  display: grid;
  grid-template-columns: 34px 16px minmax(0, 1fr);
  gap: 6px;
  padding: 9px 10px;
  border-bottom: 1px solid #2f3639;
}

.production-theme .warehouse-pult-activity-item time,
.production-theme .warehouse-pult-activity-item small {
  color: #84908c;
  font-size: 8px;
}

.production-theme .warehouse-pult-activity-item > .lucide {
  width: 14px;
  height: 14px;
}

.production-theme .warehouse-pult-activity-item.ok > .lucide { color: #6bc45f; }
.production-theme .warehouse-pult-activity-item.warn > .lucide { color: #e29a31; }
.production-theme .warehouse-pult-activity-item.bad > .lucide { color: #ed5350; }

.production-theme .warehouse-pult-activity-item div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.production-theme .warehouse-pult-activity-item strong {
  font-size: 9px;
}

.production-theme .warehouse-pult-activity-item span {
  overflow: hidden;
  color: #c2cac7;
  font-size: 8px;
  line-height: 1.3;
  text-overflow: ellipsis;
}

.production-theme .warehouse-pult-activity-empty {
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 5px;
  min-height: 260px;
  padding: 20px;
  color: #8f9a96;
  text-align: center;
}

.production-theme .warehouse-pult-activity-empty span {
  font-size: 9px;
}

.production-theme .warehouse-pult-footer {
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(210px, 1fr) minmax(260px, 1.2fr);
  gap: 10px;
  padding: 10px 14px 14px;
}

.production-theme .warehouse-pult-start,
.production-theme .warehouse-pult-footer-button {
  min-height: 44px;
  border: 1px solid #4a5456;
  background: #1c2224;
  color: #eef2f0;
  font-weight: 850;
  text-transform: uppercase;
}

.production-theme .warehouse-pult-start {
  border-color: #697477;
}

.production-theme .warehouse-pult-footer-primary {
  border-color: #f4f6f5;
  background: #f4f6f5;
  color: #202627;
}

.production-theme .warehouse-directory-drawer {
  margin: 0 14px 14px;
  border: 1px solid #d5ddda;
  border-radius: 4px;
  background: #fff;
}

.production-theme .warehouse-directory-drawer > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 54px;
  padding: 9px 13px;
  cursor: pointer;
  list-style: none;
}

.production-theme .warehouse-directory-drawer > summary::-webkit-details-marker {
  display: none;
}

.production-theme .warehouse-directory-drawer > summary > span {
  display: grid;
  gap: 2px;
}

.production-theme .warehouse-directory-drawer > summary strong {
  font-size: 13px;
}

.production-theme .warehouse-directory-drawer > summary small {
  color: #6a7570;
  font-size: 10px;
}

.production-theme .warehouse-directory-drawer[open] > summary {
  border-bottom: 1px solid #d5ddda;
}

.production-theme .warehouse-directory-drawer[open] > summary .lucide {
  transform: rotate(180deg);
}

.production-theme .warehouse-directory-content {
  padding: 14px;
}

.production-theme .inventory-head h3 {
  font-size: 20px;
}

.production-theme .inventory-stats,
.production-theme .operation-metrics {
  border-radius: 4px;
}

.production-theme .inventory-global-tools {
  margin-top: 12px;
  padding: 10px;
  border: 1px solid #303638;
  border-radius: 4px;
  background: #1b2022;
}

.production-theme .inventory-global-tools .primary {
  background: #16877d;
}

.production-theme .inventory-global-tools .ghost {
  border-color: #4a5255;
  background: #292f32;
  color: #f4f6f5;
}

.production-theme .inventory-section-grid {
  gap: 8px;
  margin-bottom: 14px;
}

.production-theme .inventory-section-card {
  border-radius: 4px;
  box-shadow: none;
}

.production-theme .inventory-section-card:hover {
  border-color: #91aaa4;
  transform: none;
}

.production-theme .inventory-profitability-panel {
  margin-top: 0;
}

.production-theme #inventoryHome.maintenance-mode > .warehouse-pult,
.production-theme #inventoryHome.maintenance-mode > .warehouse-directory-drawer,
.production-theme #inventoryHome.verification-mode > .warehouse-pult,
.production-theme #inventoryHome.verification-mode > .warehouse-directory-drawer {
  display: none;
}

.production-theme #inventoryHome > .maintenance-queue-panel,
.production-theme #inventoryHome > .inventory-verification-panel {
  padding: 16px;
}

.production-theme [data-project-panel="warehouse"] .warehouse-manifest-title {
  padding: 12px 14px;
  border: 1px solid #303638;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background: #1b2022;
  color: #fff;
}

.production-theme [data-project-panel="warehouse"] .warehouse-manifest-title .muted {
  color: #aab6b2;
}

.production-theme [data-project-panel="warehouse"] .warehouse-manifest-title select {
  border-color: #4b5552;
  background: #292f32;
  color: #fff;
}

.production-theme .warehouse-manifest-header {
  margin-top: 0;
  border: 1px solid #303638;
  background: #252b2d;
  color: #fff;
}

.production-theme .warehouse-manifest-summary span,
.production-theme .warehouse-manifest-stamp span,
.production-theme .warehouse-manifest-summary small,
.production-theme .warehouse-manifest-stamp small {
  color: #aeb9b5;
}

.production-theme .warehouse-manifest-stamp.done {
  background: #173d36;
}

.production-theme .warehouse-flow-board {
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #fff;
}

.production-theme .warehouse-flow-step.active {
  background: #e6f3f0;
}

.production-theme .warehouse-category-progress {
  gap: 6px;
}

.production-theme .warehouse-category-card {
  border-radius: 4px;
  box-shadow: none;
}

.production-theme [data-project-panel="warehouse"] .scan-head {
  margin: 14px 0 0;
  padding: 10px 12px 0;
  border: 1px solid #303638;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background: #1b2022;
  color: #fff;
}

.production-theme [data-project-panel="warehouse"] .scan-tools {
  margin-top: 0;
  padding: 12px;
  border: 1px solid #303638;
  border-radius: 0 0 4px 4px;
  background: #202628;
  color: #fff;
}

.production-theme [data-project-panel="warehouse"] .scan-tools label {
  color: #b8c2bf;
}

.production-theme [data-project-panel="warehouse"] .scan-tools input,
.production-theme [data-project-panel="warehouse"] .scan-tools select {
  border-color: #4c5653;
  background: #111516;
  color: #fff;
}

.production-theme [data-project-panel="warehouse"] #stockScanInput {
  min-height: 46px;
  font-size: 15px;
  font-weight: 700;
}

.production-theme [data-project-panel="warehouse"] .scan-tools .ghost {
  border-color: #4a5350;
  background: #2a3032;
  color: #fff;
}

/* Technical studio */
.production-theme #technical.view {
  padding-inline: 14px;
}

.production-theme #technical .technical-workspace {
  padding: 0;
  overflow: hidden;
  border-radius: 4px;
  box-shadow: none;
}

.production-theme #technical .technical-head {
  margin: 0;
  padding: 13px 15px;
  border-bottom: 1px solid var(--line);
}

.production-theme #technical .technical-head h3 {
  font-size: 20px;
}

.production-theme #technical .technical-head-actions {
  gap: 6px;
}

.production-theme #technical .technical-head-actions button,
.production-theme #technical .technical-head-actions .file-button {
  min-height: 34px;
  font-size: 12px;
}

.production-theme .technical-plan-picker {
  gap: 0;
  margin: 0;
  padding: 10px 15px;
  border-bottom: 1px solid var(--line);
  background: #f7f9f8;
}

.production-theme .technical-plan-picker label {
  padding-right: 10px;
}

.production-theme .technical-project-settings {
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  border-radius: 0;
}

.production-theme .technical-project-settings > summary {
  padding-inline: 15px;
}

.production-theme .technical-plan-meta {
  padding: 11px 15px 14px;
  background: #f9faf9;
}

.production-theme .technical-workflow-modes {
  margin: 0;
  border-top: 0;
}

.production-theme .technical-workflow-modes button {
  min-height: 64px;
}

.production-theme .technical-workflow-modes button.active {
  background: #e8f4f1;
  box-shadow: inset 0 -3px 0 var(--accent);
}

.production-theme .technical-workflow-hint {
  padding-inline: 15px;
  background: #f7f9f8;
}

.production-theme .technical-tabs {
  gap: 0;
  margin: 0;
  padding: 0 8px;
  border-bottom: 1px solid var(--line);
  background: #fff;
}

.production-theme .technical-tabs button {
  min-height: 38px;
  padding-inline: 11px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #58645f;
  font-size: 11px;
}

.production-theme .technical-tabs button.active {
  border-bottom-color: #2d65a8;
  background: #eef4fb;
  color: #214f86;
}

.production-theme .technical-content {
  padding: 10px;
  background: #eef1f0;
}

.production-theme .floor-commandbar {
  border-color: #cfd7d4;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
}

.production-theme .floor-command-tools,
.production-theme .floor-view-tools {
  gap: 3px;
}

.production-theme .floor-command-tools button,
.production-theme .floor-view-tools button {
  border-radius: 3px;
}

.production-theme .floor-command-tools button.active,
.production-theme .floor-view-tools button.active {
  border-color: #176f67;
  background: #dff1ed;
  color: #07564f;
  box-shadow: inset 0 -2px #df2638;
  font-weight: 700;
}

.production-theme .floor-plan-item.locked.selected {
  cursor: pointer;
  outline-color: #bf7600;
}

.production-theme .floor-selection-badge.locked {
  border-color: #c68112;
  background: #fff4d8;
  color: #704100;
}

.production-theme .floor-workspace {
  gap: 8px;
}

.production-theme .floor-symbol-library,
.production-theme .floor-inspector {
  border-color: #cfd7d4;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
}

.production-theme .floor-plan-canvas {
  border-color: #54635e;
  background-color: #fff;
}

.production-theme .floor-layer-bar,
.production-theme .floor-overlay-bar {
  border-color: #d5ddda;
  background: #f6f8f7;
}

.production-theme .floor-layer-chip {
  border-radius: 3px;
  background: #fff;
}

/* Brand accent is reserved for decisive actions and critical states. */
.production-theme .danger,
.production-theme .status.bad,
.production-theme .notification-count {
  color: var(--danger);
}

.production-theme #newEstimate {
  background: var(--brand-red);
}

.production-theme #newEstimate:hover,
.production-theme #newEstimate:focus-visible {
  background: #bd2027;
}

.production-theme #toast {
  border-radius: 4px;
  background: #161b1d;
}

.production-theme .login-screen {
  background: #15191b;
}

.production-theme .login-panel {
  border-radius: 5px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.3);
}

@media (min-width: 1181px) {
  .production-theme .shell {
    padding-left: 224px;
  }

  .production-theme .topbar-navigation {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 100;
    display: flex;
    width: 224px;
    padding: 14px 11px 12px;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 12px;
    overflow: hidden;
    background: var(--sidebar);
  }

  .production-theme .topbar-navigation .brand-911 {
    width: 100%;
    min-width: 0;
    padding: 8px 9px 14px;
    border-bottom: 1px solid #303638;
    background: transparent;
  }

  .production-theme .topbar-navigation .brand-wordmark {
    font-size: 24px;
  }

  .production-theme .topbar-navigation .brand-tagline {
    font-size: 8px;
  }

  .production-theme .topbar-navigation .brand-subline {
    font-size: 8px;
  }

  .production-theme .tabs {
    display: flex;
    min-height: 0;
    margin-inline: -2px;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 2px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .production-theme .tab {
    display: flex;
    width: 100%;
    min-height: 42px;
    padding: 0 11px;
    align-items: center;
    justify-content: flex-start;
    gap: 11px;
    border-left: 3px solid transparent;
    border-radius: 4px;
    background: transparent;
    color: var(--sidebar-muted);
    text-align: left;
    font-size: 13px;
  }

  .production-theme .tab span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .production-theme .tab:hover {
    background: #22282a;
    color: #fff;
  }

  .production-theme .tab.active {
    border-left-color: var(--brand-red);
    background: var(--sidebar-active);
    color: #fff;
  }

  .production-theme .user-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 3px 8px;
    margin-top: auto;
    padding: 11px 8px 0;
    border: 0;
    border-top: 1px solid #303638;
    border-radius: 0;
    background: transparent;
  }

  .production-theme .user-card > span:not(.save-status) {
    grid-column: 1;
    color: #98a4a0;
    font-size: 10px;
  }

  .production-theme .user-card strong {
    grid-column: 1;
    color: #fff;
    font-size: 12px;
  }

  .production-theme .user-card .save-status {
    grid-column: 1 / -1;
    margin-top: 6px;
    color: #9faaa6;
    font-size: 10px;
  }

  .production-theme .user-card .ghost {
    grid-column: 2;
    grid-row: 1 / span 2;
    min-height: 30px;
    padding-inline: 8px;
    border-color: #3b4345;
    background: #252b2d;
    color: #d8dfdc;
    font-size: 11px;
  }
}

/* Warehouse experience controls: compact, persistent panels outside the plan. */
.production-theme #warehouseConfigurator .tech2-stage-panel {
  grid-template-rows: auto auto auto minmax(0, 1fr);
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel {
  margin-top: 10px;
  border-top: 1px solid #d1dbd7;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 2px 7px;
  color: #32423c;
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel > summary small {
  min-width: 24px;
  padding: 2px 6px;
  border-radius: 999px;
  background: #e4eeea;
  color: #41625a;
  text-align: center;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 4px;
  margin-bottom: 6px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar label {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 5px;
  padding: 0 7px;
  border: 1px solid #c7d3ce;
  border-radius: 6px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar input {
  min-width: 0;
  width: 100%;
  height: 30px;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar button,
.production-theme #warehouseConfigurator .warehouse-tree-icon {
  display: inline-grid;
  width: 31px;
  min-width: 31px;
  height: 31px;
  place-items: center;
  padding: 0;
  border: 1px solid #cbd6d1;
  border-radius: 6px;
  background: #fff;
  color: #3b5149;
}

.production-theme #warehouseConfigurator .warehouse-object-tree {
  display: grid;
  max-height: 260px;
  gap: 2px;
  overflow: auto;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions {
  display: grid;
  gap: 6px;
  margin-top: 9px;
  padding-top: 8px;
  border-top: 1px solid #d4ded9;
}

.production-theme #warehouseConfigurator .warehouse-utilization {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 4px;
  margin-top: 7px;
}

.production-theme #warehouseConfigurator .warehouse-utilization div {
  display: grid;
  gap: 2px;
  padding: 5px;
  border-radius: 5px;
  background: #edf3f0;
}

.production-theme #warehouseConfigurator .warehouse-utilization span {
  color: #738079;
  font-size: 7px;
}

.production-theme #warehouseConfigurator .warehouse-utilization strong {
  color: #2d473f;
  font-size: 8px;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions > strong {
  color: #40504a;
  font-size: 9px;
  text-transform: uppercase;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(3, 31px);
  gap: 4px;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions select,
.production-theme #warehouseConfigurator .warehouse-plan-versions button {
  min-width: 0;
  height: 31px;
  border: 1px solid #c8d4cf;
  border-radius: 5px;
  background: #fff;
  color: #34443e;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions > small {
  color: #6b7973;
  font-size: 8px;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions details summary {
  color: #466058;
  cursor: pointer;
  font-size: 9px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator #warehouseHistoryVersions {
  display: grid;
  gap: 3px;
  max-height: 150px;
  margin-top: 5px;
  overflow: auto;
}

.production-theme #warehouseConfigurator #warehouseHistoryVersions button {
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 5px;
  padding: 4px 6px;
}

.production-theme #warehouseConfigurator .warehouse-variant-change-box {
  fill: rgba(40, 111, 204, .08);
  stroke: #286fcc;
  stroke-width: .065;
  stroke-dasharray: .12 .07;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor {
  display: grid;
  width: 100%;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid #c6d8d1;
  border-radius: 7px;
  background: #f2f8f5;
  text-align: left;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor[hidden] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor > strong {
  color: #28544a;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor label {
  display: grid;
  gap: 3px;
  color: #68756f;
  font-size: 8px;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor input,
.production-theme #warehouseConfigurator .warehouse-bulk-editor select {
  min-width: 0;
  width: 100%;
  height: 30px;
  border: 1px solid #c7d3ce;
  border-radius: 5px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor label span {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 4px;
}

.production-theme #warehouseConfigurator .warehouse-bulk-editor > button {
  min-height: 32px;
  border: 0;
  border-radius: 5px;
  background: #0d6259;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 27px 27px;
  align-items: center;
  gap: 2px;
  padding-left: calc(var(--warehouse-tree-depth) * 11px);
  border-radius: 5px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row.is-selected {
  background: #dfeee9;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row.is-hidden {
  opacity: .5;
}

.production-theme #warehouseConfigurator .warehouse-tree-select {
  display: grid;
  min-width: 0;
  grid-template-columns: 14px minmax(0, 1fr);
  gap: 4px;
  align-items: center;
  padding: 5px 3px;
  border: 0;
  background: transparent;
  text-align: left;
}

.production-theme #warehouseConfigurator .warehouse-tree-select span:last-child {
  display: grid;
  min-width: 0;
}

.production-theme #warehouseConfigurator .warehouse-tree-select strong,
.production-theme #warehouseConfigurator .warehouse-tree-select small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-tree-select strong {
  color: #2b3b35;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-tree-select small,
.production-theme #warehouseConfigurator .warehouse-object-tree-empty {
  color: #728078;
  font-size: 8px;
}

.production-theme #warehouseConfigurator .warehouse-tree-icon {
  width: 27px;
  min-width: 27px;
  height: 27px;
  border: 0;
  background: transparent;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 6px 12px;
  border-bottom: 1px solid #b8d3ca;
  background: #dff1eb;
  color: #174f48;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar[hidden] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar span {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar button {
  min-height: 28px;
  border: 1px solid #8fbcb0;
  border-radius: 5px;
  background: #fff;
  color: #14594f;
  font-size: 9px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator .warehouse-placement-ghost {
  fill: rgba(32, 167, 127, .28);
  stroke: #0f8b69;
  stroke-width: .065;
  stroke-dasharray: .16 .08;
  vector-effect: non-scaling-stroke;
}

.production-theme #warehouseConfigurator .warehouse-placement-ghost-label {
  fill: #0d6b54;
  paint-order: stroke;
  stroke: #fff;
  stroke-width: .07;
  font-size: .22px;
  font-weight: 900;
}

.production-theme #warehouseConfigurator .tech2-object.is-placement-source {
  opacity: .38;
}

.production-theme #warehouseConfigurator .warehouse-2d-height-handle,
.production-theme #warehouseConfigurator .warehouse-2d-elevation-handle {
  cursor: ns-resize;
  fill: #0d6259;
  stroke: #fff;
}

.production-theme #warehouseConfigurator .warehouse-2d-handle-label {
  fill: #fff;
  font-size: .13px;
  font-weight: 900;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-camera-menu {
  position: relative;
}

.production-theme #warehouseConfigurator .warehouse-camera-menu > summary {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 5px;
  color: #34413c;
  cursor: pointer;
  list-style: none;
}

.production-theme #warehouseConfigurator .warehouse-camera-menu > div {
  position: absolute;
  z-index: 10;
  top: 40px;
  right: 0;
  width: 230px;
  padding: 8px;
  border: 1px solid #bdcbc5;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(24, 41, 34, .2);
}

.production-theme #warehouseConfigurator .warehouse-camera-view-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 28px;
  gap: 3px;
  margin-top: 3px;
}

.production-theme #warehouseConfigurator .warehouse-camera-view-row button:first-child {
  display: flex;
  width: 100%;
  justify-content: space-between;
}

.production-theme #warehouseConfigurator .warehouse-render-quality {
  display: flex;
  height: 34px;
  align-items: center;
  gap: 3px;
  padding: 0 6px;
  border-radius: 5px;
  background: #f4f7f5;
}

.production-theme #warehouseConfigurator .warehouse-render-quality select {
  max-width: 78px;
  border: 0;
  background: transparent;
  color: #34413c;
  font-size: 9px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator.is-walking .tech2-scene-3d canvas {
  cursor: crosshair;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-header,
.production-theme #warehouseConfigurator.is-presentation .tech2-setup-panel,
.production-theme #warehouseConfigurator.is-presentation .tech2-inspector,
.production-theme #warehouseConfigurator.is-presentation .tech2-stage-toolbar,
.production-theme #warehouseConfigurator.is-presentation .warehouse-3d-hint {
  display: none;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-editor-shell {
  grid-template-columns: minmax(0, 1fr);
  min-height: calc(100vh - 70px);
  height: calc(100vh - 70px);
}

.production-theme #warehouseConfigurator.is-presentation .tech2-stage-panel {
  grid-template-rows: auto auto minmax(0, 1fr);
}

/* 2026-09-01: approved 911 CAD workspace and full-screen catalog. */
body.production-theme[data-active-view="warehouseConfigurator"] {
  overflow: hidden;
  background: #e9edeb;
}

body.production-theme[data-active-view="warehouseConfigurator"] > .shell {
  width: 100%;
  height: 100vh;
  padding: 0;
}

body.production-theme[data-active-view="warehouseConfigurator"] > .shell > .topbar {
  display: none;
}

body.production-theme[data-active-view="warehouseConfigurator"] #warehouseConfigurator.view.active {
  display: block;
  width: 100%;
  max-width: none;
  height: 100vh;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

body.production-theme[data-active-view="warehouseConfigurator"] .app-release-badge {
  right: 10px;
  bottom: 7px;
  left: auto;
  z-index: 420;
}

.production-theme #warehouseConfigurator .tech2-workspace {
  display: grid;
  grid-template-rows: 58px 106px minmax(0, 1fr);
  width: 100%;
  height: 100vh;
  min-height: 0;
  border: 0;
  border-radius: 0;
  background: #eef1f0;
  box-shadow: none;
}

.production-theme #warehouseConfigurator .tech2-header {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 0 15px;
  border: 0;
  border-bottom: 1px solid #343a3d;
  background: #1b1f21;
  color: #f7f8f8;
}

.production-theme #warehouseConfigurator .warehouse-cad-title {
  display: grid;
  grid-template-columns: 30px auto auto;
  grid-template-rows: 20px 20px;
  align-items: center;
  column-gap: 10px;
  min-width: 300px;
}

.production-theme #warehouseConfigurator .warehouse-cad-back {
  grid-row: 1 / span 2;
  display: grid;
  width: 30px;
  height: 30px;
  padding: 0;
  place-items: center;
  border: 1px solid #41484b;
  border-radius: 4px;
  background: #252a2c;
  color: #d9dfdc;
}

.production-theme #warehouseConfigurator .warehouse-cad-back:hover {
  border-color: #707a76;
  background: #303638;
}

.production-theme #warehouseConfigurator .warehouse-cad-brand {
  grid-row: 1 / span 2;
  color: #f5f7f6;
  font-size: 18px;
  font-weight: 850;
  letter-spacing: .01em;
}

.production-theme #warehouseConfigurator .warehouse-cad-brand b {
  color: #ef2b35;
}

.production-theme #warehouseConfigurator .warehouse-cad-title .eyebrow {
  grid-column: 3;
  align-self: end;
  color: #929c98;
  font-size: 8px;
  line-height: 1;
}

.production-theme #warehouseConfigurator .warehouse-cad-title h3 {
  grid-column: 3;
  align-self: start;
  margin: 1px 0 0;
  color: #eef2f0;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.1;
}

.production-theme #warehouseConfigurator .tech2-header-actions {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  flex-wrap: nowrap;
}

.production-theme #warehouseConfigurator .tech2-header-actions button,
.production-theme #warehouseConfigurator .tech2-header-actions summary {
  min-height: 31px;
  padding: 5px 9px;
  border-color: #444c4f;
  background: #262b2d;
  color: #e5e9e7;
  font-size: 10px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .tech2-header-actions .primary {
  border-color: #d92531;
  background: #d92531;
  color: #fff;
}

.production-theme #warehouseConfigurator .tech2-save-status {
  color: #aeb8b4;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon {
  position: relative;
  z-index: 20;
  display: grid;
  grid-template-rows: 35px 71px;
  min-width: 0;
  border-bottom: 1px solid #c8cfcc;
  background: #fbfcfb;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs {
  display: flex;
  align-items: end;
  gap: 2px;
  padding: 0 13px;
  border-bottom: 1px solid #d7ddda;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button {
  position: relative;
  min-height: 34px;
  padding: 7px 14px 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #414a46;
  font-size: 11px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button::after {
  position: absolute;
  right: 12px;
  bottom: -1px;
  left: 12px;
  height: 2px;
  content: "";
  background: transparent;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button:hover {
  background: #f0f3f2;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button.active {
  color: #171c1a;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button.active::after {
  background: #e32732;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panels {
  min-width: 0;
  overflow: hidden;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel {
  display: none;
  min-width: 0;
  height: 71px;
  align-items: stretch;
  gap: 1px;
  padding: 6px 13px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel.active {
  display: flex;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel[hidden] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button {
  display: grid;
  min-width: 66px;
  min-height: 56px;
  padding: 5px 8px;
  grid-template-columns: 1fr auto;
  grid-template-rows: 26px 15px;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 3px;
  background: transparent;
  color: #39423e;
  font-size: 9px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > .lucide,
.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > b {
  grid-column: 1 / -1;
  width: 21px;
  height: 21px;
  color: #343d39;
  font-size: 14px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > span {
  grid-column: 1 / -1;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > kbd {
  position: absolute;
  margin: -28px 0 0 46px;
  color: #8d9792;
  font: 700 8px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button:hover,
.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.active {
  border-color: #cfd6d3;
  background: #edf1ef;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.active {
  box-shadow: inset 0 -2px #2d65a8;
  color: #1b4f88;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > .warehouse-cad-ribbon-primary {
  border-color: #e2b5b8;
  background: #fff5f5;
  color: #a91f27;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-divider {
  width: 1px;
  margin: 3px 7px;
  flex: 0 0 1px;
  background: #d5dcda;
}

.production-theme #warehouseConfigurator .tech2-editor-shell {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr) 286px;
  width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  overflow: hidden;
  border: 0;
  background: #e6eae8;
}

.production-theme #warehouseConfigurator .tech2-setup-panel {
  position: relative;
  display: block;
  min-width: 0;
  min-height: 0;
  max-height: none;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-right: 1px solid #c7cfcb;
  background: #f8faf9;
}

.production-theme #warehouseConfigurator .tech2-setup-panel::before {
  display: block;
  height: 34px;
  padding: 0 12px;
  border-bottom: 1px solid #d5dcda;
  color: #313936;
  content: "Объекты";
  font-size: 11px;
  font-weight: 800;
  line-height: 34px;
}

.production-theme #warehouseConfigurator .tech2-setup-panel > details:not(.warehouse-object-tree-panel),
.production-theme #warehouseConfigurator .tech2-setup-panel > .tech2-reset {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  height: calc(100% - 34px);
  max-height: none;
  margin: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel > summary {
  min-height: 34px;
  padding: 0 10px;
  border-bottom: 1px solid #e0e5e3;
  background: #f8faf9;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar {
  padding: 7px 8px;
  border-bottom: 1px solid #e0e5e3;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree {
  min-height: 0;
  max-height: none;
  padding: 4px 0;
  overflow: auto;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row {
  min-height: 28px;
  padding: 2px 5px;
  border-radius: 0;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-utilization,
.production-theme #warehouseConfigurator .warehouse-plan-versions {
  margin: 0;
  border-width: 1px 0 0;
  border-radius: 0;
}

.production-theme #warehouseConfigurator .warehouse-plan-versions {
  max-height: 128px;
  overflow: auto;
}

.production-theme #warehouseConfigurator .tech2-stage-panel {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) 37px;
  min-width: 0;
  min-height: 0;
  max-height: none;
  overflow: hidden;
  background: #dfe5e2;
}

.production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
  grid-row: 1;
  z-index: 4;
  min-height: 43px;
  padding: 4px 8px;
  overflow-x: auto;
  overflow-y: hidden;
  border-bottom: 1px solid #c9d1cd;
  background: #f8faf9;
}

.production-theme #warehouseConfigurator .warehouse-3d-tools {
  width: max-content;
  min-width: 100%;
  flex-wrap: nowrap;
  gap: 5px;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group {
  gap: 1px;
  padding: 0 5px 0 0;
  border: 0;
  border-right: 1px solid #d2d9d6;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group button {
  min-height: 33px;
  border-radius: 3px;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group button:hover,
.production-theme #warehouseConfigurator .warehouse-3d-tool-group button.active {
  background: #e7ecea;
  color: #174f88;
  box-shadow: inset 0 -2px #2d65a8;
}

.production-theme #warehouseConfigurator .warehouse-3d-hint {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar {
  grid-row: 2;
  border-radius: 0;
}

.production-theme #warehouseConfigurator .tech2-viewport {
  grid-row: 3;
  min-width: 0;
  min-height: 0;
  max-height: none;
  padding: 28px 34px;
  overflow: auto;
  border: 0;
  background-color: #dfe5e2;
  background-image: radial-gradient(#c7cfcb 0.7px, transparent 0.7px);
  background-size: 16px 16px;
}

.production-theme #warehouseConfigurator .tech2-canvas-frame {
  box-shadow: 0 10px 28px rgba(28, 39, 34, .18);
}

.production-theme #warehouseConfigurator .tech2-canvas-frame.is-3d {
  box-shadow: none;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar {
  grid-row: 4;
  display: flex;
  min-height: 37px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 4px 10px;
  border-top: 1px solid #c8d0cc;
  border-bottom: 0;
  background: #fbfcfb;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-history-controls,
.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-view-switch,
.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-selection-controls {
  display: none;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar > strong {
  color: #5d6863;
  font-size: 9px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .tech2-zoom-controls {
  margin-left: auto;
}

.production-theme #warehouseConfigurator .tech2-inspector {
  min-width: 0;
  min-height: 0;
  max-height: none;
  padding: 0;
  overflow: auto;
  border: 0;
  border-left: 1px solid #c7cfcb;
  background: #fbfcfb;
}

.production-theme #warehouseConfigurator .tech2-inspector::before {
  position: sticky;
  top: 0;
  z-index: 3;
  display: block;
  height: 34px;
  padding: 0 12px;
  border-bottom: 1px solid #d5dcda;
  background: #f8faf9;
  color: #313936;
  content: "Параметры";
  font-size: 11px;
  font-weight: 800;
  line-height: 34px;
}

.production-theme #warehouseConfigurator .tech2-inspector-empty {
  min-height: 220px;
  padding: 32px 22px;
  color: #77827d;
  text-align: center;
}

.production-theme #warehouseConfigurator .tech2-inspector form {
  gap: 9px;
  padding: 10px 11px 46px;
}

.production-theme #warehouseConfigurator .tech2-inspector input,
.production-theme #warehouseConfigurator .tech2-inspector select,
.production-theme #warehouseConfigurator .tech2-inspector textarea {
  min-height: 31px;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .tech2-inspector label {
  color: #59645f;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .tech2-inspector-grid {
  gap: 6px;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog {
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100vh;
  max-height: none;
  margin: 0;
  padding: 0;
  grid-template-rows: 58px minmax(0, 1fr) 52px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #f4f6f5;
  box-shadow: none;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog[open] {
  display: grid;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog::backdrop {
  background: #181c1e;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-head {
  grid-row: 1;
  padding: 0 16px;
  border: 0;
  border-bottom: 1px solid #343a3d;
  background: #1b1f21;
  color: #f4f6f5;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-head .eyebrow {
  color: #96a09c;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-head h3 {
  color: #fff;
  font-size: 16px;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-head .icon-button {
  border-color: #444c4f;
  background: #272c2e;
  color: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-layout {
  grid-row: 2;
  display: grid;
  grid-template-columns: 198px minmax(0, 1fr) 340px;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-sidebar {
  min-height: 0;
  padding: 17px 10px;
  overflow: auto;
  border-right: 1px solid #d5dcda;
  background: #fbfcfb;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-sidebar > strong {
  display: block;
  margin: 0 8px 12px;
  color: #7a8580;
  font-size: 9px;
  text-transform: uppercase;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories {
  display: grid;
  gap: 2px;
  padding: 0;
  overflow: visible;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories button {
  min-height: 38px;
  padding: 7px 10px;
  border: 0;
  border-left: 3px solid transparent;
  border-radius: 2px;
  background: transparent;
  color: #4a5550;
  text-align: left;
  font-size: 10px;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories button:hover {
  background: #f0f3f2;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories button.active {
  border-left-color: #2d65a8;
  background: #edf3fa;
  color: #1f5793;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-browser {
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr);
  overflow: hidden;
  background: #f4f6f5;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-filters {
  display: block;
  padding: 11px 13px;
  border-bottom: 1px solid #d6ddda;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-filters input {
  min-height: 36px;
  background: #f8faf9;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-results {
  display: grid;
  height: auto;
  min-height: 0;
  padding: 12px;
  grid-template-columns: repeat(auto-fill, minmax(158px, 1fr));
  align-content: start;
  gap: 9px;
  overflow: auto;
  background: #f1f4f2;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 220px;
  padding: 8px;
  grid-template-columns: minmax(0, 1fr) 26px;
  grid-template-rows: 112px minmax(0, 1fr);
  align-items: start;
  gap: 7px 4px;
  overflow: hidden;
  border: 1px solid #d5dcda;
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
  cursor: pointer;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item:hover {
  border-color: #aebbb5;
  box-shadow: 0 4px 14px rgba(27, 39, 34, .08);
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item.is-selected {
  border-color: #2d65a8;
  box-shadow: inset 0 0 0 1px #2d65a8;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item > img,
.production-theme #warehouseCatalogDialog .tech2-catalog-item > .tech2-catalog-placeholder {
  grid-column: 1 / -1;
  width: 100%;
  height: 112px;
  object-fit: contain;
  border-radius: 2px;
  background: #f6f8f7;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item > div {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 3px;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item strong {
  display: -webkit-box;
  overflow: hidden;
  font-size: 10px;
  line-height: 1.28;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item span,
.production-theme #warehouseCatalogDialog .tech2-catalog-item small {
  font-size: 8px;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item small:last-child {
  display: none;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item > button {
  grid-column: 2;
  grid-row: 2;
  width: 26px;
  min-height: 26px;
  padding: 4px;
  border-color: #d0d8d4;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview {
  display: grid;
  min-width: 0;
  min-height: 0;
  padding: 15px;
  grid-template-rows: auto minmax(220px, 1fr) auto auto 38px;
  gap: 10px;
  overflow: auto;
  border-left: 1px solid #d5dcda;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header h4 {
  margin: 4px 0;
  color: #202623;
  font-size: 15px;
  line-height: 1.25;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header span,
.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header small {
  color: #77827d;
  font-size: 9px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media {
  position: relative;
  display: grid;
  min-height: 240px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #e0e5e3;
  border-radius: 4px;
  background: #f5f7f6;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media > img,
.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media > .tech2-catalog-placeholder {
  width: 88%;
  height: 88%;
  object-fit: contain;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-loading {
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px;
  border-radius: 3px;
  background: rgba(255, 255, 255, .88);
  color: #6e7974;
  font-size: 8px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-canvas,
.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-canvas canvas {
  display: block;
  width: 100%;
  height: 100%;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta {
  display: grid;
  margin: 0;
  border-top: 1px solid #e0e5e3;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta > div {
  display: grid;
  min-height: 25px;
  padding: 5px 0;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 8px;
  border-bottom: 1px solid #edf0ef;
  font-size: 9px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta dt {
  color: #7a8580;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta dd {
  margin: 0;
  overflow: hidden;
  color: #303835;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-quantity {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 10px;
  font-weight: 700;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-quantity input {
  width: 72px;
  min-height: 30px;
}

.production-theme #warehouseCatalogDialog #warehouseCatalogPreviewAdd {
  min-height: 38px;
  border-color: #d92531;
  background: #d92531;
}

.production-theme #warehouseCatalogDialog > footer {
  grid-row: 3;
  min-height: 52px;
  padding: 7px 15px;
  border-top: 1px solid #ccd4d0;
  background: #fbfcfb;
}

@media (max-width: 1180px) {
  .production-theme #warehouseConfigurator .tech2-editor-shell {
    grid-template-columns: 205px minmax(0, 1fr) 260px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-layout {
    grid-template-columns: 172px minmax(0, 1fr) 300px;
  }

  .production-theme #warehouseCatalogDialog .tech2-catalog-results {
    grid-template-columns: repeat(auto-fill, minmax(145px, 1fr));
  }
}

.production-theme #warehouseConfigurator.is-presentation .warehouse-transform-toolbar-row {
  background: rgba(242, 247, 244, .94);
}

@media (max-width: 1340px) and (min-width: 1181px) {
  .production-theme .topbar-workspace {
    grid-template-columns: auto minmax(210px, 1fr) auto;
    gap: 10px;
  }

  .production-theme .topbar-actions .action-with-icon span,
  .production-theme .notification-button > span:not(.notification-count) {
    display: none;
  }

  .production-theme .topbar-actions > .ghost,
  .production-theme .notification-button {
    width: 38px;
    padding: 0;
  }
}

@media (max-width: 1180px) {
  .production-theme .topbar-navigation {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) auto;
    gap: 10px;
    padding: 8px 12px;
    overflow: hidden;
    background: var(--sidebar);
  }

  .production-theme .topbar-navigation .brand-911 {
    width: 170px;
    min-width: 0;
    padding: 4px 6px;
    background: transparent;
  }

  .production-theme .topbar-navigation .brand-wordmark {
    font-size: 21px;
  }

  .production-theme .topbar-navigation .brand-tagline,
  .production-theme .topbar-navigation .brand-subline {
    display: none;
  }

  .production-theme .tabs {
    flex-wrap: nowrap;
    align-items: center;
    overflow-x: auto;
  }

  .production-theme .tab {
    display: inline-flex;
    min-height: 38px;
    padding: 0 10px;
    align-items: center;
    gap: 7px;
    color: #b9c2bf;
    flex: 0 0 auto;
  }

  .production-theme .tab:hover,
  .production-theme .tab.active {
    background: #292f32;
    color: #fff;
  }

  .production-theme .user-card {
    padding: 4px 6px;
    grid-template-columns: auto auto;
    border-color: #3b4345;
    background: #202628;
  }

  .production-theme .user-card > span:not(.save-status),
  .production-theme .user-card .save-status {
    display: none;
  }

  .production-theme .user-card strong {
    color: #fff;
    font-size: 11px;
  }

  .production-theme .user-card .ghost {
    min-height: 30px;
    padding-inline: 8px;
    border-color: #465052;
    background: #2a3032;
    color: #fff;
    font-size: 11px;
  }

  .production-theme .topbar-workspace {
    grid-template-columns: auto minmax(210px, 1fr) auto;
  }
}

@media (max-width: 900px) {
  .production-theme .topbar-navigation {
    grid-template-columns: 138px minmax(0, 1fr);
  }

  .production-theme .topbar-navigation .brand-911 {
    width: 138px;
  }

  .production-theme .user-card {
    display: none;
  }

  .production-theme .topbar-workspace {
    grid-template-columns: auto minmax(170px, 1fr);
    align-items: center;
  }

  .production-theme .topbar-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
    overflow-x: auto;
  }

  .production-theme .metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-theme .metric:nth-child(2n) {
    border-right: 0;
  }

  .production-theme .metric:nth-child(n + 3) {
    border-top: 1px solid var(--line);
  }

  .production-theme .warehouse-pult-header {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .production-theme .warehouse-pult-header-actions {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .production-theme .warehouse-pult-project-picker {
    flex: 1 1 300px;
  }

  .production-theme .warehouse-pult-user {
    margin-left: auto;
  }

  .production-theme .warehouse-pult-scan-row {
    grid-template-columns: 28px minmax(170px, auto) minmax(190px, 1fr) 120px 40px;
  }

  .production-theme .warehouse-pult-scan-row > .lucide {
    grid-column: 1;
    grid-row: 1;
  }

  .production-theme .warehouse-pult-scan-copy {
    grid-column: 2;
    grid-row: 1;
  }

  .production-theme .warehouse-pult-scan-button {
    grid-column: 3 / 5;
    grid-row: 2;
  }

  .production-theme .warehouse-pult-scan-row input {
    grid-column: 1 / 3;
    grid-row: 2;
  }

  .production-theme .warehouse-pult-scan-row select {
    grid-column: 4;
    grid-row: 1;
    width: auto;
  }

  .production-theme .warehouse-pult-keyboard {
    grid-column: 5;
    grid-row: 2;
  }

  .production-theme .warehouse-pult-flow,
  .production-theme .warehouse-pult-metrics {
    display: flex;
    overflow-x: auto;
    scrollbar-width: thin;
  }

  .production-theme .warehouse-pult-flow-step {
    flex: 0 0 170px;
  }

  .production-theme .warehouse-pult-metric {
    flex: 0 0 170px;
  }

  .production-theme .warehouse-pult-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .warehouse-pult-activity {
    border-top: 1px solid var(--pult-line);
    border-left: 0;
  }

  .production-theme .warehouse-pult-activity-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: 260px;
  }

  .production-theme .warehouse-pult-footer {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-theme .warehouse-pult-footer-primary {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .production-theme .topbar-navigation {
    grid-template-columns: 118px minmax(0, 1fr);
    padding-inline: 8px;
  }

  .production-theme .topbar-navigation .brand-911 {
    width: 118px;
  }

  .production-theme .topbar-navigation .brand-wordmark {
    font-size: 18px;
  }

  .production-theme .tab {
    min-height: 36px;
    padding-inline: 8px;
  }

  .production-theme .tab .lucide {
    width: 16px;
    height: 16px;
  }

  .production-theme .tab span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .production-theme .topbar-workspace {
    position: static;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 10px 12px;
  }

  .production-theme .global-search-shell {
    width: 100%;
    order: 3;
  }

  .production-theme .topbar-actions {
    grid-column: auto;
    order: 2;
  }

  .production-theme .topbar-actions .action-with-icon span,
  .production-theme .notification-button > span:not(.notification-count),
  .production-theme .data-actions-menu summary span {
    display: none;
  }

  .production-theme .topbar-actions > .ghost,
  .production-theme .notification-button,
  .production-theme .data-actions-menu summary,
  .production-theme .topbar-actions #newEstimate {
    width: 38px;
    padding: 0;
  }

  .production-theme .view {
    padding: 0 10px 18px;
  }

  .production-theme .panel {
    padding: 12px;
  }

  .production-theme .dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .metrics {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .metric,
  .production-theme .metric:nth-child(2n) {
    border-right: 0;
    border-top: 1px solid var(--line);
  }

  .production-theme .metric:first-child {
    border-top: 0;
  }

  .production-theme #estimateForm > .form-head .form-actions {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    width: 100%;
    overflow-x: auto;
  }

  .production-theme .project-stage-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .project-stage-bar {
    overflow-x: auto;
    grid-template-columns: repeat(9, 96px);
  }

  .production-theme .project-stage-actions {
    justify-items: stretch;
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .production-theme .project-stage-actions span {
    text-align: left;
  }

  .production-theme .inventory-global-tools {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .production-theme .warehouse-pult-header {
    gap: 10px;
    padding: 11px;
  }

  .production-theme .warehouse-pult-heading {
    min-width: 0;
  }

  .production-theme .warehouse-pult-header-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-theme .warehouse-pult-project-picker {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .warehouse-pult-dark-button {
    width: 100%;
  }

  .production-theme .warehouse-pult-user {
    display: none;
  }

  .production-theme .warehouse-pult-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-theme .warehouse-pult-meta > div:nth-child(2) {
    border-right: 0;
  }

  .production-theme .warehouse-pult-meta > div:nth-child(-n + 2) {
    border-bottom: 1px solid var(--pult-line);
  }

  .production-theme .warehouse-pult-scan-row {
    grid-template-columns: 28px minmax(0, 1fr) minmax(100px, 0.65fr) 40px;
    margin-inline: 8px;
  }

  .production-theme .warehouse-pult-scan-row > .lucide {
    grid-column: 1;
    grid-row: 1;
  }

  .production-theme .warehouse-pult-scan-copy {
    grid-column: 2 / 4;
    grid-row: 1;
  }

  .production-theme .warehouse-pult-keyboard {
    grid-column: 4;
    grid-row: 1;
  }

  .production-theme .warehouse-pult-scan-row input {
    grid-column: 1 / 5;
    grid-row: 2;
  }

  .production-theme .warehouse-pult-scan-row select {
    grid-column: 1 / 3;
    grid-row: 3;
    width: auto;
    transform: none;
  }

  .production-theme .warehouse-pult-scan-button {
    grid-column: 3 / 5;
    grid-row: 3;
  }

  .production-theme .warehouse-pult-flow,
  .production-theme .warehouse-pult-metrics,
  .production-theme .warehouse-pult-categories,
  .production-theme .warehouse-pult-workspace {
    margin-inline: 8px;
  }

  .production-theme .warehouse-pult-activity-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .warehouse-pult-footer {
    grid-template-columns: minmax(0, 1fr);
    padding-inline: 8px;
  }

  .production-theme .warehouse-pult-footer-primary {
    grid-column: auto;
  }

  .production-theme .warehouse-directory-drawer {
    margin-inline: 8px;
  }

  .production-theme .warehouse-directory-content {
    padding: 10px;
  }

  .production-theme #technical.view {
    padding-inline: 6px;
  }

  .production-theme #technical .technical-head {
    padding: 11px;
  }

  .production-theme .technical-content {
    padding: 5px;
  }
}

@media print {
  .production-theme .topbar-navigation,
  .production-theme .topbar-workspace {
    display: none !important;
  }

  .production-theme .shell {
    padding-left: 0 !important;
  }

  .production-theme .view {
    padding: 0 !important;
  }
}

/* Application-wide visual pass */
.production-theme {
  --section-accent: #0f766e;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.production-theme[data-active-view="estimates"] { --section-accent: #c92d34; }
.production-theme[data-active-view="expenses"] { --section-accent: #a66a16; }
.production-theme[data-active-view="calendar"] { --section-accent: #2d65a8; }
.production-theme[data-active-view="legal"],
.production-theme[data-active-view="legal2"] { --section-accent: #6557a5; }
.production-theme[data-active-view="inventory"] { --section-accent: #4f9d52; }
.production-theme[data-active-view="technical"] { --section-accent: #28727c; }
.production-theme[data-active-view="reports"] { --section-accent: #4c667f; }

.production-theme .topbar-workspace {
  box-shadow: 0 1px 0 rgba(17, 24, 21, 0.03);
}

.production-theme .topbar-workspace::after {
  position: absolute;
  width: 78px;
  bottom: -1px;
  left: 0;
  height: 2px;
  content: "";
  background: var(--section-accent);
  pointer-events: none;
}

.production-theme .view > .panel:first-child,
.production-theme .view > .feature-panel:first-child,
.production-theme .view > .metrics:first-child,
.production-theme .view > .estimate-mode-tabs:first-child,
.production-theme .view > .technical-shell:first-child {
  margin-top: 0;
}

.production-theme .panel,
.production-theme .feature-panel,
.production-theme .editor-panel,
.production-theme .list-panel {
  background: #fff;
}

.production-theme .panel,
.production-theme .feature-panel {
  border-color: #d6ddda;
}

.production-theme .panel-head h3,
.production-theme .form-head h3,
.production-theme .section-head h3,
.production-theme .technical-head h3 {
  line-height: 1.2;
}

.production-theme .panel-head p,
.production-theme .form-head p,
.production-theme .section-head p,
.production-theme .muted,
.production-theme .field-help {
  color: #68736f;
}

.production-theme label:not(.check-label):not(.file-button) {
  color: #59645f;
  font-size: 11px;
  font-weight: 700;
}

.production-theme input,
.production-theme select,
.production-theme textarea {
  min-height: 38px;
  color: #1c2320;
  box-shadow: inset 0 1px 0 rgba(18, 27, 23, 0.02);
}

.production-theme input::placeholder,
.production-theme textarea::placeholder {
  color: #929c98;
}

.production-theme textarea {
  line-height: 1.45;
}

.production-theme button,
.production-theme summary,
.production-theme .file-button {
  font-weight: 650;
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}

.production-theme .primary {
  background: var(--accent);
  color: #fff;
}

.production-theme .text-button {
  color: #1f6b65;
  font-weight: 750;
}

.production-theme .status,
.production-theme .badge,
.production-theme .stock-state {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  line-height: 1.15;
}

.production-theme .table-wrap {
  background: #fff;
}

.production-theme th {
  height: 36px;
  vertical-align: middle;
}

.production-theme td {
  vertical-align: middle;
}

.production-theme tbody tr {
  transition: background-color 100ms ease;
}

.production-theme .empty-state,
.production-theme .technical-no-data {
  min-height: 112px;
  display: grid;
  place-content: center;
  gap: 5px;
  padding: 22px;
  border: 1px dashed #cfd7d3;
  border-radius: 4px;
  background: #f8faf9;
  color: #6a7570;
  text-align: center;
}

.production-theme dialog {
  border: 1px solid #cfd7d3;
  background: #fff;
  box-shadow: 0 26px 70px rgba(9, 17, 14, 0.24);
}

.production-theme dialog::backdrop {
  background: rgba(10, 15, 17, 0.58);
  backdrop-filter: blur(2px);
}

.production-theme .inventory-item-cell {
  display: grid;
  grid-template-columns: 58px minmax(180px, 1fr);
  align-items: center;
  gap: 10px;
}

.production-theme .inventory-thumb-shell {
  display: grid;
  width: 58px;
  height: 46px;
  flex: 0 0 58px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #d8dfdc;
  border-radius: 3px;
  background: #fff;
}

.production-theme .inventory-thumb-shell.is-drawing {
  background: #f4f7f6;
}

.production-theme .inventory-thumb-shell.is-missing {
  color: #909b96;
}

.production-theme .inventory-thumb-shell .inventory-thumb {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: contain;
  padding: 3px;
  box-sizing: border-box;
  background: #fff;
}

.production-theme .inventory-thumb-shell.is-drawing .inventory-thumb {
  width: 84%;
  height: 84%;
}

.production-theme .warehouse-pult-thumb {
  background: #fff;
}

.production-theme .warehouse-pult-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 3px;
  box-sizing: border-box;
  background: #fff;
}

.production-theme .warehouse-pult-thumb img.is-drawing {
  width: 82%;
  height: 82%;
  opacity: 0.78;
}

.production-theme .warehouse-pult-table tbody tr {
  height: 62px;
}

.production-theme .warehouse-pult-name strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.production-theme .inventory-group td {
  border-top: 1px solid #cfd7d3;
  background: #edf1ef;
  color: #46514c;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.production-theme .row-actions {
  gap: 4px;
}

.production-theme .row-actions .small {
  min-height: 30px;
  padding-inline: 8px;
  font-size: 11px;
}

.production-theme .calendar-grid,
.production-theme .calendar-side,
.production-theme .readiness-center {
  background: #fff;
}

.production-theme .calendar-day {
  min-height: 112px;
}

.production-theme .legal2-tabs,
.production-theme .project-tabs,
.production-theme .builder-tabs {
  scrollbar-width: thin;
}

@media (max-width: 1340px) and (min-width: 1181px) {
  .production-theme .topbar-workspace {
    grid-template-columns: minmax(145px, auto) minmax(220px, 1fr) auto;
  }

  .production-theme .topbar-actions {
    max-width: 214px;
  }
}

@media (max-width: 680px) {
  .production-theme .topbar-navigation {
    grid-template-columns: 106px minmax(0, 1fr);
  }

  .production-theme .topbar-navigation .brand-911 {
    width: 106px;
  }

  .production-theme .tabs {
    gap: 3px;
    padding-bottom: 2px;
  }

  .production-theme .tab {
    width: 68px;
    min-height: 48px;
    padding: 5px 4px;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    font-size: 9px;
  }

  .production-theme .tab span {
    position: static;
    width: 100%;
    height: auto;
    overflow: hidden;
    clip-path: none;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .production-theme .panel,
  .production-theme .feature-panel {
    padding: 12px;
  }

  .production-theme .inventory-item-cell {
    grid-template-columns: 50px minmax(150px, 1fr);
  }

  .production-theme .inventory-thumb-shell {
    width: 50px;
    height: 42px;
  }
}

/* Navigation, project workspace and compact technical studio */
.production-theme .workspace-heading {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 9px;
}

.production-theme .workspace-heading > div {
  min-width: 0;
}

.production-theme .workspace-back {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border-color: #d5ddda;
  background: #fff;
  color: #28332f;
}

.production-theme .workspace-back:disabled {
  opacity: 0.35;
}

.production-theme .project-empty-state {
  min-height: 390px;
  display: grid;
  grid-template-columns: auto minmax(220px, 430px);
  place-content: center;
  align-items: center;
  gap: 12px 18px;
  padding: 36px 18px;
  text-align: left;
}

.production-theme .project-empty-state[hidden],
.production-theme #estimateForm[hidden] {
  display: none !important;
}

.production-theme .project-empty-icon {
  grid-row: 1 / span 2;
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border: 1px solid #cad6d1;
  border-radius: 6px;
  background: #eef5f2;
  color: #176f67;
}

.production-theme .project-empty-icon .lucide {
  width: 25px;
  height: 25px;
}

.production-theme .project-empty-state h3,
.production-theme .project-empty-state p {
  margin: 0;
}

.production-theme .project-empty-state p {
  margin-top: 5px;
  color: var(--muted);
}

.production-theme .project-empty-actions {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.production-theme .project-empty-actions button,
.production-theme .project-tab,
.production-theme .technical-tabs button,
.production-theme .technical-head-menu summary,
.production-theme .technical-head-menu > div button,
.production-theme .technical-head-menu > div .file-button,
.production-theme .technical-module-actions > button,
.production-theme .technical-module-actions > details > summary,
.production-theme .floor-command-tools > button,
.production-theme .floor-view-tools > button,
.production-theme .floor-zoom-group {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.production-theme .project-tabs {
  position: sticky;
  z-index: 18;
  top: 62px;
  margin-inline: -1px;
  background: rgba(255, 255, 255, 0.98);
}

.production-theme .project-tab {
  min-height: 42px;
  padding-inline: 11px;
}

.production-theme .project-tab .lucide,
.production-theme .technical-tabs .lucide {
  width: 15px;
  height: 15px;
}

.production-theme .technical-head-menu {
  position: relative;
}

.production-theme .technical-head-menu > summary {
  min-height: 34px;
  padding: 6px 10px;
  list-style: none;
  cursor: pointer;
}

.production-theme .technical-head-menu > summary::-webkit-details-marker {
  display: none;
}

.production-theme .technical-head-menu > div {
  position: absolute;
  z-index: 90;
  top: calc(100% + 5px);
  right: 0;
  display: grid;
  width: 210px;
  gap: 4px;
  padding: 6px;
  border: 1px solid #cbd5d1;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(18, 27, 23, 0.16);
}

.production-theme .technical-head-menu > div button,
.production-theme .technical-head-menu > div .file-button {
  width: 100%;
  justify-content: flex-start;
}

.production-theme #technical .technical-head {
  align-items: center;
  padding-block: 10px;
}

.production-theme #technical .technical-head h3 {
  font-size: 18px;
}

.production-theme #technical .technical-head p {
  margin-top: 2px;
  font-size: 11px;
}

.production-theme .technical-plan-picker {
  padding-block: 8px;
}

.production-theme .technical-plan-picker input,
.production-theme .technical-plan-picker select {
  min-height: 34px;
}

.production-theme .technical-project-settings > summary {
  min-height: 38px;
}

.production-theme .technical-workflow-modes {
  overflow-x: auto;
  scrollbar-width: thin;
}

.production-theme .technical-workflow-modes button {
  min-width: 150px;
  min-height: 50px;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 2px 7px;
  padding: 7px 10px;
}

.production-theme .technical-workflow-index {
  width: 22px;
  height: 22px;
  font-size: 10px;
}

.production-theme .technical-workflow-copy strong {
  font-size: 12px;
}

.production-theme .technical-workflow-copy > span {
  display: none;
}

.production-theme .technical-workflow-modes button em {
  overflow: hidden;
  font-size: 9px;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .technical-workflow-hint {
  display: none;
}

.production-theme .technical-tabs {
  position: sticky;
  z-index: 42;
  top: 0;
  flex-wrap: nowrap;
  overflow-x: auto;
  scrollbar-width: thin;
}

.production-theme .technical-tabs button {
  flex: 0 0 auto;
  min-height: 40px;
}

.production-theme .technical-content {
  padding: 8px;
}

.production-theme .technical-module-head {
  align-items: center;
  margin-bottom: 8px;
  padding: 3px 2px;
}

.production-theme .technical-module-head h4 {
  font-size: 15px;
}

.production-theme .technical-module-head p {
  margin-top: 2px;
  font-size: 10px;
}

.production-theme .technical-module-actions {
  gap: 5px;
}

.production-theme .technical-module-actions > button,
.production-theme .technical-module-actions > details > summary {
  min-height: 34px;
  padding: 6px 9px;
  font-size: 11px;
}

.production-theme .floor-mode-bar {
  gap: 7px;
  margin-bottom: 6px;
}

.production-theme .floor-view-switch,
.production-theme .floor-editor-mode {
  min-height: 34px;
}

.production-theme .floor-view-switch button,
.production-theme .floor-editor-mode button {
  min-height: 32px;
  padding: 5px 9px;
  font-size: 11px;
}

.production-theme .floor-commandbar {
  position: sticky;
  z-index: 50;
  top: 40px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  padding: 6px;
}

.production-theme .floor-command-tools {
  width: auto;
  gap: 3px;
}

.production-theme .floor-view-tools {
  flex-wrap: nowrap;
  gap: 5px;
  padding: 0 0 0 6px;
  border-top: 0;
  border-left: 1px solid var(--line);
}

.production-theme .floor-command-tools > button,
.production-theme .floor-command-tools > details > summary,
.production-theme .floor-view-tools > button,
.production-theme .floor-view-tools > details > summary {
  min-height: 34px;
  padding: 6px 9px;
  white-space: nowrap;
}

.production-theme .floor-command-tools > .icon-button,
.production-theme .floor-view-tools .icon-button {
  width: 34px;
  min-width: 34px;
  padding: 0;
}

.production-theme .floor-settings-menu > div {
  right: 0;
  display: flex;
  width: min(660px, calc(100vw - 42px));
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  padding: 10px;
}

.production-theme .floor-settings-menu .floor-cell-size-control {
  flex: 1 1 360px;
}

.production-theme .floor-settings-menu .check-label,
.production-theme .floor-settings-menu .floor-step-control,
.production-theme .floor-settings-menu .floor-grid-readout {
  flex: 0 0 auto;
}

.production-theme .floor-zoom-group {
  flex: 0 0 auto;
  gap: 4px;
}

.production-theme .floor-zoom-group > strong {
  min-width: 42px;
  color: #47534f;
  font-size: 11px;
  text-align: center;
}

.production-theme .floor-workspace {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  gap: 8px;
  margin-top: 8px;
}

.production-theme .floor-plan-scroll {
  min-height: 560px;
  max-height: calc(100vh - 235px);
}

.production-theme .floor-inspector {
  position: sticky;
  top: 86px;
  max-height: calc(100vh - 105px);
  overflow: auto;
}

.production-theme .floor-simple-library > summary {
  min-height: 38px;
  display: flex;
  align-items: center;
  padding-block: 7px;
}

@media (max-width: 1180px) {
  .production-theme .floor-commandbar {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .floor-view-tools {
    justify-content: flex-end;
    padding: 5px 0 0;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .production-theme .workspace-heading {
    gap: 6px;
  }

  .production-theme .workspace-back {
    width: 32px;
    min-width: 32px;
    height: 32px;
  }

  .production-theme .project-empty-state {
    min-height: 330px;
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    padding-inline: 16px;
  }

  .production-theme .project-empty-icon,
  .production-theme .project-empty-actions {
    grid-column: 1;
    grid-row: auto;
  }

  .production-theme .project-tabs {
    top: 0;
  }

  .production-theme .project-tab {
    min-width: 86px;
    flex-direction: column;
    gap: 3px;
    padding: 5px 7px;
    font-size: 10px;
  }

  .production-theme #technical .technical-head {
    display: flex;
    align-items: center;
  }

  .production-theme #technical .technical-head p {
    display: none;
  }

  .production-theme .technical-head-actions {
    width: auto;
    margin-left: auto;
  }

  .production-theme .technical-head-actions #createTechnicalPlan {
    flex: 0 0 auto;
  }

  .production-theme .technical-plan-picker {
    display: flex;
    overflow-x: auto;
    padding-inline: 9px;
  }

  .production-theme .technical-plan-picker label {
    flex: 0 0 230px;
  }

  .production-theme .technical-project-settings > summary small,
  .production-theme .technical-project-settings-summary {
    display: none;
  }

  .production-theme .technical-workflow-modes button {
    flex: 0 0 154px;
    min-width: 154px;
  }

  .production-theme .technical-workflow-modes {
    display: flex;
    grid-template-columns: none;
    overscroll-behavior-inline: contain;
  }

  .production-theme .technical-workflow-modes button em {
    display: none;
  }

  .production-theme .technical-tabs button {
    min-width: 78px;
    flex-direction: column;
    gap: 2px;
    padding: 4px 6px;
    font-size: 9px;
  }

  .production-theme .technical-module-head {
    display: flex;
    align-items: center;
  }

  .production-theme .technical-module-head p {
    display: none;
  }

  .production-theme .technical-module-actions {
    width: auto;
    margin-left: auto;
  }

  .production-theme .floor-mode-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .production-theme .floor-view-switch,
  .production-theme .floor-editor-mode {
    width: 100%;
  }

  .production-theme .floor-commandbar {
    top: 40px;
    padding: 5px;
  }

  .production-theme .floor-command-tools,
  .production-theme .floor-view-tools {
    justify-content: flex-start;
  }

  .production-theme .floor-command-tools > button span {
    display: none;
  }

  .production-theme .floor-command-tools > button:not(.icon-button) {
    width: 36px;
    min-width: 36px;
    padding: 0;
  }

  .production-theme .floor-workspace {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .floor-plan-scroll {
    min-height: 520px;
    max-height: 68vh;
  }

  .production-theme .floor-inspector {
    position: static;
    max-height: none;
  }

  .production-theme .floor-minimap {
    display: none;
  }
}

/* Warehouse professional planning tools (schema v6). */
.production-theme .warehouse-appearance-fields,
.production-theme .warehouse-flooring-fields {
  margin: 10px 0 0;
  padding: 10px;
  border: 1px solid #d5dfdb;
  border-radius: 8px;
  background: #f7faf8;
}

.production-theme .warehouse-appearance-fields > strong,
.production-theme .warehouse-flooring-fields > strong {
  display: block;
  margin-bottom: 8px;
  color: #263733;
  font: 700 11px/1.25 inherit;
}

.production-theme .warehouse-appearance-input-grid,
.production-theme .warehouse-dialog-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.production-theme .warehouse-appearance-input-grid label,
.production-theme .warehouse-dialog-grid label {
  display: grid;
  gap: 4px;
  color: #52615c;
  font-size: 10px;
}

.production-theme .warehouse-appearance-input-grid input,
.production-theme .warehouse-appearance-input-grid select,
.production-theme .warehouse-appearance-input-grid textarea,
.production-theme .warehouse-dialog-grid input,
.production-theme .warehouse-dialog-grid select {
  width: 100%;
  min-height: 32px;
  border: 1px solid #c8d3cf;
  border-radius: 6px;
  background: #fff;
  color: #263733;
  font: 500 11px/1.3 inherit;
}

.production-theme .warehouse-appearance-input-grid input[type="color"] {
  padding: 3px;
}

.production-theme .warehouse-appearance-fields:not(.is-markup) .warehouse-markup-text-field,
.production-theme .warehouse-appearance-fields:not(.is-markup) .warehouse-markup-style-field {
  display: none;
}

.production-theme .warehouse-markup-text-field {
  grid-column: 1 / -1;
}

.production-theme .warehouse-compact-tool-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.production-theme .warehouse-guide-switch {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin-top: 8px;
  color: #40524c;
  font-size: 10px;
  line-height: 1.3;
}

.production-theme .warehouse-guide-switch input {
  margin: 1px 0 0;
}

.warehouse-associative-dimension,
.warehouse-dimension-extension {
  fill: none;
  stroke: #176b63;
  stroke-width: .035;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.warehouse-dimension-extension {
  stroke-width: .02;
  stroke-dasharray: .08 .06;
  opacity: .76;
}

.warehouse-dimension-text,
.warehouse-guide-label,
.warehouse-freeform-text {
  fill: #174f49;
  paint-order: stroke;
  stroke: #fff;
  stroke-width: .08;
  stroke-linejoin: round;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: .25px;
  font-weight: 700;
  text-anchor: middle;
  pointer-events: none;
}

.warehouse-freeform-text {
  fill: var(--tech2-symbol-color, #263733);
  font-size: calc(var(--warehouse-markup-font-size, 16px) / 56);
}

.warehouse-smart-guides line {
  stroke: #159b8b;
  stroke-width: .025;
  stroke-dasharray: .1 .07;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.warehouse-smart-guides .warehouse-equal-gap-line {
  stroke-width: .04;
  stroke-dasharray: .06 .04;
}

.warehouse-smart-guides .warehouse-equal-gap-tick,
.warehouse-smart-guides .warehouse-angle-guide-ray {
  stroke-width: .04;
  stroke-dasharray: none;
}

.warehouse-smart-guides .warehouse-angle-guide-ring {
  fill: rgba(21, 155, 139, .08);
  stroke: #159b8b;
  stroke-width: .035;
  stroke-dasharray: .08 .05;
  vector-effect: non-scaling-stroke;
  pointer-events: none;
}

.warehouse-guide-label {
  fill: #08786c;
  font-size: .2px;
  text-anchor: start;
}

.warehouse-gap-guide-label,
.warehouse-angle-guide-label {
  text-anchor: middle;
}

.warehouse-polygon-preview,
.warehouse-freehand-preview {
  fill: rgba(23, 125, 115, .1);
  stroke: #177d73;
  stroke-width: .04;
  vector-effect: non-scaling-stroke;
}

.warehouse-freehand-preview {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.warehouse-polygon-handle {
  fill: #fff;
  stroke: #177d73;
  stroke-width: .04;
  vector-effect: non-scaling-stroke;
}

.warehouse-library-color-overlay {
  mix-blend-mode: multiply;
}

.production-theme .warehouse-view-tools {
  max-width: min(100%, 500px);
}

.production-theme .warehouse-view-tools button {
  min-width: 42px;
  padding-inline: 7px;
  font-size: 10px;
  white-space: nowrap;
}

.production-theme .warehouse-tool-dialog {
  width: min(560px, calc(100vw - 32px));
  padding: 0;
  border: 0;
  border-radius: 12px;
  box-shadow: 0 24px 70px rgba(18, 35, 30, .28);
  color: #263733;
}

.production-theme .warehouse-tool-dialog::backdrop {
  background: rgba(25, 39, 35, .46);
  backdrop-filter: blur(2px);
}

.production-theme .warehouse-tool-dialog form > header,
.production-theme .warehouse-tool-dialog form > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 16px;
  border-bottom: 1px solid #dce4e1;
}

.production-theme .warehouse-tool-dialog form > footer {
  justify-content: flex-end;
  border-top: 1px solid #dce4e1;
  border-bottom: 0;
}

.production-theme .warehouse-tool-dialog h3 {
  margin: 2px 0 0;
  font-size: 17px;
}

.production-theme .warehouse-dialog-grid,
.production-theme #warehouseAuditSummary,
.production-theme .warehouse-audit-results {
  margin: 14px 16px;
}

.production-theme #warehouseAuditSummary {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #edf6f2;
  font-size: 11px;
}

.production-theme .warehouse-audit-results {
  display: grid;
  gap: 6px;
  max-height: 52vh;
  overflow: auto;
}

.production-theme .warehouse-audit-results button {
  display: grid;
  gap: 3px;
  width: 100%;
  padding: 9px 10px;
  border: 1px solid #e2bbb7;
  border-radius: 7px;
  background: #fff7f6;
  text-align: left;
}

.production-theme .warehouse-audit-results button.warning {
  border-color: #e5d0a7;
  background: #fffaf0;
}

.production-theme .warehouse-audit-results button span {
  color: #a23d33;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.production-theme .warehouse-audit-results button strong {
  color: #3a4642;
  font-size: 11px;
}

.production-theme .warehouse-catalog-group-heading {
  position: sticky;
  top: 0;
  z-index: 2;
  margin: 0;
  padding: 8px 10px;
  border-bottom: 1px solid #cbd6d2;
  background: #eef4f1;
  color: #315049;
  font-size: 11px;
  text-transform: none;
}

/* Warehouse configurator: focused, project-free workspace. */
body[data-active-view="warehouseConfigurator"] #newEstimate {
  display: none;
}

.production-theme #warehouseConfigurator .tech2-workspace {
  min-height: calc(100vh - 70px);
  background: #edf2f0;
}

.production-theme #warehouseConfigurator .tech2-header {
  min-height: 58px;
  border-bottom-color: #cbd6d1;
  box-shadow: 0 1px 0 rgba(25, 43, 36, .03);
}

.production-theme #warehouseConfigurator .tech2-editor-shell {
  grid-template-columns: 224px minmax(520px, 1fr) 264px;
  min-height: calc(100vh - 128px);
}

.production-theme #warehouseConfigurator .tech2-setup-panel,
.production-theme #warehouseConfigurator .tech2-inspector {
  scrollbar-color: #aab8b2 transparent;
}

.production-theme #warehouseConfigurator .tech2-presets {
  display: block;
  margin-top: 10px;
}

.production-theme #warehouseConfigurator .warehouse-base-facts {
  display: grid;
  gap: 5px;
  padding: 10px 11px;
  border: 1px solid #bdd2ca;
  border-radius: 6px;
  background: linear-gradient(145deg, #fff 0%, #edf7f3 100%);
  color: #31413b;
}

.production-theme #warehouseConfigurator .warehouse-base-facts strong {
  color: #0d6259;
  font-size: 12px;
  letter-spacing: .01em;
}

.production-theme #warehouseConfigurator .warehouse-base-facts span {
  font-size: 11px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator .warehouse-base-facts small {
  color: #63716b;
  font-size: 9px;
  line-height: 1.35;
}

.production-theme #warehouseConfigurator .tech2-stage-panel {
  background: #e9efec;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar {
  box-shadow: 0 1px 0 rgba(26, 42, 36, .04);
}

.production-theme #warehouseConfigurator .warehouse-collision-status {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  gap: 6px;
  padding-inline: 9px;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-collision-status .lucide {
  width: 14px;
  height: 14px;
}

.production-theme #warehouseConfigurator .warehouse-collision-status.is-clear {
  border-color: #9ec8ae;
  background: #e8f5ed;
  color: #216d42;
}

.production-theme #warehouseConfigurator .warehouse-collision-status.is-warning {
  border-color: #e2a09d;
  background: #fff0ef;
  color: #b1262d;
}

.production-theme #warehouseConfigurator .tech2-viewport {
  box-sizing: border-box;
  width: 100%;
  min-height: 620px;
  max-height: calc(100vh - 128px);
  padding: 34px;
  background:
    radial-gradient(circle at 50% 0, rgba(255, 255, 255, .86), transparent 42%),
    #e5ece9;
}

.production-theme #warehouseConfigurator .tech2-canvas-frame {
  border-color: #566861;
  box-shadow: 0 14px 34px rgba(28, 46, 39, .16);
}

.production-theme #warehouseConfigurator .tech2-object.is-selected .tech2-symbol-outline,
.production-theme #warehouseConfigurator .tech2-object.is-selected .tech2-symbol-detail {
  stroke: #0d6259;
}

.production-theme #warehouseConfigurator .warehouse-collision-box {
  fill: rgba(227, 39, 50, .1);
  stroke: #d61f2c;
  stroke-width: .075;
  stroke-dasharray: .16 .08;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-magnet-target-box {
  fill: rgba(16, 142, 116, .13);
  stroke: #008a72;
  stroke-width: .075;
  stroke-dasharray: .14 .07;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .tech2-object.is-magnet-target .tech2-symbol-outline,
.production-theme #warehouseConfigurator .tech2-object.is-magnet-target .tech2-symbol-detail {
  stroke: #008a72;
}

.production-theme #warehouseConfigurator .warehouse-selection-label {
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-selection-label rect {
  fill: rgba(255, 255, 255, .96);
  stroke: #0d6259;
  stroke-width: .035;
  filter: drop-shadow(0 .06px .09px rgba(26, 46, 39, .26));
}

.production-theme #warehouseConfigurator .warehouse-selection-label .tech2-object-label {
  fill: #0d6259;
  stroke: none;
  font-size: .28px;
  font-weight: 850;
}

.production-theme #warehouseConfigurator .tech2-tool-grid button {
  min-height: 39px;
  border-color: #ccd7d2;
  background: #fff;
}

.production-theme #warehouseConfigurator .tech2-tool-grid button:hover {
  border-color: #7ca99e;
  background: #f1f8f5;
  color: #0d6259;
}

.production-theme .warehouse-catalog-thumb {
  overflow: hidden;
  border: 1px solid #d4ded9;
  border-radius: 7px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(228, 237, 233, .96));
}

.production-theme .warehouse-catalog-thumb svg {
  width: 48px;
  height: 48px;
  fill: none;
  stroke: #40514a;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.production-theme .warehouse-catalog-thumb svg .fill {
  fill: #d5e3dd;
}

.production-theme .warehouse-catalog-thumb svg .accent {
  fill: #d9b36a;
}

.production-theme .warehouse-catalog-thumb svg .soft {
  fill: #b9bdc1;
}

.production-theme .warehouse-catalog-thumb svg .paper {
  fill: #fbfcfb;
}

.production-theme .warehouse-catalog-thumb svg .cabinet {
  fill: #c5cbc9;
}

.production-theme .warehouse-catalog-thumb svg .screen {
  fill: #83a9b8;
}

.production-theme .warehouse-catalog-thumb svg .dark {
  fill: #3c4542;
  stroke: #222a27;
}

.production-theme .warehouse-catalog-thumb svg .beam {
  fill: rgba(231, 171, 52, .24);
  stroke: #bf7b10;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item {
  min-height: 80px;
  border-bottom: 1px solid #e2e8e5;
  transition: background .15s ease, box-shadow .15s ease;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item:hover {
  position: relative;
  z-index: 1;
  background: #f8fbfa;
  box-shadow: inset 3px 0 #0d6259;
}

@media (max-width: 1280px) {
  .production-theme #warehouseConfigurator .tech2-editor-shell {
    grid-template-columns: 210px minmax(440px, 1fr) 240px;
  }
}

@media (max-width: 980px) {
  .production-theme #warehouseConfigurator .tech2-editor-shell {
    grid-template-columns: 205px minmax(430px, 1fr);
  }

  .production-theme #warehouseConfigurator .tech2-inspector {
    grid-column: 1 / -1;
  }
}

/* Techplan 2.0 project, catalog and precision editing additions. */
.production-theme .tech2-document-bar {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) minmax(170px, 1fr) minmax(220px, 1.35fr) auto auto auto;
  align-items: end;
  gap: 8px;
  padding: 8px 14px;
  border-bottom: 1px solid #cbd5d1;
  background: #f8faf9;
}

.production-theme .tech2-document-bar label,
.production-theme .tech2-sheet-settings label {
  min-width: 0;
  margin: 0;
  color: #596660;
  font-size: 10px;
  font-weight: 750;
}

.production-theme .tech2-document-bar input,
.production-theme .tech2-document-bar select {
  min-width: 0;
  min-height: 34px;
  padding: 6px 8px;
  font-size: 11px;
}

.production-theme .tech2-document-bar button {
  min-height: 34px;
}

.production-theme .tech2-editor-shell {
  min-height: calc(100vh - 170px);
}

.production-theme .tech2-catalog-open {
  width: 100%;
  min-height: 36px;
  margin: 0 0 7px;
  font-size: 11px;
}

.production-theme .tech2-sheet-settings {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  padding-bottom: 11px;
}

.production-theme .tech2-sheet-settings label:nth-child(3),
.production-theme .tech2-sheet-settings .tech2-check {
  grid-column: 1 / -1;
}

.production-theme .tech2-sheet-settings input,
.production-theme .tech2-sheet-settings select {
  min-width: 0;
  min-height: 33px;
  padding: 5px 7px;
  font-size: 11px;
}

.production-theme .tech2-sheet-settings .tech2-check {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
}

.production-theme .tech2-sheet-settings .tech2-check input {
  width: 16px;
  min-height: 16px;
}

.production-theme .tech2-stage-toolbar {
  grid-template-columns: auto auto auto minmax(100px, 1fr) auto;
}

.production-theme .tech2-selection-controls {
  display: flex;
  align-items: center;
  gap: 4px;
}

.production-theme .tech2-toolbar-menu {
  position: relative;
  margin: 0;
}

.production-theme .tech2-toolbar-menu > summary {
  display: grid;
  place-items: center;
  list-style: none;
  cursor: pointer;
}

.production-theme .tech2-toolbar-menu > summary::-webkit-details-marker {
  display: none;
}

.production-theme .tech2-toolbar-menu > div {
  position: absolute;
  z-index: 20;
  top: calc(100% + 6px);
  left: 0;
  display: grid;
  width: 220px;
  padding: 5px;
  border: 1px solid #cbd5d1;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(22, 34, 29, .18);
}

.production-theme .tech2-toolbar-menu > div button {
  min-height: 30px;
  padding: 5px 8px;
  border: 0;
  background: transparent;
  color: #293531;
  font-size: 11px;
  text-align: left;
}

.production-theme .tech2-toolbar-menu > div button:hover {
  background: #edf4f1;
}

.production-theme #tech2ZoomValue {
  width: 42px;
  color: #4d5a55;
  font-size: 10px;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.production-theme .tech2-viewport {
  max-height: calc(100vh - 218px);
  overscroll-behavior: contain;
}

.production-theme .tech2-viewport.is-pan-ready {
  cursor: grab;
}

.production-theme .tech2-viewport.is-panning {
  cursor: grabbing;
  user-select: none;
}

.production-theme .tech2-viewport.is-panning .tech2-canvas {
  pointer-events: none;
}

.production-theme .tech2-library-symbol {
  pointer-events: none;
}

.production-theme .tech2-object-hit {
  fill: transparent;
  cursor: move;
  pointer-events: all;
}

.production-theme .tech2-object.is-selected .tech2-library-symbol {
  filter: drop-shadow(0 0 .07px #e32732);
}

.production-theme .tech2-wall-opening-gap {
  stroke: #fff;
  stroke-linecap: butt;
  pointer-events: none;
}

.production-theme .tech2-marquee {
  fill: rgba(18, 110, 101, .08);
  stroke: #126e65;
  stroke-dasharray: .16 .1;
}

.production-theme .tech2-wall-handle {
  cursor: crosshair;
  pointer-events: all;
}

.production-theme .tech2-object-source,
.production-theme .tech2-wall-metrics {
  margin: 0;
  padding: 7px 8px;
  border-left: 3px solid #126e65;
  background: #edf5f2;
  color: #4f5d57;
  font-size: 10px;
  line-height: 1.4;
}

.production-theme .tech2-catalog-dialog {
  width: min(920px, calc(100vw - 32px));
  height: min(760px, calc(100vh - 32px));
  padding: 0;
  overflow: hidden;
  border: 1px solid #aebbb6;
  border-radius: 6px;
  background: #f7f9f8;
  box-shadow: 0 28px 80px rgba(14, 23, 19, .28);
}

.production-theme .tech2-catalog-dialog::backdrop {
  background: rgba(12, 19, 17, .52);
}

.production-theme .tech2-catalog-head,
.production-theme .tech2-catalog-dialog footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid #d0d9d5;
  background: #fff;
}

.production-theme .tech2-catalog-head h3 {
  margin: 1px 0 0;
  font-size: 18px;
}

.production-theme .tech2-catalog-dialog footer {
  border-top: 1px solid #d0d9d5;
  border-bottom: 0;
  color: #65716c;
  font-size: 11px;
}

.production-theme .tech2-catalog-filters {
  display: grid;
  gap: 8px;
  padding: 10px 14px;
  border-bottom: 1px solid #d5ddda;
}

.production-theme .tech2-catalog-filters > label {
  position: relative;
  margin: 0;
}

.production-theme .tech2-catalog-filters > label .lucide {
  position: absolute;
  top: 10px;
  left: 11px;
  width: 16px;
  height: 16px;
  color: #74817c;
}

.production-theme .tech2-catalog-filters input {
  min-height: 38px;
  padding-left: 36px;
}

.production-theme .tech2-catalog-categories {
  display: flex;
  gap: 5px;
  padding-bottom: 2px;
  overflow-x: auto;
}

.production-theme .tech2-catalog-categories button {
  flex: 0 0 auto;
  min-height: 30px;
  padding: 4px 9px;
  border: 1px solid #cbd5d1;
  border-radius: 4px;
  background: #fff;
  color: #4e5b56;
  font-size: 10px;
  font-weight: 700;
}

.production-theme .tech2-catalog-categories button.active {
  border-color: #126e65;
  background: #e3f2ee;
  color: #0d5e56;
}

.production-theme .tech2-catalog-results {
  display: grid;
  align-content: start;
  gap: 1px;
  height: calc(100% - 190px);
  padding: 1px 14px;
  overflow: auto;
  background: #dce3e0;
}

.production-theme .tech2-catalog-item {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  min-height: 70px;
  padding: 7px 9px;
  background: #fff;
}

.production-theme .tech2-catalog-item img,
.production-theme .tech2-catalog-placeholder {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  object-fit: contain;
  background: #fff;
}

.production-theme .tech2-catalog-item > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.production-theme .tech2-catalog-item strong,
.production-theme .tech2-catalog-item span,
.production-theme .tech2-catalog-item small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .tech2-catalog-item strong {
  font-size: 12px;
}

.production-theme .tech2-catalog-item span,
.production-theme .tech2-catalog-item small {
  color: #64716b;
  font-size: 10px;
}

.production-theme .tech2-catalog-item button {
  min-height: 32px;
  padding: 5px 10px;
  font-size: 10px;
}

.production-theme .tech2-catalog-empty {
  padding: 36px 16px;
  background: #fff;
  color: #69756f;
  text-align: center;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-empty-state {
  display: grid;
  min-height: 210px;
  grid-column: 1 / -1;
  place-content: center;
  justify-items: center;
  gap: 8px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-empty-state strong {
  color: #20242a;
  font-size: 14px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-empty-state span {
  max-width: 390px;
  line-height: 1.45;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-empty-state button {
  margin-top: 8px;
}

@media (max-width: 1180px) {
  .production-theme .tech2-document-bar {
    grid-template-columns: 1fr 1fr minmax(180px, 1fr) auto auto auto;
  }

  .production-theme .tech2-stage-toolbar {
    grid-template-columns: auto auto minmax(100px, 1fr) auto;
  }

  .production-theme .tech2-selection-controls {
    grid-column: 1 / -1;
    order: 2;
  }
}

@media (max-width: 760px) {
  .production-theme .tech2-document-bar {
    grid-template-columns: 1fr 1fr;
  }

  .production-theme .tech2-plan-name {
    grid-column: 1 / -1;
  }

  .production-theme .tech2-header-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .production-theme .tech2-save-status {
    grid-column: 1 / -1;
  }

  .production-theme .tech2-catalog-item {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .production-theme .tech2-catalog-item img,
  .production-theme .tech2-catalog-placeholder {
    width: 44px;
    height: 44px;
  }

  .production-theme .tech2-catalog-item button {
    grid-column: 1 / -1;
  }
}

/* 2026-08-17: final workspace cosmetic polish */
.production-theme {
  --surface-subtle: #f7f9f8;
  --line-strong: #c7d0cc;
  --control-hover: #edf2f0;
}

.production-theme button:not(:disabled),
.production-theme summary,
.production-theme .file-button {
  cursor: pointer;
}

.production-theme button:disabled {
  cursor: not-allowed;
}

.production-theme .ghost:hover,
.production-theme .small:hover,
.production-theme summary.ghost:hover {
  border-color: var(--line-strong);
  background: var(--control-hover);
}

.production-theme .topbar-workspace {
  grid-template-columns: minmax(152px, 190px) minmax(260px, 1fr) max-content;
  gap: 14px;
  min-height: 66px;
  padding: 9px 18px;
}

.production-theme .workspace-heading h2 {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .global-search-shell {
  width: 100%;
  max-width: 560px;
}

.production-theme .topbar-actions {
  min-width: 0;
  max-width: none;
  gap: 6px;
}

.production-theme .topbar-actions > *,
.production-theme .notification-shell,
.production-theme .data-actions-menu {
  flex: 0 0 auto;
}

.production-theme .notification-count {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border: 2px solid #fff;
  border-radius: 9px;
  color: #fff;
  font-size: 9px;
  line-height: 1;
}

.production-theme .view {
  max-width: 1760px;
  margin-inline: auto;
}

.production-theme .panel,
.production-theme .feature-panel,
.production-theme .metric {
  border-color: #d3dbd7;
}

.production-theme .panel-head {
  align-items: flex-start;
}

.production-theme .panel-head h3,
.production-theme .panel-head p {
  margin-block: 0;
}

.production-theme .metric {
  min-height: 82px;
  align-content: center;
  gap: 6px;
}

.production-theme .metric span {
  font-size: 11px;
  font-weight: 700;
}

.production-theme .metric strong {
  line-height: 1;
}

.production-theme #dashboard .dashboard-grid {
  grid-template-columns: minmax(0, 1.55fr) minmax(292px, 0.85fr);
}

.production-theme #dashboard .dashboard-grid > .panel:first-child .table-wrap {
  overflow-x: hidden;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(1) { width: 42%; }
.production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(2) { width: 20%; }
.production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(3) { width: 18%; }
.production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(4) { width: 20%; }

.production-theme #dashboard .dashboard-grid > .panel:first-child th:last-child,
.production-theme #dashboard .dashboard-grid > .panel:first-child td:last-child {
  text-align: right;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child td {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child td:first-child {
  white-space: normal;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child td:first-child strong,
.production-theme #dashboard .dashboard-grid > .panel:first-child td:first-child .muted {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #dashboard .dashboard-grid > .panel:first-child td:first-child strong {
  display: -webkit-box;
  line-height: 1.25;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.production-theme #dashboard .panel-head .text-button,
.production-theme #dashboard .dashboard-grid > .panel:last-child .panel-head h3 {
  white-space: nowrap;
}

.production-theme #dashboard .dashboard-grid > .panel:last-child .panel-head h3 {
  font-size: 16px;
}

.production-theme .readiness-row {
  grid-template-columns: minmax(190px, 1.2fr) minmax(126px, 0.7fr) minmax(240px, 1.45fr) auto;
  gap: 14px;
  padding-block: 12px;
}

.production-theme .readiness-row > div:first-child,
.production-theme .readiness-row > div:nth-child(2) {
  display: grid;
  justify-items: start;
  gap: 3px;
}

.production-theme .readiness-row > div:first-child strong,
.production-theme .readiness-row > div:first-child span {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .readiness-row > div span {
  margin: 0;
}

.production-theme .readiness-signals {
  gap: 4px;
}

.production-theme .readiness-signal {
  min-height: 22px;
  padding: 3px 6px;
  background: #fff;
  font-size: 10px;
  white-space: nowrap;
}

.production-theme .readiness-row > button {
  min-width: 88px;
}

.production-theme #estimateForm > .form-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: start;
  gap: 16px;
}

.production-theme #estimateForm > .form-head > div:first-child {
  min-width: 0;
  flex: none;
}

.production-theme #estimateForm > .form-head h3 {
  max-width: 100%;
  font-size: 22px;
  line-height: 1.12;
  overflow-wrap: normal;
  word-break: normal;
}

.production-theme #estimateForm > .form-head p {
  font-size: 12px;
  line-height: 1.35;
}

.production-theme #estimateForm > .form-head .form-actions {
  display: grid;
  grid-template-columns: repeat(4, max-content);
  align-items: start;
  justify-content: end;
  gap: 6px;
  width: auto;
  max-width: none;
  flex: none;
}

.production-theme #estimateForm > .form-head .form-actions button {
  min-height: 34px;
  padding-inline: 10px;
  white-space: nowrap;
}

.production-theme #estimateForm > .form-head .form-actions .danger {
  border-color: #e5bbb7;
  background: #fffafa;
}

.production-theme .project-stage-shell {
  grid-template-columns: minmax(0, 1fr) 190px;
  margin-bottom: 10px;
}

.production-theme .project-stage-bar {
  grid-template-columns: repeat(9, minmax(84px, 1fr));
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}

.production-theme .project-stage-bar::-webkit-scrollbar,
.production-theme .project-tabs::-webkit-scrollbar,
.production-theme .technical-tabs::-webkit-scrollbar {
  display: none;
}

.production-theme .project-stage {
  min-height: 58px;
  padding: 8px 7px;
  overflow: hidden;
  font-size: 9.5px;
  line-height: 1.18;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  white-space: normal;
}

.production-theme .project-stage:disabled {
  opacity: 1;
}

.production-theme .project-stage-actions {
  max-width: 260px;
  justify-items: stretch;
}

.production-theme .project-stage-actions span {
  line-height: 1.25;
}

.production-theme .project-stage-actions button {
  width: 100%;
}

.production-theme .project-production-control {
  margin-bottom: 10px;
}

.production-theme .production-control-title,
.production-theme .production-status-cell {
  min-height: 72px;
}

.production-theme .production-status-cell,
.production-theme .production-status-cell.warn {
  white-space: normal;
}

.production-theme .production-status-cell strong,
.production-theme .production-status-cell small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .project-tabs,
.production-theme .technical-tabs,
.production-theme .legal2-tabs,
.production-theme .builder-tabs {
  overscroll-behavior-inline: contain;
  scrollbar-width: none;
}

.production-theme .project-tabs {
  min-height: 43px;
  margin-bottom: 12px;
}

.production-theme .project-tab {
  min-height: 42px;
  white-space: nowrap;
}

.production-theme .project-tab.active {
  box-shadow: inset 0 -1px 0 var(--accent);
}

.production-theme .form-grid label {
  gap: 6px;
}

.production-theme input:hover:not(:disabled),
.production-theme select:hover:not(:disabled),
.production-theme textarea:hover:not(:disabled) {
  border-color: #b9c5c0;
}

.production-theme .technical-workflow-modes button,
.production-theme .technical-tabs button,
.production-theme .floor-command-tools > button,
.production-theme .floor-view-tools > button {
  transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}

.production-theme .technical-workflow-modes button:not(.active):hover,
.production-theme .technical-tabs button:not(.active):hover {
  background: var(--surface-subtle);
}

.production-theme .floor-command-tools {
  gap: 2px;
  scrollbar-width: none;
}

.production-theme .floor-command-tools::-webkit-scrollbar {
  display: none;
}

.production-theme .floor-command-tools > button,
.production-theme .floor-command-tools > details > summary {
  padding-inline: 7px;
  font-size: 12px;
}

@media (min-width: 1181px) and (max-width: 1340px) {
  .production-theme .topbar-workspace {
    grid-template-columns: minmax(152px, 190px) minmax(260px, 1fr) max-content;
  }

  .production-theme .topbar-actions {
    max-width: none;
  }

  .production-theme .topbar-actions .data-actions-menu summary span,
  .production-theme .topbar-actions .data-actions-menu summary .lucide:last-child {
    display: none;
  }

  .production-theme .topbar-actions .data-actions-menu summary,
  .production-theme .topbar-actions #newEstimate {
    width: 38px;
    min-width: 38px;
    padding: 0;
  }
}

@media (max-width: 1100px) {
  .production-theme .topbar-workspace {
    grid-template-columns: minmax(152px, 190px) minmax(220px, 1fr);
  }

  .production-theme .topbar-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
    overflow-x: auto;
  }

  .production-theme #estimateForm > .form-head {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme #estimateForm > .form-head .form-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
  }

  .production-theme #estimateForm > .form-head .form-actions button {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .production-theme #dashboard .dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .readiness-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .readiness-row > button {
    width: auto;
    justify-self: start;
  }

  .production-theme .project-stage-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .production-theme .project-stage-actions {
    width: 100%;
    max-width: none;
    border-top: 1px solid var(--line);
    border-left: 0;
  }
}

@media (max-width: 680px) {
  .production-theme .topbar-workspace {
    grid-template-columns: minmax(0, 1fr);
    padding: 9px 10px;
  }

  .production-theme .topbar-actions {
    grid-column: auto;
    justify-content: flex-start;
    scrollbar-width: none;
  }

  .production-theme #estimateForm > .form-head .form-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-theme .project-stage-bar {
    grid-template-columns: repeat(9, 90px);
  }

  .production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(2),
  .production-theme #dashboard .dashboard-grid > .panel:first-child td:nth-child(2) {
    display: none;
  }

  .production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(1) { width: 58%; }
  .production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(3) { width: 22%; }
  .production-theme #dashboard .dashboard-grid > .panel:first-child th:nth-child(4) { width: 20%; }
}
/* Focused workspace: four primary destinations and one canonical estimate editor. */
.production-theme .nav-more,
.production-theme .project-more-tabs {
  position: relative;
}

.production-theme .nav-more > summary,
.production-theme .project-more-tabs > summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
}

.production-theme .nav-more > summary::-webkit-details-marker,
.production-theme .project-more-tabs > summary::-webkit-details-marker {
  display: none;
}

.production-theme .nav-more > summary {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 14px;
  color: var(--sidebar-muted);
  border-radius: 5px;
  font-size: 12px;
  font-weight: 700;
}

.production-theme .nav-more > summary:hover,
.production-theme .nav-more[open] > summary {
  color: #fff;
  background: var(--sidebar-active);
}

.production-theme .nav-more-menu {
  display: grid;
  gap: 3px;
  padding: 5px 0 0;
}

.production-theme .nav-more-menu .tab {
  width: 100%;
}

.production-theme .project-more-tabs > summary {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: #fff;
  color: #34403b;
  font-weight: 750;
}

.production-theme .project-more-tabs > div {
  position: absolute;
  z-index: 90;
  top: calc(100% + 6px);
  right: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 5px;
  width: 360px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(18, 25, 23, .18);
}

.production-theme .project-more-tabs .project-tab {
  justify-content: flex-start;
  width: 100%;
}

.production-theme .form-head {
  position: sticky;
  z-index: 64;
  top: 0;
  padding: 9px 0;
  background: rgba(248, 250, 249, .96);
  backdrop-filter: blur(10px);
}

.production-theme .totals {
  position: sticky;
  z-index: 58;
  top: 66px;
  display: grid;
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  gap: 1px;
  padding: 1px;
  border: 1px solid #cfd8d4;
  border-radius: 6px;
  background: #cfd8d4;
  box-shadow: 0 8px 22px rgba(18, 25, 23, .08);
}

.production-theme .totals > div {
  min-height: 57px;
  padding: 8px 10px;
  background: #fff;
}

.production-theme .totals span {
  font-size: 10px;
}

.production-theme .totals strong {
  font-size: 16px;
}

.production-theme .builder-tabs {
  position: sticky;
  z-index: 56;
  top: 128px;
  justify-content: flex-end;
  padding: 7px 0;
  background: rgba(248, 250, 249, .96);
  backdrop-filter: blur(10px);
}

.production-theme .builder-tab {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.production-theme .builder-tab[data-builder-mode="catalog"] {
  color: #fff;
  border-color: #147a70;
  background: #147a70;
}

.production-theme .legacy-estimate-specification,
.production-theme .legacy-builder-variant {
  display: none !important;
}

.production-theme .estimate-lines-wrap {
  max-height: none;
  overflow: auto;
  border: 1px solid #d3ddd8;
  border-radius: 5px;
}

.production-theme .lines-table {
  min-width: 1180px;
}

.production-theme .lines-table thead {
  position: sticky;
  z-index: 4;
  top: 0;
  background: #f0f4f2;
}

.production-theme .line-inline-issue {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  width: 100%;
  margin-top: 4px;
  padding: 6px 7px;
  border: 1px solid #e4c786;
  border-radius: 4px;
  background: #fff8e9;
  color: #725014;
  text-align: left;
  font-size: 10px;
  line-height: 1.3;
}

.production-theme .line-inline-issue.bad {
  border-color: #efb0ad;
  background: #fff2f1;
  color: #a32622;
}

.production-theme .line-inline-issue .lucide {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
}

.production-theme .line-delete-action {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 32px;
  padding: 0 9px;
  border: 1px solid #efc1be;
  border-radius: 4px;
  background: #fff;
  color: #ba2d27;
  font-size: 11px;
  font-weight: 750;
  cursor: pointer;
}

.production-theme .line-delete-action:hover {
  border-color: #ba2d27;
  background: #fff1f0;
}

.production-theme .estimate-catalog-drawer {
  position: fixed;
  z-index: 250;
  top: 0;
  right: 0;
  display: block !important;
  width: min(620px, 92vw);
  height: 100vh;
  padding: 0 18px 24px;
  overflow: auto;
  border-left: 1px solid #cbd5d1;
  background: #f7f9f8;
  box-shadow: -20px 0 50px rgba(12, 20, 17, .22);
  transform: translateX(105%);
  transition: transform .18s ease;
  visibility: hidden;
}

.production-theme.estimate-catalog-open::after {
  content: "";
  position: fixed;
  z-index: 240;
  inset: 0;
  background: rgba(13, 20, 18, .36);
}

.production-theme.estimate-catalog-open .estimate-catalog-drawer {
  transform: translateX(0);
  visibility: visible;
}

.production-theme .estimate-catalog-drawer-head {
  position: sticky;
  z-index: 3;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 70px;
  margin: 0 -18px 14px;
  padding: 10px 18px;
  border-bottom: 1px solid #d5ded9;
  background: rgba(247, 249, 248, .97);
}

.production-theme .estimate-catalog-drawer-head div {
  display: grid;
  gap: 2px;
}

.production-theme .estimate-catalog-drawer-head span {
  color: #68736e;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}

.production-theme .warehouse-mode-switch {
  position: sticky;
  z-index: 70;
  top: 0;
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  gap: 3px;
  margin-bottom: 10px;
  padding: 3px;
  border: 1px solid #cfd8d4;
  border-radius: 6px;
  background: #e9efec;
}

.production-theme .warehouse-mode-switch button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 15px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #52605a;
  font-weight: 750;
  cursor: pointer;
}

.production-theme .warehouse-mode-switch button.active {
  background: #fff;
  color: #0f655d;
  box-shadow: 0 1px 4px rgba(20, 34, 29, .11);
}

.production-theme[data-user-role="warehouse"] .tab[data-view="expenses"],
.production-theme[data-user-role="warehouse"] .tab[data-view="legal"],
.production-theme[data-user-role="warehouse"] .tab[data-view="legal2"],
.production-theme[data-user-role="warehouse"] .tab[data-view="reports"] {
  display: none !important;
}

@media (max-width: 900px) {
  .production-theme .totals {
    position: static;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
  }

  .production-theme .builder-tabs {
    top: 58px;
  }

  .production-theme .project-more-tabs > div {
    position: fixed;
    inset: auto 12px 72px 12px;
    width: auto;
    grid-template-columns: repeat(2, 1fr);
  }
}
/* Keep smart-kit recommendations readable even when names are long. */
.smart-kit-panel .feature-card {
  grid-template-rows: 1fr auto;
  align-items: stretch;
}

.smart-kit-panel .feature-card > div {
  display: grid;
  align-content: start;
  gap: 5px;
}

.smart-kit-panel .feature-card strong,
.smart-kit-panel .feature-card span,
.smart-kit-panel .feature-card small {
  display: block;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.smart-kit-panel .feature-card .add-smart-item {
  width: 100%;
  min-height: 38px;
  align-self: end;
}

.production-theme .app-confirm-dialog {
  width: min(520px, calc(100vw - 32px));
  border-top: 4px solid var(--brand-red);
  border-radius: 6px;
}

.production-theme .app-confirm-form {
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
}

.production-theme .app-confirm-icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #fff0f0;
  color: var(--danger);
}

.production-theme .app-confirm-icon .lucide {
  width: 21px;
  height: 21px;
}

.production-theme .app-confirm-message,
.production-theme .app-confirm-details {
  margin: 7px 0 0;
  line-height: 1.45;
  white-space: pre-line;
}

.production-theme .app-confirm-details {
  padding: 10px 12px;
  border: 1px solid #efd0cf;
  border-radius: 4px;
  background: #fff7f7;
  color: #7d2927;
}

.production-theme .app-confirm-actions {
  grid-column: 1 / -1;
  display: flex;
  gap: 8px;
}

.production-theme .app-confirm-submit {
  border-color: var(--danger);
  background: var(--danger);
  color: #fff;
}

.production-theme .tech2-workspace {
  min-height: calc(100vh - 92px);
  border: 1px solid var(--line);
  background: #fff;
}

.production-theme .tech2-header,
.production-theme .tech2-stage-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.production-theme .tech2-header {
  min-height: 70px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
}

.production-theme .tech2-header h3,
.production-theme .tech2-setup-panel h4 {
  margin: 0;
}

.production-theme .tech2-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.production-theme .tech2-save-status {
  color: var(--muted);
  font-size: 12px;
}

.production-theme .tech2-save-status::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 6px;
  border-radius: 50%;
  background: #2f9b62;
}

.production-theme .tech2-editor-shell {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  min-height: calc(100vh - 164px);
}

.production-theme .tech2-setup-panel {
  padding: 16px;
  border-right: 1px solid var(--line);
  background: #f7f9f8;
}

.production-theme .tech2-setup-panel form,
.production-theme .tech2-presets {
  display: grid;
  gap: 10px;
}

.production-theme .tech2-setup-panel form p {
  margin: 5px 0 4px;
}

.production-theme .tech2-presets {
  grid-template-columns: 1fr 1fr;
  margin-top: 14px;
}

.production-theme .tech2-presets button {
  min-height: 40px;
  border: 1px solid var(--line);
  background: #fff;
  font-weight: 700;
}

.production-theme .tech2-reset {
  margin-top: 14px;
}

.production-theme .tech2-stage-panel {
  min-width: 0;
  background: #e9eeec;
}

.production-theme .tech2-stage-toolbar {
  min-height: 52px;
  padding: 9px 14px;
  border-bottom: 1px solid #cbd4d0;
  background: #fff;
}

.production-theme .tech2-stage-toolbar span {
  color: var(--muted);
  font-size: 12px;
}

.production-theme .tech2-viewport {
  display: grid;
  place-items: center;
  min-height: calc(100vh - 216px);
  padding: 40px;
  overflow: auto;
}

.production-theme .tech2-canvas {
  --tech2-columns: 20;
  --tech2-rows: 12;
  position: relative;
  width: min(100%, 1200px);
  min-width: 560px;
  max-height: calc(100vh - 290px);
  border: 2px solid #27332f;
  background-color: #fff;
  background-image:
    linear-gradient(to right, rgba(73, 91, 84, 0.18) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(73, 91, 84, 0.18) 1px, transparent 1px);
  background-size: calc(100% / var(--tech2-columns)) calc(100% / var(--tech2-rows));
  box-shadow: 0 12px 35px rgba(22, 31, 28, 0.12);
}

.production-theme .tech2-dimension {
  position: absolute;
  padding: 2px 6px;
  border: 1px solid #c6cfcb;
  background: #fff;
  color: #34413c;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.production-theme .tech2-dimension-width {
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
}

.production-theme .tech2-dimension-height {
  top: 50%;
  left: -44px;
  transform: translateY(-50%) rotate(-90deg);
}

.production-theme .tech2-origin {
  position: absolute;
  left: 6px;
  bottom: 5px;
  color: #7a8581;
  font-size: 10px;
}

@media (max-width: 900px) {
  .production-theme .tech2-editor-shell {
    grid-template-columns: 1fr;
  }

  .production-theme .tech2-setup-panel {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .production-theme .tech2-setup-panel form {
    grid-template-columns: 1fr 1fr;
  }

  .production-theme .tech2-setup-panel form > div,
  .production-theme .tech2-setup-panel form > button {
    grid-column: 1 / -1;
  }
}

/* Technical plan 2.0: focused plan editor. */
.production-theme #technical2 {
  padding: 0;
}

.production-theme .tech2-workspace {
  min-height: calc(100vh - 70px);
  overflow: hidden;
  border: 0;
  background: #eef2f0;
}

.production-theme .tech2-header {
  min-height: 58px;
  padding: 8px 14px;
  background: #fff;
}

.production-theme .tech2-header h3 {
  font-size: 20px;
}

.production-theme .tech2-header .eyebrow {
  font-size: 9px;
}

.production-theme .tech2-header-actions button {
  min-height: 34px;
}

.production-theme .tech2-save-status.is-error::before {
  background: var(--danger);
}

.production-theme .tech2-editor-shell {
  display: grid;
  grid-template-columns: 232px minmax(420px, 1fr) 278px;
  min-height: calc(100vh - 128px);
  background: #eef2f0;
}

.production-theme .tech2-setup-panel,
.production-theme .tech2-inspector {
  min-width: 0;
  padding: 12px;
  overflow: auto;
  background: #f8faf9;
}

.production-theme .tech2-setup-panel {
  border-right: 1px solid #cbd5d1;
}

.production-theme .tech2-inspector {
  border-left: 1px solid #cbd5d1;
}

.production-theme .tech2-setup-panel details {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #d8dfdc;
}

.production-theme .tech2-setup-panel summary {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 0 2px;
  color: #26332e;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.production-theme .tech2-setup-panel details[open] summary {
  margin-bottom: 8px;
}

.production-theme .tech2-setup-panel form {
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  padding-bottom: 10px;
}

.production-theme .tech2-setup-panel form label {
  min-width: 0;
  font-size: 10px;
}

.production-theme .tech2-setup-panel form input {
  min-height: 34px;
  padding: 6px 8px;
}

.production-theme .tech2-setup-panel form button {
  grid-column: 1 / -1;
  min-height: 36px;
}

.production-theme .tech2-presets {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  margin: 0 0 10px;
}

.production-theme .tech2-presets button {
  min-width: 0;
  min-height: 32px;
  padding: 4px 6px;
  border-radius: 4px;
  font-size: 11px;
}

.production-theme .tech2-tool-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
  padding-bottom: 11px;
}

.production-theme .tech2-tool-grid button {
  display: grid;
  grid-template-columns: 17px minmax(0, 1fr);
  align-items: center;
  gap: 4px;
  min-width: 0;
  min-height: 42px;
  padding: 6px 5px;
  border: 1px solid #d1dad6;
  border-radius: 5px;
  background: #fff;
  color: #34413c;
  font-size: 10px;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
}

.production-theme .tech2-tool-grid button:hover {
  border-color: #7ba39c;
  background: #f0f7f5;
}

.production-theme .tech2-tool-grid button.active {
  border-color: #126e65;
  background: #e4f2ef;
  color: #0d5e56;
  box-shadow: inset 3px 0 #126e65;
}

.production-theme .tech2-tool-grid .lucide {
  width: 17px;
  height: 17px;
}

.production-theme .tech2-layer-controls {
  display: grid;
  gap: 3px;
  padding-bottom: 10px;
}

.production-theme .tech2-layer-controls label {
  display: grid;
  grid-template-columns: 18px 10px minmax(0, 1fr);
  align-items: center;
  gap: 7px;
  min-height: 30px;
  margin: 0;
  padding: 2px 5px;
  border-radius: 4px;
  color: #46534e;
  font-size: 11px;
  cursor: pointer;
}

.production-theme .tech2-layer-controls label:hover {
  background: #edf2f0;
}

.production-theme .tech2-layer-swatch {
  width: 9px;
  height: 9px;
  border-radius: 2px;
  background: var(--layer-color);
}

.production-theme .tech2-reset {
  width: 100%;
  min-height: 34px;
  margin: 12px 0 0;
  color: #a52d2b;
}

.production-theme .tech2-stage-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-width: 0;
  min-height: 0;
  background: #e6ece9;
}

.production-theme .tech2-stage-toolbar {
  display: grid;
  grid-template-columns: auto auto minmax(120px, 1fr) auto;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 6px 10px;
  border-color: #cbd5d1;
}

.production-theme .tech2-history-controls,
.production-theme .tech2-zoom-controls,
.production-theme .tech2-view-switch {
  display: flex;
  align-items: center;
  gap: 5px;
}

.production-theme .tech2-stage-toolbar .icon-button {
  width: 32px;
  height: 32px;
  min-height: 32px;
}

.production-theme .tech2-stage-toolbar strong {
  overflow: hidden;
  color: #34413c;
  font-size: 12px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .tech2-view-switch {
  padding: 2px;
  border: 1px solid #cad4d0;
  border-radius: 5px;
  background: #e9efec;
}

.production-theme .tech2-view-switch button {
  min-width: 42px;
  min-height: 28px;
  padding: 3px 9px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #58655f;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.production-theme .tech2-view-switch button.active {
  background: #fff;
  color: #0d6259;
  box-shadow: 0 1px 3px rgba(20, 34, 29, .14);
}

.production-theme .tech2-zoom-controls label {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  font-size: 10px;
}

.production-theme .tech2-zoom-controls select {
  width: 82px;
  min-height: 32px;
  padding: 4px 22px 4px 7px;
  font-size: 11px;
}

.production-theme .tech2-zoom-controls .ghost {
  min-height: 32px;
  padding: 4px 10px;
  font-size: 11px;
}

.production-theme .tech2-viewport {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  min-width: 0;
  min-height: 610px;
  max-height: calc(100vh - 176px);
  padding: 44px;
  overflow: auto;
  background: #e6ece9;
}

.production-theme .tech2-canvas-frame {
  position: relative;
  flex: 0 0 auto;
  min-width: 160px;
  min-height: 120px;
  border: 1px solid #53625c;
  background: #fff;
  box-shadow: 0 9px 26px rgba(23, 36, 31, .13);
}

.production-theme .tech2-canvas-frame.is-3d {
  overflow: hidden;
  border-color: #87958f;
  background: #edf2ef;
}

.production-theme .tech2-canvas-frame.is-3d .tech2-dimension {
  display: none;
}

.production-theme .tech2-canvas {
  display: block;
  width: 100%;
  height: 100%;
  min-width: 0;
  max-height: none;
  overflow: visible;
  border: 0;
  background: none;
  box-shadow: none;
  touch-action: none;
  user-select: none;
}

.production-theme .tech2-canvas[data-tool="select"] {
  cursor: default;
}

.production-theme .tech2-canvas:not([data-tool="select"]) {
  cursor: crosshair;
}

.production-theme .tech2-floor {
  fill: url(#tech2GridMajor);
}

.production-theme .tech2-room-fill {
  fill: rgba(99, 116, 108, .1);
  stroke: none;
}

.production-theme #warehouseConfigurator .warehouse-flooring-fill {
  opacity: .72;
  pointer-events: all;
}

.production-theme #warehouseConfigurator .warehouse-flooring-outline {
  fill: none;
  stroke: #44524c;
  stroke-width: .045;
  stroke-dasharray: .16 .08;
}

.production-theme #warehouseConfigurator .warehouse-flooring-label {
  font-size: .27px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-label-muted {
  fill: #394640;
  font-size: .23px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-tilted-footprint {
  fill: color-mix(in srgb, var(--tech2-symbol-color) 27%, white);
  stroke: var(--tech2-symbol-color);
  stroke-width: .07;
  stroke-linejoin: round;
}

.production-theme #warehouseConfigurator .warehouse-tilted-label {
  fill: var(--tech2-symbol-color);
  font-size: .25px;
}

.production-theme #warehouseConfigurator .warehouse-tilted-selection {
  fill: none;
}

.production-theme .tech2-object,
.production-theme .tech2-wall {
  cursor: move;
}

.production-theme .tech2-symbol-fill {
  fill: color-mix(in srgb, var(--tech2-symbol-color) 17%, white);
}

.production-theme .tech2-symbol-outline,
.production-theme .tech2-symbol-detail,
.production-theme .tech2-door-leaf,
.production-theme .tech2-window-line {
  fill: none;
  stroke: var(--tech2-symbol-color);
  stroke-width: .055;
}

.production-theme .tech2-symbol-detail {
  stroke-width: .035;
}

.production-theme .tech2-led-body {
  fill: #284d78;
  stroke: #1f456d;
}

.production-theme .tech2-led-grid {
  stroke: rgba(255, 255, 255, .58);
  stroke-width: .025;
}

.production-theme .tech2-speaker-body {
  fill: #29302e;
  stroke: #141918;
}

.production-theme .tech2-speaker-cone {
  fill: #606a66;
  stroke: #c0c8c4;
  stroke-width: .025;
}

.production-theme .tech2-light-body {
  fill: #303533;
}

.production-theme .tech2-light-beam {
  fill: rgba(233, 169, 41, .14);
  stroke: #bd7600;
  stroke-width: .035;
}

.production-theme .tech2-table-body {
  fill: #c4b4a4;
}

.production-theme .tech2-chair {
  fill: #8c7d70;
  stroke: #62584f;
  stroke-width: .03;
}

.production-theme .tech2-power-body {
  fill: #fff;
  stroke: #a03535;
}

.production-theme .tech2-power-hole {
  fill: #a03535;
}

.production-theme .tech2-door-leaf {
  stroke-width: .07;
}

.production-theme .tech2-door-swing {
  fill: none;
  stroke: #7c8b85;
  stroke-width: .035;
  stroke-dasharray: .12 .08;
}

.production-theme .tech2-object-label {
  fill: #18221f;
  stroke: rgba(255, 255, 255, .95);
  stroke-width: .11;
  paint-order: stroke;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: .31px;
  font-weight: 750;
  letter-spacing: 0;
  pointer-events: none;
}

.production-theme .tech2-object-label-muted {
  fill: #52615b;
  font-size: .27px;
  font-weight: 650;
}

.production-theme .tech2-object-label-light {
  fill: #fff;
  stroke: rgba(22, 51, 81, .9);
}

.production-theme .tech2-selection-box {
  fill: none;
  stroke: #e32732;
  stroke-width: .055;
  stroke-dasharray: .17 .1;
  pointer-events: none;
}

.production-theme .tech2-wall-line {
  stroke: #34423d;
  stroke-linecap: square;
}

.production-theme .tech2-wall-hit {
  fill: none;
  stroke: transparent;
  stroke-width: .65;
  pointer-events: stroke;
}

.production-theme .tech2-wall.is-selected .tech2-wall-line {
  stroke: #e32732;
}

.production-theme .warehouse-base-dimensions {
  pointer-events: none;
}

.production-theme .warehouse-base-dimension-line,
.production-theme .warehouse-base-dimension-tick {
  fill: none;
  stroke: #16776d;
  stroke-width: .035;
  vector-effect: non-scaling-stroke;
}

.production-theme .warehouse-base-dimension-text,
.production-theme .warehouse-base-dimension-headline {
  fill: #36534d;
  stroke: #fff;
  stroke-width: calc(.045px * var(--warehouse-dimension-scale, 1));
  paint-order: stroke fill;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: calc(.28px * var(--warehouse-dimension-scale, 1));
  font-weight: 600;
  letter-spacing: 0;
}

.production-theme .warehouse-base-dimension-text.is-opening {
  fill: #315f68;
}

.production-theme .warehouse-base-dimension-text.is-critical {
  font-weight: 650;
}

.production-theme .warehouse-base-dimension-headline {
  fill: #294943;
  font-size: calc(.3px * var(--warehouse-dimension-scale, 1));
  font-weight: 700;
}

.production-theme .tech2-wall-handle {
  fill: #fff;
  stroke: #e32732;
  stroke-width: .055;
}

.production-theme .tech2-draw-preview {
  fill: none;
  stroke: #e32732;
  stroke-width: .075;
  stroke-dasharray: .22 .12;
  pointer-events: none;
}

.production-theme .tech2-draw-preview-room {
  fill: rgba(227, 39, 50, .08);
}

.production-theme .tech2-scene-3d {
  position: absolute;
  inset: 0;
  min-width: 320px;
  min-height: 240px;
  background: #edf2ef;
}

.production-theme .tech2-scene-3d canvas {
  display: block;
  width: 100%;
  height: 100%;
  touch-action: none;
}

.production-theme #warehouseConfigurator .warehouse-3d-tools {
  display: flex;
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.production-theme #warehouseConfigurator .tech2-stage-panel {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto minmax(0, 1fr);
}

.production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
  position: relative;
  z-index: 3;
  box-sizing: border-box;
  container-type: inline-size;
  width: 100%;
  min-width: 0;
  padding: 6px 10px;
  overflow: visible;
  border-bottom: 1px solid #cbd5d1;
  background: #f7faf8;
  overscroll-behavior-inline: contain;
  scrollbar-color: #aab8b2 transparent;
}

.production-theme #warehouseConfigurator .warehouse-3d-tools[data-warehouse-mode="2d"] [data-warehouse-only="3d"] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-3d-tools[data-warehouse-mode="2d"] .warehouse-3d-hint {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group {
  display: flex;
  flex: 0 0 auto;
  gap: 3px;
  padding: 4px;
  border: 1px solid rgba(83, 102, 94, .3);
  border-radius: 8px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 7px 22px rgba(25, 42, 35, .16);
  backdrop-filter: blur(10px);
  pointer-events: auto;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 6px 9px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #34413c;
  font-size: 10px;
  font-weight: 800;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group.compact button {
  width: 36px;
  padding: 6px;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group.compact button span {
  font-size: 8px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group button:hover,
.production-theme #warehouseConfigurator .warehouse-3d-tool-group button.active {
  background: #0d6259;
  color: #fff;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group button:disabled {
  opacity: .38;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group .lucide {
  width: 15px;
  height: 15px;
}

.production-theme #warehouseConfigurator .warehouse-3d-hint {
  margin-left: auto;
  padding: 7px 10px;
  border-radius: 6px;
  background: rgba(31, 44, 39, .82);
  color: #fff;
  font-size: 10px;
  line-height: 1.3;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .tech2-canvas[data-transform-mode="rotate"] .tech2-object.is-selected,
.production-theme #warehouseConfigurator .warehouse-2d-rotate-handle {
  cursor: grab;
}

.production-theme #warehouseConfigurator .tech2-canvas[data-transform-mode="rotate"] .tech2-object.is-selected:active,
.production-theme #warehouseConfigurator .warehouse-2d-rotate-handle:active {
  cursor: grabbing;
}

.production-theme #warehouseConfigurator .warehouse-2d-transform-stem {
  stroke: #0d6259;
  stroke-width: .045;
  stroke-dasharray: .09 .055;
  pointer-events: none;
}

.production-theme #warehouseConfigurator .warehouse-2d-transform-handle {
  fill: #fff;
  stroke: #0d6259;
  stroke-width: .055;
  vector-effect: non-scaling-stroke;
}

.production-theme #warehouseConfigurator .warehouse-2d-rotate-handle {
  fill: #0d6259;
  stroke: #fff;
}

.production-theme #warehouseConfigurator .warehouse-2d-scale-handle {
  cursor: nwse-resize;
}

.production-theme #warehouseConfigurator .warehouse-flooring-add {
  width: 100%;
  min-height: 36px;
  margin-bottom: 8px;
  justify-content: center;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary {
  display: grid;
  gap: 6px;
  padding-bottom: 10px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary > span {
  padding: 8px;
  border-radius: 5px;
  background: #edf2f0;
  color: #69756f;
  font-size: 10px;
  line-height: 1.35;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary > div {
  display: grid;
  gap: 2px;
  padding: 7px 8px;
  border: 1px solid #d4ded9;
  border-radius: 5px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary strong,
.production-theme #warehouseConfigurator .warehouse-flooring-summary span,
.production-theme #warehouseConfigurator .warehouse-flooring-summary small {
  min-width: 0;
  font-size: 9px;
  line-height: 1.35;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary > div strong {
  color: #26342e;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary small {
  color: #68756f;
}

.production-theme #warehouseConfigurator .warehouse-flooring-summary footer {
  display: grid;
  gap: 2px;
  padding: 7px 8px;
  border-radius: 5px;
  background: #dfece7;
  color: #174f48;
}

.production-theme #warehouseConfigurator .warehouse-flooring-fields {
  display: grid;
  gap: 8px;
  padding: 9px;
  border: 1px solid #c7d8d1;
  border-radius: 6px;
  background: #f0f7f4;
}

.production-theme #warehouseConfigurator .warehouse-flooring-fields[hidden] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-flooring-fields > strong {
  color: #174f48;
  font-size: 11px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-input-grid,
.production-theme #warehouseConfigurator .warehouse-flooring-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-metrics > div,
.production-theme #warehouseConfigurator .warehouse-flooring-metrics footer {
  display: grid;
  gap: 2px;
  padding: 6px;
  border-radius: 4px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-flooring-metrics span {
  color: #738079;
  font-size: 8px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-metrics strong {
  color: #26342e;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-flooring-metrics footer {
  grid-column: 1 / -1;
  grid-template-columns: 1fr auto;
  align-items: center;
  background: #dfece7;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools {
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid #d4ded9;
  border-radius: 6px;
  background: #f7f9f8;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools[hidden] {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools > strong {
  color: #4e5c56;
  font-size: 9px;
  text-transform: uppercase;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools button {
  min-width: 0;
  min-height: 29px;
  padding: 4px 5px;
  border: 1px solid #cad5d0;
  border-radius: 4px;
  background: #fff;
  color: #34413c;
  font-size: 9px;
  font-weight: 750;
}

.production-theme #warehouseConfigurator .warehouse-object-placement-tools button:hover {
  border-color: #0d6259;
  color: #0d6259;
}

.production-theme #warehouseConfigurator .tech2-object.is-locked {
  cursor: not-allowed;
  opacity: .72;
}

.production-theme #warehouseConfigurator .tech2-object.is-locked .tech2-selection-box {
  stroke: #d09122;
}

.production-theme #warehouseConfigurator .warehouse-lock-command.active {
  border-color: #d09122;
  background: #fff4dc;
  color: #8a5900;
}

.production-theme #warehouseConfigurator .tech2-selection-controls {
  flex-wrap: wrap;
}

@media (max-width: 1120px) {
  .production-theme #warehouseConfigurator .warehouse-3d-hint {
    display: none;
  }

  .production-theme #warehouseConfigurator .warehouse-3d-tool-group:not(.compact) button span {
    display: none;
  }

  .production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
    padding: 5px 8px;
  }
}

@container (max-width: 720px) {
  .production-theme #warehouseConfigurator .warehouse-3d-hint,
  .production-theme #warehouseConfigurator .warehouse-3d-tool-group:not(.compact) button span {
    display: none;
  }
}

.production-theme .tech2-dimension {
  z-index: 2;
  border-radius: 3px;
  box-shadow: 0 1px 2px rgba(20, 30, 26, .08);
}

.production-theme .tech2-inspector-empty {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 54px 18px;
  color: #74817c;
  text-align: center;
}

.production-theme .tech2-inspector-empty .lucide {
  width: 25px;
  height: 25px;
}

.production-theme .tech2-inspector-empty strong {
  color: #34413c;
  font-size: 13px;
}

.production-theme .tech2-inspector-empty span {
  max-width: 190px;
  font-size: 11px;
  line-height: 1.4;
}

.production-theme .tech2-inspector form {
  display: grid;
  gap: 10px;
}

.production-theme .tech2-inspector form[hidden],
.production-theme .tech2-inspector-empty[hidden] {
  display: none;
}

.production-theme .tech2-inspector-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #d8dfdc;
}

.production-theme .tech2-inspector-head h4 {
  max-width: 200px;
  margin: 2px 0 0;
  overflow: hidden;
  font-size: 14px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme .tech2-inspector label {
  min-width: 0;
  margin: 0;
  color: #5c6863;
  font-size: 10px;
  font-weight: 700;
}

.production-theme .tech2-inspector input,
.production-theme .tech2-inspector select {
  min-width: 0;
  min-height: 36px;
  padding: 7px 8px;
  font-size: 12px;
}

.production-theme .tech2-inspector-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.production-theme .tech2-inspector-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  padding-top: 6px;
  border-top: 1px solid #d8dfdc;
}

.production-theme .tech2-inspector-actions button {
  min-width: 0;
  min-height: 36px;
  padding: 6px 8px;
  font-size: 11px;
}

@media (max-width: 1180px) {
  .production-theme .tech2-editor-shell {
    grid-template-columns: 210px minmax(0, 1fr);
  }

  .production-theme .tech2-inspector {
    grid-column: 1 / -1;
    display: block;
    max-height: none;
    border-top: 1px solid #cbd5d1;
    border-left: 0;
  }

  .production-theme .tech2-inspector form {
    grid-template-columns: minmax(180px, 1.5fr) repeat(2, minmax(160px, 1fr));
    align-items: end;
  }

  .production-theme .tech2-inspector-head,
  .production-theme .tech2-inspector-actions {
    grid-column: 1 / -1;
  }

  .production-theme .tech2-inspector-empty {
    padding: 18px;
  }
}

@media (max-width: 760px) {
  .production-theme .tech2-header,
  .production-theme .tech2-header-actions {
    align-items: flex-start;
    flex-direction: column;
  }

  .production-theme .tech2-header-actions {
    width: 100%;
  }

  .production-theme .tech2-editor-shell {
    grid-template-columns: 1fr;
  }

  .production-theme .tech2-setup-panel {
    border-right: 0;
    border-bottom: 1px solid #cbd5d1;
  }

  .production-theme .tech2-tool-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .production-theme .tech2-stage-toolbar {
    grid-template-columns: auto auto minmax(90px, 1fr);
  }

  .production-theme .tech2-stage-toolbar > strong {
    text-align: right;
  }

  .production-theme .tech2-zoom-controls {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }

  .production-theme .tech2-viewport {
    min-height: 430px;
    max-height: 65vh;
    padding: 38px;
  }

  .production-theme #warehouseConfigurator .tech2-viewport {
    min-height: 430px;
  }

  .production-theme .tech2-inspector form {
    grid-template-columns: 1fr;
  }

  .production-theme .tech2-inspector-grid,
  .production-theme .tech2-inspector-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1181px) {
  .production-theme #warehouseConfigurator .tech2-editor-shell {
    height: calc(100vh - 128px);
    min-height: 620px;
    overflow: hidden;
  }

  .production-theme #warehouseConfigurator .tech2-setup-panel,
  .production-theme #warehouseConfigurator .tech2-inspector,
  .production-theme #warehouseConfigurator .tech2-stage-panel {
    min-height: 0;
    max-height: 100%;
  }

  .production-theme #warehouseConfigurator .tech2-setup-panel,
  .production-theme #warehouseConfigurator .tech2-inspector {
    overscroll-behavior: contain;
  }

  .production-theme #warehouseConfigurator .tech2-viewport {
    min-height: 0;
    max-height: none;
  }
}

/* Keep the stage rows outside the canvas after all responsive overrides. */
.production-theme #warehouseConfigurator .tech2-stage-panel {
  grid-template-rows: auto auto minmax(0, 1fr) 37px;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-stage-panel {
  grid-template-rows: auto minmax(0, 1fr) 37px;
}

/* Final CAD authority: these rules intentionally follow all legacy techplan blocks. */
.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar label {
  width: 100%;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 4px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar > div button {
  width: 100%;
  min-width: 0;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-results {
  display: grid;
  height: auto;
  min-height: 0;
  padding: 12px;
  grid-template-columns: repeat(auto-fill, minmax(158px, 1fr));
  align-content: start;
  gap: 9px;
  overflow: auto;
  background: #f1f4f2;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item {
  display: grid;
  min-height: 220px;
  padding: 8px;
  grid-template-columns: minmax(0, 1fr) 26px;
  grid-template-rows: 112px minmax(0, 1fr);
  align-items: start;
  gap: 7px 4px;
  border: 1px solid #d5dcda;
  border-radius: 4px;
  background: #fff;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item > img,
.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item > .tech2-catalog-placeholder {
  grid-column: 1 / -1;
  width: 100%;
  height: 112px;
  object-fit: contain;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar > div button span {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar > div button {
  min-height: 30px;
  justify-content: center;
}

.production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
  overflow-x: auto;
  overflow-y: hidden;
}

.production-theme #warehouseConfigurator .warehouse-3d-tools {
  width: max-content;
  min-width: 100%;
  flex-wrap: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-3d-tool-group {
  flex: 0 0 auto;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-quick {
  display: flex;
  margin: 0 0 0 auto;
  align-self: stretch;
  align-items: center;
  gap: 2px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-quick button {
  display: grid;
  width: 30px;
  min-height: 29px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #48524d;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-quick button:hover:not(:disabled) {
  background: #e9eeec;
}

/* 2026-09-01: visual parity pass for the approved 2D/3D CAD renders. */
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-header {
  border-bottom-color: #cfd3d5;
  background: #f7f8f8;
  color: #151719;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-back {
  border-color: #d5d8da;
  background: #fff;
  color: #2e3336;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-brand,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-title h3 {
  color: #16191b;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-title .eyebrow,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-save-status {
  color: #6f777b;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-header-actions button,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-header-actions summary {
  border-color: #d6dade;
  background: #fff;
  color: #2d3336;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-header-actions .primary {
  border-color: #d92531;
  background: #d92531;
  color: #fff;
}

.production-theme #warehouseConfigurator .tech2-editor-shell {
  height: auto !important;
  min-height: 0 !important;
  grid-template-columns: 238px minmax(0, 1fr) 300px;
  background: #eceeed;
}

.production-theme #warehouseConfigurator .tech2-setup-panel::before,
.production-theme #warehouseConfigurator .tech2-inspector::before {
  height: 38px;
  padding: 0 14px;
  background: #fafafa;
  color: #202427;
  font-size: 12px;
  line-height: 38px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel {
  height: calc(100% - 38px);
  grid-template-rows: auto minmax(0, 1fr) auto auto;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel > summary {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar {
  padding: 10px;
  background: #fbfbfb;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar input {
  min-height: 34px;
  border-color: #d8dcde;
  border-radius: 4px;
  background: #fff;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree {
  padding: 4px 0 12px;
  background: #fafafa;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group {
  border-bottom: 1px solid #eceeef;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head {
  display: grid;
  width: 100%;
  min-height: 38px;
  padding: 0 10px;
  grid-template-columns: 14px 17px minmax(0, 1fr) auto;
  align-items: center;
  gap: 6px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #22272a;
  text-align: left;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head:hover,
.production-theme #warehouseConfigurator .warehouse-object-tree-group.is-expanded > .warehouse-object-tree-group-head {
  background: #eef3f9;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head strong {
  overflow: hidden;
  font-size: 10px;
  font-weight: 720;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head small {
  color: #7d8589;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-tree-group-chevron {
  color: #6f777b;
  font-size: 15px;
  line-height: 1;
}

.production-theme #warehouseConfigurator .warehouse-tree-group-folder {
  position: relative;
  display: block;
  width: 15px;
  height: 11px;
  border: 1.4px solid #4d5960;
  border-radius: 2px;
}

.production-theme #warehouseConfigurator .warehouse-tree-group-folder::before {
  position: absolute;
  top: -4px;
  left: 1px;
  width: 7px;
  height: 4px;
  border: 1.4px solid #4d5960;
  border-bottom: 0;
  border-radius: 2px 2px 0 0;
  content: "";
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-children {
  padding: 1px 0 5px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row {
  min-height: 32px;
  padding: 2px 7px 2px 16px;
  border-left: 3px solid transparent;
  font-size: 9px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row:hover {
  background: #f3f6f8;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row.is-selected {
  border-left-color: #1f6feb;
  background: #e8f1ff;
}

.production-theme #warehouseConfigurator .warehouse-tree-select strong {
  color: #282d30;
  font-size: 9.5px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-tree-select small {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-tree-icon {
  color: #657078;
}

.production-theme #warehouseConfigurator .tech2-stage-panel {
  grid-template-rows: auto minmax(0, 1fr) 35px;
  background: #e8eae9;
}

.production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar {
  grid-row: 1;
}

.production-theme #warehouseConfigurator .tech2-viewport {
  grid-row: 2;
  min-height: 0 !important;
  max-height: none !important;
  padding: 18px 22px;
  background: #eeeFef;
  background-image: none;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar {
  grid-row: 3;
  min-height: 35px;
  padding: 3px 10px;
  border-color: #d5d8da;
  background: #fafafa;
}

.production-theme #warehouseConfigurator .tech2-canvas-frame {
  border: 0;
  background: #f5f4f1;
  box-shadow: 0 8px 24px rgba(34, 35, 34, .13);
}

.production-theme #warehouseConfigurator .tech2-canvas-frame.is-3d {
  background: #303231;
  box-shadow: none;
}

.production-theme #warehouseConfigurator .tech2-floor {
  fill: url(#warehouseFloorSurface);
}

.production-theme #warehouseConfigurator .warehouse-meter-grid {
  pointer-events: none;
  opacity: .78;
  shape-rendering: crispEdges;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .warehouse-meter-grid {
  opacity: .5;
}

.production-theme #warehouseConfigurator .tech2-wall-line {
  stroke: #3f403d;
  filter: drop-shadow(.035px .055px .04px rgba(0, 0, 0, .36));
}

.production-theme #warehouseConfigurator .tech2-wall-opening-gap {
  stroke: #d7d5cf;
}

.production-theme #warehouseConfigurator .tech2-library-symbol,
.production-theme #warehouseConfigurator .tech2-symbol-fill {
  filter: url(#warehouseObjectShadow);
}

.production-theme #warehouseConfigurator .tech2-symbol-fill {
  fill: color-mix(in srgb, var(--tech2-symbol-color) 28%, #e7e3da);
}

.production-theme #warehouseConfigurator .tech2-symbol-outline,
.production-theme #warehouseConfigurator .tech2-symbol-detail {
  stroke: color-mix(in srgb, var(--tech2-symbol-color) 82%, #171918);
}

.production-theme #warehouseConfigurator .tech2-selection-box {
  stroke: #1473e6;
  stroke-width: .065;
  stroke-dasharray: none;
}

.production-theme #warehouseConfigurator .tech2-object.is-selected .tech2-symbol-outline,
.production-theme #warehouseConfigurator .tech2-object.is-selected .tech2-symbol-detail,
.production-theme #warehouseConfigurator .tech2-wall.is-selected .tech2-wall-line {
  stroke: #1473e6;
}

.production-theme #warehouseConfigurator .warehouse-base-dimension-line,
.production-theme #warehouseConfigurator .warehouse-base-dimension-tick {
  stroke: #6b7378;
}

.production-theme #warehouseConfigurator .warehouse-base-dimension-text,
.production-theme #warehouseConfigurator .warehouse-base-dimension-headline {
  fill: #525a5f;
  font-weight: 600;
}

.production-theme #warehouseConfigurator .tech2-scene-3d,
.production-theme #warehouseConfigurator .tech2-scene-3d canvas {
  background: #303231;
}

.production-theme #warehouseConfigurator .tech2-scene-3d {
  position: absolute;
}

.production-theme #warehouseConfigurator #warehouseCanvas[hidden],
.production-theme #warehouseConfigurator #warehouseScene3d[hidden] {
  display: none !important;
}

.production-theme #warehouseConfigurator .warehouse-view-cube {
  position: absolute;
  top: 24px;
  right: 28px;
  z-index: 7;
  width: 92px;
  height: 92px;
  pointer-events: none;
  filter: drop-shadow(0 5px 9px rgba(0, 0, 0, .28));
}

.production-theme #warehouseConfigurator .warehouse-view-cube button {
  position: absolute;
  display: grid;
  width: 52px;
  height: 52px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(37, 40, 42, .45);
  border-radius: 4px;
  background: rgba(243, 244, 242, .92);
  color: #41474a;
  font-size: 8px;
  font-weight: 700;
  pointer-events: auto;
  transform: rotate(30deg) skewY(-12deg) scaleY(.82);
}

.production-theme #warehouseConfigurator .warehouse-view-cube button:hover,
.production-theme #warehouseConfigurator .warehouse-view-cube button.active {
  background: #dbeaff;
  color: #1769cc;
}

.production-theme #warehouseConfigurator .warehouse-view-cube-top { top: 0; left: 20px; }
.production-theme #warehouseConfigurator .warehouse-view-cube-front { top: 35px; left: 1px; }
.production-theme #warehouseConfigurator .warehouse-view-cube-side { top: 35px; left: 39px; }

.production-theme #warehouseConfigurator .warehouse-view-cube i,
.production-theme #warehouseConfigurator .warehouse-view-cube b,
.production-theme #warehouseConfigurator .warehouse-view-cube em {
  position: absolute;
  color: #6eb8ff;
  font: 700 9px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
  font-style: normal;
}

.production-theme #warehouseConfigurator .warehouse-view-cube i { top: -8px; left: 45px; }
.production-theme #warehouseConfigurator .warehouse-view-cube b { right: -2px; bottom: -2px; color: #ff6a6a; }
.production-theme #warehouseConfigurator .warehouse-view-cube em { bottom: -2px; left: -2px; color: #61d68b; }

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-viewport {
  padding: 0;
  background: #303231;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-canvas-frame {
  width: 100% !important;
  height: 100% !important;
}

.production-theme #warehouseConfigurator .tech2-inspector form {
  padding: 12px 14px 48px;
}

.production-theme #warehouseConfigurator .tech2-inspector-head h4 {
  font-size: 14px;
}

.production-theme #warehouseConfigurator .tech2-inspector input,
.production-theme #warehouseConfigurator .tech2-inspector select,
.production-theme #warehouseConfigurator .tech2-inspector textarea {
  min-height: 34px;
  border-color: #d5d9dc;
  background: #fff;
  font-size: 11px;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .warehouse-catalog-layout {
  grid-template-columns: clamp(190px, 14vw, 230px) minmax(0, 1fr) clamp(370px, 28vw, 450px);
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-results {
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 11px;
  background: #f7f7f7;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview {
  padding: 18px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media {
  background: linear-gradient(#fafafa, #f2f2f1);
}

/* ========================================================================== */
/* Warehouse CAD 2.0.55 — authoritative render-parity layer.                  */
/* Keep this block last: the configurator is cloned from Techplan 2.0 and      */
/* earlier generic rules must never be allowed to reshape this workspace.      */
/* ========================================================================== */

body.production-theme[data-active-view="warehouseConfigurator"] {
  --warehouse-ui-blue: #176df3;
  --warehouse-ui-red: #e32635;
  --warehouse-ui-ink: #1d2227;
  --warehouse-ui-muted: #697078;
  --warehouse-ui-line: #d9dde2;
  --warehouse-ui-panel: #fff;
  color: var(--warehouse-ui-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.production-theme #warehouseConfigurator,
.production-theme #warehouseConfigurator * {
  box-sizing: border-box;
}

.production-theme #warehouseConfigurator .tech2-workspace {
  grid-template-rows: 53px 83px minmax(0, 1fr);
  height: 100vh;
  min-height: 0;
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-workspace {
  grid-template-rows: 50px 108px minmax(0, 1fr);
}

/* Header — the approved 2D version is light, the approved 3D version dark. */
.production-theme #warehouseConfigurator .tech2-header {
  position: relative;
  z-index: 31;
  min-height: 0;
  height: 53px;
  padding: 0 18px;
  gap: 14px;
  border-bottom: 1px solid #d7dadd;
  background: #fff;
  color: #1a1d20;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-header {
  height: 50px;
  border-bottom-color: #303439;
  background: linear-gradient(180deg, #202326, #181b1e);
  color: #f5f6f7;
}

.production-theme #warehouseConfigurator .warehouse-cad-title {
  display: flex;
  min-width: 148px;
  align-items: center;
  gap: 8px;
}

.production-theme #warehouseConfigurator .warehouse-cad-title .eyebrow,
.production-theme #warehouseConfigurator .warehouse-cad-title h3 {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-cad-brand {
  color: #e32635;
  font-size: 20px;
  font-weight: 430;
  letter-spacing: -.02em;
  line-height: 1;
}

.production-theme #warehouseConfigurator .warehouse-cad-brand b {
  color: #e32635;
  font-weight: 850;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-brand {
  color: #f5f6f7;
  font-size: 19px;
  font-weight: 720;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-title h3 {
  display: block;
  margin: 0 0 0 3px;
  padding-left: 12px;
  border-left: 1px solid #596066;
  color: #e4e7e9;
  font-size: 11px;
  font-weight: 520;
  line-height: 22px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .tech2-header-actions {
  display: flex;
  min-width: 124px;
  align-items: center;
  justify-content: flex-end;
}

.production-theme #warehouseConfigurator .tech2-header-actions > button,
.production-theme #warehouseConfigurator .tech2-header-actions > details {
  display: none;
}

.production-theme #warehouseConfigurator .tech2-save-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #3e444a;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .tech2-save-status::before {
  width: 16px;
  height: 16px;
  border: 1.5px solid #36b65f;
  border-radius: 50%;
  color: #26a950;
  content: "✓";
  font: 700 11px/14px -apple-system, BlinkMacSystemFont, sans-serif;
  text-align: center;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-save-status {
  position: absolute;
  left: 50%;
  color: #dce0e3;
  transform: translateX(-50%);
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-save-status::before {
  border-color: #7d858b;
  color: #b9c0c5;
}

/* Ribbon and mode-specific command bars. */
.production-theme #warehouseConfigurator .warehouse-cad-ribbon {
  z-index: 32;
  height: 83px;
  min-height: 0;
  grid-template-rows: 83px;
  overflow: visible;
  border-bottom: 1px solid #d7dbdf;
  background: #fff;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-ribbon {
  height: 108px;
  grid-template-rows: 32px 76px;
  overflow: visible;
  border-bottom-color: #d1d5d9;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-tabs {
  position: absolute;
  top: -53px;
  right: 178px;
  left: 170px;
  height: 53px;
  padding: 0;
  align-items: stretch;
  justify-content: flex-start;
  gap: 12px;
  overflow: hidden;
  border: 0;
  background: transparent;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-ribbon-tabs {
  height: 32px;
  padding: 0 20px;
  align-items: stretch;
  gap: 20px;
  border-bottom: 1px solid #d8dcdf;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button {
  min-height: 0;
  height: 100%;
  padding: 0 8px;
  border: 0;
  color: #383d42;
  font-size: 12px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button::after {
  right: 4px;
  bottom: 0;
  left: 4px;
  height: 3px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button.active {
  color: #171a1d;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button.active::after {
  background: var(--warehouse-ui-red);
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panels {
  min-height: 0;
  height: 100%;
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel {
  height: 100%;
  min-height: 0;
  padding: 7px 18px 5px;
  align-items: stretch;
  gap: 0;
  overflow-x: auto;
  overflow-y: hidden;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-ribbon-panel {
  padding: 5px 14px 4px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-only-3d,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-only-2d {
  display: none !important;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button,
.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button {
  position: relative;
  display: grid;
  min-width: 73px;
  min-height: 0;
  height: 68px;
  padding: 7px 6px 5px;
  grid-template-columns: 1fr;
  grid-template-rows: 29px 17px;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 3px;
  background: transparent;
  color: #2d3338;
  font-size: 10px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-cad-ribbon-panel > button,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-home-history .warehouse-cad-ribbon-quick > button {
  height: 64px;
  min-width: 67px;
  padding-top: 5px;
  grid-template-rows: 28px 16px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > .lucide,
.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > b,
.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick .lucide {
  grid-column: 1;
  width: 22px;
  height: 22px;
  color: #30363b;
  stroke-width: 1.5;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > span {
  grid-column: 1;
  font-size: 10px;
  line-height: 1.1;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > kbd {
  right: 4px;
  top: 5px;
  margin: 0;
  color: #90979c;
  font-size: 7px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button:hover,
.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button:hover:not(:disabled),
.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.active {
  border-color: #d7dbde;
  background: #f2f4f5;
  box-shadow: none;
  color: #171b1e;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.active {
  border-color: #c8d8ee;
  background: #edf4fd;
  color: #185da9;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > .warehouse-cad-ribbon-primary {
  border-color: transparent;
  background: transparent;
  color: #2d3338;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-divider {
  width: 1px;
  margin: 5px 8px 7px;
  flex: 0 0 1px;
  background: #d9dde0;
}

.production-theme #warehouseConfigurator .warehouse-home-history {
  display: flex;
  flex: 0 0 auto;
  align-items: stretch;
}

.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick {
  margin: 0;
  align-items: stretch;
}

.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button {
  width: auto;
}

.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button::after {
  grid-row: 2;
  color: #2d3338;
  content: "Отменить";
  font-size: 10px;
  line-height: 1.1;
}

.production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button + button::after {
  content: "Повторить";
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls {
  position: sticky;
  right: 0;
  display: flex;
  min-width: 246px;
  margin-left: auto;
  padding: 10px 0 10px 14px;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), #fff 14px, #fff 100%);
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls > button {
  width: 54px;
  height: 38px;
  min-height: 38px;
  padding: 0;
  border: 1px solid #d4d8dc;
  border-radius: 3px;
  background: #fff;
  color: #31373c;
  font-size: 13px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls > button.active {
  border-color: #e22c38;
  background: #fff;
  color: #df2633;
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls > span {
  display: inline-flex;
  height: 38px;
  padding: 0 4px 0 13px;
  align-items: center;
  gap: 6px;
  color: #383e43;
  font-size: 11px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls output {
  min-width: 36px;
  color: #22272b;
  font-size: 11px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls .lucide {
  width: 14px;
  height: 14px;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls {
  position: absolute;
  z-index: 33;
  display: flex;
  align-items: center;
  gap: 7px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls {
  display: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls > button:nth-child(n + 3),
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls > label {
  display: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-mode-controls {
  top: -43px;
  right: 16px;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls button,
.production-theme #warehouseConfigurator .warehouse-header-mode-controls select {
  height: 32px;
  min-height: 32px;
  border: 1px solid #cfd4d8;
  border-radius: 4px;
  background: #fff;
  color: #30363b;
  font-size: 11px;
  font-weight: 600;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls button {
  min-width: 52px;
  padding: 0 13px;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls button.active {
  border-color: #e42b38;
  background: #fff;
  color: #df2633;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-mode-controls button,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-mode-controls select {
  border-color: #41474d;
  background: #202428;
  color: #f2f3f4;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-mode-controls button.active {
  border-color: #d92734;
  background: #cf202e;
  color: #fff;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls label {
  display: block;
}

.production-theme #warehouseConfigurator .warehouse-header-mode-controls select {
  width: 166px;
  padding: 0 34px 0 12px;
}

/* Three-column editor geometry and global status strip. */
.production-theme #warehouseConfigurator .tech2-editor-shell,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-editor-shell,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-editor-shell {
  display: grid;
  width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none;
  padding: 0 0 58px;
  grid-template-columns: 250px minmax(0, 1fr) 320px;
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-editor-shell {
  padding-bottom: 46px;
  grid-template-columns: 250px minmax(0, 1fr) 320px;
}

.production-theme #warehouseConfigurator .tech2-setup-panel,
.production-theme #warehouseConfigurator .tech2-inspector {
  min-width: 0;
  min-height: 0;
  max-height: none;
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseConfigurator .tech2-setup-panel {
  border-right: 1px solid #d9dde1;
}

.production-theme #warehouseConfigurator .tech2-inspector {
  grid-column: 3;
  grid-row: 1;
  border-left: 1px solid #d9dde1;
}

.production-theme #warehouseConfigurator .tech2-setup-panel::before,
.production-theme #warehouseConfigurator .tech2-inspector::before {
  height: 40px;
  padding: 0 14px;
  border-bottom: 1px solid #dfe2e5;
  background: #fff;
  color: #20252a;
  font-size: 12px;
  font-weight: 700;
  line-height: 40px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel {
  height: calc(100% - 40px);
  grid-template-rows: auto minmax(0, 1fr) 38px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-panel > summary,
.production-theme #warehouseConfigurator .warehouse-utilization,
.production-theme #warehouseConfigurator .warehouse-plan-versions {
  display: none !important;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar {
  padding: 9px 10px 8px;
  gap: 6px;
  border-bottom: 1px solid #e3e6e9;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar label {
  position: relative;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar input {
  height: 34px;
  min-height: 34px;
  padding: 0 10px 0 31px;
  border: 1px solid #d4d9de;
  border-radius: 4px;
  background: #fff;
  font-size: 11px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar .lucide {
  width: 14px;
  height: 14px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-toolbar > div button {
  height: 28px;
  min-height: 28px;
  border-color: #d8dce0;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree {
  min-height: 0;
  padding: 2px 0 12px;
  overflow: auto;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group {
  border: 0;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head {
  min-height: 36px;
  padding: 0 12px;
  grid-template-columns: 12px 17px minmax(0, 1fr) auto;
  gap: 7px;
  border: 0;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head:hover,
.production-theme #warehouseConfigurator .warehouse-object-tree-group.is-expanded > .warehouse-object-tree-group-head {
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head strong {
  color: #292e33;
  font-size: 12px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-head small {
  color: #818990;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-children {
  position: relative;
  padding: 0 0 4px 22px;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-group-children::before {
  position: absolute;
  top: 0;
  bottom: 6px;
  left: 23px;
  width: 1px;
  content: "";
  background: #e0e4e7;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row {
  min-height: 31px;
  padding: 2px 8px 2px 11px;
  border: 0;
  border-radius: 0;
  background: #fff;
  font-size: 11px;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row:hover {
  background: #f4f6f8;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-row.is-selected {
  border: 0;
  background: #dcecff;
}

.production-theme #warehouseConfigurator .warehouse-tree-select strong {
  color: #30353a;
  font-size: 11px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator .warehouse-tree-icon,
.production-theme #warehouseConfigurator .warehouse-tree-group-folder {
  color: #525a61;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-footer {
  display: flex;
  min-height: 38px;
  padding: 0 10px;
  align-items: center;
  gap: 1px;
  border-top: 1px solid #dfe3e6;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-footer button {
  display: grid;
  width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0;
  place-items: center;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #4e565d;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-footer button:last-child {
  margin-left: auto;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-footer button:hover {
  background: #eef1f4;
  color: #1c5eb2;
}

.production-theme #warehouseConfigurator .warehouse-object-tree-footer .lucide {
  width: 17px;
  height: 17px;
  stroke-width: 1.5;
}

.production-theme #warehouseConfigurator .tech2-stage-panel,
.production-theme #warehouseConfigurator.is-presentation .tech2-stage-panel {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-rows: auto minmax(0, 1fr) 0;
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseConfigurator .warehouse-transform-toolbar-row {
  display: none !important;
}

.production-theme #warehouseConfigurator .warehouse-isolation-bar {
  grid-row: 1;
}

.production-theme #warehouseConfigurator .tech2-viewport {
  position: relative;
  display: flex;
  grid-row: 2;
  min-width: 0;
  min-height: 0 !important;
  max-height: none !important;
  padding: 30px 32px 24px;
  overflow: auto;
  align-items: safe center;
  justify-content: safe center;
  border: 0;
  background: #fff;
  background-image: none;
  overscroll-behavior: contain;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-viewport {
  padding: 0;
  align-items: stretch;
  justify-content: stretch;
  overflow: hidden;
  background: #343638;
}

.production-theme #warehouseConfigurator .tech2-canvas-frame {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #f5f3ef;
  box-shadow: 0 5px 18px rgba(28, 32, 35, .12);
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-canvas-frame {
  min-width: 620px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-canvas-frame {
  width: 100% !important;
  height: 100% !important;
  background: #303234;
  box-shadow: none;
}

.production-theme #warehouseConfigurator .warehouse-plan-3d-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  overflow: hidden;
  pointer-events: none;
  background: #e8e5df;
}

.production-theme #warehouseConfigurator .warehouse-plan-3d-backdrop[hidden] {
  display: none !important;
}

.production-theme #warehouseConfigurator .warehouse-plan-3d-backdrop canvas {
  display: block;
  width: 100%;
  height: 100%;
}

.production-theme #warehouseConfigurator #warehouseCanvas {
  position: relative;
  z-index: 2;
  background: transparent;
}

.production-theme #warehouseConfigurator #warehouseScene3d {
  z-index: 3;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-floor,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-wall-line,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-wall-opening-gap,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-library-symbol,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-symbol-fill,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-symbol-outline,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-symbol-detail,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-object-label,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-room-fill,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-door-leaf,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-door-swing,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-window-line,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-table-body,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-chair,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-led-body,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-led-grid,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-speaker-body,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-speaker-cone,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-power-body,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] .tech2-power-hole {
  opacity: 0;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-selection-box,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-base-dimension-line,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-base-dimension-tick,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-base-dimension-text,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-base-dimension-headline {
  opacity: 1;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 405;
  display: flex;
  width: 100vw;
  height: 58px;
  min-height: 58px;
  padding: 0 18px;
  align-items: center;
  gap: 15px;
  border: 0;
  border-top: 1px solid #d7dadd;
  background: rgba(255, 255, 255, .98);
  box-shadow: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-stage-toolbar {
  height: 46px;
  min-height: 46px;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-history-controls,
.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-view-switch,
.production-theme #warehouseConfigurator .tech2-stage-toolbar .tech2-selection-controls {
  display: none;
}

.production-theme #warehouseConfigurator .tech2-stage-toolbar > strong {
  color: #4a5157;
  font-size: 10px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator .tech2-zoom-controls {
  margin-left: 0;
}

.production-theme #warehouseConfigurator .tech2-zoom-controls button,
.production-theme #warehouseConfigurator .tech2-zoom-controls select {
  min-height: 29px;
  border-color: #d5d9dd;
  background: #fff;
  font-size: 10px;
}

.production-theme #warehouseConfigurator .tech2-inspector::before {
  position: sticky;
  top: 0;
  z-index: 4;
}

.production-theme #warehouseConfigurator .tech2-inspector-empty {
  height: calc(100% - 40px);
  min-height: 260px;
  padding: 72px 24px 32px;
  overflow: auto;
  color: #858d93;
  text-align: center;
}

.production-theme #warehouseConfigurator .tech2-inspector-empty .lucide {
  width: 34px;
  height: 34px;
  margin-bottom: 18px;
  color: #a7adb2;
  stroke-width: 1.25;
}

.production-theme #warehouseConfigurator .tech2-inspector-empty strong {
  color: #565d63;
  font-size: 12px;
}

.production-theme #warehouseConfigurator .tech2-inspector-empty span {
  max-width: 195px;
  margin: 8px auto 0;
  font-size: 10px;
  line-height: 1.45;
}

.production-theme #warehouseConfigurator .tech2-inspector form {
  height: calc(100% - 40px);
  max-height: calc(100% - 40px);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  padding: 12px 14px 52px;
  overflow: auto;
}

.production-theme #warehouseConfigurator .tech2-inspector-head {
  align-items: flex-start;
  padding-bottom: 10px;
  border-bottom: 1px solid #e1e4e7;
}

.production-theme #warehouseConfigurator .tech2-inspector-head > div {
  min-width: 0;
}

.production-theme #warehouseConfigurator .tech2-inspector-head > button {
  flex-shrink: 0;
}

.production-theme #warehouseConfigurator .tech2-inspector-head h4 {
  max-width: none;
  white-space: normal;
  overflow-wrap: anywhere;
  margin: 2px 0 0;
  color: #1e2328;
  font-size: 14px;
  font-weight: 680;
}

.production-theme #warehouseConfigurator .tech2-inspector label {
  overflow-wrap: anywhere;
  gap: 5px;
  color: #4f565c;
  font-size: 10px;
  font-weight: 560;
}

.production-theme #warehouseConfigurator .tech2-inspector input,
.production-theme #warehouseConfigurator .tech2-inspector select,
.production-theme #warehouseConfigurator .tech2-inspector textarea {
  height: 34px;
  min-height: 34px;
  padding: 6px 9px;
  border: 1px solid #d4d9dd;
  border-radius: 3px;
  background: #fff;
  color: #252a2f;
  font-size: 11px;
}

.production-theme #warehouseConfigurator .tech2-inspector-grid {
  gap: 9px 8px;
}

.production-theme #warehouseConfigurator .tech2-inspector-actions {
  padding-top: 11px;
  border-top: 1px solid #e1e4e7;
}

/* The 3D canvas consumes the entire centre pane; only the approved view cube */
/* floats above it. */
.production-theme #warehouseConfigurator .tech2-scene-3d,
.production-theme #warehouseConfigurator .tech2-scene-3d canvas {
  background: #343638;
}

.production-theme #warehouseConfigurator .warehouse-view-cube {
  top: 21px;
  right: 22px;
  width: 94px;
  height: 94px;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, .3));
}

/* Full-screen catalog — exact approved three-column proportions. */
.production-theme #warehouseCatalogDialog.warehouse-cad-catalog {
  inset: 0;
  width: 100vw;
  max-width: none;
  height: 100vh;
  max-height: none;
  margin: 0;
  padding: 0;
  grid-template-rows: 60px minmax(0, 1fr) 93px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-head {
  position: relative;
  display: flex;
  height: 60px;
  min-height: 60px;
  padding: 0 21px;
  align-items: center;
  gap: 26px;
  border: 0;
  border-bottom: 1px solid #30343a;
  background: linear-gradient(180deg, #20242a, #171a1e);
  color: #f5f6f7;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-window-dots {
  display: flex;
  align-items: center;
  gap: 9px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-window-dots i {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #ff5f57;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-window-dots i:nth-child(2) { background: #febc2e; }
.production-theme #warehouseCatalogDialog .warehouse-catalog-window-dots i:nth-child(3) { background: #28c840; }

.production-theme #warehouseCatalogDialog .warehouse-catalog-brand {
  color: #f6f7f8;
  font-size: 20px;
  font-weight: 720;
  letter-spacing: -.02em;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-brand b {
  display: inline-block;
  margin-right: 2px;
  padding: 2px 4px;
  border-radius: 3px;
  background: #e32635;
  color: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-brand span {
  margin-left: 12px;
  color: #c2c7cb;
  font-size: 13px;
  font-weight: 430;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-back {
  display: inline-flex;
  min-height: 36px;
  margin-left: auto;
  padding: 0 8px;
  align-items: center;
  gap: 8px;
  border: 0;
  background: transparent;
  color: #f4f5f6;
  font-size: 13px;
  font-weight: 500;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-back .lucide {
  width: 18px;
  height: 18px;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .warehouse-catalog-layout {
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-columns: 237px minmax(0, 1fr) 468px;
  overflow: hidden;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-sidebar {
  min-height: 0;
  padding: 20px 0;
  overflow: auto;
  border-right: 1px solid #dfe2e5;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-favorite,
.production-theme #warehouseCatalogDialog .tech2-catalog-categories button {
  display: flex;
  width: 100%;
  min-height: 58px;
  padding: 0 30px;
  align-items: center;
  gap: 15px;
  border: 0;
  border-left: 4px solid transparent;
  border-radius: 0;
  background: #fff;
  color: #3d444b;
  text-align: left;
  font-size: 13px;
  font-weight: 480;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-favorite {
  margin-bottom: 5px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-favorite .lucide,
.production-theme #warehouseCatalogDialog .tech2-catalog-categories button .lucide {
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  stroke-width: 1.45;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories {
  display: grid;
  gap: 0;
  padding: 0;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-favorite:hover,
.production-theme #warehouseCatalogDialog .tech2-catalog-categories button:hover {
  background: #f5f7f9;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-categories button.active {
  border-left-color: #176df3;
  background: #f0f5fc;
  color: #1764d6;
  font-weight: 600;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-browser {
  display: grid;
  min-width: 0;
  min-height: 0;
  grid-template-rows: 72px 53px minmax(0, 1fr);
  overflow: hidden;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-browser-head {
  display: grid;
  min-width: 0;
  padding: 18px 27px 8px;
  grid-template-columns: minmax(190px, 1fr) minmax(280px, 322px);
  align-items: center;
  gap: 22px;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-browser-head h3 {
  margin: 0;
  color: #20242a;
  font-size: 25px;
  font-weight: 720;
  letter-spacing: -.025em;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-browser-title {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 15px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-inline-back {
  display: inline-flex;
  min-width: 92px;
  height: 38px;
  padding: 0 14px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid #cfd5da;
  border-radius: 7px;
  background: #fff;
  color: #252b31;
  font-size: 13px;
  font-weight: 650;
  box-shadow: 0 1px 2px rgba(20, 30, 38, .06);
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-inline-back:hover {
  border-color: #176df3;
  background: #f1f6ff;
  color: #1764d6;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-inline-back .lucide {
  width: 17px;
  height: 17px;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-filters {
  display: block;
  padding: 0;
  border: 0;
  background: transparent;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-filters input {
  width: 100%;
  height: 38px;
  min-height: 38px;
  padding: 0 13px 0 38px;
  border: 1px solid #d6dade;
  border-radius: 4px;
  background: #fff;
  font-size: 12px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row {
  display: flex;
  min-width: 0;
  padding: 7px 27px 8px;
  align-items: center;
  gap: 14px;
  border-bottom: 1px solid #e1e4e7;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row button,
.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row label {
  display: inline-flex;
  height: 36px;
  min-height: 36px;
  padding: 0 14px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid #d6dade;
  border-radius: 4px;
  background: #fff;
  color: #4a5056;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row label {
  justify-content: flex-start;
  gap: 7px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row input {
  width: 15px;
  height: 15px;
  accent-color: #176df3;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-results {
  display: grid;
  height: auto;
  min-height: 0;
  padding: 14px 27px 22px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 165px;
  align-content: start;
  gap: 15px;
  overflow: auto;
  background: #fff;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 0;
  height: 165px;
  padding: 7px 7px 6px;
  grid-template-columns: minmax(0, 1fr) 22px;
  grid-template-rows: 111px minmax(0, 1fr);
  align-items: start;
  gap: 4px 2px;
  overflow: hidden;
  border: 1px solid #dadddf;
  border-radius: 3px;
  background: #fff;
  box-shadow: none;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item:hover {
  border-color: #aeb8c2;
  box-shadow: 0 3px 12px rgba(29, 38, 47, .08);
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item.is-selected {
  border-color: #176df3;
  box-shadow: inset 0 0 0 1px #176df3;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item.is-archived > img,
.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item.is-archived > .tech2-catalog-placeholder {
  opacity: .48;
  filter: grayscale(.65);
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu {
  position: absolute;
  z-index: 8;
  top: 8px;
  right: 8px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu summary {
  display: grid;
  width: 30px;
  height: 28px;
  padding: 0 0 6px;
  place-items: center;
  border: 1px solid rgba(183, 190, 196, .95);
  border-radius: 6px;
  background: rgba(255, 255, 255, .94);
  color: #30363c;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 2px 7px rgba(25, 34, 42, .12);
  list-style: none;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu summary::-webkit-details-marker {
  display: none;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu[open] summary {
  border-color: #176df3;
  color: #1764d6;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu > div {
  position: absolute;
  top: 33px;
  right: 0;
  display: grid;
  width: 178px;
  padding: 5px;
  gap: 2px;
  border: 1px solid #d7dce0;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(24, 31, 38, .2);
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu button {
  display: flex;
  width: 100%;
  min-height: 32px;
  padding: 0 9px;
  align-items: center;
  gap: 8px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #31373d;
  text-align: left;
  font-size: 11px;
  font-weight: 550;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu button:hover {
  background: #f1f5f8;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu button.danger {
  color: #c92935;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu button.danger:hover {
  background: #fff0f1;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-item-menu button .lucide {
  width: 15px;
  height: 15px;
}

.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item > img,
.production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-item > .tech2-catalog-placeholder {
  grid-column: 1 / -1;
  width: 100%;
  height: 111px;
  object-fit: contain;
  border-radius: 0;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item > div {
  display: grid;
  min-width: 0;
  align-content: start;
  gap: 2px;
  text-align: center;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item strong {
  display: -webkit-box;
  overflow: hidden;
  color: #292e33;
  font-size: 10px;
  font-weight: 650;
  line-height: 1.18;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item span,
.production-theme #warehouseCatalogDialog .tech2-catalog-item small {
  overflow: hidden;
  color: #596168;
  font-size: 9px;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #warehouseCatalogDialog .tech2-catalog-item small:last-child,
.production-theme #warehouseCatalogDialog .tech2-catalog-item > button {
  display: none;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 0;
  padding: 24px 18px 16px;
  grid-template-rows: auto minmax(260px, 1fr) 36px auto 34px 49px;
  gap: 10px;
  overflow: auto;
  border-left: 1px solid #dfe2e5;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header {
  position: relative;
  padding-right: 48px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header > span {
  display: none;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header h4 {
  margin: 0 0 5px;
  color: #1e2328;
  font-size: 20px;
  font-weight: 720;
  line-height: 1.2;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header small {
  color: #3f464c;
  font-size: 12px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview header > button {
  position: absolute;
  top: -5px;
  right: 0;
  display: grid;
  width: 44px;
  height: 44px;
  padding: 0;
  place-items: center;
  border: 1px solid #d8dcdf;
  border-radius: 4px;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media {
  min-height: 260px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, #fff 0%, #fafafa 100%);
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media > img,
.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media > .tech2-catalog-placeholder {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-tools {
  display: flex;
  align-items: center;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-tools button {
  display: grid;
  width: 42px;
  height: 36px;
  padding: 0;
  place-items: center;
  border: 1px solid #d7dadd;
  border-radius: 0;
  background: #fff;
  color: #535b62;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-tools button:first-child { border-radius: 4px 0 0 4px; }
.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-tools button:last-child { border-radius: 0 4px 4px 0; }

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta {
  margin: 0;
  padding: 8px 12px;
  border: 1px solid #dde1e4;
  border-radius: 4px;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta > div {
  min-height: 25px;
  padding: 4px 0;
  grid-template-columns: 135px minmax(0, 1fr);
  border-bottom-color: #eceeef;
  font-size: 10px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-quantity {
  font-size: 11px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-quantity input {
  width: 78px;
  height: 32px;
  min-height: 32px;
}

.production-theme #warehouseCatalogDialog #warehouseCatalogPreviewAdd {
  height: 49px;
  min-height: 49px;
  border: 0;
  border-radius: 3px;
  background: #176df3;
  color: #fff;
  font-size: 14px;
  font-weight: 650;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart {
  display: grid;
  min-width: 0;
  min-height: 93px;
  padding: 11px 27px;
  grid-template-columns: 205px minmax(0, 1fr) auto auto 24px;
  align-items: center;
  gap: 13px;
  border-top: 1px solid #d9dde1;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart > span {
  color: #596168;
  font-size: 11px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-items {
  display: flex;
  min-width: 0;
  height: 68px;
  align-items: center;
  gap: 12px;
  overflow: hidden;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-clear {
  min-height: 34px;
  padding: 0 9px;
  border: 0;
  background: transparent;
  color: #1767db;
  font-size: 11px;
  font-weight: 600;
}

.production-theme #warehouseCatalogDialog #warehouseCatalogDone {
  min-height: 34px;
  border-color: #d5dade;
  background: #fff;
}

/* Preserve a usable reduced layout without changing the approved desktop */
/* proportions at the normal macOS window sizes. */
@media (max-width: 1080px) {
  .production-theme #warehouseConfigurator .tech2-editor-shell,
  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-editor-shell {
    grid-template-columns: 220px minmax(0, 1fr) 300px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .tech2-editor-shell {
    grid-template-columns: 220px minmax(0, 1fr) 300px;
  }

  .production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button,
  .production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button {
    min-width: 64px;
  }

  .production-theme #warehouseCatalogDialog.warehouse-cad-catalog .warehouse-catalog-layout {
    grid-template-columns: 210px minmax(0, 1fr) 380px;
  }

  .production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-results {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Runtime details for the render-parity catalog. */
.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item {
  position: relative;
  display: grid;
  width: 330px;
  min-width: 250px;
  height: 68px;
  padding: 7px 34px 7px 8px;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border: 1px solid #d8dde1;
  border-radius: 4px;
  background: #fff;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item > img,
.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item > .tech2-catalog-placeholder {
  width: 58px;
  height: 52px;
  object-fit: contain;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item > span {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item strong,
.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item small {
  overflow: hidden;
  color: #2d3338;
  font-size: 10px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item small {
  color: #677078;
  font-weight: 400;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item > b {
  color: #4e565d;
  font-size: 10px;
  font-weight: 550;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item > button {
  position: absolute;
  top: 4px;
  right: 5px;
  display: grid;
  width: 23px;
  height: 23px;
  min-height: 23px;
  padding: 0;
  place-items: center;
  border: 0;
  background: transparent;
  color: #596168;
  font-size: 16px;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-cart-more {
  display: grid;
  min-width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 21px;
  background: #edf3fb;
  color: #1767db;
  font-size: 11px;
  font-weight: 700;
}

/* -------------------------------------------------------------------------- */
/* Final measured parity corrections: 2D status strip and reduced-window UI.  */
/* -------------------------------------------------------------------------- */

/* The approved 2D ribbon keeps the current tool legible without turning two
   adjacent commands into large blue tiles. */
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panel > button.active {
  border-color: #b9d1ee;
  background: #edf5ff;
  box-shadow: inset 0 -2px #2877ce;
  color: #145da8;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panel > button.active > .lucide {
  color: #145da8;
}

/* Top-level CAD sections are real mode switches, including keyboard focus. */
.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button {
  cursor: pointer;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button.active {
  background: linear-gradient(to bottom, transparent 74%, rgba(227, 39, 50, .07));
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-tabs button:focus-visible {
  outline: 2px solid #2877ce;
  outline-offset: -3px;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button:disabled {
  cursor: not-allowed;
  opacity: .38;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.warehouse-cad-catalog-picker::after {
  position: absolute;
  right: 5px;
  bottom: 4px;
  content: "⌄";
  color: #6a747c;
  font-size: 10px;
  line-height: 1;
}

.production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button.warehouse-cad-catalog-picker:hover::after {
  color: #145da8;
}

.production-theme #warehouseConfigurator .warehouse-home-view-controls {
  display: none !important;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panels {
  width: calc(100% - 298px);
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panel > button,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-home-history .warehouse-cad-ribbon-quick > button {
  min-width: 70px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls {
  top: 22px;
  right: 16px;
  display: flex;
  width: 282px;
  height: 39px;
  justify-content: flex-end;
  gap: 8px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls > button {
  width: 54px;
  min-width: 54px;
  height: 38px;
  min-height: 38px;
  padding: 0;
  border-radius: 3px;
  font-size: 13px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-zoom {
  display: inline-flex;
  height: 38px;
  padding: 0 2px 0 9px;
  align-items: center;
  gap: 6px;
  color: #383e43;
  font-size: 11px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-header-zoom output {
  min-width: 36px;
  color: #22272b;
  font-size: 11px;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-header-zoom .lucide {
  width: 14px;
  height: 14px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-zoom {
  display: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-stage-toolbar {
  padding: 0 165px 0 17px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-stage-toolbar > strong,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-stage-toolbar > .tech2-zoom-controls {
  display: none;
}

.production-theme #warehouseConfigurator .warehouse-cad-status-fields {
  display: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-status-fields {
  display: flex;
  width: 100%;
  min-width: 0;
  height: 100%;
  align-items: center;
  gap: 11px;
  color: #343a40;
  font-size: 10px;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-cad-status-fields label,
.production-theme #warehouseConfigurator .warehouse-status-selection,
.production-theme #warehouseConfigurator .warehouse-status-cursor {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 5px;
  color: #454c52;
  font-size: 10px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator .warehouse-status-select select,
.production-theme #warehouseConfigurator .warehouse-status-number input {
  height: 27px;
  min-height: 27px;
  padding: 0 7px;
  border: 1px solid #d7dce0;
  border-radius: 3px;
  background: #fff;
  color: #20262b;
  font: 500 10px/1 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.production-theme #warehouseConfigurator .warehouse-status-select select {
  width: 82px;
  padding-right: 25px;
}

.production-theme #warehouseConfigurator .warehouse-status-select:nth-child(2) select {
  width: 92px;
}

.production-theme #warehouseConfigurator .warehouse-status-number input {
  width: 65px;
  text-align: right;
}

.production-theme #warehouseConfigurator .warehouse-status-number small {
  margin-left: -3px;
  color: #666e75;
  font-size: 9px;
  font-weight: 500;
}

.production-theme #warehouseConfigurator .warehouse-status-snap {
  height: 27px;
  min-height: 27px;
  padding: 0 7px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #454c52;
  font-size: 10px;
  font-weight: 500;
  white-space: nowrap;
}

.production-theme #warehouseConfigurator .warehouse-status-snap:hover {
  background: #f1f4f6;
}

.production-theme #warehouseConfigurator .warehouse-status-snap b {
  color: #e32635;
  font-weight: 650;
}

.production-theme #warehouseConfigurator .warehouse-status-snap[aria-pressed="false"] b {
  color: #7c848b;
}

.production-theme #warehouseConfigurator .warehouse-status-selection {
  margin-left: auto;
}

.production-theme #warehouseConfigurator .warehouse-status-selection b,
.production-theme #warehouseConfigurator .warehouse-status-cursor b {
  color: #242a2f;
  font-weight: 600;
}

/* 1259×768 is the smallest supported desktop window.  At that width every
   command remains on-screen, the catalog cards remain useful, and the preview
   CTA is never hidden underneath the persistent cart. */
@media (max-width: 1340px) {
  .production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel {
    padding-right: 8px;
    padding-left: 8px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panel > button,
  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-home-history .warehouse-cad-ribbon-quick > button {
    min-width: 56px;
    width: 56px;
    padding-right: 3px;
    padding-left: 3px;
  }

  .production-theme #warehouseConfigurator .warehouse-cad-ribbon-panel > button > span,
  .production-theme #warehouseConfigurator .warehouse-home-history .warehouse-cad-ribbon-quick > button::after {
    max-width: 54px;
    overflow: hidden;
    font-size: 9px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .production-theme #warehouseConfigurator .warehouse-cad-ribbon-divider {
    margin-right: 4px;
    margin-left: 4px;
  }

  .production-theme #warehouseConfigurator .warehouse-home-view-controls {
    min-width: 218px;
    padding-left: 7px;
    gap: 6px;
  }

  .production-theme #warehouseConfigurator .warehouse-home-view-controls > button {
    width: 49px;
  }

  .production-theme #warehouseConfigurator .warehouse-home-view-controls > span {
    padding-left: 5px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panels {
    width: calc(100% - 282px);
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls {
    right: 10px;
    width: 262px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .tech2-stage-toolbar {
    padding-right: 160px;
    padding-left: 10px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-status-fields {
    gap: 5px;
  }

  .production-theme #warehouseConfigurator .warehouse-cad-status-fields label,
  .production-theme #warehouseConfigurator .warehouse-status-selection,
  .production-theme #warehouseConfigurator .warehouse-status-cursor,
  .production-theme #warehouseConfigurator .warehouse-status-snap {
    font-size: 9px;
  }

  .production-theme #warehouseConfigurator .warehouse-status-select select {
    width: 61px;
    padding-right: 19px;
    padding-left: 5px;
    font-size: 9px;
  }

  .production-theme #warehouseConfigurator .warehouse-status-select:nth-child(2) select {
    width: 67px;
  }

  .production-theme #warehouseConfigurator .warehouse-status-number {
    gap: 3px;
  }

  .production-theme #warehouseConfigurator .warehouse-status-number input {
    width: 51px;
    padding-right: 4px;
    padding-left: 4px;
    font-size: 9px;
  }

  .production-theme #warehouseConfigurator .warehouse-status-number small {
    display: none;
  }

  .production-theme #warehouseConfigurator .warehouse-status-cursor {
    display: none;
  }

  .production-theme #warehouseCatalogDialog.warehouse-cad-catalog .warehouse-catalog-layout {
    grid-template-columns: 205px minmax(0, 1fr) 400px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-sidebar {
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-favorite,
  .production-theme #warehouseCatalogDialog .tech2-catalog-categories button {
    min-height: 52px;
    padding-right: 20px;
    padding-left: 20px;
    gap: 12px;
    font-size: 12px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-favorite .lucide,
  .production-theme #warehouseCatalogDialog .tech2-catalog-categories button .lucide {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-browser-head {
    padding-right: 16px;
    padding-left: 16px;
    grid-template-columns: minmax(175px, 1fr) minmax(240px, 290px);
    gap: 12px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-browser-head h3 {
    font-size: 21px;
    white-space: nowrap;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-browser-title {
    gap: 9px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-inline-back {
    min-width: 76px;
    padding: 0 10px;
    font-size: 12px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-control-row {
    padding-right: 16px;
    padding-left: 16px;
    gap: 10px;
  }

  .production-theme #warehouseCatalogDialog.warehouse-cad-catalog .tech2-catalog-results {
    padding-right: 16px;
    padding-left: 16px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 13px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-cart {
    padding-right: 18px;
    padding-left: 18px;
    grid-template-columns: 172px minmax(0, 1fr) auto auto 20px;
    gap: 9px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-cart-item {
    width: 285px;
    min-width: 230px;
  }
}

/* Profile-aware SVG compositing.  Scheme owns the complete vector drawing;
   realistic 2D uses Three.js as the picture and SVG only as an interaction
   overlay.  Opacity (instead of display/visibility) preserves hit testing. */
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="scheme"] #warehouseCanvas :is(
  .tech2-floor,
  .tech2-wall-line,
  .tech2-wall-opening-gap,
  .tech2-library-symbol,
  .tech2-symbol-fill,
  .tech2-symbol-outline,
  .tech2-symbol-detail,
  .tech2-object-label,
  .tech2-room-fill,
  .tech2-door-leaf,
  .tech2-door-swing,
  .tech2-window-line,
  .tech2-table-body,
  .tech2-chair,
  .tech2-led-body,
  .tech2-led-grid,
  .tech2-speaker-body,
  .tech2-speaker-cone,
  .tech2-light-body,
  .tech2-light-beam,
  .tech2-power-body,
  .tech2-power-hole,
  .warehouse-flooring-fill,
  .warehouse-flooring-outline,
  .warehouse-flooring-label,
  .warehouse-flooring-label-muted
) {
  opacity: 1;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas > .tech2-floor,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas > .warehouse-selection-label {
  opacity: 0;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas .tech2-object > :not(.tech2-selection-box):not(.warehouse-tilted-selection):not(.warehouse-2d-transform-stem):not(.warehouse-2d-transform-handle):not(.warehouse-associative-dimension):not(.warehouse-dimension-extension):not(.warehouse-dimension-text):not(.warehouse-magnet-target-box),
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas .tech2-wall > :not(.tech2-wall-hit):not(.tech2-wall-handle) {
  opacity: 0;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas .tech2-wall.is-selected > .tech2-wall-line,
.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas :is(
  .tech2-selection-box,
  .warehouse-tilted-selection,
  .warehouse-2d-transform-stem,
  .warehouse-2d-transform-handle,
  .warehouse-associative-dimension,
  .warehouse-dimension-extension,
  .warehouse-dimension-text,
  .warehouse-base-dimension-line,
  .warehouse-base-dimension-tick,
  .warehouse-base-dimension-text,
  .warehouse-base-dimension-headline,
  .warehouse-smart-guides,
  .warehouse-guide-label,
  .tech2-wall-handle,
  .tech2-draw-preview,
  .tech2-marquee,
  .warehouse-placement-ghost,
  .warehouse-placement-ghost-label,
  .warehouse-magnet-target-box,
  .warehouse-polygon-preview,
  .warehouse-polygon-handle,
  .warehouse-freehand-preview
) {
  opacity: 1;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas :is(
  .tech2-wall.is-selected > .tech2-wall-line,
  .tech2-wall-handle,
  .tech2-draw-preview,
  .tech2-marquee,
  .warehouse-placement-ghost,
  .warehouse-magnet-target-box,
  .warehouse-polygon-preview,
  .warehouse-polygon-handle,
  .warehouse-freehand-preview
) {
  stroke: #1473e6;
  vector-effect: non-scaling-stroke;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"][data-warehouse-render-profile="realistic2d"] #warehouseCanvas :is(
  .warehouse-placement-ghost,
  .warehouse-magnet-target-box,
  .tech2-marquee
) {
  fill: rgba(20, 115, 230, .1);
}

/* The Tauri window keeps its CSS width near 1440 px while macOS title chrome
   reduces the usable webview height to roughly 850–900 px. Treat that as the
   compact catalogue too, otherwise the primary Add action slips under the cart. */
@media (max-height: 920px), (max-width: 1340px) {
  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview {
    padding: 14px 14px 12px;
    grid-template-rows: auto minmax(150px, 1fr) 32px auto 30px 42px;
    gap: 6px;
    overflow: hidden;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview header {
    padding-right: 44px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview header h4 {
    margin-bottom: 3px;
    font-size: 18px;
    line-height: 1.12;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview header > button {
    top: 0;
    width: 40px;
    height: 40px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview-media {
    min-height: 150px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview-tools button {
    width: 38px;
    height: 32px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta {
    padding: 5px 10px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-preview-meta > div {
    min-height: 20px;
    padding: 2px 0;
    grid-template-columns: 112px minmax(0, 1fr);
    font-size: 9px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-quantity {
    min-height: 30px;
    font-size: 10px;
  }

  .production-theme #warehouseCatalogDialog .warehouse-catalog-quantity input {
    height: 30px;
    min-height: 30px;
  }

  .production-theme #warehouseCatalogDialog #warehouseCatalogPreviewAdd {
    height: 42px;
    min-height: 42px;
    font-size: 13px;
  }
}

/* Full application navigation for the full-screen CAD workspace.  It lives in
   the browser top layer, so opening it never resizes or moves the plan. */
.production-theme #warehouseAppMenu.warehouse-app-menu {
  position: fixed;
  inset: 0;
  z-index: 1000;
  width: 100vw;
  max-width: none;
  height: 100dvh;
  max-height: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  background: transparent;
  color: #22282c;
}

.production-theme #warehouseAppMenu.warehouse-app-menu::backdrop {
  background: rgba(17, 22, 25, .42);
  backdrop-filter: blur(2px);
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel {
  display: flex;
  width: 292px;
  max-width: calc(100vw - 44px);
  height: 100%;
  flex-direction: column;
  overflow: hidden;
  border-right: 1px solid #cfd4d7;
  background: #f8f9f9;
  box-shadow: 16px 0 42px rgba(15, 20, 23, .24);
  animation: warehouse-app-menu-enter .16s ease-out both;
}

@keyframes warehouse-app-menu-enter {
  from { transform: translateX(-20px); opacity: .72; }
  to { transform: translateX(0); opacity: 1; }
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > header {
  display: flex;
  min-height: 70px;
  padding: 14px 14px 13px 18px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #dce0e2;
  background: #fff;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > header > div {
  display: grid;
  gap: 5px;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-brand {
  color: #202427;
  font-size: 20px;
  font-weight: 760;
  line-height: 1;
  letter-spacing: -.02em;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-brand b {
  color: #e32635;
  font-weight: 880;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > header small,
.production-theme #warehouseAppMenu .warehouse-app-menu-panel > footer small {
  color: #737c81;
  font-size: 10px;
}

.production-theme #warehouseAppMenu #warehouseCloseAppMenu {
  display: grid;
  width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
  place-items: center;
  border: 1px solid #d6dade;
  border-radius: 5px;
  background: #fff;
  color: #343b3f;
}

.production-theme #warehouseAppMenu #warehouseAppMenuNav {
  display: flex;
  min-height: 0;
  padding: 12px 10px 18px;
  flex: 1;
  flex-direction: column;
  gap: 3px;
  overflow: auto;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-group {
  padding: 8px 10px 5px;
  color: #7a8388;
  font-size: 9px;
  font-weight: 720;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-group-more {
  margin-top: 8px;
  padding-top: 14px;
  border-top: 1px solid #dde1e3;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-item {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 42px;
  padding: 8px 12px;
  align-items: center;
  gap: 11px;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #30373b;
  font-size: 12px;
  font-weight: 540;
  text-align: left;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-item:hover,
.production-theme #warehouseAppMenu .warehouse-app-menu-item:focus-visible {
  background: #edf0f1;
  outline: none;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-item.is-active {
  background: #e9eef3;
  color: #17212a;
  font-weight: 680;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-item.is-active::before {
  position: absolute;
  top: 8px;
  bottom: 8px;
  left: 0;
  width: 3px;
  border-radius: 2px;
  background: #e32635;
  content: "";
}

.production-theme #warehouseAppMenu .warehouse-app-menu-item .lucide {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  stroke-width: 1.7;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > footer {
  display: flex;
  min-height: 62px;
  padding: 11px 16px;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid #dce0e2;
  background: #fff;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > footer > span {
  display: grid;
  gap: 2px;
}

.production-theme #warehouseAppMenu .warehouse-app-menu-panel > footer strong {
  color: #262c30;
  font-size: 11px;
  font-weight: 650;
}

@media (max-height: 720px) {
  .production-theme #warehouseAppMenu .warehouse-app-menu-panel > header {
    min-height: 58px;
    padding-top: 9px;
    padding-bottom: 9px;
  }

  .production-theme #warehouseAppMenu .warehouse-app-menu-item {
    min-height: 36px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
}

/* -------------------------------------------------------------------------- */
/* Render profiles and precision SVG overlay.                                  */
/* -------------------------------------------------------------------------- */

/* The profile switch is part of the ribbon, so changing visual quality never
   steals pixels from the canvas or floats a panel over the drawing. */
.production-theme #warehouseConfigurator .warehouse-render-mode-bridge,
.production-theme #warehouseConfigurator .warehouse-render-quality-legacy {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch {
  display: inline-flex;
  height: 38px;
  padding: 2px;
  align-items: stretch;
  gap: 2px;
  flex: 0 0 auto;
  border: 1px solid #d4d9de;
  border-radius: 6px;
  background: #f2f4f6;
  box-shadow: inset 0 1px 1px rgba(26, 34, 40, .04);
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button {
  display: inline-flex;
  width: auto;
  min-width: 60px;
  height: 32px;
  min-height: 32px;
  padding: 0 10px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: transparent;
  color: #4a535b;
  font-size: 10px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
  transition: border-color .12s ease, background-color .12s ease, color .12s ease, box-shadow .12s ease;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button[data-warehouse-render-profile="realistic2d"] {
  min-width: 122px;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button:hover {
  background: rgba(255, 255, 255, .72);
  color: #202830;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button.active,
.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button[aria-pressed="true"] {
  border-color: #0f6fd7;
  background: #1473e6;
  box-shadow: 0 1px 2px rgba(17, 73, 140, .24);
  color: #fff;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch > button:focus-visible {
  outline: 2px solid #1473e6;
  outline-offset: 2px;
}

.production-theme #warehouseConfigurator .warehouse-render-profile-switch .lucide {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  stroke-width: 1.8;
}

.production-theme #warehouseConfigurator .warehouse-header-perspective {
  min-width: 94px;
  padding: 0 9px;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.production-theme #warehouseConfigurator .warehouse-header-perspective .lucide {
  width: 13px;
  height: 13px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls {
  width: 378px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panels {
  width: calc(100% - 394px);
}

.production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-perspective {
  display: none;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-mode-controls {
  gap: 8px;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-render-profile-switch {
  border-color: #3f464b;
  background: #121518;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .34);
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-render-profile-switch > button {
  color: #cbd1d5;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-render-profile-switch > button:hover {
  background: #292e32;
  color: #fff;
}

.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-render-profile-switch > button.active,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-render-profile-switch > button[aria-pressed="true"] {
  border-color: #81b9f6;
  background: #f4f7fa;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .32);
  color: #17222c;
}

/* A blue, print-clean vector overlay is the only SVG layer that stays above
   realistic 2D.  Fixed screen-space strokes remain crisp at every zoom. */
.production-theme #warehouseConfigurator #warehouseCanvas .tech2-selection-box,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-tilted-selection {
  fill: none;
  stroke: #1473e6;
  stroke-width: 1.5px;
  stroke-dasharray: none;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
  pointer-events: none;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-2d-transform-stem {
  stroke: #1473e6;
  stroke-width: 1px;
  stroke-dasharray: 3px 3px;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-2d-transform-handle,
.production-theme #warehouseConfigurator #warehouseCanvas [data-warehouse-handle^="scale-"] {
  fill: #fff;
  stroke: #1473e6;
  stroke-width: 1.5px;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
  filter: drop-shadow(0 1px 1px rgba(13, 59, 112, .2));
}

.production-theme #warehouseConfigurator #warehouseCanvas rect.warehouse-2d-scale-handle,
.production-theme #warehouseConfigurator #warehouseCanvas rect[data-warehouse-handle^="scale-"] {
  rx: 0;
  ry: 0;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-2d-rotate-handle {
  fill: #1473e6;
  stroke: #fff;
  stroke-width: 1.5px;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-2d-height-handle,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-2d-elevation-handle {
  fill: #1473e6;
  stroke: #fff;
  stroke-width: 1.5px;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-associative-dimension,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-dimension-extension {
  fill: none;
  stroke: #1473e6;
  stroke-width: 1.15px;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-dimension-extension {
  stroke-width: .9px;
  stroke-dasharray: 3px 3px;
  opacity: .82;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-dimension-text,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-guide-label {
  fill: #1473e6;
  stroke: rgba(255, 255, 255, .98);
  /* Text lives in the metre-based SVG viewBox. A screen-pixel value is
     multiplied by the plan transform in WebKit and becomes a giant white
     halo at Retina scale, so keep the outline in drawing units. */
  stroke-width: .045;
  stroke-linejoin: round;
  paint-order: stroke fill;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-base-dimension-line,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-base-dimension-tick {
  stroke: #3e474e;
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
  shape-rendering: geometricPrecision;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-base-dimension-text,
.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-base-dimension-headline {
  fill: #252c31;
  stroke: rgba(255, 255, 255, .98);
  stroke-width: .04;
  stroke-linejoin: round;
  paint-order: stroke fill;
}

.production-theme #warehouseConfigurator #warehouseCanvas .warehouse-smart-guides line {
  stroke: #2488f0;
  stroke-width: 1px;
  vector-effect: non-scaling-stroke;
}

@media (max-width: 1340px) {
  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-mode-controls {
    right: 10px;
    width: 274px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-cad-ribbon-panels {
    width: calc(100% - 288px);
  }

  .production-theme #warehouseConfigurator .warehouse-render-profile-switch {
    height: 36px;
  }

  .production-theme #warehouseConfigurator .warehouse-render-profile-switch > button {
    min-width: 52px;
    height: 30px;
    min-height: 30px;
    padding: 0 7px;
    gap: 4px;
    font-size: 9px;
  }

  .production-theme #warehouseConfigurator .warehouse-render-profile-switch > button[data-warehouse-render-profile="realistic2d"] {
    min-width: 108px;
  }

  .production-theme #warehouseConfigurator .warehouse-render-profile-switch .lucide {
    width: 12px;
    height: 12px;
    flex-basis: 12px;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="2d"] .warehouse-header-zoom {
    display: none;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-perspective span {
    display: none;
  }

  .production-theme #warehouseConfigurator[data-warehouse-mode="3d"] .warehouse-header-perspective {
    min-width: 36px;
    width: 36px;
    padding: 0;
  }
}

/* Presentation is a true full-canvas mode. The header and CAD ribbon are grid
   items, so hiding only the header makes auto-placement move the editor into
   the ribbon's fixed-height row and leaves the flexible row empty. Collapse
   the workspace explicitly and let the 3D viewport own the complete window. */
.production-theme #warehouseConfigurator.is-presentation .tech2-header,
.production-theme #warehouseConfigurator.is-presentation .warehouse-cad-ribbon,
.production-theme #warehouseConfigurator.is-presentation .tech2-setup-panel,
.production-theme #warehouseConfigurator.is-presentation .tech2-inspector,
.production-theme #warehouseConfigurator.is-presentation .tech2-stage-toolbar,
.production-theme #warehouseConfigurator.is-presentation .warehouse-isolation-bar,
.production-theme #warehouseConfigurator.is-presentation .warehouse-transform-toolbar-row {
  display: none !important;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-workspace {
  grid-template-rows: minmax(0, 1fr) !important;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-editor-shell,
.production-theme #warehouseConfigurator[data-warehouse-mode="3d"].is-presentation .tech2-editor-shell {
  grid-row: 1;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-stage-panel {
  grid-column: 1;
  grid-row: 1;
  grid-template-rows: minmax(0, 1fr) !important;
  width: 100%;
  height: 100%;
  min-height: 0;
}

.production-theme #warehouseConfigurator.is-presentation .tech2-viewport {
  grid-row: 1 !important;
  width: 100%;
  height: 100%;
  min-height: 0 !important;
}

/* Keep the intake entry point above the generic catalogue control rules. */
.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row > button.warehouse-model-intake-open {
  order: 99;
  margin-left: auto;
  min-height: 36px;
  padding: 0 14px;
  border-color: #137b6e;
  color: #fff;
  background: #137b6e;
  font-weight: 750;
}

.production-theme #warehouseCatalogDialog .warehouse-catalog-control-row > button.warehouse-model-intake-open:hover {
  color: #fff;
  background: #0f665c;
}

/* Estimate workbench: line editing is primary; project tools open on demand. */
.production-theme #estimates .form-head { align-items: center; gap: 16px; }
.production-theme #estimates .form-head h3 { margin: 0; font-size: 20px; }
.production-theme #estimates .form-actions { align-items: center; flex-wrap: wrap; }
.production-theme #estimates .estimate-actions-menu { position: relative; }
.production-theme #estimates .estimate-actions-menu > summary { cursor: pointer; padding: 9px 12px; }
.production-theme #estimates .estimate-actions-menu[open] > div { position: absolute; top: 100%; right: 0; z-index: 30; width: 220px; display: grid; gap: 5px; padding: 10px; border: 1px solid #dce2e6; border-radius: 10px; background: #fff; box-shadow: 0 10px 30px #18262d20; }
.production-theme #estimates .estimate-production-details > summary,
.production-theme #estimates .estimate-project-details > summary,
.production-theme #estimates .estimate-advanced-details > summary { cursor: pointer; padding: 11px 12px; color: #54616a; font-size: 13px; font-weight: 600; }
.production-theme #estimates .estimate-production-details,
.production-theme #estimates .estimate-project-details,
.production-theme #estimates .estimate-advanced-details { margin: 8px 0; border: 1px solid #e1e6e9; border-radius: 8px; background: #fafbfc; }
.production-theme #estimates .estimate-project-details[open],
.production-theme #estimates .estimate-advanced-details[open] { padding: 0 12px 12px; }
.production-theme #estimates [data-project-panel="estimate"].active { display: flex; flex-direction: column; gap: 10px; }
.production-theme #estimates .estimate-project-details { order: 0; }
.production-theme #estimates .quick-tools { order: 1; margin: 0; }
.production-theme #estimates .estimate-quick-results { order: 2; }
.production-theme #estimates .builder-tabs { order: 3; margin: 0; }
.production-theme #estimates [data-builder-panel="table"] { order: 4; }
.production-theme #estimates .estimate-advanced-details { order: 6; }
.production-theme #estimates .estimate-compact-totals { order: 5; position: sticky; bottom: 0; z-index: 8; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 12px; margin: 0; padding: 10px 14px; border: 1px solid #d8e0e5; background: #fff; box-shadow: 0 -4px 16px #1f31390a; }
.production-theme #estimates .estimate-compact-totals > div { display: none; }
.production-theme #estimates .estimate-compact-totals > .grand,
.production-theme #estimates .estimate-compact-totals > div:has(#taxModeValue),
.production-theme #estimates .estimate-compact-totals > div:has(#subtotalValue) { display: block; min-width: 150px; padding: 4px 8px; }
.production-theme #estimates .estimate-compact-totals span { display: block; font-size: 11px; color: #63717b; }
.production-theme #estimates .estimate-compact-totals strong { font-size: 15px; }
.production-theme #estimates .estimate-compact-totals .grand strong { font-size: 20px; }
.production-theme #estimates .estimate-table-tools { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 12px; margin: 0 0 10px; }
.production-theme #estimates .estimate-table-tools > label { display: grid; gap: 5px; font-size: 12px; color: #52616b; }
.production-theme #estimates .estimate-table-tools > label:first-child { width: 280px; max-width: 100%; }
.production-theme #estimates .estimate-table-tools .estimate-column-toggle { display: flex; align-items: center; gap: 7px; padding: 9px; }
.production-theme #estimates .estimate-column-toggle input { width: auto; min-height: 0; }
.production-theme #estimateForm:not(.show-advanced-columns) .estimate-advanced-column,
.production-theme #estimateForm:not(.show-advanced-columns) .line-comment-label.internal { display: none; }
.production-theme #estimateForm:not(.show-advanced-columns) .lines-table { min-width: 900px; }
.production-theme #estimates .line-price-source { display: block; margin-top: 4px; color: #6b7781; font-size: 10px; }
.production-theme #estimates .line-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.production-theme #estimates .line-row-actions > button { flex: 0 0 32px; width: 32px; min-width: 32px; height: 32px; min-height: 32px; padding: 0; justify-content: center; }
.production-theme #estimates .line-delete-action span { display: none; }
.production-theme #estimates .line-actions-cell { min-width: 90px; }
.production-theme #estimates #estimateLineSearch { width: min(280px, 100%); }
.production-theme #estimates .estimate-section-total-content { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; font-size: 12px; font-weight: 600; color: #243631; }
.production-theme #estimates .estimate-section-total-content > span { min-width: 0; overflow-wrap: anywhere; }
.production-theme #estimates .estimate-section-total-content > .estimate-section-amounts { display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 12px; min-width: 0; max-width: 100%; margin-left: auto; text-align: right; font-variant-numeric: tabular-nums; }
.production-theme #estimates .estimate-section-amounts > div { min-width: 0; }
.production-theme #estimates .estimate-section-amounts > div > span { white-space: nowrap; }
.production-theme #estimates .estimate-section-total-content strong { display: block; font-size: 13px; white-space: nowrap; }
.production-theme #estimates .estimate-section-total-content small { display: block; font-size: 10px; font-weight: 400; color: #596961; }
.production-theme #estimates .estimate-section-total > td { width: auto; padding: 12px 16px; background: #eef2f0; border-bottom: 1px solid #c4d0ca; }
.production-theme #estimateSplit .split-section-subtotal { padding: 12px 16px; background: #f5f7f6; border-bottom: 1px solid #c4d0ca; }
.production-theme #estimateSplit .is-collapsed > .split-section-subtotal { display: none; }
body.production-theme[data-active-view="estimates"] #undoAction { min-width: 0; max-width: 170px; }
body.production-theme[data-active-view="estimates"] #undoAction span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (min-width: 1101px) and (max-width: 1500px) {
  body.production-theme[data-active-view="estimates"] .topbar-actions .action-with-icon span,
  body.production-theme[data-active-view="estimates"] .topbar-actions .notification-button > span:not(.notification-count),
  body.production-theme[data-active-view="estimates"] .topbar-actions .data-actions-menu > summary span,
  body.production-theme[data-active-view="estimates"] .topbar-actions .data-actions-menu > summary .lucide:last-child { display: none; }
  body.production-theme[data-active-view="estimates"] .topbar-actions > button,
  body.production-theme[data-active-view="estimates"] .notification-button,
  body.production-theme[data-active-view="estimates"] .data-actions-menu > summary { width: 38px; min-width: 38px; padding: 0; justify-content: center; }
}
.production-theme #estimates .estimate-quick-results { border: 1px solid #cdd9e5; border-radius: 8px; padding: 8px; background: #f8fbff; }
.production-theme #estimates .estimate-quick-results[hidden] { display: none; }
.production-theme #estimates .estimate-quick-results p { padding: 4px 8px; margin: 0 0 5px; color: #576978; font-size: 12px; }
.production-theme #estimates .estimate-quick-results > button { width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 12px; text-align: left; padding: 9px; border: 0; background: transparent; }
.production-theme #estimates .estimate-quick-results > button:hover { background: #e8f1fc; }
.production-theme #estimates .estimate-quick-results small { display: block; margin-top: 3px; color: #627384; font-size: 11px; }
.production-theme .client-proposal-dialog { width: min(1100px, 94vw); max-width: 94vw; height: 92vh; max-height: 92vh; padding: 0; border: 1px solid #d0d8dd; border-radius: 12px; overflow: hidden; }
.production-theme .client-proposal-dialog[open] { display: flex; flex-direction: column; }
.production-theme .client-proposal-dialog > header,
.production-theme .client-proposal-dialog > footer { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; padding: 14px 18px; background: #fff; }
.production-theme .client-proposal-dialog > header { justify-content: space-between; border-bottom: 1px solid #e2e7eb; }
.production-theme .client-proposal-dialog h3 { margin: 0; }
.production-theme .client-proposal-dialog header p { margin: 5px 0 0; font-size: 12px; }
.production-theme .client-proposal-controls { display: flex; gap: 18px; align-items: center; padding: 10px 18px; background: #f6f8fa; }
.production-theme .client-proposal-controls label { display: grid; gap: 4px; min-width: 200px; font-size: 12px; }
.production-theme .client-proposal-controls p { color: #64727b; font-size: 12px; }
.production-theme .client-proposal-warnings { padding: 7px 18px; font-size: 12px; color: #76652b; }
.production-theme .client-proposal-warnings ul { max-height: 100px; overflow: auto; }
.production-theme #clientProposalPreview { flex: 1; min-height: 180px; width: 100%; border: 0; background: #eef1f4; }
.production-theme .client-proposal-dialog > footer { border-top: 1px solid #e2e7eb; }
.production-theme #clientProposalStatus { flex: 1; color: #526573; font-size: 12px; }
@media (max-width: 800px) {
  .production-theme #estimates .form-head { flex-direction: column; align-items: stretch; }
  .production-theme .client-proposal-controls { flex-direction: column; align-items: stretch; gap: 4px; }
  .production-theme .client-proposal-dialog > footer { flex-wrap: wrap; }
  .production-theme #clientProposalStatus { flex-basis: 100%; }
}
/* Keep tax selection beside the payable total in both editor layouts. */
.production-theme #estimates .totals > .estimate-tax-choice:has(#taxMode) {
  display: grid;
  gap: 5px;
  min-width: 180px;
  max-width: 290px;
  padding: 4px 8px;
}
.production-theme #estimates .estimate-tax-choice label {
  color: #63717b;
  font-size: 11px;
}
.production-theme #estimates .estimate-tax-choice select {
  width: 100%;
  min-width: 0;
  min-height: 36px;
  font-size: 14px;
}
.production-theme #estimates #estimateTaxNotice {
  color: #63717b;
  font-size: 11px;
  line-height: 1.4;
}
.production-theme #estimates .estimate-tax-choice [hidden] {
  display: none !important;
}
@media (max-width: 540px) {
  .production-theme #estimates .totals > .estimate-tax-choice:has(#taxMode) {
    min-width: 0;
    max-width: none;
    width: 100%;
  }
}

/* Shared page selection for client PDF and Excel. */
.production-theme .client-proposal-sheet-picker { padding: 8px 18px; border-bottom: 1px solid #e1e5e8; background: #fff; }
.production-theme .client-proposal-sheet-toolbar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; font-size:12px; }
.production-theme #clientProposalSheetCount { color:#687078; margin-right:auto; }
.production-theme #clientProposalSheets { display:flex; flex-wrap:wrap; gap:6px 16px; max-height:104px; overflow:auto; margin:8px 0; }
.production-theme #clientProposalSheets label { display:flex; align-items:flex-start; gap:6px; max-width:100%; font-size:12px; cursor:pointer; }
.production-theme #clientProposalSheets input { width:16px; height:16px; flex:none; margin:0; accent-color:#20262b; }
.production-theme #clientProposalSheets span { overflow-wrap:anywhere; }
.production-theme .client-proposal-sheet-picker p { margin:0; color:#687078; font-size:11px; }
/* Section work packages stay compact on narrow estimate workspaces. */
.split-line-group h4 { flex-wrap: wrap; }
.section-services-button { font-size: 12px; flex-shrink: 0; }
#sectionServicesDialog { width: min(820px, calc(100vw - 24px)); max-width: calc(100vw - 24px); }
#sectionServicesRows { display: grid; gap: 12px; padding: 16px; max-height: 65vh; overflow: auto; }
#sectionServicesRows fieldset { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.5fr); gap: 10px; min-width: 0; border: 1px solid #d6dede; padding: 12px; }
.production-theme #sectionServicesRows legend label { display: flex; flex-direction: row; align-items: center; gap: 8px; }
#sectionServicesDialog header h3 { flex: 1; min-width: 0; overflow-wrap: anywhere; }
#sectionServicesRows .service-source { grid-column: 1 / -1; }
#sectionServicesRows label, #sectionServicesRows input, #sectionServicesRows select { min-width: 0; max-width: 100%; }
#sectionServicesRows fieldset:disabled { opacity: .65; }
#sectionServicesError { color: #b82029; padding: 0 16px; }
@media (max-width: 600px) {
  #sectionServicesRows { padding: 4px; }
  #sectionServicesRows fieldset { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
  #sectionServicesRows fieldset > label:last-child { grid-column: 1 / -1; }
}
/* Internal costs stay separate from the customer estimate. */
.project-expense-section { min-width: 0; margin: 18px 0 24px; border-block: 1px solid #d7e0de; padding: 16px 0; }
.project-expense-section .section-head { flex-wrap: wrap; gap: 10px; }
.project-expense-totals { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 12px 0; font-size: 12px; }
.project-expense-totals > span { flex: 1 1 145px; min-width: 0; }
.project-expense-totals strong, .project-expense-totals small { display: block; margin-top: 4px; }
.project-expense-totals strong { font-size: 16px; }
.project-expense-totals small { color: #65726f; }
.expense-table-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; margin: 16px 0 8px; }
.expense-table-toolbar [role="tablist"] { display: flex; border-bottom: 1px solid #d7e0de; }
.expense-table-toolbar [role="tab"] { background: transparent; border: 0; border-bottom: 2px solid transparent; border-radius: 0; }
.expense-table-toolbar [aria-selected="true"] { border-bottom-color: #0f766e; color: #0f766e; }
.expense-table-toolbar select { width: 180px; max-width: 100%; }
.expense-table-toolbar > span { font-size: 12px; }
.expense-overdue { background: #fff6f5; }
.expense-overdue td:first-child { box-shadow: inset 3px 0 #bd343a; }
.project-expense-section .table-scroll { overflow: auto; max-height: 620px; }
.project-expense-table { width: 100%; min-width: 1420px; table-layout: fixed; }
.project-expense-table th { position: sticky; top: 0; z-index: 1; background: #f3f6f5; }
.project-expense-table th:first-child { width: 260px; }
.project-expense-table th:nth-child(2) { width: 165px; }
.expense-budget-view th:nth-child(3), .expense-budget-view th:nth-child(4) { width: 80px; }
.expense-budget-view th:nth-child(7) { width: 145px; }
.expense-payment-view { min-width: 1320px; }
.expense-payment-view th:nth-child(3), .expense-payment-view th:nth-child(7), .expense-payment-view th:nth-child(8) { width: 165px; }
.project-expense-table th:last-child { width: 88px; }
.project-expense-table input, .project-expense-table select { width: 100%; min-width: 0; font-size: 12px; }
.project-expense-table td { vertical-align: middle; font-size: 12px; overflow-wrap: anywhere; }
.project-expense-table small { display: block; margin-top: 4px; color: #65726f; }
.project-expense-table small.danger-text { color: #b82029; }
#expenseExportDialog select { width: 100%; min-width: 0; }
#expenseExportDialog label { min-width: 0; }
#expenseExportDialog .dialog-actions { flex-wrap: wrap; }
#expenseExportDialog { max-height: calc(100dvh - 32px); overflow: auto; }
