:root {
  --bg: #f4f7f6;
  --panel: #ffffff;
  --ink: #14201f;
  --muted: #63716f;
  --line: #dbe4e1;
  --brand: #0f766e;
  --brand-dark: #075e58;
  --accent: #f6b73c;
  --sky: #dbeafe;
  --rose: #ffe4df;
  --green: #ddf7e8;
  --shadow: 0 20px 60px rgba(14, 43, 39, 0.12);
  font-family:
    Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Operational dashboard */
.request-group {
  margin-top: 18px;
  border: 1px solid #d8e2df;
  background: #fff;
}

.request-group-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 18px;
  border-bottom: 1px solid #d8e2df;
  background: #f4f8f7;
}

.request-group-heading h3,
.request-group-heading p { margin: 0; }
.request-group-heading p { margin-top: 3px; color: #5e6f6a; font-size: 13px; }
.request-group-heading > span { min-width: 36px; padding: 7px 10px; text-align: center; color: #fff; background: #08786c; font-weight: 800; }
.request-group .lead-table-wrap { margin: 0; border: 0; }
.compact-empty { margin: 0; padding: 20px; border: 0; }
.request-number { white-space: nowrap; font-weight: 800; }
.request-group-new { border-color: #e7b54f; }
.request-group-new .request-group-heading { background: #fff7dd; border-left: 6px solid #d99200; }
.request-group-new .request-group-heading > span { background: #b87500; }
.request-group-surveys { border-color: #75a9d1; }
.request-group-surveys .request-group-heading { background: #eaf5fd; border-left: 6px solid #2477b3; }
.request-group-surveys .request-group-heading > span { background: #2477b3; }
.request-group-sent { border-color: #6fba91; }
.request-group-sent .request-group-heading { background: #eaf8ef; border-left: 6px solid #2f8a59; }
.request-group-sent .request-group-heading > span { background: #2f8a59; }
.request-group-technician { border-color: #e0907f; }
.request-group-technician .request-group-heading { background: #fff0ed; border-left: 6px solid #b84232; }
.request-group-technician .request-group-heading > span { background: #a93629; }

.request-quick-nav {
  position: sticky;
  top: 10px;
  z-index: 12;
  display: flex;
  gap: 8px;
  margin: 0 0 14px;
  padding: 8px;
  overflow-x: auto;
  border: 1px solid #cddbd7;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 5px 18px rgba(14, 45, 39, .08);
}
.request-quick-nav button {
  display: inline-flex;
  flex: 1 0 max-content;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 42px;
  padding: 8px 12px;
  border: 1px solid #c6d7d2;
  background: #f7faf9;
  color: #183a34;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.request-quick-nav button:hover,
.request-quick-nav button:focus-visible { border-color: #08786c; background: #e9f6f3; }
.request-quick-nav b { min-width: 28px; padding: 4px 7px; background: #08786c; color: #fff; text-align: center; }
.request-group { scroll-margin-top: 82px; }

.technician-review-alert {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 12px;
  padding: 14px 16px;
  border: 2px solid #b84232;
  border-left-width: 8px;
  background: #fff0ed;
  color: #572019;
  text-align: left;
  cursor: pointer;
}
.technician-review-alert span { display: grid; gap: 3px; }
.technician-review-alert strong { font-size: 1rem; }
.technician-review-alert small { color: #74433c; }
.technician-review-alert b { min-width: 38px; padding: 8px; background: #a93629; color: #fff; text-align: center; }
.request-group-works-0 .request-group-heading { background: #fff4e8; border-left: 6px solid #d56c24; }
.request-group-works-1 .request-group-heading { background: #fff8d9; border-left: 6px solid #d4a106; }
.request-group-works-2 .request-group-heading { background: #eaf3ff; border-left: 6px solid #2868ae; }
.request-group-works-3 .request-group-heading { background: #edf7f1; border-left: 6px solid #347b50; }

.work-scheduler {
  margin: 18px 0;
  padding: 20px;
  border: 2px solid #0b746a;
  background: #f5fbfa;
}
.work-scheduler h3, .work-scheduler p { margin: 0; }
.work-scheduler > div > p { margin-top: 5px; color: #526660; }
.work-scheduler form { display: grid; grid-template-columns: 1fr 160px; gap: 14px; margin-top: 18px; }
.work-scheduler label { display: grid; gap: 6px; font-weight: 700; }
.work-scheduler label.full { grid-column: 1 / -1; }
.work-scheduler textarea { min-height: 76px; }
.work-scheduler-actions { display: flex; gap: 10px; align-items: center; margin-top: 14px; }
.work-complete { color: #08786c; }
.calendar-settings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.calendar-settings > div, .calendar-settings > button { grid-column: 1 / -1; }
.calendar-settings h3, .calendar-settings p { margin: 0; }
.calendar-settings p { margin-top: 4px; color: #5e6f6a; }
.calendar-settings label { display: grid; gap: 6px; font-weight: 800; }
.calendar-settings-note { display: grid; gap: 4px; padding: 12px; border-left: 4px solid #2477b3; background: #eef7ff; }
.calendar-settings-note span { color: #4d6679; font-size: 13px; }
.theme-settings { display: grid; gap: 14px; margin-top: 16px; }
.theme-settings h3, .theme-settings p { margin: 0; }
.theme-settings p { margin-top: 4px; color: var(--muted); }
.theme-setting-group { display: grid; grid-template-columns: minmax(180px, 0.55fr) minmax(420px, 1.45fr); align-items: center; gap: 16px; padding-top: 14px; border-top: 1px solid var(--line); }
.theme-setting-group > div:first-child { display: grid; gap: 4px; }
.theme-setting-group > div:first-child small { color: var(--muted); }
.theme-options { display: grid; grid-template-columns: repeat(2, minmax(0, 240px)); gap: 12px; }
.theme-option { display: grid; grid-template-columns: 22px 88px 1fr; align-items: center; gap: 10px; padding: 12px; border: 2px solid var(--line); background: var(--panel); cursor: pointer; }
.theme-option.selected { border-color: var(--brand); }
.theme-preview { position: relative; display: block; width: 88px; height: 48px; border: 1px solid #aebbb7; background: #f4f7f6; }
.theme-preview::before { position: absolute; inset: 0 auto 0 0; width: 24px; background: #dfe9e6; content: ""; }
.theme-preview i, .theme-preview b { position: absolute; left: 32px; right: 7px; height: 8px; background: #fff; content: ""; }
.theme-preview i { top: 9px; }
.theme-preview b { top: 24px; }
.theme-preview-dark { border-color: #405579; background: #14223a; }
.theme-preview-dark::before { background: #0b1424; }
.theme-preview-dark i, .theme-preview-dark b { background: #263b5d; }
.technician-link-box { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; margin-top: 14px; padding: 11px; background: #eaf5f3; }
.technician-link-box a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.technician-link-box button { border: 1px solid #08786c; background: #fff; color: #08786c; padding: 8px 12px; font-weight: 700; }

.catalog-image-preview { width: 100%; height: 76px; display: grid; place-items: center; overflow: hidden; border: 1px solid #d7e0de; background: #f5f7f6; color: #6c7875; font-size: 12px; }
.catalog-image-preview img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.quote-product-item { display: grid; grid-template-columns: 44px 1fr; gap: 8px; padding: 10px; border-bottom: 1px solid #dce5e2; background: #fff; }
.quote-product-item > img { width: 44px; height: 44px; object-fit: contain; }
.quote-product-item > div:nth-child(2) { display: grid; gap: 3px; }
.quote-product-actions { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.quote-product-actions button { min-height: 34px; border: 1px solid #08786c; background: #fff; color: #08786c; font-size: 12px; font-weight: 800; }
.quote-product-actions button:last-child { background: #08786c; color: #fff; }

/* Mobile technician workspace */
.technician-app { min-height: 100vh; background: #eef3f1; }
.technician-shell { width: min(760px, 100%); min-height: 100vh; margin: 0 auto; padding: 18px; color: #182522; }
.technician-header { display: flex; align-items: flex-start; justify-content: space-between; padding: 12px 0 18px; border-bottom: 3px solid #08786c; }
.technician-header h1 { margin: 4px 0 0; font-size: 24px; }
.technician-customer, .technician-system, .technician-photos, .technician-quote { margin-top: 14px; padding: 16px; border: 1px solid #d2ddda; background: #fff; }
.technician-customer h2, .technician-customer p { margin: 0; }
.technician-customer p { margin-top: 5px; color: #5d6b67; }
.technician-customer > div { display: flex; gap: 8px; margin-top: 13px; }
.technician-customer a, .technician-upload { padding: 10px 13px; background: #08786c; color: #fff; font-weight: 800; text-decoration: none; }
.technician-system summary { font-weight: 800; cursor: pointer; }
.technician-system dl { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 0; }
.technician-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; }
.technician-section-heading h2, .technician-section-heading p { margin: 0; }
.technician-upload input { display: none; }
.technician-line-head { display: grid; grid-template-columns: 1fr 88px 130px 110px; gap: 8px; margin: 8px 0; color: #66756f; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.technician-lines { display: grid; gap: 10px; }
.technician-line { padding: 11px; background: #f3f7f6; border-left: 4px solid #08786c; }
.technician-line-meta { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 8px; }
.technician-line-meta button { width: 34px; height: 34px; border: 0; background: #8b302c; color: #fff; font-size: 20px; }
.technician-origin { padding: 4px 7px; background: #dce8e5; color: #29443d; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.technician-origin.origin-preset { background: #e7f0ff; color: #245d92; }
.technician-origin.origin-manual { background: #fff1d4; color: #805500; }
.technician-description, .technician-line-values label { display: grid; gap: 4px; }
.technician-description span, .technician-line-values span { color: #5d6b67; font-size: 11px; font-weight: 800; }
.technician-description input { width: 100%; font-weight: 800; }
.technician-line-values { display: grid; grid-template-columns: 88px minmax(120px, 1fr) minmax(100px, auto); gap: 8px; align-items: end; margin-top: 8px; }
.technician-line-values > div { display: grid; gap: 6px; justify-items: end; padding-bottom: 10px; }
.technician-line-values strong { font-size: 17px; }
.technician-presets { margin-bottom: 14px; border: 2px solid #2477b3; background: #f5f9ff; }
.technician-lines + .technician-presets { margin-top: 16px; }
.technician-presets > summary { padding: 13px; color: #174f80; font-weight: 900; cursor: pointer; }
.technician-presets > p { margin: 0; padding: 0 13px 12px; color: #51697e; }
.technician-preset-groups { display: grid; gap: 7px; padding: 0 12px 12px; }
.technician-preset-groups details { border: 1px solid #cbd9e5; background: #fff; }
.technician-preset-groups summary { display: flex; justify-content: space-between; padding: 10px; font-weight: 800; cursor: pointer; }
.technician-preset-groups details > div { display: grid; }
.technician-preset-groups button { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 10px; border: 0; border-top: 1px solid #e2e9ee; background: #fff; text-align: left; }
.technician-preset-groups button strong { color: #08786c; white-space: nowrap; }
.technician-notes-reference { margin-top: 15px; padding: 12px; border-left: 4px solid #d99200; background: #fff8e5; }
.technician-notes-reference h3, .technician-notes-reference p { margin: 0; }
.technician-notes-reference p { margin-top: 5px; color: #5f5745; }
.technician-quote > label { display: grid; gap: 7px; margin-top: 15px; font-weight: 800; }
.technician-total { display: flex; justify-content: space-between; margin-top: 15px; padding: 14px; background: #172d28; color: #fff; font-size: 18px; }
.technician-actions { position: sticky; bottom: 0; display: grid; grid-template-columns: 1fr 1.4fr; gap: 8px; padding: 12px 0 2px; background: #fff; }
.technician-actions + .submit-progress { margin-top: 8px; padding: 10px; border: 1px solid #cbd9d5; background: #f3f8f6; }

@media (max-width: 720px) {
  .work-scheduler form { grid-template-columns: 1fr; }
  .work-scheduler label.full { grid-column: auto; }
  .technician-shell { padding: 10px; }
  .technician-system dl { grid-template-columns: 1fr; }
  .technician-line-head { display: none; }
  .technician-line-values { grid-template-columns: 76px 1fr; }
  .technician-line-values > div { grid-column: 1 / -1; display: flex; justify-content: space-between; }
  .technician-link-box { grid-template-columns: 1fr; }
  .request-group { overflow: hidden; }
}

/* Embedded operational calendars */
.embedded-calendar { margin: 16px 0; border: 1px solid #cbd9d5; background: #fff; }
.calendar-toolbar { display: grid; grid-template-columns: 40px 1fr 40px; align-items: center; gap: 8px; padding: 10px; border-bottom: 1px solid #dce5e2; background: #172d28; color: #fff; }
.calendar-toolbar button { width: 36px; height: 36px; border: 1px solid #58716a; background: transparent; color: #fff; font-size: 24px; }
.calendar-toolbar div { display: grid; justify-items: center; text-transform: capitalize; }
.calendar-toolbar small { color: #bcd0ca; }
.calendar-legend { display: flex; flex-wrap: wrap; gap: 10px; padding: 9px 12px; border-bottom: 1px solid #e2e9e7; }
.calendar-legend span::before { display: inline-block; width: 9px; height: 9px; margin-right: 5px; background: var(--event-color); content: ""; }
.calendar-weekdays, .calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
.calendar-weekdays span { padding: 7px 4px; background: #eef3f1; color: #53625e; text-align: center; font-size: 11px; font-weight: 900; }
.calendar-day { min-width: 0; min-height: 96px; padding: 6px; border: 0; border-right: 1px solid #e3e9e7; border-bottom: 1px solid #e3e9e7; background: #fff; text-align: left; }
.calendar-day:hover, .calendar-day.selected { outline: 3px solid #0f766e; outline-offset: -3px; background: #f1faf7; }
.calendar-day.outside { background: #f4f6f5; }
.calendar-day > span { font-weight: 900; }
.calendar-day > div { display: grid; gap: 3px; margin-top: 4px; }
.calendar-day small { display: block; overflow: hidden; padding: 3px 4px; border-left: 4px solid var(--event-color); background: #f1f4f3; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.calendar-day small b { margin-right: 4px; }
.calendar-day em { color: #61706c; font-size: 10px; }
.calendar-error { padding: 18px; color: #7d2d27; }
.calendar-error p { margin: 5px 0 12px; }
.calendar-error small { display: block; margin-bottom: 12px; color: #6a504d; }
.calendar-error > div { display: flex; flex-wrap: wrap; gap: 8px; }
.calendar-filter-bar { display: grid; grid-template-columns: minmax(150px, 0.8fr) minmax(280px, 2fr) auto; align-items: center; gap: 12px; padding: 12px; border-bottom: 1px solid #dce5e2; background: #f7faf9; }
.calendar-filter-bar > div:first-child { display: grid; }
.calendar-filter-bar > div:first-child span { color: #64736f; font-size: 12px; }
.calendar-filter-options { display: flex; flex-wrap: wrap; gap: 8px; }
.calendar-filter-options label { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid #d3dfdc; background: #fff; font-size: 12px; font-weight: 800; cursor: pointer; }
.calendar-filter-options label::before { width: 8px; height: 20px; background: var(--event-color); content: ""; }
.calendar-filter-presets { display: flex; gap: 5px; }
.calendar-filter-presets button { min-height: 34px; padding: 6px 9px; border: 1px solid #b9c9c5; background: #fff; color: #29443d; font-size: 11px; font-weight: 800; }
.calendar-warning { display: grid; gap: 4px; padding: 9px 12px; border-bottom: 1px solid #efcf8a; background: #fff7dd; color: #77520b; font-size: 12px; }
.compact-loading { min-height: 100px; }
.section-helper { margin-top: -5px; color: #64736f; }
.submit-progress { display: grid; gap: 6px; margin-top: 10px; }
.submit-progress > div { height: 8px; overflow: hidden; background: #dce7e4; }
.submit-progress > div span { display: block; width: 35%; height: 100%; background: #0f766e; transform: translateX(-100%); }
.submit-progress.active > div span { animation: submit-loading 1.1s ease-in-out infinite; }
.submit-progress strong { color: #36544d; font-size: 13px; }
.submit-progress.full { grid-column: 1 / -1; }
@keyframes submit-loading { 50% { transform: translateX(180%); } 100% { transform: translateX(400%); } }
.global-operation-progress { position: fixed; z-index: 10000; right: 18px; bottom: 18px; display: grid; gap: 7px; width: min(360px, calc(100vw - 36px)); border: 1px solid #9ebbb5; background: #fff; padding: 12px 14px; box-shadow: 0 12px 32px rgba(11, 35, 30, .2); }
.global-operation-progress > div { height: 7px; overflow: hidden; background: #dce7e4; }
.global-operation-progress > div span { display: block; width: 35%; height: 100%; background: var(--brand); transform: translateX(-100%); }
.global-operation-progress.active > div span { animation: submit-loading 1.1s ease-in-out infinite; }
.global-operation-progress strong { color: var(--ink); font-size: .82rem; }

/* Incentive guidance */
.incentive-invite { display: grid; grid-template-columns: 1fr auto; gap: 14px; align-items: center; margin-top: 18px; padding: 18px; border: 2px solid #2477b3; background: #eef7ff; }
.incentive-invite h3, .incentive-invite p { margin: 0; }
.incentive-invite p { margin-top: 5px; color: #4d6679; }
.incentive-invite > div > span { color: #23618f; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.incentive-invite > small { grid-column: 1 / -1; color: #627078; }
.incentive-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.incentive-form > label { display: grid; gap: 6px; font-weight: 800; }
.incentive-result, .incentive-form .nav-row { grid-column: 1 / -1; }
.incentive-result-heading { display: flex; justify-content: space-between; gap: 12px; padding: 12px; background: #172d28; color: #fff; }
.incentive-result-item { padding: 12px; border: 1px solid #dbe4e1; border-top: 0; background: #fff; }
.incentive-result-item p { margin: 4px 0 0; }
.incentive-result-item.possible { border-left: 5px solid #2f8a59; }
.incentive-result-item.check { border-left: 5px solid #d99200; }
.incentive-rules { margin-top: 10px; padding: 12px; background: #f1f5f4; }
.incentive-rules summary { font-weight: 900; cursor: pointer; }
.heat-pump-assurance { display: grid; grid-column: 1 / -1; gap: 3px; padding: 12px; border-left: 5px solid #2f8a59; background: #eaf8ef; }
.heat-pump-assurance span { color: #41634f; }
.incentive-rules-detailed { background: #fff; border: 1px solid #dbe4e1; }
.incentive-rules-detailed > summary { padding: 13px; background: #eef3f1; }
.incentive-information-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: #dbe4e1; }
.incentive-information-grid article { padding: 14px; background: #fff; }
.incentive-information-grid h4, .incentive-information-grid p { margin: 0; }
.incentive-information-grid p { margin-top: 5px; color: #53645f; line-height: 1.45; }
.incentive-updated { margin: 0; padding: 12px 14px; color: #5b6966; font-size: 12px; }
.incentive-links { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 14px 14px; }
.incentive-links a { color: #075e58; font-weight: 800; }

.quote-description-field { display: grid; gap: 4px; }
.quote-description-field input { width: 100%; }
.quote-tax-badge, .quote-tax-select { width: max-content; max-width: 100%; padding: 3px 5px; border: 1px solid #cbd8d4; background: #e6efed; color: #34524b; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.quote-tax-badge.tax-significantGood, .quote-tax-select.tax-significantGood { background: #fff0d2; color: #7c5400; }
.quote-totals .vat-explanation { display: block; padding: 9px; border-left: 4px solid #2477b3; background: #eef7ff; color: #39586f; font-size: 12px; line-height: 1.4; }

.information-workspace { display: grid; gap: 16px; }
.information-search { display: grid; gap: 7px; padding: 16px; border-left: 5px solid #2477b3; background: #eef7ff; }
.information-search label { font-size: 1rem; font-weight: 900; }
.information-search > div { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 8px; }
.information-search input { width: 100%; min-height: 44px; border: 1px solid #9fc2df; background: #fff; padding: 9px 11px; }
.information-search small { color: #526b7e; }
.information-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.information-card { min-width: 0; padding: 17px; border: 1px solid var(--line); border-top: 4px solid #4f7fad; background: #fff; }
.information-card > span { color: #35658f; font-size: 0.7rem; font-weight: 950; text-transform: uppercase; }
.information-card h3 { margin: 5px 0 8px; font-size: 1rem; }
.information-card p, .information-card ol { margin: 0; color: #52635f; line-height: 1.5; }
.information-card ol { padding-left: 20px; }
.information-card li + li { margin-top: 5px; }
.information-card > a { display: inline-block; margin-top: 13px; color: #155f98; font-size: 0.8rem; font-weight: 850; }
.information-example { display: grid; gap: 4px; margin-top: 12px; padding: 10px; border-left: 4px solid #d99a19; background: #fff7df; }
.information-example span { color: #665522; font-size: 0.82rem; }
.information-updated { margin: 0; color: var(--muted); font-size: 0.75rem; }
.information-empty { margin: 0; }
.operational-notes-notice { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px; border: 1px solid #d4b65a; border-left: 5px solid #c68d05; background: #fff8dc; }
.operational-notes-notice > div { display: grid; gap: 3px; }
.operational-notes-notice span { color: #665b35; font-size: 0.82rem; }
.operational-notes-notice a { flex: 0 0 auto; color: #765100; font-weight: 850; }
.operational-notes-market { color: #725f1d; font-size: 0.78rem; font-weight: 850; text-align: right; }
.quote-preview-operational { margin-top: 18px; padding: 12px 14px; border-left: 5px solid #c68d05; background: #fff8dc; }
.quote-preview-operational p { margin: 4px 0 0; color: #665b35; }

@media (max-width: 760px) {
  .calendar-day { min-height: 72px; padding: 4px; }
  .calendar-day small { font-size: 0; }
  .calendar-day small b { font-size: 9px; }
  .incentive-invite, .incentive-form, .calendar-settings { grid-template-columns: 1fr; }
  .incentive-invite > small, .incentive-result, .incentive-form .nav-row, .calendar-settings > div, .calendar-settings > button { grid-column: 1; }
  .calendar-filter-bar { grid-template-columns: 1fr; }
  .calendar-filter-presets { overflow-x: auto; }
  .theme-options, .incentive-information-grid, .information-grid, .theme-setting-group { grid-template-columns: 1fr; }
  .information-search > div { grid-template-columns: 1fr; }
  .operational-notes-notice { align-items: flex-start; flex-direction: column; }
}

/* Financing and management statistics. */
.product-visual-side { width: 100%; margin-top: 14px; min-height: 210px; }
.home-financing-notice { display: grid; gap: 4px; max-width: 560px; margin-top: 18px; border-left: 4px solid #2477b3; background: #eef6ff; padding: 12px 14px; color: #1f466d; }
.home-financing-notice strong { color: #143452; font-size: 0.95rem; }
.home-financing-notice span { font-size: 0.84rem; line-height: 1.4; }

.financing-simulator { margin-top: 20px; border: 1px solid #bad1e6; background: #f5faff; padding: 20px; }
.financing-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.financing-heading span { color: #2477b3; font-size: 0.72rem; font-weight: 950; text-transform: uppercase; }
.financing-heading h3 { margin: 5px 0 4px; font-size: 1.25rem; }
.financing-heading p { margin: 0; color: var(--muted); }
.financing-heading > strong { border: 1px solid #9dbbd6; background: #fff; padding: 8px 11px; color: #1f5d91; }
.financing-plan-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
.finance-plan { display: grid; min-width: 0; min-height: 92px; gap: 4px; align-content: center; border: 1px solid #bfd0df; background: #fff; padding: 10px; color: #17324c; text-align: left; }
.finance-plan strong { font-size: 0.82rem; }
.finance-plan span { color: #1f5d91; font-size: 0.92rem; font-weight: 950; }
.finance-plan small { color: #64788a; font-size: 0.66rem; line-height: 1.35; }
.finance-plan.selected { border-color: #2477b3; background: #e3f1ff; box-shadow: inset 0 -3px #2477b3; }
.financing-summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 3px 16px; align-items: end; margin-top: 12px; border-top: 1px solid #c8d9e8; padding-top: 12px; }
.financing-summary > span { color: #526d84; font-weight: 800; }
.financing-summary > strong { grid-row: 1 / 3; grid-column: 2; color: #173f64; font-size: 1.55rem; }
.financing-summary small { color: #64788a; }
.short-installment-option { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 12px; border: 1px solid #d6c886; background: #fff9dd; padding: 12px 14px; color: #665311; }
.short-installment-option > div { display: grid; gap: 2px; }
.financing-disclaimer { margin: 12px 0 0; color: #667784; font-size: 0.74rem; }
.financing-interest { margin-top: 8px; }

.financing-workspace { display: grid; gap: 18px; }
.finance-admin-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.finance-admin-heading h3,
.finance-admin-heading p { margin: 0; }
.finance-admin-heading p { margin-top: 4px; color: var(--muted); }
.finance-add-provider { display: grid; grid-template-columns: minmax(160px, 1fr) 170px auto; gap: 8px; }
.finance-provider-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.finance-provider-card { display: grid; gap: 14px; border: 1px solid var(--line); border-left: 5px solid #9aa8a5; background: #fbfcfc; padding: 16px; }
.finance-provider-card.enabled { border-left-color: #2477b3; background: #f4f9ff; }
.finance-provider-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.finance-type-badge { border: 1px solid #c7d3dd; background: #fff; padding: 5px 8px; color: #536a7c; font-size: 0.72rem; font-weight: 900; }
.finance-provider-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.finance-provider-fields label { display: grid; gap: 5px; color: var(--muted); font-size: 0.75rem; font-weight: 850; }
.finance-term-table { display: grid; gap: 5px; }
.finance-term-head,
.finance-term-row { display: grid; grid-template-columns: minmax(90px, 1fr) 100px 100px; gap: 7px; align-items: center; }
.finance-term-head { color: var(--muted); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.finance-term-row { border-top: 1px solid var(--line); padding-top: 6px; }
.finance-term-row strong { font-size: 0.82rem; }

.statistics-hero { display: grid; grid-template-columns: minmax(0, 1fr) 140px; align-items: center; min-height: 190px; overflow: hidden; background: #102c31; padding: 24px 28px; color: #fff; }
.statistics-hero > div:first-child { display: grid; gap: 6px; }
.statistics-hero span { color: #9dd5dc; font-size: 0.78rem; font-weight: 950; text-transform: uppercase; }
.statistics-hero strong { font-size: 3.6rem; line-height: 1; }
.statistics-hero p { margin: 0; color: #d2e8eb; font-weight: 800; }
.statistics-hero.is-profitable { background: #123827; }
.coverage-ring { display: grid; width: 120px; height: 120px; place-content: center; justify-self: end; border-radius: 50%; background: radial-gradient(circle, #102c31 56%, transparent 57%), conic-gradient(#f3be3b var(--coverage), #31555a 0); text-align: center; }
.is-profitable .coverage-ring { background: radial-gradient(circle, #123827 56%, transparent 57%), conic-gradient(#52c88a var(--coverage), #315946 0); }
.coverage-ring b { font-size: 1.55rem; }
.coverage-ring small { width: 72px; color: #c5e1e4; font-size: 0.66rem; line-height: 1.2; }
.statistics-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.statistics-metrics article { display: grid; min-height: 118px; gap: 5px; align-content: center; border: 1px solid var(--line); border-top: 4px solid #2477b3; background: #fff; padding: 14px; }
.statistics-metrics article:nth-child(2) { border-top-color: #e09c36; }
.statistics-metrics article:nth-child(3) { border-top-color: #16866f; }
.statistics-metrics article:nth-child(4) { border-top-color: #8157a7; }
.statistics-metrics span { color: var(--muted); font-size: 0.72rem; font-weight: 900; text-transform: uppercase; }
.statistics-metrics strong { font-size: 1.45rem; }
.statistics-metrics small { color: var(--muted); }
.statistics-metrics .positive { color: #147158; }
.statistics-metrics .negative { color: #b03632; }
.statistics-chart-section,
.statistics-settings { margin-top: 14px; }
.statistics-section-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.statistics-section-heading h3,
.statistics-section-heading p { margin: 0; }
.statistics-section-heading p { margin-top: 4px; color: var(--muted); }
.chart-legend { display: flex; gap: 14px; color: var(--muted); font-size: 0.76rem; font-weight: 850; }
.chart-legend span::before { content: ""; display: inline-block; width: 9px; height: 9px; margin-right: 5px; background: #2477b3; }
.chart-legend .cost::before { background: #e09c36; }
.statistics-chart { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); height: 270px; gap: 12px; align-items: end; margin-top: 18px; border-bottom: 1px solid var(--line); padding: 0 12px 12px; }
.chart-month { display: grid; min-width: 0; gap: 3px; text-align: center; }
.chart-bars { display: flex; height: 205px; align-items: end; justify-content: center; gap: 5px; }
.chart-bars i { display: block; width: min(28px, 38%); min-height: 3px; background: #2477b3; }
.chart-bars .bar-cost { background: #e09c36; opacity: 0.8; }
.chart-month strong { text-transform: capitalize; }
.chart-month small { color: var(--muted); }
.stats-settings-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.stats-settings-grid label { display: grid; gap: 6px; border-left: 3px solid #aac8c2; background: #f3f7f6; padding: 11px; }
.stats-settings-grid label > span { min-height: 31px; color: #3f5550; font-size: 0.76rem; font-weight: 850; }
.stats-settings-grid label > div { display: flex; align-items: center; gap: 6px; }
.stats-settings-grid input { min-width: 0; width: 100%; }
.stats-settings-grid small { color: var(--muted); font-weight: 800; }
.cost-breakdown { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 12px; }
.cost-breakdown span { display: flex; justify-content: space-between; gap: 8px; border: 1px solid var(--line); padding: 10px; color: var(--muted); font-size: 0.77rem; }
.cost-breakdown b { color: var(--ink); }

html[data-customer-theme="dark"] .home-financing-notice,
html[data-customer-theme="dark"] .financing-simulator { border-color: #435f79; background: #101f30; color: #edf3fb; }
html[data-customer-theme="dark"] .finance-plan { border-color: #435f79; background: #17283b; color: #edf3fb; }
html[data-customer-theme="dark"] .finance-plan.selected { border-color: #70b7f0; background: #1d3d5d; }
html[data-customer-theme="dark"] .finance-plan span,
html[data-customer-theme="dark"] .financing-summary strong,
html[data-customer-theme="dark"] .financing-heading h3 { color: #b9ddff; }
html[data-customer-theme="dark"] .short-installment-option { border-color: #6e623a; background: #312b19; color: #f4e4a2; }
html[data-dashboard-theme="dark"] .finance-provider-card,
html[data-dashboard-theme="dark"] .statistics-metrics article { border-color: #344d6d; background: #101b2c; color: #edf4ff; }
html[data-dashboard-theme="dark"] .finance-provider-card.enabled { border-left-color: #60a5fa; background: #12243a; }
html[data-dashboard-theme="dark"] .finance-type-badge,
html[data-dashboard-theme="dark"] .stats-settings-grid label,
html[data-dashboard-theme="dark"] .cost-breakdown span { border-color: #344d6d; background: #15243a; color: #c4d5e7; }
html[data-dashboard-theme="dark"] .stats-settings-grid label > span,
html[data-dashboard-theme="dark"] .cost-breakdown b { color: #edf4ff; }
html[data-dashboard-theme="dark"] .statistics-chart { border-color: #344d6d; }

@media (max-width: 980px) {
  .financing-plan-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .finance-provider-list,
  .statistics-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stats-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .financing-heading,
  .finance-admin-heading,
  .statistics-section-heading { display: grid; }
  .financing-plan-grid,
  .finance-provider-list,
  .statistics-metrics,
  .stats-settings-grid,
  .cost-breakdown { grid-template-columns: 1fr; }
  .finance-add-provider { grid-template-columns: 1fr; }
  .finance-provider-fields { grid-template-columns: 1fr; }
  .finance-term-head,
  .finance-term-row { grid-template-columns: minmax(72px, 1fr) 82px 82px; }
  .statistics-hero { grid-template-columns: minmax(0, 1fr) 100px; padding: 20px; }
  .statistics-hero strong { font-size: 2.6rem; }
  .coverage-ring { width: 92px; height: 92px; }
  .statistics-chart { gap: 5px; padding-inline: 2px; }
  .chart-bars i { width: min(18px, 42%); }
  .chart-month small { font-size: 0.6rem; }
}

/* Dashboard theme system */
html[data-dashboard-theme="dark"] {
  --bg: #0a1220;
  --panel: #111c2e;
  --ink: #edf4ff;
  --muted: #a9b9cf;
  --line: #2d405d;
  --brand: #3b82f6;
  --brand-dark: #bfdbfe;
  --accent: #f2b94b;
}
html[data-dashboard-theme="dark"] body { background: #08111f; color: #edf4ff; }
html[data-dashboard-theme="dark"] .dashboard-panel,
html[data-dashboard-theme="dark"] .dashboard-workspace,
html[data-dashboard-theme="dark"] .workspace-surface,
html[data-dashboard-theme="dark"] .lead-detail,
html[data-dashboard-theme="dark"] .detail-section,
html[data-dashboard-theme="dark"] .request-group,
html[data-dashboard-theme="dark"] .work-scheduler,
html[data-dashboard-theme="dark"] .embedded-calendar,
html[data-dashboard-theme="dark"] .quote-preview-dialog,
html[data-dashboard-theme="dark"] .quote-preview-page,
html[data-dashboard-theme="dark"] .pricing-table,
html[data-dashboard-theme="dark"] .lead-table-wrap,
html[data-dashboard-theme="dark"] .information-card { background: #111c2e; color: #edf4ff; border-color: #2d405d; }
html[data-dashboard-theme="dark"] .dashboard-sidebar,
html[data-dashboard-theme="dark"] .dashboard-header,
html[data-dashboard-theme="dark"] .request-group-heading,
html[data-dashboard-theme="dark"] .calendar-filter-bar,
html[data-dashboard-theme="dark"] .calendar-weekdays span,
html[data-dashboard-theme="dark"] .quote-line,
html[data-dashboard-theme="dark"] .calculation-row,
html[data-dashboard-theme="dark"] .timeline p,
html[data-dashboard-theme="dark"] .metric,
html[data-dashboard-theme="dark"] .pricing-table thead th,
html[data-dashboard-theme="dark"] .pricing-table tbody th,
html[data-dashboard-theme="dark"] .lead-table th,
html[data-dashboard-theme="dark"] .lead-table td,
html[data-dashboard-theme="dark"] .cost-input,
html[data-dashboard-theme="dark"] .quote-preview-customer,
html[data-dashboard-theme="dark"] .quote-preview-totals { background: #17253b; color: #e8f1ff; border-color: #314867; }
html[data-dashboard-theme="dark"] input,
html[data-dashboard-theme="dark"] select,
html[data-dashboard-theme="dark"] textarea { background: #0b1526; color: #edf4ff; border-color: #405879; }
html[data-dashboard-theme="dark"] .dashboard-nav button,
html[data-dashboard-theme="dark"] .market-choice,
html[data-dashboard-theme="dark"] .calendar-filter-options label,
html[data-dashboard-theme="dark"] .calendar-filter-presets button,
html[data-dashboard-theme="dark"] .calendar-day,
html[data-dashboard-theme="dark"] .theme-option { background: #101b2c; color: #e8f1ff; border-color: #314867; }
html[data-dashboard-theme="dark"] .dashboard-nav button.selected,
html[data-dashboard-theme="dark"] .market-choice.selected,
html[data-dashboard-theme="dark"] .theme-option.selected { border-color: #60a5fa; background: #1b3355; }
html[data-dashboard-theme="dark"] .action-unavailable { background: #223653; color: #b7c8df; }
html[data-dashboard-theme="dark"] .market-choice > span { background: #233654; color: #dbeafe; }
html[data-dashboard-theme="dark"] .calendar-day.outside { background: #0c1728; }
html[data-dashboard-theme="dark"] .calendar-day small { background: #20324d; color: #edf4ff; }
html[data-dashboard-theme="dark"] .calendar-day:hover,
html[data-dashboard-theme="dark"] .calendar-day.selected { background: #183b68; outline-color: #60a5fa; }
html[data-dashboard-theme="dark"] .section-helper,
html[data-dashboard-theme="dark"] .workspace-heading p,
html[data-dashboard-theme="dark"] .calendar-filter-bar span,
html[data-dashboard-theme="dark"] .theme-settings p,
html[data-dashboard-theme="dark"] .information-card p,
html[data-dashboard-theme="dark"] .information-card ol,
html[data-dashboard-theme="dark"] small { color: #a9b9cf; }
html[data-dashboard-theme="dark"] .primary-button { background: #2563eb; }
html[data-dashboard-theme="dark"] .ghost-button { background: #1b2b43; color: #edf4ff; border-color: #4c6588; }
html[data-dashboard-theme="dark"] .eyebrow { background: #183b68; color: #dbeafe; }
html[data-dashboard-theme="dark"] .market-context { background: #17253b; color: #dbeafe; border-color: #405879; }
html[data-dashboard-theme="dark"] .system-version { background: #17253b; color: #bfd2e8; border-color: #405879; }
html[data-dashboard-theme="dark"] .submit-progress > div { background: #2a3d5a; }
html[data-dashboard-theme="dark"] .submit-progress > div span { background: #60a5fa; }
html[data-dashboard-theme="dark"] .submit-progress strong { color: #bfdbfe; }
html[data-dashboard-theme="dark"] .quote-totals .vat-explanation,
html[data-dashboard-theme="dark"] .information-search { background: #132b48; color: #dbeafe; border-color: #60a5fa; }
html[data-dashboard-theme="dark"] .calendar-toolbar,
html[data-dashboard-theme="dark"] .quote-preview-toolbar,
html[data-dashboard-theme="dark"] .quote-preview-actions { background: #091426; }
html[data-dashboard-theme="dark"] .request-group-new .request-group-heading { background: #3b2d13; }
html[data-dashboard-theme="dark"] .request-group-surveys .request-group-heading,
html[data-dashboard-theme="dark"] .request-group-works-1 .request-group-heading { background: #3c3215; }
html[data-dashboard-theme="dark"] .request-group-sent .request-group-heading,
html[data-dashboard-theme="dark"] .request-group-works-2 .request-group-heading { background: #142e50; }
html[data-dashboard-theme="dark"] .request-group-works-3 .request-group-heading { background: #163329; }
html[data-dashboard-theme="dark"] .request-group-technician .request-group-heading { background: #47221e; }
html[data-dashboard-theme="dark"] .request-quick-nav { background: rgba(9, 20, 38, .96); border-color: #2d405d; }
html[data-dashboard-theme="dark"] .request-quick-nav button { background: #111c2e; border-color: #405879; color: #edf4ff; }
html[data-dashboard-theme="dark"] .technician-review-alert { background: #47221e; color: #fff1ed; border-color: #df7868; }
html[data-dashboard-theme="dark"] .technician-review-alert small { color: #f0c2b9; }
html[data-dashboard-theme="dark"] .request-group-works-0 .request-group-heading { background: #392718; }
html[data-dashboard-theme="dark"] .request-group-heading p { color: #c5d4e8; }
html[data-dashboard-theme="dark"] .request-group-new .request-group-heading p { color: #f0d68b; }
html[data-dashboard-theme="dark"] .request-group-surveys .request-group-heading p,
html[data-dashboard-theme="dark"] .request-group-works-1 .request-group-heading p { color: #f0d68b; }
html[data-dashboard-theme="dark"] .request-group-sent .request-group-heading p,
html[data-dashboard-theme="dark"] .request-group-works-2 .request-group-heading p { color: #b9dcff; }
html[data-dashboard-theme="dark"] .request-group-works-3 .request-group-heading p { color: #b9e5ca; }
html[data-dashboard-theme="dark"] .operational-notes-notice,
html[data-dashboard-theme="dark"] .quote-preview-operational,
html[data-dashboard-theme="dark"] .information-example { background: #362c16; color: #f8e7ad; border-color: #d7a92f; }
html[data-dashboard-theme="dark"] .information-card > span { color: #79bdf2; }
html[data-dashboard-theme="dark"] .information-card > a { color: #8ac9ff; }
html[data-dashboard-theme="dark"] .information-example span,
html[data-dashboard-theme="dark"] .operational-notes-notice span,
html[data-dashboard-theme="dark"] .quote-preview-operational p,
html[data-dashboard-theme="dark"] .operational-notes-market { color: #f4e6b2; }
html[data-dashboard-theme="dark"] .quote-quick-sidebar,
html[data-dashboard-theme="dark"] .quote-totals { background: #111c2e; color: #edf4ff; border-color: #2d405d; }
html[data-dashboard-theme="dark"] .quote-quick-group { background: #0c1728; border-color: #405879; }
html[data-dashboard-theme="dark"] .quote-quick-group summary { color: #edf4ff; }
html[data-dashboard-theme="dark"] .quote-quick-group summary b,
html[data-dashboard-theme="dark"] .quote-quick-sidebar button strong { color: #93c5fd; }
html[data-dashboard-theme="dark"] .quote-quick-sidebar p { color: #b7c8df; }
html[data-dashboard-theme="dark"] .quote-quick-sidebar button { background: #0b1526; color: #edf4ff; border-color: #3b82f6; }
html[data-dashboard-theme="dark"] .quote-line-head { color: #dbeafe; }

/* Customer and technician theme are independent from the dashboard. */
html[data-customer-theme="dark"] {
  --bg: #101722;
  --panel: #182231;
  --ink: #edf3fb;
  --muted: #aab8ca;
  --line: #34465d;
  --brand: #2f79d8;
  --brand-dark: #9fc8ff;
}
html[data-customer-theme="dark"] body { background: #0b121c; color: var(--ink); }
html[data-customer-theme="dark"] .screen,
html[data-customer-theme="dark"] .wizard-card,
html[data-customer-theme="dark"] .gateway-card,
html[data-customer-theme="dark"] .technician-customer,
html[data-customer-theme="dark"] .technician-system,
html[data-customer-theme="dark"] .technician-photos,
html[data-customer-theme="dark"] .technician-quote,
html[data-customer-theme="dark"] .price-box,
html[data-customer-theme="dark"] .incentive-result-item,
html[data-customer-theme="dark"] .incentive-information-grid article { background: #182231; color: #edf3fb; border-color: #34465d; }
html[data-customer-theme="dark"] input,
html[data-customer-theme="dark"] select,
html[data-customer-theme="dark"] textarea { background: #0f1825; color: #edf3fb; border-color: #435a76; }
html[data-customer-theme="dark"] .option-card,
html[data-customer-theme="dark"] .room-card,
html[data-customer-theme="dark"] .technician-line { background: #1d2b3e; color: #edf3fb; border-color: #3b82f6; }
html[data-customer-theme="dark"] .quote-quick-sidebar,
html[data-customer-theme="dark"] .quote-totals,
html[data-customer-theme="dark"] .technician-presets,
html[data-customer-theme="dark"] .technician-notes-reference,
html[data-customer-theme="dark"] .technician-quote { background: #182231; color: #edf3fb; border-color: #34465d; }
html[data-customer-theme="dark"] .quote-quick-group,
html[data-customer-theme="dark"] .technician-preset-groups details { background: #101a29; border-color: #365070; }
html[data-customer-theme="dark"] .quote-quick-group summary,
html[data-customer-theme="dark"] .technician-preset-groups summary { color: #edf3fb; }
html[data-customer-theme="dark"] .quote-quick-group summary b,
html[data-customer-theme="dark"] .quote-quick-sidebar button strong,
html[data-customer-theme="dark"] .technician-preset-groups button strong { color: #93c5fd; }
html[data-customer-theme="dark"] .quote-quick-sidebar p,
html[data-customer-theme="dark"] .technician-preset-groups > p,
html[data-customer-theme="dark"] .technician-notes-reference p { color: #b7c5d8; }
html[data-customer-theme="dark"] .quote-quick-sidebar button,
html[data-customer-theme="dark"] .technician-preset-groups button { background: #0f1825; color: #edf3fb; border-color: #3b82f6; }
html[data-customer-theme="dark"] .technician-presets > summary { background: #132238; border-color: #365070; }
html[data-customer-theme="dark"] .technician-notes-reference { background: #2b2413; color: #f8e7ad; border-color: #d7a92f; }

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
  overflow-x: hidden;
  background:
    linear-gradient(145deg, rgba(15, 118, 110, 0.08), transparent 36%),
    linear-gradient(315deg, rgba(246, 183, 60, 0.16), transparent 30%),
    var(--bg);
  color: var(--ink);
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

.app-shell {
  width: min(100%, 1120px);
  min-height: 100vh;
  margin: 0 auto;
  padding: 18px;
}

.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
  min-width: 0;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  border: 0;
  background: transparent;
  color: var(--ink);
  font-weight: 800;
  letter-spacing: 0;
}

.brand-mark {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 8px;
  background: var(--brand);
  color: white;
}

.topbar-meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.system-version {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  padding: 6px 9px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 850;
  white-space: nowrap;
}

.app {
  display: grid;
  min-height: calc(100vh - 92px);
}

.screen {
  display: grid;
  align-content: center;
  gap: 20px;
  min-width: 0;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.8fr);
  align-items: center;
  gap: 34px;
  min-width: 0;
  max-width: 100%;
}

.hero-copy {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.eyebrow {
  width: fit-content;
  border-radius: 999px;
  padding: 8px 12px;
  background: var(--green);
  color: var(--brand-dark);
  font-size: 0.82rem;
  font-weight: 800;
}

h1,
h2,
h3,
p {
  margin: 0;
}

h1 {
  max-width: 780px;
  font-size: clamp(2.35rem, 8vw, 5.8rem);
  line-height: 0.92;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

h1 span {
  display: block;
}

h2 {
  font-size: clamp(1.9rem, 5vw, 3.8rem);
  line-height: 1;
  letter-spacing: 0;
}

h3 {
  font-size: 1.1rem;
}

.lead {
  max-width: 620px;
  color: var(--muted);
  font-size: clamp(1.04rem, 2vw, 1.22rem);
  line-height: 1.55;
}

.primary-button,
.secondary-button,
.ghost-button {
  min-height: 48px;
  border-radius: 8px;
  border: 1px solid transparent;
  padding: 0 18px;
  font-weight: 800;
  letter-spacing: 0;
}

.primary-button {
  background: var(--brand);
  color: white;
  box-shadow: 0 12px 30px rgba(15, 118, 110, 0.28);
}

.primary-button:hover {
  background: var(--brand-dark);
}

.secondary-button {
  background: var(--ink);
  color: white;
}

.ghost-button {
  border-color: var(--line);
  background: rgba(255, 255, 255, 0.72);
  color: var(--ink);
}

.compact {
  min-height: 38px;
  padding: 0 12px;
  font-size: 0.9rem;
}

.market-context {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: white;
  padding: 7px 11px;
  color: var(--brand-dark);
  font-size: 0.8rem;
  font-weight: 900;
}

.gateway-screen {
  align-content: center;
  gap: 28px;
}

.gateway-heading {
  display: grid;
  gap: 14px;
}

.gateway-heading h1 {
  font-size: clamp(2.2rem, 6vw, 4.8rem);
}

.gateway-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.gateway-card {
  display: grid;
  min-height: 210px;
  align-content: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 24px;
  color: var(--ink);
  text-align: left;
  box-shadow: 0 14px 34px rgba(14, 43, 39, 0.08);
}

.gateway-card:hover {
  border-color: var(--brand);
  transform: translateY(-2px);
}

.gateway-card.company {
  background: #182322;
  color: white;
}

.gateway-card strong {
  font-size: 1.2rem;
}

.gateway-card small {
  color: var(--muted);
}

.gateway-card.company small {
  color: #c5d1cf;
}

.gateway-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 8px;
  background: var(--green);
  color: var(--brand-dark);
  font-weight: 950;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}

.home-offer {
  display: grid;
  gap: 4px;
  width: min(100%, 420px);
  border: 2px solid #f2c94c;
  border-radius: 8px;
  background: #fff8dd;
  color: #2f2a13;
  padding: 14px;
  box-shadow: 0 14px 30px rgba(242, 201, 76, 0.18);
}

.home-offer span {
  color: #6b5214;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.home-offer strong {
  font-size: 1.25rem;
}

.home-offer small {
  font-size: 1rem;
  font-weight: 900;
}

.home-offer del {
  color: #8b6d1d;
  font-weight: 700;
}

.home-offer b {
  margin-left: 8px;
  color: #9d2019;
  font-size: 1.3rem;
}

.offer-discounts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.offer-discounts em {
  border-radius: 4px;
  background: white;
  padding: 5px 7px;
  color: #59450f;
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 900;
}

.microcopy {
  color: var(--muted);
  font-size: 0.9rem;
}

.hero-visual {
  position: relative;
  min-height: 470px;
  overflow: hidden;
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(20, 32, 31, 0.04), rgba(20, 32, 31, 0.12)),
    url("data:image/jpeg;base64,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") center / cover;
  box-shadow: var(--shadow);
}

.hero-visual::after {
  content: "";
  position: absolute;
  inset: auto 18px 18px 18px;
  height: 96px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(16px);
}

.stat-strip {
  position: absolute;
  inset: auto 34px 38px 34px;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.stat {
  display: grid;
  gap: 4px;
}

.stat strong {
  font-size: 1.05rem;
}

.stat span {
  color: var(--muted);
  font-size: 0.78rem;
}

.wizard-card,
.dashboard-panel {
  width: min(100%, 820px);
  margin: 0 auto;
  border: 1px solid rgba(219, 228, 225, 0.9);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: var(--shadow);
  backdrop-filter: blur(18px);
}

.wizard-card {
  padding: clamp(18px, 4vw, 34px);
}

.progress-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 22px;
}

.progress-track {
  flex: 1;
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8efed;
}

.progress-bar {
  width: var(--progress, 0%);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--brand), var(--accent));
  transition: width 220ms ease;
}

.step-count {
  min-width: 74px;
  color: var(--muted);
  text-align: right;
  font-size: 0.86rem;
  font-weight: 800;
}

.question {
  display: grid;
  gap: 12px;
  margin-bottom: 22px;
}

.question p {
  color: var(--muted);
  line-height: 1.55;
}

.options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.options.single {
  grid-template-columns: 1fr;
}

.option-card,
.image-option {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 76px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 14px;
  color: var(--ink);
  text-align: left;
  transition:
    border-color 160ms ease,
    transform 160ms ease,
    box-shadow 160ms ease;
}

.option-card:hover,
.image-option:hover {
  border-color: var(--brand);
  box-shadow: 0 12px 28px rgba(14, 43, 39, 0.1);
  transform: translateY(-1px);
}

.option-card.selected,
.image-option.selected {
  border-color: var(--brand);
  outline: 3px solid rgba(15, 118, 110, 0.14);
}

.option-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 8px;
  background: var(--sky);
  color: var(--brand-dark);
  font-weight: 900;
}

.option-card strong,
.image-option strong {
  display: block;
  overflow-wrap: anywhere;
}

.option-card small,
.image-option small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.35;
}

.option-card.standard-choice {
  grid-column: 1 / -1;
  grid-template-columns: 58px minmax(0, 1fr);
  min-height: 118px;
  border: 2px solid #10a37f;
  background: linear-gradient(135deg, #ddf7e8, #ffffff 58%);
  box-shadow: 0 18px 42px rgba(15, 118, 110, 0.16);
}

.option-card.standard-choice .option-icon {
  width: 58px;
  height: 58px;
  background: var(--brand);
  color: white;
  font-size: 0.96rem;
}

.option-card.standard-choice strong {
  font-size: clamp(1.18rem, 4vw, 1.55rem);
}

.option-card.standard-choice small {
  color: var(--brand-dark);
  font-size: 1rem;
  font-weight: 800;
}

.option-card.standard-choice span:last-child::before {
  content: "Consigliato";
  display: inline-flex;
  width: fit-content;
  margin-bottom: 8px;
  border-radius: 999px;
  background: var(--brand);
  padding: 5px 9px;
  color: white;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.option-card.distance-low {
  border-color: #8fdfad;
  background: #edfff4;
}

.option-card.distance-low .option-icon {
  background: #c9f7d9;
  color: #146c38;
}

.option-card.distance-mid {
  border-color: #f4da75;
  background: #fffbea;
}

.option-card.distance-mid .option-icon {
  background: #f9eaa2;
  color: #775b00;
}

.option-card.distance-high {
  border-color: #f2aa62;
  background: #fff3e6;
}

.option-card.distance-high .option-icon {
  background: #ffd3a3;
  color: #8a4300;
}

.option-card.distance-manual {
  border-color: #f28b82;
  background: #fff0ee;
}

.option-card.distance-manual .option-icon {
  background: #ffc6c0;
  color: #9b1c12;
}

.option-card.distance-unknown {
  border-color: #c3cbd0;
  background: #f8fafb;
}

.option-card.distance-unknown .option-icon {
  background: #e7ecef;
  color: #52616a;
}

.image-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.image-option {
  grid-template-columns: 1fr;
  padding: 10px;
}

.image-option img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: 6px;
}

.ticino-picker {
  display: grid;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
}

.ticino-map {
  display: grid;
  gap: 8px;
  min-height: 430px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(219, 234, 254, 0.75), rgba(221, 247, 232, 0.8)),
    #eef6f4;
}

.map-zone {
  display: grid;
  place-items: center;
  min-height: 64px;
  border: 1px solid rgba(15, 118, 110, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  color: var(--brand-dark);
  font-weight: 900;
  box-shadow: 0 8px 22px rgba(14, 43, 39, 0.08);
}

.map-zone:nth-child(1) {
  margin-inline: 42% 2%;
}

.map-zone:nth-child(2) {
  margin-inline: 28% 12%;
}

.map-zone:nth-child(3) {
  margin-inline: 18% 22%;
}

.map-zone:nth-child(4) {
  margin-inline: 6% 34%;
}

.map-zone:nth-child(5) {
  margin-inline: 0 44%;
}

.map-zone.selected,
.map-zone:hover {
  border-color: var(--brand);
  background: var(--brand);
  color: white;
}

.zone-list {
  display: grid;
  gap: 10px;
}

.nav-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 22px;
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.field {
  display: grid;
  gap: 7px;
}

.field.full {
  grid-column: 1 / -1;
}

.phone-field {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 8px;
}

.phone-field label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 0.88rem;
  font-weight: 800;
}

.phone-field select,
.phone-field input {
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 10px 12px;
  color: var(--ink);
}

.field label {
  color: var(--muted);
  font-size: 0.88rem;
  font-weight: 800;
}

.field input,
.field select,
.field textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 10px 12px;
  color: var(--ink);
}

.field textarea {
  min-height: 92px;
  resize: vertical;
}

.choice-field {
  display: grid;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdfc;
  padding: 14px;
}

.choice-field.full,
.availability-grid.full,
.form-error.full {
  grid-column: 1 / -1;
}

.choice-field legend {
  color: var(--ink);
  font-weight: 900;
  padding-inline: 6px;
}

.choice-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 12px;
}

.choice-card input {
  margin-top: 4px;
}

.choice-card span {
  display: grid;
  gap: 4px;
}

.choice-card small {
  color: var(--muted);
  line-height: 1.35;
}

.availability-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.form-error {
  margin: 0;
  border-radius: 8px;
  background: #fee2e2;
  color: #991b1b;
  padding: 10px 12px;
  font-weight: 900;
}

.dropzone {
  display: grid;
  gap: 10px;
  border: 1px dashed #9fb1ad;
  border-radius: 8px;
  background: rgba(221, 247, 232, 0.44);
  padding: 18px;
}

.file-list {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 0.9rem;
}

.loading {
  display: grid;
  place-items: center;
  gap: 16px;
  min-height: 280px;
  text-align: center;
}

.spinner {
  width: 70px;
  height: 70px;
  border: 8px solid #dce9e6;
  border-top-color: var(--brand);
  border-radius: 50%;
  animation: spin 900ms linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.result-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 0.72fr);
  gap: 18px;
  align-items: start;
}

.price-box {
  display: grid;
  gap: 8px;
  border-radius: 8px;
  background: #12211f;
  color: white;
  padding: 20px;
}

.price-box strong {
  font-size: clamp(2rem, 7vw, 3.6rem);
  line-height: 0.95;
}

.total-label {
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0;
}

.discount-panel {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  background: #f2c94c;
  color: #1c221f;
  padding: 14px;
}

.discount-panel span,
.discount-panel small {
  font-weight: 900;
}

.discount-panel strong {
  font-size: clamp(1.6rem, 5vw, 2.6rem);
  color: #0f2f28;
}

.price-note {
  margin: 14px 0 0;
  border-radius: 8px;
  background: #eef7f4;
  color: #31564e;
  padding: 12px 14px;
  font-weight: 800;
}

.product-visual {
  width: min(100%, 320px);
  aspect-ratio: 4 / 3;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 10px;
}

.summary-list,
.included-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.summary-list li,
.included-list li {
  display: flex;
  gap: 8px;
  color: var(--muted);
}

.summary-list li::before,
.included-list li::before {
  content: "";
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  margin-top: 8px;
  border-radius: 50%;
  background: var(--brand);
}

.notice {
  border-left: 4px solid var(--accent);
  border-radius: 6px;
  background: #fff8e8;
  padding: 12px;
  color: #6b5214;
}

.brand-switcher {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.brand-switcher button {
  min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  color: var(--ink);
  font-weight: 800;
}

.brand-switcher button.selected,
.brand-switcher button:hover {
  border-color: var(--brand);
  background: var(--brand);
  color: white;
}

.dashboard {
  align-content: start;
  gap: 16px;
}

.dashboard-panel {
  width: 100%;
  padding: 18px;
}

body:has(.app.dashboard) .app-shell {
  width: min(100%, 1480px);
}

.dashboard-shell {
  padding: 0;
  overflow: hidden;
  background: #f8faf9;
}

.dashboard-shell > .dashboard-header {
  margin: 0;
  border-bottom: 1px solid var(--line);
  background: white;
  padding: 16px 20px;
}

.dashboard-shell > .dashboard-header h2 {
  font-size: 1.45rem;
  line-height: 1.1;
}

.dashboard-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  min-width: 0;
  min-height: 720px;
}

.dashboard-sidebar {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 22px;
  border-right: 1px solid var(--line);
  background: #eef3f1;
  padding: 18px 14px;
}

.sidebar-label {
  display: block;
  margin: 0 4px 7px;
  color: #647370;
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.market-selector,
.dashboard-nav {
  display: grid;
  min-width: 0;
  gap: 6px;
}

.market-choice,
.dashboard-nav button {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 2px 9px;
  min-height: 58px;
  align-items: center;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  padding: 8px 9px;
  color: #263330;
  text-align: left;
}

.market-choice > span {
  grid-row: 1 / 3;
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 5px;
  background: white;
  font-size: 0.72rem;
  font-weight: 950;
}

.market-choice strong,
.dashboard-nav strong {
  font-size: 0.9rem;
}

.market-choice small,
.dashboard-nav small {
  color: #6c7976;
  font-size: 0.72rem;
}

.market-choice:hover,
.dashboard-nav button:hover {
  background: rgba(255, 255, 255, 0.72);
}

.market-choice.selected,
.dashboard-nav button.selected {
  border-color: #cad7d3;
  background: white;
  box-shadow: 0 5px 14px rgba(23, 52, 47, 0.07);
}

.market-choice.market-ch.selected {
  border-left: 4px solid #b23737;
}

.market-choice.market-it.selected {
  border-left: 4px solid #26734d;
}

.market-choice.market-all.selected {
  border-left: 4px solid #33413e;
}

.dashboard-nav button {
  grid-template-columns: 1fr;
  min-height: 52px;
}

.dashboard-nav button.selected {
  border-color: var(--brand);
  background: #e0f1ed;
  color: var(--brand-dark);
}

.dashboard-workspace {
  min-width: 0;
  background: white;
  padding: 22px;
}

.workspace-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.workspace-heading h3 {
  margin-top: 7px;
  font-size: 1.55rem;
}

.workspace-heading p {
  margin-top: 5px;
  color: var(--muted);
}

.workspace-market {
  display: inline-block;
  border-radius: 4px;
  background: #edf2f1;
  padding: 5px 8px;
  color: #33413e;
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.workspace-market.market-ch {
  background: #fae7e7;
  color: #862a2a;
}

.workspace-market.market-it {
  background: #e1f2e9;
  color: #1e6542;
}

.compact-metrics {
  margin-bottom: 14px;
}

.compact-metrics .metric {
  padding: 11px 13px;
}

.compact-metrics .metric strong {
  font-size: 1.4rem;
}

.filters-toolbar {
  margin-bottom: 10px;
  border-block: 1px solid var(--line);
  padding: 12px 0;
}

.filter-primary {
  display: grid;
  grid-template-columns: minmax(190px, 1.25fr) minmax(190px, 1fr) minmax(160px, 0.7fr) auto;
  gap: 8px;
}

.filter-primary input,
.filter-primary select {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: white;
  padding: 8px 10px;
}

.filter-more {
  margin-top: 8px;
}

.filter-more summary {
  width: fit-content;
  color: var(--brand-dark);
  font-size: 0.82rem;
  font-weight: 900;
  cursor: pointer;
}

.filter-more .dashboard-filters {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  margin: 8px 0 0;
  border: 0;
  padding: 8px;
  background: #f5f8f7;
}

.dashboard-filters > label:not(.checkline) {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 0.76rem;
  font-weight: 900;
}

.selection-hint {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  color: var(--muted);
  font-size: 0.8rem;
}

.workspace-surface {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fbfdfc;
  padding: 16px;
}

.pricing-workspace,
.pricing-section,
.btu-ranges-workspace {
  display: grid;
  gap: 14px;
}

.section-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 14px;
}

.section-heading h3,
.section-heading p {
  margin: 0;
}

.section-heading p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 0.86rem;
}

.meter-total {
  display: grid;
  min-width: 150px;
  border: 1px solid #e4c24f;
  border-radius: 6px;
  background: #fff7d6;
  padding: 9px 12px;
  text-align: right;
}

.meter-total span {
  color: #75631d;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.meter-total strong {
  margin-top: 2px;
  color: #453a12;
  font-size: 1.05rem;
}

.pricing-table-wrap {
  min-width: 0;
  overflow-x: auto;
}

.pricing-table {
  width: 100%;
  min-width: 680px;
  border-collapse: collapse;
  background: white;
}

.pricing-table th,
.pricing-table td {
  border: 1px solid var(--line);
  padding: 9px 10px;
  text-align: left;
}

.pricing-table thead th {
  background: #e8f0ee;
  color: #45625d;
  font-size: 0.75rem;
  font-weight: 950;
  text-transform: uppercase;
}

.pricing-table tbody th {
  background: #f7faf9;
  font-size: 0.86rem;
}

.pricing-table label,
.money-input {
  display: flex;
  align-items: center;
  gap: 6px;
}

.pricing-table label span,
.money-input b,
.money-input em {
  color: var(--muted);
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 900;
}

.pricing-table input,
.money-input input {
  width: 100%;
  min-width: 80px;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 5px;
  background: white;
  padding: 7px 8px;
}

.cost-input-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 10px;
}

.cost-input {
  display: grid;
  align-content: start;
  gap: 6px;
  border-left: 3px solid #b8cbc6;
  background: #f3f7f6;
  padding: 10px;
  color: #34433f;
  font-size: 0.82rem;
  font-weight: 900;
}

.cost-input-label {
  display: grid;
  gap: 4px;
}

.cost-input-label strong {
  font-size: 0.82rem;
}

.cost-input-label small {
  width: fit-content;
  color: #66756f;
  font-size: 0.68rem;
  font-weight: 850;
}

.meter-rule-grid {
  grid-template-columns: repeat(2, minmax(240px, 1fr));
}

.included-meter-input {
  border: 1px solid #72bca7;
  border-left: 6px solid #087f68;
  background: #e2f5ef;
  padding: 15px;
}

.included-meter-input .cost-input-label strong {
  color: #075e50;
  font-size: 1rem;
}

.included-meter-input .cost-input-label small {
  color: #08705f;
  font-size: 0.76rem;
}

.included-meter-input .money-input input {
  min-height: 50px;
  border-color: #72bca7;
  font-size: 1.12rem;
  font-weight: 950;
}

.standard-meter-input {
  border: 1px solid #dfc35d;
  border-left: 5px solid #c79b08;
  background: #fff8dc;
  padding: 15px;
}

.standard-meter-input .cost-input-label strong {
  color: #65510d;
  font-size: 0.94rem;
}

.pricing-source-badge {
  flex: 0 0 auto;
  border: 1px solid #b8d1c9;
  border-radius: 4px;
  background: #eef6f3;
  padding: 5px 8px;
  color: #49645c;
  font-size: 0.7rem;
  font-weight: 900;
}

.pricing-explanation {
  margin: 0;
  border-left: 4px solid #5c8d80;
  background: #eef5f3;
  padding: 10px 12px;
  color: #52635f;
  font-size: 0.8rem;
  font-weight: 750;
}

.pricing-savebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid var(--line);
  padding-top: 14px;
}

.pricing-savebar > span {
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 800;
}

.technical-rule-note {
  display: flex;
  align-items: center;
  gap: 10px;
  border-left: 4px solid #2e7d62;
  background: #e8f5ef;
  padding: 11px 12px;
}

.technical-rule-note span {
  color: #4d615c;
  font-size: 0.84rem;
}

.range-preview {
  display: inline-block;
  min-width: 110px;
  border-radius: 4px;
  background: #fff3c4;
  padding: 7px 9px;
  color: #5b4a0c;
  font-weight: 950;
  text-align: center;
}

.promotion-workspace,
.catalog-workspace {
  display: grid;
  gap: 16px;
}

.promotion-quick {
  display: flex;
  align-items: end;
  gap: 8px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 14px;
}

.promotion-quick label,
.market-settings-single label {
  display: grid;
  gap: 5px;
  color: var(--muted);
  font-size: 0.8rem;
  font-weight: 900;
}

.promotion-quick input,
.market-settings-single input {
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: white;
  padding: 8px 10px;
}

.settings-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.75fr) minmax(360px, 1.25fr);
  gap: 14px;
}

.market-settings-single {
  display: grid;
  align-content: start;
  gap: 11px;
}

.folders-workspace {
  min-width: 0;
}

.folders-workspace .folder-manager {
  border: 0;
  margin: 0;
}

.folders-workspace .folder-manager > summary {
  display: none;
}

.settings-logout {
  margin-top: 18px;
  border-top: 1px solid var(--line);
  padding-top: 12px;
  text-align: right;
}

.market-prompt {
  display: grid;
  min-height: 260px;
  place-content: center;
  gap: 8px;
  border: 1px dashed #b8c8c4;
  background: #f7faf9;
  padding: 24px;
  text-align: center;
}

.market-prompt strong {
  font-size: 1.25rem;
}

.market-prompt p {
  color: var(--muted);
}

.market-prompt div {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 8px;
}

.market-prompt button {
  min-height: 42px;
  border: 1px solid var(--brand);
  border-radius: 6px;
  background: white;
  padding: 0 16px;
  color: var(--brand-dark);
  font-weight: 900;
}

.dashboard-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.dashboard-actions,
.form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.market-tabs {
  display: flex;
  gap: 4px;
  margin-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.market-tabs button {
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  padding: 10px 16px;
  color: var(--muted);
  font-weight: 900;
}

.market-tabs button.selected {
  border-bottom-color: var(--brand);
  color: var(--brand-dark);
}

.dashboard-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) repeat(4, minmax(130px, 0.8fr));
  gap: 8px;
  margin-bottom: 10px;
  padding: 12px 0;
  border-block: 1px solid var(--line);
}

.dashboard-filters input,
.dashboard-filters select,
.bulk-bar select,
.folder-create input,
.folder-create select,
.lead-detail input,
.lead-detail select,
.lead-detail textarea {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: white;
  padding: 8px 10px;
}

.dashboard-filters .checkline {
  min-height: 38px;
}

.bulk-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin-bottom: 14px;
  padding: 9px;
  background: #edf4f2;
}

.bulk-bar select {
  width: auto;
}

.danger-button {
  min-height: 40px;
  border: 1px solid #efb5b0;
  border-radius: 6px;
  background: #fff1f0;
  padding: 0 12px;
  color: #9d2019;
  font-weight: 900;
}

.folder-manager {
  margin-bottom: 14px;
  border-block: 1px solid var(--line);
  padding: 10px 0;
}

.folder-manager summary {
  color: var(--brand-dark);
  font-weight: 900;
  cursor: pointer;
}

.folder-list {
  display: grid;
  gap: 6px;
  margin: 10px 0;
}

.folder-row,
.folder-create {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto auto;
  align-items: center;
  gap: 7px;
}

.folder-create {
  grid-template-columns: minmax(180px, 1fr) 120px 180px auto;
}

.lead-detail {
  margin-bottom: 18px;
  border-top: 4px solid var(--brand);
  background: #f8fbfa;
  padding: 16px;
}

.detail-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.detail-heading h3 {
  margin-top: 6px;
  font-size: 1.25rem;
}

.detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.detail-section {
  position: relative;
  display: grid;
  align-content: start;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: white;
  padding: 12px;
}

.section-number {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 4px;
  background: var(--brand);
  color: white;
  font-size: 0.78rem;
  font-weight: 950;
}

.system-summary {
  display: grid;
  gap: 6px;
  margin-top: 6px;
  border-top: 1px solid var(--line);
  padding-top: 10px;
}

.system-summary > div {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(150px, auto);
  gap: 3px 10px;
  padding: 7px 0;
  border-bottom: 1px solid #edf2f1;
}

.system-summary small {
  grid-column: 1 / -1;
  color: var(--muted);
}

.calculation-heading,
.quote-editor-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.calculation-heading h3,
.calculation-heading p,
.quote-editor-heading h3,
.quote-editor-heading p {
  margin: 0;
}

.calculation-heading > strong {
  color: var(--brand-dark);
  font-size: 1.35rem;
  white-space: nowrap;
}

.calculation-table {
  overflow-x: auto;
  border: 1px solid var(--line);
}

.calculation-row {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 90px 130px 130px;
  min-width: 690px;
  border-bottom: 1px solid var(--line);
}

.calculation-row > * {
  min-width: 0;
  padding: 9px 10px;
}

.calculation-row > *:not(:first-child) {
  text-align: right;
}

.calculation-row small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
}

.calculation-head {
  background: #e5f2ef;
  color: var(--brand-dark);
  font-size: 0.74rem;
  font-weight: 950;
  text-transform: uppercase;
}

.calculation-tax {
  background: #f7faf9;
}

.calculation-subtotal {
  border-bottom: 0;
  background: #fff7dc;
  color: #6b4e00;
}

.calculation-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.calculation-notes span,
.action-unavailable {
  border-radius: 4px;
  background: #edf2f1;
  padding: 6px 8px;
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.management-grid,
.appointment-fields,
.quote-customer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.contact-action-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.action-link {
  display: inline-flex;
  width: auto;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.quote-editor {
  border-top: 4px solid var(--brand);
}

.quote-editor-heading .section-number {
  margin-bottom: 7px;
}

.quote-customer-grid .full {
  grid-column: 1 / -1;
}

.quote-lines {
  display: grid;
  gap: 7px;
  overflow-x: auto;
}

.quote-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 320px);
  gap: 16px;
  align-items: start;
}

.quote-quick-sidebar {
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #eef5f3;
  padding: 14px;
}

.quote-quick-sidebar h4,
.quote-quick-sidebar p {
  margin: 0 0 7px;
}

.quote-quick-sidebar h4 {
  color: var(--ink);
}

.quote-quick-sidebar p {
  color: var(--muted);
  font-size: 0.78rem;
}

.quote-quick-sidebar > div {
  display: grid;
  gap: 6px;
  max-height: 540px;
  overflow-y: auto;
}

.quote-quick-group {
  border: 1px solid #cadbd7;
  border-radius: 4px;
  background: #fff;
}

.quote-quick-group summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 38px;
  padding: 8px;
  color: #18302d;
  font-size: 0.78rem;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.quote-quick-group summary::-webkit-details-marker {
  display: none;
}

.quote-quick-group summary::before {
  content: "+";
  width: 18px;
  color: #0f766e;
  font-size: 1rem;
}

.quote-quick-group[open] summary::before {
  content: "−";
}

.quote-quick-group summary span {
  flex: 1;
}

.quote-quick-group summary b {
  border-radius: 10px;
  background: #dff0ec;
  padding: 2px 7px;
  color: #4f6673;
  font-size: 0.7rem;
}

.quote-quick-group > div {
  display: grid;
  gap: 5px;
  border-top: 1px solid #dce7e4;
  padding: 6px;
}

.quote-quick-sidebar button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid #cadbd7;
  border-radius: 4px;
  background: white;
  padding: 9px 10px;
  color: #172824;
  text-align: left;
}

.quote-quick-sidebar button:hover {
  border-color: var(--brand);
  background: #e9f5f2;
}

.quote-quick-sidebar button strong {
  color: #0f766e;
  font-size: 0.75rem;
  white-space: nowrap;
}

.quote-line-head {
  padding: 0 2px;
  color: #60726f;
}

body.modal-open {
  overflow: hidden;
}

.quote-preview-modal {
  position: fixed;
  z-index: 1000;
  inset: 0;
  display: grid;
  place-items: center;
  overflow-y: auto;
  background: rgba(16, 32, 29, 0.72);
  padding: 24px;
}

.quote-preview-dialog {
  width: min(920px, 100%);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  border-radius: 6px;
  background: #e8efed;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.3);
}

.quote-preview-toolbar,
.quote-preview-actions {
  position: sticky;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  background: #102b27;
  padding: 12px 16px;
  color: #fff;
}

.quote-preview-toolbar {
  top: 0;
}

.quote-preview-toolbar > div {
  display: grid;
  gap: 2px;
}

.quote-preview-toolbar span {
  color: #bed1cd;
  font-size: 0.78rem;
}

.quote-preview-close {
  width: 36px;
  height: 36px;
  border: 1px solid #4a6761;
  border-radius: 4px;
  background: transparent;
  color: #fff;
  font-size: 1.4rem;
}

.quote-preview-page {
  width: calc(100% - 32px);
  min-height: 760px;
  margin: 16px;
  background: #fff;
  padding: clamp(20px, 4vw, 44px);
  color: #172824;
}

.quote-preview-page header,
.quote-preview-title,
.quote-preview-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.7fr);
  gap: 24px;
}

.quote-preview-page header {
  align-items: start;
  border-bottom: 3px solid var(--brand);
  padding-bottom: 20px;
}

.quote-preview-page header > div:first-child {
  width: fit-content;
  max-width: 100%;
  border-radius: 4px;
  background: #102b27;
  padding: 10px 14px;
}

.quote-preview-page header img {
  display: block;
  width: auto;
  max-width: 220px;
  height: 58px;
  object-fit: contain;
  object-position: left center;
}

.quote-preview-page header > div:last-child {
  display: grid;
  gap: 3px;
  text-align: right;
}

.quote-preview-page header span,
.quote-preview-title span,
.quote-preview-customer span {
  color: #61736f;
  font-size: 0.76rem;
}

.quote-preview-title {
  align-items: end;
  padding: 28px 0 20px;
}

.quote-preview-title h2 {
  margin: 4px 0 0;
  font-size: 1.7rem;
  letter-spacing: 0;
}

.quote-preview-title > div:last-child {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 4px 10px;
  text-align: right;
}

.quote-preview-customer {
  border-left: 4px solid #d1e4df;
  background: #f3f7f6;
  padding: 12px 14px;
}

.quote-preview-customer > strong {
  display: block;
  margin: 2px 0 5px;
}

.quote-preview-customer p,
.quote-preview-bottom p {
  margin: 2px 0;
  white-space: pre-line;
}

.quote-preview-lines {
  margin: 24px 0;
  border-top: 1px solid #cfdad7;
}

.quote-preview-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 55px 110px 110px;
  gap: 10px;
  border-bottom: 1px solid #e0e8e6;
  padding: 10px 4px;
  font-size: 0.84rem;
}

.quote-preview-row > :not(:first-child) {
  text-align: right;
}

.quote-preview-head {
  background: #edf4f2;
  color: #536762;
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

.quote-preview-bottom h4 {
  margin: 0 0 4px;
}

.quote-preview-bottom h4:not(:first-child) {
  margin-top: 14px;
}

.quote-preview-totals {
  display: grid;
  align-content: start;
  gap: 7px;
  background: #edf4f2;
  padding: 14px;
}

.quote-preview-totals p {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.quote-preview-totals .grand {
  border-top: 2px solid #93aaa5;
  padding-top: 10px;
  color: var(--brand-dark);
  font-size: 1.05rem;
}

.quote-preview-actions {
  bottom: 0;
  justify-content: flex-end;
}

@media (max-width: 700px) {
  .quote-preview-modal {
    padding: 0;
  }

  .quote-preview-dialog {
    max-height: 100vh;
    border-radius: 0;
  }

  .quote-preview-page {
    width: calc(100% - 16px);
    margin: 8px;
    padding: 18px;
  }

  .quote-preview-page header,
  .quote-preview-title,
  .quote-preview-bottom {
    grid-template-columns: 1fr;
  }

  .quote-preview-page header > div:last-child,
  .quote-preview-title > div:last-child {
    text-align: left;
  }

  .quote-preview-row {
    grid-template-columns: minmax(130px, 1fr) 42px 86px 86px;
    min-width: 440px;
  }

  .quote-preview-lines {
    overflow-x: auto;
  }

  .quote-preview-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
}

.quote-line {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 54px 105px 115px 38px;
  gap: 7px;
  min-width: 540px;
  align-items: center;
}

.quote-line-head {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.quote-line > strong {
  text-align: right;
}

.quote-remove-line {
  width: 36px;
  height: 36px;
  border: 1px solid #efb5b0;
  border-radius: 4px;
  background: #fff1f0;
  color: #9d2019;
  font-size: 1.25rem;
  font-weight: 900;
}

.quote-footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr);
  gap: 20px;
  align-items: start;
}

.quote-footer-grid > div:first-child {
  display: grid;
  gap: 10px;
}

.quote-totals {
  display: grid;
  gap: 8px;
  background: #edf4f2;
  border: 1px solid #d3e1dd;
  border-radius: 6px;
  padding: 12px;
}

.quote-totals p {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
}

.quote-totals small {
  color: var(--muted);
  font-weight: 500;
}

.quote-footer-grid > div:first-child textarea {
  min-height: 104px;
}

.quote-footer-grid > div:first-child label {
  display: grid;
  gap: 6px;
}

.technician-presets {
  border-radius: 6px;
}

.technician-presets > summary {
  border-bottom: 1px solid #c8d9e7;
  background: #eaf3ff;
}

.technician-preset-groups button {
  color: #172824;
}

.technician-preset-groups button strong {
  color: #0f766e;
}

.quote-brand-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 12px;
}

.quote-brand-choice legend {
  padding: 0 6px;
  font-weight: 900;
}

.quote-brand-option > input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.quote-brand-option > span {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  gap: 3px 12px;
  align-items: center;
  min-height: 82px;
  border: 2px solid var(--line);
  border-radius: 5px;
  background: white;
  padding: 10px;
}

.quote-brand-option.dark > span {
  background: #15201e;
  color: white;
}

.quote-brand-option input:checked + span {
  border-color: var(--brand);
  box-shadow: 0 0 0 2px rgba(8, 122, 104, 0.16);
}

.quote-brand-option img {
  grid-row: 1 / 3;
  width: 100%;
  height: 52px;
  object-fit: contain;
}

.quote-brand-option small {
  min-width: 0;
  color: var(--muted);
}

.quote-brand-option.dark small {
  color: #c7d0ce;
}

.quote-grand-total {
  border-top: 2px solid var(--brand);
  padding-top: 10px;
  color: var(--brand-dark);
  font-size: 1.1rem;
}

.quote-actions {
  justify-content: flex-end;
}

.offer-history {
  display: grid;
  gap: 5px;
}

.offer-history p {
  display: grid;
  grid-template-columns: 110px minmax(150px, 1fr) 130px auto;
  gap: 8px;
  margin: 0;
  border-top: 1px solid var(--line);
  padding-top: 7px;
}

.detail-section.full {
  grid-column: 1 / -1;
}

.detail-section dl {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 5px 10px;
  margin: 0;
}

.detail-section dt {
  color: var(--muted);
  font-weight: 800;
}

.detail-section dd {
  margin: 0;
}

.detail-section pre {
  max-height: 220px;
  overflow: auto;
  white-space: pre-wrap;
  font-size: 0.76rem;
}

.photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 8px;
}

.photo-grid a {
  display: grid;
  gap: 5px;
  color: var(--ink);
  text-decoration: none;
  font-size: 0.78rem;
  font-weight: 800;
}

.photo-grid img {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 4px;
  object-fit: contain;
  background: #edf2f1;
}

.work-day-inputs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.work-day-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.work-add-day { align-self: end; min-height: 42px; }
.technician-document-choice { display: grid; gap: 9px; margin: 0; padding: 13px; border: 1px solid var(--line); }
.technician-document-choice label { display: flex; align-items: flex-start; gap: 8px; }
.technician-document-choice small { color: var(--muted); }
.programmed-work-actions { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px; border-left: 6px solid #2477b3; background: #eef7ff; }
.programmed-work-actions > div { display: grid; gap: 4px; }
.section-toggle { display: flex; align-items: flex-start; gap: 10px; font-weight: 850; }
.section-toggle > span { display: grid; gap: 3px; }
.section-toggle small { color: var(--muted); font-weight: 600; }
.conditional-section { display: grid; gap: 14px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.raee-upload { margin-top: 8px; }
.copyable-field-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: 6px; }
.copyable-field-control textarea { min-width: 0; }
.copy-field-button { display: none; min-height: 40px; border: 1px solid #2477b3; background: #eef7ff; color: #15527d; font-weight: 850; cursor: pointer; }
.copy-fields-enabled .copy-field-button { display: inline-flex; align-items: center; justify-content: center; }
@media (max-width: 680px) {
  .work-day-inputs { grid-template-columns: 1fr; }
  .programmed-work-actions { align-items: stretch; flex-direction: column; }
  .copyable-field-control { grid-template-columns: 1fr; }
  .copy-fields-enabled .copy-field-button { width: 100%; }
}

.timeline {
  display: grid;
  gap: 6px;
  max-height: 210px;
  overflow: auto;
}

.timeline p {
  display: grid;
  grid-template-columns: minmax(130px, 0.7fr) minmax(160px, 1fr) minmax(90px, 0.5fr);
  gap: 8px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 6px;
  font-size: 0.82rem;
}

.market-badge,
.photo-count {
  display: inline-block;
  width: fit-content;
  border-radius: 4px;
  background: #dff1ed;
  padding: 3px 6px;
  color: var(--brand-dark);
  font-size: 0.72rem;
  font-weight: 950;
}

.link-button {
  border: 0;
  background: transparent;
  padding: 0;
  color: var(--brand-dark);
  font-weight: 900;
  text-decoration: underline;
}

.metric-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 16px;
}

.metric {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 14px;
}

.metric strong {
  display: block;
  font-size: 1.7rem;
}

.metric span {
  color: var(--muted);
  font-size: 0.86rem;
}

.admin-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.admin-box {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 14px;
}

.promotion-box {
  border: 2px solid #f2c94c;
  background: #fff8dd;
  box-shadow: 0 12px 28px rgba(242, 201, 76, 0.22);
}

.market-config-admin {
  grid-column: span 3;
}

.market-config-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.market-config-grid > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  align-items: end;
}

.market-config-grid > div > strong {
  grid-column: 1 / -1;
}

.market-config-grid label {
  display: grid;
  gap: 5px;
}

.promotion-box h3 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.promotion-box h3::before {
  content: "%";
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #f2c94c;
  color: #1c221f;
}

.admin-box label,
.checkline {
  color: var(--muted);
  font-size: 0.86rem;
  font-weight: 800;
}

.admin-box input {
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px 10px;
}

.auth-panel {
  max-width: 520px;
  margin-inline: auto;
}

.auth-form {
  display: grid;
  gap: 12px;
}

.auth-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-size: 0.9rem;
  font-weight: 900;
}

.auth-form input {
  min-height: 48px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
}

.auth-error {
  margin: 0;
  border-radius: 8px;
  background: #fee2e2;
  color: #991b1b;
  padding: 10px 12px;
  font-weight: 900;
}

.auth-actions p {
  margin: 0;
  color: var(--muted);
}

.campaign-admin {
  grid-column: span 2;
}

.campaign-header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
}

.campaign-header p {
  margin: 4px 0 0;
  color: var(--muted);
}

.add-campaign {
  display: flex;
  gap: 8px;
  min-width: min(100%, 380px);
}

.campaign-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.campaign-tab {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) auto auto;
  align-items: stretch;
  min-width: 180px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbfa;
  overflow: hidden;
}

.campaign-tab button {
  border: 0;
  background: transparent;
  color: var(--ink);
  padding: 10px;
  text-align: left;
  font-weight: 900;
}

.campaign-tab button small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
}

.campaign-tab.selected {
  border-color: #f2c94c;
  background: #fff4bf;
}

.campaign-toggle {
  display: grid;
  place-items: center;
  gap: 3px;
  border-left: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.62);
  padding: 8px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
}

.campaign-toggle input {
  width: 18px;
  height: 18px;
}

.campaign-editor {
  display: grid;
  gap: 12px;
}

.campaign-active {
  max-width: max-content;
  border-radius: 8px;
  background: #eef7f4;
  padding: 10px 12px;
}

.campaign-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.campaign-fields label {
  display: grid;
  gap: 6px;
}

.campaign-fields select {
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: white;
  padding: 8px 10px;
}

.campaign-preview,
.campaign-offer {
  display: grid;
  gap: 4px;
  border: 1px solid #f2c94c;
  border-radius: 8px;
  background: #fff8dd;
  color: #2f2a13;
  padding: 12px;
}

.campaign-preview span,
.campaign-offer span {
  color: #6b5214;
  font-weight: 900;
}

.empty-inline {
  margin: 0;
  color: var(--muted);
}

.catalog-admin {
  grid-column: 1 / -1;
}

.catalog-header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
}

.catalog-header p {
  margin: 4px 0 0;
  color: var(--muted);
}

.add-brand {
  display: flex;
  gap: 8px;
  min-width: min(100%, 360px);
}

.brand-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.brand-tabs button {
  min-width: 140px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbfa;
  color: var(--ink);
  padding: 10px;
  text-align: left;
  font-weight: 900;
}

.brand-tabs button small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-weight: 800;
}

.brand-tabs button.selected {
  border-color: var(--brand);
  background: var(--brand);
  color: white;
}

.brand-tabs button.selected small {
  color: rgba(255, 255, 255, 0.78);
}

.catalog-editor {
  display: grid;
  gap: 12px;
}

.brand-availability {
  max-width: max-content;
  border-radius: 8px;
  background: #eef7f4;
  padding: 10px 12px;
}

.catalog-pricing-note {
  display: grid;
  gap: 3px;
  border-left: 5px solid #d9a514;
  border-radius: 6px;
  background: #fff8df;
  color: #5f4a0d;
  padding: 12px 14px;
}

.catalog-pricing-note strong {
  color: #2f2a19;
  font-size: 1rem;
}

.catalog-pricing-note span {
  font-size: 0.84rem;
  font-weight: 750;
}

.catalog-composition-note {
  display: grid;
  gap: 3px;
  border-left: 5px solid #4f81bd;
  border-radius: 6px;
  background: #eff5fb;
  color: #244365;
  padding: 12px 14px;
}

.catalog-composition-note strong {
  color: #1f3550;
  font-size: 0.96rem;
}

.catalog-composition-note span {
  font-size: 0.82rem;
  font-weight: 750;
}

.catalog-unit-section {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-left-width: 6px;
  border-radius: 8px;
  padding: 14px;
}

.indoor-unit-section {
  border-left-color: #198754;
  background: #f4fbf7;
}

.mono-kit-section {
  border-left-color: #c28a0b;
  background: #fffaf0;
}

.outdoor-unit-section {
  border-left-color: #356fa5;
  background: #f5f9fd;
}

.catalog-unit-heading {
  display: flex;
  align-items: center;
  gap: 12px;
}

.catalog-unit-heading h4,
.catalog-unit-heading p {
  margin: 0;
}

.catalog-unit-heading h4 {
  font-size: 1.12rem;
}

.catalog-unit-heading p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 0.83rem;
  font-weight: 700;
}

.catalog-unit-kicker {
  flex: 0 0 112px;
  border-radius: 6px;
  background: #153d36;
  color: #fff;
  padding: 9px 8px;
  text-align: center;
  font-size: 0.7rem;
  font-weight: 950;
}

.outdoor-unit-section .catalog-unit-kicker {
  background: #315f88;
}

.mono-kit-section .catalog-unit-kicker {
  background: #8a6108;
}

.indoor-unit-toolbar {
  display: grid;
  grid-template-columns: minmax(140px, 0.7fr) minmax(190px, 1.2fr) minmax(105px, 0.6fr) minmax(190px, 1fr);
  gap: 9px;
  align-items: end;
}

.indoor-unit-toolbar > label:not(.switchline),
.compact-number {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 0.74rem;
  font-weight: 900;
}

.component-price-table,
.outdoor-unit-table {
  display: grid;
  gap: 6px;
  overflow-x: auto;
}

.component-price-row {
  display: grid;
  grid-template-columns: 100px 120px minmax(170px, 1fr) minmax(160px, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 650px;
  border: 1px solid #d8e6df;
  border-radius: 6px;
  background: #fff;
  padding: 8px 10px;
}

.component-price-row.is-unavailable {
  background: #f1f3f2;
  opacity: 0.72;
}

.component-price-head,
.outdoor-unit-head {
  background: #e5eeeb;
  color: #45625d;
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.outdoor-unit-row {
  display: grid;
  grid-template-columns: minmax(125px, 0.85fr) 78px minmax(170px, 1.25fr) 98px 112px minmax(130px, 0.9fr) 90px minmax(125px, 0.85fr) minmax(145px, 1fr);
  gap: 8px;
  align-items: center;
  min-width: 1160px;
  border: 1px solid #d7e2ec;
  border-radius: 6px;
  background: #fff;
  padding: 9px;
}

.compact-number {
  grid-template-columns: minmax(58px, 1fr) auto;
  align-items: center;
}

.compact-number input {
  min-width: 0;
}

.compact-image-field input[type="file"] {
  max-width: 145px;
  font-size: 0.7rem;
}

.detailed-unit-heading {
  display: grid;
  grid-template-columns: 112px minmax(220px, 1fr) auto;
}

.detailed-catalog-table {
  display: grid;
  gap: 7px;
  overflow-x: auto;
  padding-bottom: 3px;
}

.detailed-catalog-row {
  display: grid;
  grid-template-columns: 82px 180px minmax(210px, 1.25fr) 105px 135px 125px 88px 125px minmax(150px, 0.8fr) minmax(145px, 0.8fr);
  gap: 8px;
  align-items: center;
  min-width: 1470px;
  border: 1px solid #d9e4e0;
  border-radius: 6px;
  background: #fff;
  padding: 9px;
}

.detailed-catalog-head {
  background: #e5eeeb;
  color: #45625d;
  font-size: 0.68rem;
  font-weight: 950;
  text-transform: uppercase;
}

.detailed-model-fields,
.detailed-notes-fields,
.detailed-type-editor {
  display: grid;
  gap: 5px;
}

.detailed-model-fields small {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 750;
  line-height: 1.2;
}

.detailed-type-editor {
  grid-template-columns: 1fr 1fr;
}

.detailed-type-editor select,
.detailed-type-editor > label:last-child {
  grid-column: 1 / -1;
}

.detailed-type-editor label {
  display: grid;
  grid-template-columns: minmax(54px, 1fr) auto;
  gap: 4px;
  align-items: center;
  color: var(--muted);
  font-size: 0.67rem;
  font-weight: 900;
}

.source-catalog-price {
  color: #5b665f;
  font-size: 0.8rem;
  font-weight: 900;
}

.catalog-table {
  display: grid;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.catalog-row {
  display: grid;
  grid-template-columns: minmax(132px, 0.95fr) 82px minmax(125px, 0.75fr) minmax(350px, 2fr) 95px minmax(140px, 0.75fr);
  gap: 8px;
  align-items: center;
  min-width: 900px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdfc;
  padding: 10px;
}

.market-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 0.78rem;
  font-weight: 900;
}

.catalog-head {
  background: #e8f0ee;
  color: #45625d;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.catalog-configuration-cell {
  display: grid;
  gap: 6px;
}

.catalog-composition-chip {
  width: fit-content;
  border-radius: 999px;
  background: #e4f0f8;
  padding: 4px 8px;
  color: #27506f;
  font-size: 0.66rem;
  font-weight: 950;
  text-transform: uppercase;
}

.switchline {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--muted);
  font-size: 0.82rem;
  font-weight: 900;
}

.image-field {
  display: grid;
  gap: 6px;
}

.btu-price-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(70px, 1fr));
  gap: 6px;
}

.btu-price-grid label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 900;
}

.btu-price-grid input {
  width: 100%;
  min-height: 38px;
  padding: 6px;
}

.catalog-pricing-grid {
  display: grid;
  gap: 5px;
  border: 1px solid #d9e5e1;
  border-radius: 6px;
  background: #fff;
  padding: 8px;
}

.catalog-price-line {
  display: grid;
  grid-template-columns: 70px 46px minmax(120px, 1fr) minmax(130px, 1fr);
  gap: 7px;
  align-items: center;
}

.catalog-price-line.is-unavailable {
  border-radius: 6px;
  background: #f4f5f4;
  opacity: 0.78;
}

.catalog-btu-availability {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #315f53;
  font-size: 0.7rem;
  font-weight: 900;
}

.catalog-btu-availability input {
  width: 17px;
  height: 17px;
  accent-color: var(--brand);
}

.catalog-price-line.is-unavailable .catalog-btu-availability {
  color: #8b3f32;
}

.catalog-price-line.is-unavailable output {
  background: #f4e5e2;
  color: #8b3f32;
}

.catalog-price-line > strong {
  color: #34534d;
  font-size: 0.78rem;
}

.catalog-price-head {
  color: var(--muted);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.catalog-purchase-input {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f8fbfa;
}

.catalog-purchase-input span {
  padding-left: 7px;
  color: var(--muted);
  font-size: 0.7rem;
  font-weight: 900;
}

.catalog-purchase-input input {
  min-width: 0;
  min-height: 34px;
  border: 0;
  background: transparent;
  padding: 5px 7px;
}

.catalog-price-line output {
  border-radius: 5px;
  background: #e8f6ef;
  color: #175b47;
  padding: 8px;
  font-size: 0.78rem;
  font-weight: 900;
  white-space: nowrap;
}

.catalog-price-line output.provisional-price {
  background: #f1f3f2;
  color: #68736f;
}

.product-unavailable-panel {
  display: grid;
  gap: 8px;
  border-left: 6px solid #b44f3c;
  border-radius: 6px;
  background: #fff1ee;
  color: #653126;
  padding: 18px;
}

.product-unavailable-panel span {
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.product-unavailable-panel strong {
  color: #47231c;
  font-size: 1.2rem;
}

.product-unavailable-panel p {
  margin: 0;
  line-height: 1.5;
}

.catalog-price-source {
  color: #45625d;
  font-size: 0.7rem;
  font-weight: 800;
}

.catalog-price-source.missing {
  color: #8a6413;
}

.catalog-markup-field {
  display: grid;
  gap: 5px;
  align-content: center;
  color: #34534d;
  font-size: 0.76rem;
  font-weight: 900;
}

.catalog-markup-field > div {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  overflow: hidden;
  border: 2px solid #d9a514;
  border-radius: 6px;
  background: #fff8df;
}

.catalog-markup-field input {
  min-width: 0;
  min-height: 40px;
  border: 0;
  background: transparent;
  padding: 7px;
  font-weight: 900;
}

.catalog-markup-field b {
  padding-right: 8px;
  color: #765c13;
}

.catalog-markup-field small {
  color: var(--muted);
}

.image-field input[type="file"] {
  padding: 7px;
  font-size: 0.78rem;
}

.interest-banner,
.no-obligation {
  border-radius: 8px;
  padding: 14px;
}

.interest-banner {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
  background: #eef7f4;
  color: #123c35;
}

.interest-banner strong {
  font-size: 1.05rem;
}

.no-obligation {
  margin: 14px 0 0;
  background: #fff8e8;
  color: #6b5214;
  font-weight: 900;
}

.checkline {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lead-table textarea {
  width: 160px;
  min-height: 56px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px;
}

.lead-table-wrap {
  overflow-x: auto;
}

.lead-table {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
}

.lead-table th,
.lead-table td {
  border-bottom: 1px solid var(--line);
  padding: 12px 10px;
  text-align: left;
  vertical-align: top;
}

.lead-table th {
  color: var(--muted);
  font-size: 0.78rem;
  text-transform: uppercase;
}

.status-pill {
  display: inline-flex;
  border-radius: 999px;
  background: var(--green);
  padding: 6px 10px;
  color: var(--brand-dark);
  font-size: 0.8rem;
  font-weight: 800;
  white-space: nowrap;
}

.empty {
  display: grid;
  place-items: center;
  min-height: 240px;
  color: var(--muted);
  text-align: center;
}

.hidden {
  display: none !important;
}

@media (max-width: 1100px) {
  .dashboard-layout {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .dashboard-sidebar {
    gap: 12px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 12px;
  }

  .market-selector {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dashboard-nav {
    grid-template-columns: repeat(6, minmax(145px, 1fr));
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .market-selector .sidebar-label,
  .dashboard-nav .sidebar-label {
    grid-column: 1 / -1;
  }

  .dashboard-nav button {
    min-width: 130px;
  }

  .dashboard-workspace {
    padding: 18px 14px;
  }

  .filter-primary {
    grid-template-columns: 1fr 1fr;
  }

  .settings-grid {
    grid-template-columns: 1fr;
  }

  .cost-input-grid {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}

@media (max-width: 820px) {
  .app-shell {
    padding: 12px;
    overflow: hidden;
  }

  .hero-grid,
  .gateway-grid,
  .result-grid,
  .image-options,
  .ticino-picker,
  .form-grid,
  .admin-grid,
  .metric-grid {
    grid-template-columns: 1fr;
  }

  .ticino-map {
    min-height: 330px;
  }

  .hero-visual {
    min-height: 280px;
  }

  .stat-strip {
    inset: auto 22px 30px 22px;
  }

  .options {
    grid-template-columns: 1fr;
  }

  h1 {
    max-width: calc(100vw - 24px);
    font-size: clamp(1.58rem, 7.4vw, 1.78rem);
    line-height: 1.04;
  }

  .brand span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .nav-row {
    position: sticky;
    bottom: 10px;
    z-index: 3;
    border: 1px solid rgba(219, 228, 225, 0.9);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.9);
    padding: 8px;
    backdrop-filter: blur(14px);
  }

  .nav-row button {
    flex: 1;
  }

  .catalog-header,
  .add-brand,
  .campaign-header,
  .add-campaign {
    display: grid;
    width: 100%;
  }

  .campaign-admin {
    grid-column: 1;
  }

  .market-config-admin {
    grid-column: 1;
  }

  .market-config-grid,
  .market-config-grid > div {
    grid-template-columns: 1fr;
  }

  .campaign-fields {
    grid-template-columns: 1fr;
  }

  .phone-field,
  .availability-grid {
    grid-template-columns: 1fr;
  }

  .catalog-row {
    grid-template-columns: 1fr;
    align-items: stretch;
    min-width: 0;
  }

  .catalog-unit-heading {
    align-items: flex-start;
  }

  .catalog-unit-kicker {
    flex-basis: 92px;
  }

  .indoor-unit-toolbar {
    grid-template-columns: 1fr;
  }

  .dashboard-filters,
  .detail-grid,
  .folder-row,
  .folder-create {
    grid-template-columns: 1fr;
  }

  .dashboard-layout {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .dashboard-sidebar {
    gap: 12px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 12px;
  }

  .market-selector {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dashboard-nav {
    grid-template-columns: repeat(6, minmax(145px, 1fr));
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .market-selector .sidebar-label,
  .dashboard-nav .sidebar-label {
    grid-column: 1 / -1;
  }

  .market-choice,
  .dashboard-nav button {
    min-width: 0;
  }

  .market-choice strong,
  .market-choice small,
  .dashboard-nav strong,
  .dashboard-nav small {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .dashboard-workspace {
    padding: 16px 12px;
  }

  .cost-input-grid {
    grid-template-columns: 1fr;
  }

  .section-heading,
  .pricing-savebar {
    align-items: stretch;
    flex-direction: column;
  }

  .meter-total {
    text-align: left;
  }

  .filter-primary {
    grid-template-columns: 1fr 1fr;
  }

  .filter-more .dashboard-filters,
  .settings-layout {
    grid-template-columns: 1fr;
  }

  .detail-section.full {
    grid-column: 1;
  }

  .detail-grid,
  .management-grid,
  .appointment-fields,
  .quote-customer-grid,
  .quote-footer-grid,
  .quote-workspace,
  .quote-brand-choice {
    grid-template-columns: 1fr;
  }

  .quote-customer-grid .full {
    grid-column: 1;
  }

  .calculation-heading,
  .quote-editor-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .offer-history p {
    grid-template-columns: 1fr 1fr;
  }

  .gateway-card {
    min-height: 150px;
  }

  .catalog-head {
    display: none;
  }

  .catalog-row strong {
    font-size: 1rem;
  }

  .btu-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-price-line {
    grid-template-columns: 70px 46px minmax(115px, 1fr) minmax(125px, 1fr);
  }

  .catalog-price-line > strong {
    font-size: 0.72rem;
  }
}

@media (max-width: 430px) {
  .topbar {
    gap: 8px;
  }

  .brand {
    flex: 1;
  }

  .topbar-meta {
    flex: 0 1 auto;
    flex-wrap: wrap;
  }

  .topbar .compact {
    flex: 0 0 auto;
    max-width: 112px;
  }

  .primary-button,
  .secondary-button,
  .ghost-button {
    padding-inline: 12px;
  }

  .catalog-price-line {
    grid-template-columns: 44px minmax(105px, 1fr) minmax(110px, 1fr);
    gap: 4px;
  }

  .catalog-pricing-grid {
    padding: 6px;
  }

  .catalog-price-line output {
    padding: 8px 5px;
    font-size: 0.66rem;
  }

  .dashboard-shell > .dashboard-header {
    padding: 13px 12px;
  }

  .market-selector {
    grid-template-columns: 1fr;
  }

  .market-choice {
    min-height: 50px;
  }

  .dashboard-nav {
    grid-template-columns: repeat(4, 138px);
  }

  .workspace-heading,
  .selection-hint {
    align-items: stretch;
    flex-direction: column;
  }

  .workspace-heading h3 {
    font-size: 1.28rem;
  }

  .filter-primary {
    grid-template-columns: 1fr;
  }
}

/* Complete dashboard dark-theme coverage for operational workspaces. */
html[data-dashboard-theme="dark"] .promotion-workspace,
html[data-dashboard-theme="dark"] .campaign-admin,
html[data-dashboard-theme="dark"] .campaign-editor,
html[data-dashboard-theme="dark"] .catalog-admin,
html[data-dashboard-theme="dark"] .catalog-editor { color: #edf4ff; }

html[data-dashboard-theme="dark"] .campaign-tab,
html[data-dashboard-theme="dark"] .brand-tabs button,
html[data-dashboard-theme="dark"] .campaign-active,
html[data-dashboard-theme="dark"] .brand-availability {
  border-color: #405879;
  background: #142238;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .campaign-tab button,
html[data-dashboard-theme="dark"] .campaign-tab button small,
html[data-dashboard-theme="dark"] .brand-tabs button small,
html[data-dashboard-theme="dark"] .campaign-toggle { color: #c7d6e9; }

html[data-dashboard-theme="dark"] .campaign-tab.selected {
  border-color: #60a5fa;
  background: #1d3c66;
  box-shadow: inset 0 0 0 1px #60a5fa;
}

html[data-dashboard-theme="dark"] .campaign-tab.selected button,
html[data-dashboard-theme="dark"] .campaign-tab.selected button small { color: #f4f8ff; }

html[data-dashboard-theme="dark"] .campaign-toggle {
  border-color: #405879;
  background: #0c1728;
}

html[data-dashboard-theme="dark"] .campaign-fields select {
  border-color: #405879;
  background: #0b1526;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .campaign-preview,
html[data-dashboard-theme="dark"] .campaign-offer {
  border-color: #d7a92f;
  background: #332a17;
  color: #fff4c7;
}

html[data-dashboard-theme="dark"] .campaign-preview span,
html[data-dashboard-theme="dark"] .campaign-offer span { color: #f3d77a; }

html[data-dashboard-theme="dark"] .brand-tabs button:hover {
  border-color: #60a5fa;
  background: #1a2f4d;
}

html[data-dashboard-theme="dark"] .brand-tabs button.selected {
  border-color: #60a5fa;
  background: #2563eb;
  color: #fff;
}

html[data-dashboard-theme="dark"] .brand-tabs button.selected small { color: #dbeafe; }

html[data-dashboard-theme="dark"] .catalog-pricing-note {
  border-color: #d7a92f;
  background: #332a17;
  color: #f3d77a;
}

html[data-dashboard-theme="dark"] .catalog-pricing-note strong { color: #fff4c7; }

html[data-dashboard-theme="dark"] .catalog-composition-note {
  border-color: #60a5fa;
  background: #142d4b;
  color: #bddcff;
}

html[data-dashboard-theme="dark"] .catalog-composition-note strong { color: #e4f1ff; }

html[data-dashboard-theme="dark"] .catalog-unit-section,
html[data-dashboard-theme="dark"] .mono-kit-section,
html[data-dashboard-theme="dark"] .indoor-unit-section,
html[data-dashboard-theme="dark"] .outdoor-unit-section {
  border-color: #405879;
  background: #111c2e;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .mono-kit-section { border-left-color: #d7a92f; }
html[data-dashboard-theme="dark"] .indoor-unit-section { border-left-color: #35a475; }
html[data-dashboard-theme="dark"] .outdoor-unit-section { border-left-color: #60a5fa; }

html[data-dashboard-theme="dark"] .catalog-unit-heading h4,
html[data-dashboard-theme="dark"] .catalog-unit-heading p,
html[data-dashboard-theme="dark"] .indoor-unit-toolbar > label:not(.switchline),
html[data-dashboard-theme="dark"] .compact-number,
html[data-dashboard-theme="dark"] .switchline,
html[data-dashboard-theme="dark"] .detailed-model-fields small,
html[data-dashboard-theme="dark"] .detailed-type-editor label,
html[data-dashboard-theme="dark"] .catalog-price-head,
html[data-dashboard-theme="dark"] .catalog-price-source,
html[data-dashboard-theme="dark"] .catalog-markup-field { color: #b7c8df; }

html[data-dashboard-theme="dark"] .component-price-row,
html[data-dashboard-theme="dark"] .outdoor-unit-row,
html[data-dashboard-theme="dark"] .detailed-catalog-row,
html[data-dashboard-theme="dark"] .catalog-row,
html[data-dashboard-theme="dark"] .catalog-pricing-grid {
  border-color: #344d6d;
  background: #17253b;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .component-price-head,
html[data-dashboard-theme="dark"] .outdoor-unit-head,
html[data-dashboard-theme="dark"] .detailed-catalog-head,
html[data-dashboard-theme="dark"] .catalog-head {
  border-color: #476384;
  background: #203654;
  color: #dbeafe;
}

html[data-dashboard-theme="dark"] .component-price-row.is-unavailable,
html[data-dashboard-theme="dark"] .catalog-price-line.is-unavailable {
  background: #101927;
  color: #8998aa;
  opacity: 0.78;
}

html[data-dashboard-theme="dark"] .source-catalog-price,
html[data-dashboard-theme="dark"] .catalog-price-line > strong,
html[data-dashboard-theme="dark"] .catalog-btu-availability { color: #c8d8ea; }

html[data-dashboard-theme="dark"] .catalog-composition-chip {
  background: #183b68;
  color: #dbeafe;
}

html[data-dashboard-theme="dark"] .catalog-purchase-input {
  border-color: #405879;
  background: #0b1526;
}

html[data-dashboard-theme="dark"] .catalog-purchase-input span { color: #9fb2c9; }

html[data-dashboard-theme="dark"] .catalog-purchase-input input {
  background: #0b1526;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .catalog-price-line output {
  background: #143b32;
  color: #a7f3d0;
}

html[data-dashboard-theme="dark"] .catalog-price-line output.provisional-price {
  background: #202f44;
  color: #c5d4e8;
}

html[data-dashboard-theme="dark"] .catalog-price-line.is-unavailable output {
  background: #39231f;
  color: #f6b8ae;
}

html[data-dashboard-theme="dark"] .catalog-markup-field > div {
  border-color: #d7a92f;
  background: #332a17;
}

html[data-dashboard-theme="dark"] .catalog-markup-field input,
html[data-dashboard-theme="dark"] .catalog-markup-field b { color: #fff4c7; }

html[data-dashboard-theme="dark"] .catalog-image-preview {
  border-color: #405879;
  background: #0c1728;
  color: #9fb2c9;
}

html[data-dashboard-theme="dark"] .catalog-image-preview img { background: #101b2c; }

html[data-dashboard-theme="dark"] .quote-product-item {
  border-color: #344d6d;
  background: #17253b;
  color: #edf4ff;
}

html[data-dashboard-theme="dark"] .quote-product-item > div:nth-child(2) span { color: #edf4ff; }
html[data-dashboard-theme="dark"] .quote-product-item > div:nth-child(2) strong { color: #93c5fd; }

html[data-dashboard-theme="dark"] .quote-product-actions button {
  border-color: #3b82f6;
  background: #102039;
  color: #dbeafe;
}

html[data-dashboard-theme="dark"] .quote-product-actions button:last-child {
  background: #2563eb;
  color: #fff;
}

html[data-dashboard-theme="dark"] .quote-quick-group > div {
  border-color: #344d6d;
  background: #101b2c;
}

html[data-dashboard-theme="dark"] .quote-quick-group summary b {
  background: #203654;
  color: #dbeafe;
}

html[data-dashboard-theme="dark"] .quote-quick-sidebar button:hover {
  border-color: #60a5fa;
  background: #183b68;
}

html[data-dashboard-theme="dark"] .product-unavailable-panel {
  background: #39231f;
  color: #f5c6bd;
}

html[data-dashboard-theme="dark"] .product-unavailable-panel strong { color: #ffe3dd; }

/* Settings feedback and extended administration controls. */
.communication-settings,
.security-settings,
.certification-settings { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.communication-settings > div:first-child,
.security-settings > div:first-child,
.certification-settings > div:first-child,
.communication-settings > button,
.security-settings > button,
.certification-settings > button { grid-column: 1 / -1; }
.communication-settings h3,
.communication-settings p,
.security-settings h3,
.security-settings p,
.certification-settings h3,
.certification-settings p { margin: 0; }
.communication-settings p,
.security-settings p,
.certification-settings p { margin-top: 4px; color: var(--muted); }
.communication-settings label,
.security-settings label,
.certification-settings label { display: grid; gap: 6px; font-weight: 800; }
.communication-note { display: grid; gap: 4px; grid-column: 1 / -1; padding: 12px; border-left: 4px solid #2477b3; background: #eef7ff; }
.communication-note span { color: #4d6679; font-size: 13px; }
.customer-notice-settings { display: grid; grid-template-columns: minmax(230px, .7fr) minmax(320px, 1.3fr); gap: 14px 20px; align-items: start; margin-top: 16px; }
.customer-notice-settings > div:first-child { grid-column: 1 / -1; }
.customer-notice-settings h3, .customer-notice-settings p { margin: 0; }
.customer-notice-settings p { margin-top: 4px; color: var(--muted); }
.customer-notice-settings .switchline { min-height: 48px; align-self: start; padding: 12px; border: 1px solid var(--line); background: var(--soft); }
.customer-notice-settings .full { display: grid; gap: 6px; min-width: 0; color: var(--muted); font-size: .75rem; font-weight: 850; }
.customer-notice-settings textarea { width: 100%; min-height: 92px; resize: vertical; }
.customer-notice-settings > button { grid-column: 1 / -1; width: 100%; }
.settings-save-progress { position: sticky; top: 8px; z-index: 12; margin: 0 0 14px; border: 1px solid var(--line); background: var(--panel); padding: 11px 13px; box-shadow: 0 10px 26px rgba(20, 32, 31, 0.12); }
.settings-save-progress.success > div span { width: 100%; transform: none; background: #16866f; animation: none; }
.settings-save-progress.success strong { color: #176151; }
.settings-save-progress.error > div span { width: 100%; transform: none; background: #c43a35; animation: none; }
.settings-save-progress.error strong { color: #9d211d; }
.theme-options-dashboard { grid-template-columns: repeat(4, minmax(0, 200px)); }
.theme-preview-black-red { border-color: #6e2020; background: #111; }
.theme-preview-black-red::before { background: #050505; }
.theme-preview-black-red i { background: #b91c1c; }
.theme-preview-black-red b { background: #3c1616; }
.theme-preview-fovara { border-color: #7d2026; background: #18191b; }
.theme-preview-fovara::before { background: #292b2f; }
.theme-preview-fovara i { background: #ef202d; }
.theme-preview-fovara b { background: #f0f1f2; }

.product-visual-frame { position: relative; display: grid; width: min(100%, 360px); min-height: 230px; aspect-ratio: 4 / 3; place-items: center; overflow: hidden; border: 1px solid var(--line); background: #fff; padding: 0; }
.product-visual-frame .product-visual { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; max-height: none; aspect-ratio: auto; object-fit: contain; object-position: center; border: 0; padding: 0; }
.product-visual-caption { position: absolute; right: 8px; bottom: 8px; padding: 5px 8px; border-radius: 4px; background: rgba(15, 23, 42, 0.86); color: #fff; font-size: 0.72rem; font-weight: 800; }
.estimate-error { display: grid; gap: 14px; max-width: 680px; margin: 24px auto; border-left: 6px solid #b44635; background: #fff5f2; padding: 22px; }
.estimate-error > div { display: flex; flex-wrap: wrap; gap: 9px; }
.price-sync-alert { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 0 0 14px; border: 1px solid #ddb95d; border-left: 6px solid #d49400; background: #fff7d8; padding: 13px 15px; color: #493707; }
.price-sync-alert strong, .price-sync-alert p { margin: 0; }
.price-sync-alert p { margin-top: 3px; font-size: .82rem; }
.price-sync-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.price-sync-summary article { border: 1px solid var(--line); background: var(--panel, #fff); padding: 14px; }
.price-sync-summary strong { display: block; font-size: 1.45rem; color: var(--brand); }
.price-sync-summary span { color: var(--muted); font-size: .78rem; font-weight: 800; }
.price-sync-table { width: 100%; border-collapse: collapse; }
.price-sync-table th, .price-sync-table td { border-bottom: 1px solid var(--line); padding: 10px 8px; text-align: left; vertical-align: middle; }
.price-sync-table th { color: var(--muted); font-size: .72rem; text-transform: uppercase; }
.price-sync-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 14px; }
html[data-dashboard-theme="dark"] .price-sync-alert { border-color: #8a6b1d; background: #332b16; color: #f6dfa0; }
@media (max-width: 760px) { .price-sync-alert { align-items: stretch; flex-direction: column; } .price-sync-summary { grid-template-columns: 1fr 1fr; } .price-sync-table { min-width: 700px; } .price-sync-table-wrap { overflow-x: auto; } }
.product-visual-frame.is-empty { border-style: dashed; background: #f4f7f6; color: var(--muted); font-size: 0.86rem; font-weight: 800; text-align: center; }
.customer-notice { display: grid; gap: 5px; margin-top: 16px; border-left: 5px solid #d89a17; background: #fff7dc; padding: 14px 16px; color: #57400d; }
.customer-notice strong { font-size: .9rem; }
.customer-notice p { margin: 0; line-height: 1.45; }
.settings-section-heading, .drive-browser-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.settings-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.survey-cost-hint { align-self: end; min-height: 44px; border-left: 4px solid var(--brand); background: color-mix(in srgb, var(--brand) 8%, var(--panel, #fff)); padding: 9px 11px; display: grid; gap: 3px; }
.survey-cost-hint strong { font-size: .78rem; }
.survey-cost-hint span { color: var(--muted); font-size: .72rem; }
.integration-diagnostics-result { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 8px; margin-top: 12px; }
.diagnostic-row { border: 1px solid var(--line); background: var(--panel, #fff); padding: 10px; display: grid; gap: 4px; }
.diagnostic-row.ok { border-left: 4px solid #23815b; }
.diagnostic-row.error { border-left: 4px solid #bd2e2e; }
.diagnostic-row span { font-size: .74rem; font-weight: 700; }
.diagnostic-row small { color: var(--muted); overflow-wrap: anywhere; }
.integration-log { margin-top: 14px; border-top: 1px solid var(--line); padding-top: 12px; }
.integration-log h4 { margin: 0 0 8px; }
.integration-log p { display: grid; grid-template-columns: 145px minmax(160px, 1fr) auto; gap: 8px; align-items: center; margin: 0; padding: 8px; border-bottom: 1px solid var(--line); }
.integration-log p.ok { border-left: 3px solid #23815b; }
.integration-log p.error { border-left: 3px solid #bd2e2e; }
.integration-log time, .integration-log span, .integration-log small { color: var(--muted); font-size: .72rem; }
.integration-log small { grid-column: 2 / -1; }
.dashboard-confirm-modal { position: fixed; z-index: 1400; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(10, 18, 18, .64); backdrop-filter: blur(3px); }
.dashboard-confirm-card { width: min(460px, 100%); border: 1px solid var(--line); border-top: 5px solid var(--brand); background: var(--panel, #fff); color: var(--ink); box-shadow: 0 24px 80px rgba(0, 0, 0, .28); padding: 24px; text-align: center; }
.dashboard-confirm-card.danger { border-top-color: #bd2e2e; }
.dashboard-confirm-icon { width: 44px; height: 44px; display: grid; place-items: center; margin: 0 auto 12px; border-radius: 50%; background: color-mix(in srgb, var(--brand) 13%, var(--panel, #fff)); color: var(--brand); font-size: 1.25rem; font-weight: 900; }
.dashboard-confirm-card.danger .dashboard-confirm-icon { background: #fde8e8; color: #a61f1f; }
.dashboard-confirm-card h3 { margin: 0 0 8px; font-size: 1.15rem; }
.dashboard-confirm-card p { margin: 0; color: var(--muted); line-height: 1.5; }
.dashboard-confirm-actions { display: flex; justify-content: center; gap: 10px; margin-top: 20px; }
.dashboard-confirm-actions button { min-width: 110px; }
.drive-workspace-browser { margin-top: 12px; border-top: 1px solid var(--line); padding-top: 12px; }
.drive-browser-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.drive-browser-list a { display: grid; gap: 3px; min-width: 0; border: 1px solid var(--line); background: var(--panel, #fff); padding: 10px; color: var(--ink); text-decoration: none; }
.drive-browser-list a:hover { border-color: var(--brand); }
.drive-browser-list span, .drive-browser-list small { color: var(--muted); font-size: .72rem; }
.drive-browser-list strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.campaign-tab { position: relative; }
.campaign-tab .campaign-delete { align-self: center; width: 30px; min-width: 30px; height: 30px; margin: 5px; border: 1px solid #d7a3a3; background: #fff5f5; color: #a62929; padding: 0; text-align: center; font-size: 18px; line-height: 1; }
.danger-settings { border-left: 4px solid #ba3838; }
.danger-button { color: #9c2222; border-color: #ce8a8a; }
.thank-you-close-note { border-left: 4px solid var(--brand); background: var(--sky); padding: 11px 13px; font-weight: 800; }
.email-delivery-notice { display: grid; gap: 6px; margin-top: 18px; padding: 15px 16px; border: 2px solid #d59a16; background: #fff7d6; color: #4b3710; box-shadow: 0 8px 22px rgba(94, 66, 8, 0.12); }
.email-delivery-notice strong { font-size: 1.05rem; color: #6b4600; }
.email-delivery-notice span { line-height: 1.55; }

/* Keep the customer gateway readable when the customer dark theme is active. */
html[data-customer-theme="dark"] .gateway-card:not(.company) { background: #182231; color: #edf3fb; border-color: #435a76; }
html[data-customer-theme="dark"] .gateway-card:not(.company) strong { color: #edf3fb; }
html[data-customer-theme="dark"] .gateway-card:not(.company) small { color: #b7c5d8; }
html[data-customer-theme="dark"] .gateway-card:not(.company) .gateway-icon { background: #243a55; color: #b9d7ff; }
html[data-customer-theme="dark"] .product-visual-frame { background: #101a29; border-color: #435a76; }
html[data-customer-theme="dark"] .product-visual-frame.is-empty { color: #b7c5d8; }
html[data-dashboard-theme="dark"] .communication-note { background: #132b48; border-color: #60a5fa; }
html[data-dashboard-theme="dark"] .communication-note span { color: #bfd2e8; }
html[data-dashboard-theme="dark"] .settings-save-progress.success strong { color: #9ee5cf; }
html[data-dashboard-theme="dark"] .settings-save-progress.error strong { color: #ffb7b2; }

/* Black/red dashboard theme: dark foundation with a restrained red accent. */
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] {
  --bg: #080808;
  --panel: #141414;
  --ink: #f5f5f5;
  --muted: #b8b8b8;
  --line: #393939;
  --brand: #c51f2c;
  --brand-dark: #ffb4ba;
  --accent: #e04a54;
}
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] body { background: #080808; color: #f5f5f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-panel,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-workspace,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .workspace-surface,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .lead-detail,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .detail-section,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .request-group,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .work-scheduler,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .embedded-calendar,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .catalog-unit-section,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .campaign-editor { background: #141414; border-color: #393939; color: #f5f5f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-sidebar,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-header,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .lead-table th,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .lead-table td,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .quote-line,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .calculation-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .metric,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .component-price-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .outdoor-unit-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .detailed-catalog-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .catalog-row { background: #1b1b1b; border-color: #444; color: #f5f5f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] input,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] select,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] textarea { background: #0d0d0d; color: #f5f5f5; border-color: #555; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-nav button,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .market-choice,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .theme-option,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .campaign-tab,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .brand-tabs button { background: #171717; border-color: #444; color: #f5f5f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .dashboard-nav button.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .market-choice.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .theme-option.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .campaign-tab.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .brand-tabs button.selected { background: #421419; border-color: #ef5b65; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .primary-button { background: #c51f2c; color: #fff; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .ghost-button { background: #242424; color: #f5f5f5; border-color: #626262; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .eyebrow,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .market-context { background: #421419; color: #ffd9dc; border-color: #7d2b31; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .system-version { background: #241416; color: #efb7bc; border-color: #7d2b31; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .submit-progress > div { background: #3b2527; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .submit-progress > div span { background: #ef5b65; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .submit-progress strong { color: #ffd9dc; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .communication-note { background: #2b1618; border-color: #c51f2c; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .communication-note span { color: #e9bdc0; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .finance-provider-card,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .statistics-metrics article,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .stats-settings-grid label,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .cost-breakdown span,
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .finance-type-badge { background: #1b1b1b; border-color: #444; color: #f5f5f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .finance-provider-card.enabled { border-left-color: #ef5b65; background: #251719; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .statistics-hero { background: #251719; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .statistics-hero.is-profitable { background: #1d2d24; }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .coverage-ring { background: radial-gradient(circle, #251719 56%, transparent 57%), conic-gradient(#ef5b65 var(--coverage), #543236 0); }
html[data-dashboard-theme="dark"][data-dashboard-accent="red"] .statistics-hero.is-profitable .coverage-ring { background: radial-gradient(circle, #1d2d24 56%, transparent 57%), conic-gradient(#68c995 var(--coverage), #345543 0); }

/* FOVARA dashboard theme: graphite surfaces, red commands and a quiet monogram watermark. */
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] {
  --bg: #111214;
  --panel: #1b1c1f;
  --ink: #f4f4f5;
  --muted: #b6b7ba;
  --line: #414247;
  --brand: #e51e2a;
  --brand-dark: #ffb2b7;
  --accent: #f23a45;
}
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] body { background: #111214; color: #f4f4f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-shell { position: relative; isolation: isolate; background: #17181b; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-shell::before {
  position: absolute;
  z-index: 0;
  right: clamp(-90px, -4vw, -28px);
  bottom: clamp(-70px, -4vw, -20px);
  width: min(62vw, 820px);
  aspect-ratio: 3 / 2;
  background: url('/fovara-monogram-watermark.png') center / contain no-repeat;
  content: "";
  opacity: .045;
  pointer-events: none;
}
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-shell > * { position: relative; z-index: 1; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-panel,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-workspace,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .workspace-surface,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .lead-detail,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .detail-section,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .request-group,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .work-scheduler,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .embedded-calendar,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .catalog-unit-section,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .campaign-editor { background: rgba(27, 28, 31, .96); border-color: #414247; color: #f4f4f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-sidebar,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-header,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .lead-table th,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .lead-table td,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .quote-line,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .calculation-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .metric,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .component-price-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .outdoor-unit-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .detailed-catalog-row,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .catalog-row { background: rgba(35, 36, 40, .97); border-color: #4a4b51; color: #f4f4f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] input,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] select,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] textarea { background: #121315; color: #f4f4f5; border-color: #56575d; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-nav button,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .market-choice,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .theme-option,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .campaign-tab,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .brand-tabs button { background: #202125; border-color: #48494e; color: #f4f4f5; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-nav button.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .market-choice.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .theme-option.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .campaign-tab.selected,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .brand-tabs button.selected { background: #4a151a; border-color: #f0525c; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .primary-button { background: #e51e2a; color: #fff; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .ghost-button { background: #292a2e; color: #f4f4f5; border-color: #66676d; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .eyebrow,
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .market-context { background: #4a151a; color: #ffd9dc; border-color: #8a3037; }
html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .system-version { background: #292a2e; color: #e3e3e5; border-color: #55565c; }

@media (max-width: 760px) {
  .theme-options-dashboard { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html[data-dashboard-theme="dark"][data-dashboard-accent="fovara"] .dashboard-shell::before { width: 115vw; opacity: .035; }
}

.legal-settings { display: grid; grid-template-columns: minmax(220px, 1fr) repeat(3, minmax(150px, .55fr)); gap: 14px; align-items: end; }
.legal-settings > div:first-child { align-self: start; }
.legal-settings h3, .legal-settings p { margin: 0; }
.legal-settings p { margin-top: 4px; color: var(--muted); }
.legal-settings label { display: grid; gap: 6px; color: var(--muted); font-size: .75rem; font-weight: 850; }
.legal-settings-links { grid-column: 1 / -2; display: flex; flex-wrap: wrap; gap: 8px; }

@media (max-width: 760px) {
  .communication-settings,
  .security-settings,
  .certification-settings,
  .customer-notice-settings,
  .legal-settings,
  .theme-options-dashboard { grid-template-columns: 1fr; }
  .communication-settings > div:first-child,
  .security-settings > div:first-child,
  .certification-settings > div:first-child,
  .communication-settings > button,
  .security-settings > button,
  .certification-settings > button,
  .communication-note { grid-column: 1; }
  .customer-notice-settings > div:first-child,
  .customer-notice-settings > button { grid-column: 1; }
  .legal-settings-links { grid-column: 1; }
}
/* Operational closeout, certifications and customer records */
.finance-request-badge { display: inline-flex; margin-top: 6px; border: 1px solid #8d65b8; background: #f5effb; padding: 4px 7px; color: #5d347f; font-size: .7rem; font-weight: 900; }
.finance-request-alert { display: flex; align-items: center; justify-content: space-between; gap: 18px; border-left: 6px solid #7950a7; background: #f7f1fc; }
.finance-request-alert span { color: #704398; font-size: .72rem; font-weight: 950; text-transform: uppercase; }
.finance-request-alert h3, .finance-request-alert p { margin: 3px 0; }
.finance-request-alert button:disabled { cursor: not-allowed; opacity: .56; }
.payment-policy-settings { display: grid; gap: 14px; border-top: 1px solid var(--line); padding-top: 18px; }
.payment-policy-settings h3, .payment-policy-settings p { margin: 0; }
.payment-policy-settings p { margin-top: 4px; color: var(--muted); }
.privacy-consent { align-items: flex-start; border-top: 1px solid var(--line); padding-top: 12px; color: var(--muted); font-size: .78rem; line-height: 1.45; }
.privacy-consent-group { display: grid; gap: 8px; border-top: 1px solid var(--line); padding-top: 12px; }
.privacy-consent-group .privacy-consent { border-top: 0; padding-top: 0; }
.required-consent { color: var(--ink); font-weight: 750; }
.marketing-consent { color: var(--muted); }
.inline-legal-link { display: inline; border: 0; background: transparent; padding: 0; color: #176ca5; font: inherit; font-weight: 900; text-decoration: underline; cursor: pointer; }
.finance-compliance-check { display: flex; align-items: flex-start; gap: 9px; border: 1px solid #d7b35d; background: #fff9e8; padding: 11px; color: #66501a; font-size: .75rem; font-weight: 800; line-height: 1.4; }
.finance-provider-fields .full { grid-column: 1 / -1; }

.legal-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: min(1180px, calc(100% - 32px)); margin: 4px auto 18px; border-top: 1px solid #d7e1de; padding: 14px 2px 0; color: #687671; font-size: .72rem; }
.legal-footer > span { font-weight: 900; }
.legal-footer > div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
.legal-footer button { border: 0; background: transparent; padding: 2px 0; color: #346a78; font: inherit; font-weight: 850; text-decoration: underline; cursor: pointer; }
.cookie-consent-banner { position: fixed; z-index: 4500; left: 50%; bottom: max(14px, env(safe-area-inset-bottom)); display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr); align-items: center; gap: 20px; width: min(920px, calc(100% - 28px)); border: 1px solid #9fb8b1; border-left: 6px solid #087a68; border-radius: 6px; background: #fff; padding: 18px; color: #172824; box-shadow: 0 18px 54px rgba(10, 30, 25, .28); transform: translateX(-50%); }
.cookie-consent-banner.hidden { display: none; }
.cookie-consent-copy { display: grid; gap: 6px; }
.cookie-consent-copy strong { font-size: 1.05rem; }
.cookie-consent-copy p { margin: 0; color: #52655f; font-size: .82rem; line-height: 1.5; }
.cookie-consent-copy button { justify-self: start; border: 0; background: transparent; padding: 1px 0; color: #176ca5; font: inherit; font-size: .76rem; font-weight: 850; text-decoration: underline; cursor: pointer; }
.cookie-consent-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.cookie-consent-actions button { min-height: 48px; border: 2px solid #087a68; border-radius: 5px; background: #f6fbf9; padding: 10px 12px; color: #075e51; font: inherit; font-size: .8rem; font-weight: 950; cursor: pointer; }
.cookie-consent-actions button:hover, .cookie-consent-actions button:focus-visible { background: #e3f3ee; outline: 3px solid rgba(8, 122, 104, .18); outline-offset: 2px; }
.legal-modal { position: fixed; z-index: 5000; inset: 0; display: grid; place-items: center; padding: 20px; }
.legal-modal.hidden { display: none; }
.legal-modal-backdrop { position: absolute; inset: 0; background: rgba(10, 24, 30, .72); }
.legal-modal-panel { position: relative; width: min(820px, 100%); max-height: min(86vh, 920px); overflow-y: auto; border: 1px solid #b9cac5; background: #fff; padding: 30px; color: #172824; box-shadow: 0 24px 70px rgba(0, 0, 0, .3); }
.legal-modal-close { position: sticky; z-index: 2; top: 0; float: right; width: 38px; height: 38px; border: 1px solid #b9cac5; background: #fff; color: #253f38; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.legal-document-header { border-bottom: 3px solid #087a68; padding: 0 48px 16px 0; }
.legal-document-header span { color: #087a68; font-size: .72rem; font-weight: 950; text-transform: uppercase; }
.legal-document-header h2 { margin: 5px 0; font-size: 1.6rem; }
.legal-document-header p { margin: 0; color: #667670; font-size: .75rem; }
.legal-modal-panel section { border-bottom: 1px solid #dce5e2; padding: 14px 0; }
.legal-modal-panel section:last-child { border-bottom: 0; }
.legal-modal-panel h3 { margin: 0 0 6px; color: #21483f; font-size: .95rem; }
.legal-modal-panel p { margin: 0 0 7px; line-height: 1.55; }
.legal-modal-panel a { color: #176ca5; font-weight: 800; }
.legal-modal-open { overflow: hidden; }
.closeout-link-box { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 10px; border: 1px solid #7ea9cf; border-left: 6px solid #2477b3; background: #eef6fd; padding: 14px; }
.closeout-link-box span { font-weight: 950; }
.closeout-link-box p { margin: 3px 0 0; color: #536d83; font-size: .78rem; }
.closeout-shell { max-width: 920px; }
.closeout-form { display: grid; gap: 16px; }
.closeout-form > section, .closeout-balance { border: 1px solid #cbd8d4; background: #fff; padding: 18px; }
.closeout-form h2, .closeout-form p { margin-top: 0; }
.closeout-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.closeout-grid label { display: grid; gap: 6px; color: #3f514c; font-size: .78rem; font-weight: 850; }
.closeout-grid .full { grid-column: 1 / -1; }
.closeout-balance { display: grid; grid-template-columns: minmax(220px, .7fr) 1fr; gap: 20px; border-left: 6px solid #d69e16; background: #fff9e8; }
.closeout-balance > div span { display: block; color: #75570f; font-size: .75rem; font-weight: 900; text-transform: uppercase; }
.closeout-balance > div strong { display: block; margin-top: 5px; color: #2c271a; font-size: 2.1rem; }
.closeout-balance dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; margin: 0; }
.closeout-balance dt { color: #7d704e; font-size: .7rem; }
.closeout-balance dd { margin: 2px 0 0; font-weight: 900; }
.payment-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; border: 1px solid #cbd8d4; padding: 10px; }
.payment-methods legend { padding: 0 5px; font-weight: 900; }
.payment-methods label { display: flex; align-items: center; gap: 7px; }
.future-option { opacity: .55; }
.confirmation-checks { display: grid; gap: 9px; margin-bottom: 14px; }
.confirmation-checks label { display: flex; align-items: flex-start; gap: 9px; border: 1px solid #cbd8d4; padding: 11px; font-weight: 800; }
.signature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.signature-grid > div { display: grid; gap: 8px; }
.signature-pad { width: 100%; height: 160px; border: 2px solid #aebfba; background: #fff; touch-action: none; }
.machine-label-grid { margin-bottom: 14px; }
.machine-label-grid img { object-fit: contain; background: #fff; }
.closeout-upload-progress { margin: 12px 0; padding: 10px; border: 1px solid #cbd9d5; background: #f3f8f6; }
.ocr-warning { margin: 12px 0 0; padding: 10px 12px; border-left: 4px solid #d69e16; background: #fff6dc; color: #6b531c; font-weight: 700; }
.closeout-submit { width: 100%; min-height: 52px; }
.closeout-complete { display: grid; justify-items: center; max-width: 640px; margin-top: 10vh; text-align: center; }
.completion-mark { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%; background: #16836f; color: #fff; font-size: 1.15rem; font-weight: 950; }
.certification-status-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.certification-status-grid article { display: grid; grid-template-columns: 36px 1fr; gap: 3px 10px; align-items: center; border: 1px solid var(--line); background: var(--panel); padding: 13px; }
.certification-status-grid article > span { grid-row: 1 / 4; display: grid; place-items: center; width: 32px; height: 32px; background: #e8eeec; font-weight: 950; }
.certification-status-grid article.done { border-left: 5px solid #16836f; }
.certification-status-grid article.pending { border-left: 5px solid #d69e16; }
.certification-status-grid small { color: var(--muted); }
.certification-status-grid a { color: #2477b3; font-size: .75rem; font-weight: 850; }
.raee-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 14px; }
.raee-summary-grid article { display: grid; gap: 5px; border: 1px solid var(--line); border-left: 5px solid #2477b3; background: var(--panel, #fff); padding: 14px; }
.raee-summary-grid span, .raee-summary-grid small { color: var(--muted); font-size: .75rem; }
.raee-summary-grid strong { overflow-wrap: anywhere; }
.raee-office-form, .raee-documents { margin-top: 14px; }
.raee-office-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 14px; }
.raee-document-picker { position: relative; overflow: hidden; cursor: pointer; }
.raee-document-picker input { position: absolute; inline-size: 1px; block-size: 1px; opacity: 0; pointer-events: none; }
.raee-fgas-choice { margin-top: 14px; border: 1px solid #d69e16; background: #fff8df; padding: 12px; }
.raee-status { padding: 6px 9px; border: 1px solid #d4a438; background: #fff8df; color: #775000; font-size: .72rem; font-weight: 900; }
.raee-status.delivered { border-color: #55a88c; background: #e9f8f2; color: #16634e; }
.raee-status.customer { border-color: #87a8c1; background: #edf5fb; color: #245779; }
html[data-dashboard-theme="dark"] .raee-fgas-choice, html[data-dashboard-theme="dark"] .raee-status { background: #3b3014; color: #ffe28a; }
.certification-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.certification-form { display: grid; align-content: start; gap: 14px; }
.certification-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.certification-form-grid label { display: grid; gap: 5px; color: var(--muted); font-size: .75rem; font-weight: 850; }
.certification-form-grid .full { grid-column: 1 / -1; }
.form-kicker { color: #2477b3; font-size: .7rem; font-weight: 950; }
.archive-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: center; }
.archive-actions h3, .archive-actions p { margin: 0; }
.archive-actions p { margin-top: 4px; color: var(--muted); }
.archive-search { border: 1px solid var(--line); background: var(--panel); padding: 10px; }
.archive-search input { width: 100%; }
.dossier-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.dossier-grid > section { border: 1px solid var(--line); background: var(--panel); padding: 15px; }
.dossier-grid > section.full { grid-column: 1 / -1; }
.dossier-documents { display: grid; gap: 7px; }
.dossier-documents a { border: 1px solid #88a7c4; background: #eef6fd; padding: 9px; color: #225f92; font-weight: 850; }
.customer-database-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.customer-database-tabs button { display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--line); background: var(--panel); padding: 12px; color: var(--ink); font-weight: 900; text-align: left; }
.customer-database-tabs button.selected { border-color: #2477b3; background: #eaf4fd; box-shadow: inset 0 -3px #2477b3; }
.customer-database-tabs b { display: grid; place-items: center; min-width: 28px; height: 24px; background: #dce8e5; font-size: .72rem; }
.privacy-database-note { display: grid; grid-template-columns: 180px 1fr; gap: 12px; border-left: 5px solid #d69e16; background: #fff9e8; padding: 13px; color: #5f563f; }
.customer-table-wrap { overflow-x: auto; border: 1px solid var(--line); background: var(--panel); }
.customer-table { width: 100%; min-width: 850px; border-collapse: collapse; }
.customer-table th, .customer-table td { border-bottom: 1px solid var(--line); padding: 10px; text-align: left; vertical-align: top; }
.customer-table th { background: #eef3f1; font-size: .72rem; text-transform: uppercase; }
.customer-table td strong, .customer-table td small { display: block; }
.customer-table td small { margin-top: 3px; color: var(--muted); }
.consent-badge { display: inline-flex; padding: 5px 7px; font-size: .7rem; font-weight: 900; }
.consent-badge.yes { background: #def4ea; color: #126c58; }
.consent-badge.no { background: #eef1f0; color: #687671; }
.stats-category-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.stats-category { min-width: 0; border: 1px solid var(--line); background: var(--panel); padding: 14px; }
.stats-category.full { grid-column: 1 / -1; }
.stats-category legend { padding: 0 7px; color: var(--ink); font-weight: 950; }
.stats-category > p { margin: 0 0 12px; color: var(--muted); font-size: .78rem; }
.stats-category .stats-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.stats-category .vehicle-cost-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.confirmed-work-counter { border: 1px solid #8fb5d8; background: #edf6fe; padding: 8px 10px; color: #315f86; font-size: .75rem; }
.confirmed-work-counter b { margin-right: 3px; font-size: 1rem; }
html[data-dashboard-theme="dark"] .finance-request-alert, html[data-dashboard-theme="dark"] .payment-policy-settings, html[data-dashboard-theme="dark"] .closeout-link-box, html[data-dashboard-theme="dark"] .privacy-database-note, html[data-dashboard-theme="dark"] .confirmed-work-counter { background: #17283b; color: #edf3fb; }
html[data-dashboard-theme="dark"] .finance-compliance-check { border-color: #735f2e; background: #302a1b; color: #f4dfaa; }
html[data-dashboard-theme="dark"] .customer-database-tabs button.selected { background: #1d3d5d; }
html[data-dashboard-theme="dark"] .dossier-documents a { background: #17283b; color: #9ed0fa; }

@media (max-width: 850px) {
  .cookie-consent-banner { grid-template-columns: 1fr; gap: 14px; }
  .closeout-grid, .closeout-balance, .signature-grid, .certification-status-grid, .certification-forms, .dossier-grid, .stats-category-grid, .raee-summary-grid { grid-template-columns: 1fr; }
  .closeout-balance dl, .certification-form-grid, .stats-category .stats-settings-grid, .stats-category .vehicle-cost-grid { grid-template-columns: 1fr 1fr; }
  .closeout-link-box, .archive-actions { grid-template-columns: 1fr; align-items: stretch; }
  .stats-category.full, .dossier-grid > section.full { grid-column: 1; }
}

@media (max-width: 520px) {
  .cookie-consent-banner { bottom: 0; width: 100%; border-right: 0; border-bottom: 0; border-left-width: 0; border-radius: 0; padding: 15px 14px max(15px, env(safe-area-inset-bottom)); }
  .cookie-consent-actions { grid-template-columns: 1fr; }
  .closeout-grid, .closeout-balance dl, .certification-form-grid, .stats-category .stats-settings-grid, .stats-category .vehicle-cost-grid, .customer-database-tabs, .payment-methods { grid-template-columns: 1fr; }
  .privacy-database-note { grid-template-columns: 1fr; }
  .closeout-form > section, .closeout-balance { padding: 13px; }
  .legal-footer { align-items: flex-start; flex-direction: column; }
  .legal-footer > div { justify-content: flex-start; }
  .legal-modal { padding: 8px; }
  .legal-modal-panel { max-height: 94vh; padding: 20px 16px; }
}
@media (max-width: 680px) { .drive-browser-list { grid-template-columns: 1fr; } }

/* Test / official environment controls */
.dashboard-title-row { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.dashboard-title-row h2 { margin: 0; }
.system-mode-badge { display: inline-flex; align-items: center; min-height: 25px; border: 1px solid currentColor; padding: 4px 8px; font-size: .66rem; font-weight: 950; letter-spacing: 0; }
.system-mode-badge.test { background: #fff3cd; color: #765909; }
.system-mode-badge.official { background: #dff4e9; color: #12654f; }
.system-mode-settings { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-left: 7px solid #d4a017; }
.system-mode-settings.official { border-left-color: #16836f; }
.system-mode-settings h3, .system-mode-settings p { margin: 5px 0 0; }
.system-mode-settings p { color: var(--muted); }
.storage-settings { display: grid; grid-template-columns: minmax(240px, 1.15fr) repeat(3, minmax(180px, 1fr)) auto; gap: 12px; align-items: end; }
.storage-settings h3, .storage-settings p { margin: 0; }
.storage-settings p { margin-top: 4px; color: var(--muted); }
.storage-settings label { display: grid; gap: 5px; min-width: 0; color: var(--muted); font-size: .74rem; font-weight: 850; }
.storage-settings input { min-width: 0; width: 100%; }
html[data-dashboard-theme="dark"] .system-mode-badge.test { background: #3b3115; color: #f3d675; }
html[data-dashboard-theme="dark"] .system-mode-badge.official { background: #14382f; color: #8fe0c5; }
@media (max-width: 1050px) { .storage-settings { grid-template-columns: 1fr 1fr; } .storage-settings > div:first-child { grid-column: 1 / -1; } }
@media (max-width: 680px) { .system-mode-settings, .storage-settings { display: grid; grid-template-columns: 1fr; } .storage-settings > div:first-child { grid-column: 1; } }
@media (max-width: 680px) { .integration-log p { grid-template-columns: 1fr auto; } .integration-log time, .integration-log small { grid-column: 1 / -1; } .dashboard-confirm-actions { flex-direction: column-reverse; } .dashboard-confirm-actions button { width: 100%; } }

/* Operational confirmations, schedules and notes */
.dashboard-confirm-card.warning { border-top: 6px solid #d99a16; }
.dashboard-confirm-card label { display: grid; gap: 6px; width: 100%; text-align: left; font-weight: 850; }
.modal-text-button { border: 0; background: transparent; color: var(--muted); text-decoration: underline; }
.whatsapp-message-panel { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(220px, 1fr); gap: 14px; margin: 16px 0; padding: 18px; border: 1px solid #9bd0b2; border-left: 7px solid #22a65a; background: #f0fbf4; }
.whatsapp-message-panel .full, .whatsapp-actions { grid-column: 1 / -1; }
.whatsapp-message-panel label { display: grid; gap: 6px; font-weight: 850; }
.whatsapp-message-panel textarea { width: 100%; resize: vertical; }
.whatsapp-actions, .schedule-actions, .photo-source-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.scheduled-days { display: grid; gap: 8px; padding: 14px; border: 1px solid var(--line); background: var(--panel, #fff); }
.scheduled-days h4 { margin: 0 0 4px; }
.scheduled-days article { display: grid; grid-template-columns: minmax(180px, 1fr) auto auto; align-items: center; gap: 10px; padding: 10px; border-left: 5px solid #2477b3; background: #eef7ff; }
.scheduled-days article > div { display: grid; gap: 3px; }
.calendar-sync-error { color: #9b2f2f; font-weight: 850; }
.accepted-quote { border-left: 7px solid #2477b3; background: #f3f8fc; }
.photo-source-actions .secondary { background: #fff; color: var(--text); border: 1px solid var(--line); }
.label-review-confirmation { display: flex; align-items: flex-start; gap: 9px; margin-top: 12px; padding: 12px; border: 1px solid #e2b545; background: #fff8df; font-weight: 850; }
.correction-create { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 12px; }
.correction-create label { display: grid; gap: 6px; }
.correction-list { display: grid; gap: 10px; }
.correction-item { display: grid; gap: 8px; padding: 12px; border-left: 6px solid #d99a16; background: #fffaf0; }
.correction-item.completed { border-left-color: #238361; background: #f0faf6; opacity: .82; }
.correction-item textarea { width: 100%; resize: vertical; }
.correction-item > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.correction-item > div span { margin-right: auto; color: var(--muted); font-size: .78rem; }
.completed-corrections { margin-top: 12px; }
.postal-lookup-status { display: block; min-height: 1.2em; margin-top: 4px; color: var(--muted); font-size: .78rem; line-height: 1.4; }
.postal-code-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: stretch; }
.postal-code-controls .postal-detect-button { min-height: 48px; margin: 0; padding: 0 16px; white-space: nowrap; }
.postal-code-controls .postal-detect-button:disabled { cursor: wait; opacity: .66; }
@media (max-width: 680px) {
  .postal-code-controls { grid-template-columns: minmax(0, 1fr); }
  .postal-code-controls .postal-detect-button { width: 100%; }
}
@media (max-width: 680px) {
  .whatsapp-message-panel, .correction-create { grid-template-columns: 1fr; }
  .whatsapp-message-panel .full, .whatsapp-actions { grid-column: 1; }
  .scheduled-days article { grid-template-columns: 1fr; }
  .photo-source-actions { width: 100%; }
  .photo-source-actions label { flex: 1 1 140px; justify-content: center; }
}