.status-page .status-customize-panel {
  position: fixed;
  z-index: 40;
  top: 76px;
  right: max(14px, calc((100vw - 1320px) / 2));
  display: grid;
  grid-template-columns: minmax(180px, 0.7fr) minmax(0, 1.6fr);
  gap: 14px 20px;
  width: min(760px, calc(100vw - 28px));
  padding: 14px;
  border: 1px solid var(--is-border-strong);
  border-radius: var(--is-radius-md);
  background: var(--is-section-bg);
  box-shadow: var(--is-shadow);
  max-height: calc(100dvh - 88px);
  overflow-y: auto;
}
.status-page .status-customize-panel[hidden] { display: none; }
.status-page .status-customize-panel .is-customize-options button,
.status-page .status-customize-panel .is-customize-reset {
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-sm);
  background: var(--is-control-bg);
  color: var(--is-text);
  font-size: 0.82rem;
  font-weight: 800;
}
.status-page .status-customize-panel .is-customize-options button.is-active {
  border-color: var(--is-primary);
  background: var(--is-control-active);
  color: var(--is-primary);
}

@media (max-width: 720px) {
  .status-page .status-customize-panel {
    top: 64px;
    right: 8px;
    left: 8px;
    width: auto;
    grid-template-columns: 1fr;
  }
  .status-page .status-customize-sections { grid-template-columns: 1fr; }
  .status-page .status-customize-statuses { grid-column: 1; }
  .status-page .status-customize-panel .is-customize-reset { grid-column: 1; grid-row: auto; }
}

.status-page {
  display: grid;
  gap: 8px;
}

.status-hero {
  min-height: 64px;
}

.status-kicker {
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.status-hero h2 {
  margin: 0;
  font-size: clamp(22px, 2.4vw, 28px);
  line-height: 1;
}

.status-hero p {
  margin: 4px 0 0;
  color: var(--is-muted);
  font-size: 13px;
  font-weight: 750;
}

.status-clock {
  min-width: 128px;
  text-align: right;
}

.status-clock span,
.status-clock small {
  display: block;
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 850;
}

.status-clock strong {
  display: block;
  margin-top: 2px;
  font-size: 15px;
}

.status-toolbar,
.status-view-panel {
  display: grid;
  gap: 8px;
  align-items: end;
  border-radius: var(--is-radius-md);
}

.status-command-toolbar {
  border-radius: var(--is-radius-md);
}

.status-command-toolbar .primary-button {
  margin-left: 0;
}

.status-command-toolbar [data-status-tool].active {
  border-color: var(--is-primary);
  background: color-mix(in srgb, var(--is-primary) 18%, var(--is-surface-strong));
  color: var(--is-text);
}

.status-toolbar {
  grid-template-columns: auto minmax(130px, 170px) minmax(220px, 1fr) auto;
}

.status-view-panel {
  grid-template-columns: auto 1fr auto;
  align-items: center;
}

.tab-buttons,
.status-view-mode,
.status-view-actions,
.status-toolbar-side {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.status-filter-field,
.status-search-field,
.status-view-fields label {
  display: grid;
  gap: 4px;
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.status-view-fields {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) minmax(120px, 0.7fr) auto;
  gap: 8px;
}

.status-history-control {
  min-width: 0;
  width: 100%;
}

.status-metrics {
  display: flex;
  min-height: 48px;
  align-items: center;
  gap: 0;
  padding: 7px 10px;
  overflow: visible;
}

.status-metrics .metric-card {
  display: inline-flex;
  min-height: 28px;
  align-items: baseline;
  gap: 7px;
  border: 0;
  border-left: 1px solid var(--is-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 0 14px;
}

.status-metrics .metric-card span {
  display: inline;
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 760;
  text-transform: uppercase;
}

.status-metrics .metric-card strong {
  display: inline;
  margin: 0;
  font-size: 20px;
  line-height: 1;
}

.status-metrics .metric-card.success strong { color: var(--is-success); }
.status-metrics .metric-card.danger strong { color: var(--is-danger); }
.status-metrics .metric-card.preventive strong { color: var(--is-info); }
.status-metrics .metric-card.no-operator strong { color: var(--is-warning); }
.status-metrics .metric-card.reserve strong { color: var(--is-primary); }

.status-metrics-label {
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.status-metrics-settings {
  position: relative;
  margin-left: auto;
}

.status-metrics-settings summary {
  cursor: pointer;
  color: var(--is-primary);
  font-size: 12px;
  font-weight: 850;
  list-style: none;
  white-space: nowrap;
}

.status-metrics-settings summary::-webkit-details-marker {
  display: none;
}

.status-metrics-options {
  position: absolute;
  z-index: 5;
  top: calc(100% + 9px);
  right: 0;
  display: grid;
  min-width: 205px;
  gap: 4px;
  border: 1px solid var(--is-border-strong);
  border-radius: var(--is-radius-sm);
  background: var(--is-surface-strong);
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
  padding: 9px;
}

.status-metrics-options label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--is-text);
  font-size: 12px;
  font-weight: 700;
}

.status-metrics .metric-card[hidden] {
  display: none;
}

.status-command-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 10px;
  align-items: stretch;
}

.status-board-panel { min-width: 0; overflow: hidden; }

.status-contract-coverage {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
  gap: 7px;
  margin: 8px 0;
}

.status-contract-coverage[hidden] {
  display: none;
}

.status-contract-item {
  display: grid;
  grid-template-columns: minmax(150px, 1fr) repeat(4, auto);
  align-items: center;
  gap: 12px;
  min-height: 54px;
  border: 1px solid var(--is-border);
  border-left: 4px solid var(--is-primary);
  background: color-mix(in srgb, var(--is-surface-strong) 92%, transparent);
  padding: 7px 11px;
}

.status-contract-item[data-tone="ok"] { border-left-color: var(--is-success); }
.status-contract-item[data-tone="warning"] { border-left-color: var(--is-warning); }
.status-contract-item[data-tone="danger"] { border-left-color: var(--is-danger); }
.status-contract-item__identity { display: grid; min-width: 0; }
.status-contract-item__identity strong { color: var(--is-text); }
.status-contract-item__identity span,
.status-contract-item__metric span { color: var(--is-text-muted); font-size: 0.69rem; }
.status-contract-item__metric { display: grid; min-width: 54px; text-align: center; }
.status-contract-item__metric strong { color: var(--is-text); font-size: 1rem; }
.status-contract-item > small { grid-column: 1 / -1; color: var(--is-warning); }

@media (max-width: 720px) {
  .status-contract-item {
    grid-template-columns: repeat(4, 1fr);
  }
  .status-contract-item__identity {
    grid-column: 1 / -1;
  }
}
.status-section-kicker {
  display: block;
  margin-bottom: 2px;
  color: var(--is-primary);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.status-lanes { display: grid; gap: 8px; padding: 10px; }
.status-lane { min-width: 0; border-top: 2px solid var(--is-border-strong); padding-top: 7px; }
.status-lane-head { display: flex; align-items: center; gap: 8px; margin-bottom: 7px; }
.status-lane-head h3 { margin: 0; color: var(--is-text); font-size: 13px; font-weight: 900; }
.status-lane-head strong { margin-left: auto; color: var(--is-muted); font-size: 13px; }
.status-lane-marker { width: 9px; height: 9px; border-radius: 50%; background: var(--is-primary); }
.status-lane.operacao .status-lane-marker { background: var(--is-success); }
.status-lane.manutencao_corretiva .status-lane-marker { background: var(--is-danger); }
.status-lane.manutencao_preventiva .status-lane-marker { background: var(--is-info); }
.status-lane.sem_motorista .status-lane-marker { background: var(--is-warning); }
.status-unit-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 6px; }
.status-unit {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  border: 1px solid var(--is-border);
  border-left: 3px solid var(--is-primary);
  border-radius: var(--is-radius-sm);
  background: color-mix(in srgb, var(--is-surface-strong) 78%, transparent);
  overflow: hidden;
}
.status-unit.tag-status-operacao { border-left-color: var(--is-success); }
.status-unit.tag-status-manutencao { border-left-color: var(--is-danger); }
.status-unit.tag-status-preventiva { border-left-color: var(--is-info); }
.status-unit.tag-status-sem-motorista { border-left-color: var(--is-warning); }
.status-unit { display: grid; gap: 2px; align-content: center; min-width: 0; padding: 8px 9px; color: var(--is-text); cursor: pointer; }
.status-unit-tag { font-size: 14px; font-weight: 950; }
.status-unit-name, .status-unit-meta { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.status-unit-name { font-size: 11px; font-weight: 780; }
.status-unit-meta { color: var(--is-muted); font-size: 11px; font-weight: 700; }
.status-unit:hover,
.status-unit:focus-visible { background: color-mix(in srgb, var(--is-primary) 10%, transparent); }
.status-unit:focus-visible { outline: 2px solid var(--is-primary); outline-offset: -2px; }

.status-board,
.status-table-panel,
.status-table-wrap {
  min-width: 0;
}

.status-table-panel,
.status-detail-panel {
  min-height: 500px;
  overflow: hidden;
}

.status-table-panel .section-title,
.status-recent-events .section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin: 0;
  border-bottom: 1px solid var(--is-border);
  padding: 10px 12px;
}

.status-table-panel .section-title h2,
.status-recent-events .section-title h2 {
  margin: 0;
  font-size: 16px;
}

.status-table-wrap {
  max-height: 500px;
  background: color-mix(in srgb, var(--is-surface) 88%, transparent);
}

.status-table {
  min-width: 900px;
  border-collapse: separate;
  border-spacing: 0;
}

.status-table th {
  position: sticky;
  z-index: 1;
  top: 0;
  height: 38px;
  border-bottom: 1px solid var(--is-border-strong);
  background: color-mix(in srgb, var(--is-surface-strong) 92%, var(--is-primary) 8%);
  color: var(--is-muted);
  font-size: 11px;
  letter-spacing: 0.02em;
}

.status-table td {
  height: 58px;
  border-bottom: 1px solid color-mix(in srgb, var(--is-border) 72%, transparent);
  vertical-align: middle;
}

.status-table td > span:not(.status-badge),
.status-table td small,
.status-table td:nth-child(2) span {
  display: block;
  margin-top: 2px;
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 650;
}

.status-table td:nth-child(2) strong,
.status-table td:nth-child(4),
.status-table td:nth-child(6) {
  color: var(--is-text);
  font-weight: 780;
}

.status-table td:nth-child(4),
.status-table td:nth-child(6) {
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-row-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.status-row-actions .filter-button,
.status-row-actions .status-card-history {
  min-height: 34px;
  padding: 7px 10px;
  white-space: nowrap;
}

.status-menu[hidden] {
  display: none !important;
}

.status-menu {
  z-index: 1200;
}

/* The status action is a full-workspace technical editor. */
.status-page .status-menu {
  position: fixed;
  inset: 0 auto auto 0;
  width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  overflow: hidden;
  display: block;
  padding: 0;
  background: color-mix(in srgb, var(--is-bg) 76%, rgba(5, 18, 32, 0.78));
  backdrop-filter: blur(8px);
}

/* Keep the fixed workbench tied to the viewport during shell transitions. */
.app-shell.has-status-detail-open {
  transform: none !important;
}

html.status-detail-open,
html.status-detail-open body {
  overflow: hidden;
}

.status-menu-portal {
  position: static;
  width: 0;
  height: 0;
  transform: none !important;
  animation: none !important;
}

.status-page .status-menu-panel {
  width: 100%;
  height: 100%;
  max-height: none;
  overflow: auto;
  border: 1px solid var(--is-border-strong);
  border-radius: var(--is-radius-lg);
  background: var(--is-surface);
  color: var(--is-text);
  box-shadow: 0 24px 70px rgba(2, 12, 24, 0.34);
  padding: clamp(18px, 3vw, 34px);
}

.status-page .status-menu-head {
  border-bottom: 1px solid var(--is-border);
  padding-bottom: 16px;
}

.status-page .status-menu-head strong { font-size: clamp(24px, 4vw, 42px); }

.status-technical-info {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 18px 0;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-md);
  background: var(--is-border);
  overflow: hidden;
}

.status-technical-info div {
  display: grid;
  gap: 5px;
  min-height: 66px;
  background: var(--is-surface-strong);
  padding: 12px 14px;
}

.status-technical-info span {
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.status-technical-info strong { font-size: 14px; }
.status-technical-info strong.tag-status-operacao { color: var(--is-success); }
.status-technical-info strong.tag-status-manutencao { color: var(--is-danger); }
.status-technical-info strong.tag-status-preventiva { color: var(--is-info); }

.status-workbench-tabs {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 16px 0 12px;
  padding: 4px;
  border: 1px solid var(--is-border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--is-surface-strong) 82%, transparent);
}

.status-workbench-tab {
  min-height: 34px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--is-muted);
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
  padding: 0 14px;
}

.status-workbench-tab.active {
  background: var(--is-primary);
  color: var(--is-on-primary);
  box-shadow: 0 8px 22px color-mix(in srgb, var(--is-primary) 28%, transparent);
}

.status-workbench-panel {
  display: none;
}

.status-workbench-panel.active {
  display: block;
}

.status-page .status-menu-options {
  max-height: none;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.status-page .status-menu-option.is-selected {
  border-color: var(--is-primary);
  background: color-mix(in srgb, var(--is-primary) 15%, var(--is-surface-strong));
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--is-primary) 30%, transparent);
}

.status-page .status-note-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-color: var(--is-border);
  background: var(--is-surface-strong);
  margin-top: 14px;
}

.status-page .status-note-form label { grid-column: auto; }
.status-page .status-note-form label:nth-of-type(2) { grid-column: 1 / -1; }

.status-workbench-actions {
  display: flex;
  grid-column: 1 / -1;
  justify-content: flex-end;
  gap: 8px;
}

.status-workbench-actions button {
  min-width: 140px;
}

.status-workbench-history {
  display: grid;
  gap: 8px;
  max-height: 320px;
  overflow: auto;
  padding-right: 4px;
}

.status-workbench-event {
  display: grid;
  gap: 6px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-sm);
  background: var(--is-surface-strong);
  padding: 10px 12px;
}

.status-workbench-event div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.status-workbench-event strong {
  color: var(--is-text);
  font-size: 13px;
}

.status-workbench-event span,
.status-workbench-event p,
.status-workbench-empty span,
.status-workbench-loading {
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 760;
}

.status-workbench-event p {
  margin: 0;
}

.status-workbench-empty,
.status-workbench-loading {
  display: grid;
  min-height: 160px;
  place-content: center;
  gap: 6px;
  text-align: center;
}

/* Equipment workbench: each tab owns its workspace and actions. */
.status-page .status-menu-panel {
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  width: 100%;
  height: 100%;
  max-height: none;
  overflow: hidden;
  padding: 0;
  border-radius: 0;
  background: color-mix(in srgb, var(--is-surface) 94%, #0d2237);
}

.status-page .status-menu-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: clamp(18px, 3vw, 28px) clamp(18px, 3vw, 34px) 16px;
  border-bottom: 1px solid var(--is-border);
}

.status-menu-identity {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.status-menu-identity > span,
.status-workbench-panel-head > span {
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.status-page .status-menu-head strong {
  color: var(--is-text);
  font-size: clamp(26px, 4vw, 42px);
  line-height: 1;
}

.status-menu-identity small {
  overflow: hidden;
  color: var(--is-muted);
  font-size: 13px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-menu-status {
  width: fit-content;
  margin-top: 3px;
  border: 1px solid var(--is-border-strong);
  border-radius: 999px;
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 900;
  padding: 4px 8px;
}

.status-menu-status.tag-status-operacao { border-color: color-mix(in srgb, var(--is-success) 55%, var(--is-border)); color: var(--is-success); }
.status-menu-status.tag-status-manutencao { border-color: color-mix(in srgb, var(--is-danger) 55%, var(--is-border)); color: var(--is-danger); }
.status-menu-status.tag-status-preventiva { border-color: color-mix(in srgb, var(--is-info) 55%, var(--is-border)); color: var(--is-info); }

.status-page .status-menu-head button {
  flex: 0 0 auto;
}

.status-workbench-tabs {
  display: flex;
  gap: 0;
  margin: 0;
  padding: 0 clamp(18px, 3vw, 34px);
  border: 0;
  border-bottom: 1px solid var(--is-border);
  border-radius: 0;
  background: transparent;
}

.status-workbench-tab {
  position: relative;
  min-height: 46px;
  border-radius: 0;
  color: var(--is-muted);
  padding: 0 18px;
}

.status-workbench-tab::after {
  position: absolute;
  right: 18px;
  bottom: 0;
  left: 18px;
  height: 3px;
  background: transparent;
  content: "";
}

.status-workbench-tab.active {
  background: transparent;
  box-shadow: none;
  color: var(--is-text);
}

.status-workbench-tab.active::after { background: var(--is-primary); }

.status-workbench-panel {
  display: none;
  min-height: 0;
  overflow: auto;
  padding: clamp(18px, 3vw, 30px) clamp(18px, 3vw, 34px);
}

.status-workbench-panel.active { display: block; }

.status-workbench-panel.active[data-status-workbench-panel="situation"] {
  display: grid;
  align-content: start;
  gap: 14px;
}

.status-workbench-panel-head {
  display: grid;
  gap: 4px;
  margin-bottom: 18px;
}

.status-workbench-panel-head p {
  max-width: 680px;
  margin: 0;
  color: var(--is-muted);
  font-size: 13px;
  font-weight: 700;
}

.status-page .status-menu-options {
  max-height: none;
  grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
}

.status-page .status-menu-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  min-height: 68px;
  gap: 2px;
  padding: 9px 11px;
  border-color: color-mix(in srgb, var(--is-border-strong) 84%, transparent);
  background: color-mix(in srgb, var(--is-surface-strong) 88%, transparent);
  color: var(--is-text);
}

.status-page .status-menu-option strong { font-size: 13px; }
.status-page .status-menu-option small { color: var(--is-muted); font-size: 10px; }

.status-page .status-menu-option .status-dot {
  position: static;
  grid-row: 1 / 3;
  width: 11px;
  height: 11px;
  margin-right: 3px;
  border-width: 2px;
  box-shadow: 0 0 0 1px currentColor;
}

.status-page .status-menu-option strong,
.status-page .status-menu-option small { grid-column: 2; }

.status-situation-section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-md);
  background: color-mix(in srgb, var(--is-surface-strong) 82%, transparent);
}

.status-situation-section-head {
  display: grid;
  gap: 3px;
  padding-bottom: 10px;
  border-bottom: 1px solid color-mix(in srgb, var(--is-border) 78%, transparent);
}

.status-situation-section-head span {
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.status-situation-section-head p {
  margin: 0;
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 700;
}

.status-page .status-menu-option.is-selected {
  border-color: var(--is-primary);
  background: color-mix(in srgb, var(--is-primary) 11%, var(--is-surface-strong));
  box-shadow: inset 3px 0 0 var(--is-primary);
}

.status-page .status-undo-button {
  margin: 0;
  min-height: 28px;
  border-color: color-mix(in srgb, var(--is-border-strong) 82%, var(--is-primary));
  background: color-mix(in srgb, var(--is-surface-strong) 88%, var(--is-primary));
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .02em;
  line-height: 1;
  padding: 0 9px;
  white-space: nowrap;
}

.status-page .status-undo-button:hover {
  border-color: var(--is-primary);
  color: var(--is-primary);
}

.status-page .status-situation-form-head {
  grid-template-columns: minmax(0, 1fr) auto;
  column-gap: 12px;
  align-items: start;
}

.status-page .status-situation-form-head > span,
.status-page .status-situation-form-head > p {
  grid-column: 1;
}

.status-page .status-situation-form-head > .status-undo-button {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
}

.status-page .status-note-form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 14px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-md);
  background: color-mix(in srgb, var(--is-surface-strong) 82%, transparent);
}

.status-page .status-note-form label {
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.status-page .status-note-form label:nth-child(2) { grid-column: 1 / -1; }

.status-page .status-faults-section {
  display: grid;
  grid-column: 1 / -1;
  gap: 10px;
  padding: 14px;
  border: 1px solid color-mix(in srgb, var(--is-primary) 34%, var(--is-border));
  border-radius: var(--is-radius-md);
  background: color-mix(in srgb, var(--is-primary) 5%, var(--is-surface-strong));
}

.status-page .status-faults-section[hidden] { display: none; }

.status-faults-head,
.status-fault-row-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.status-faults-head > div { display: grid; gap: 3px; }
.status-faults-head span,
.status-fault-row-head strong {
  color: var(--is-text);
  font-size: 12px;
  font-weight: 900;
}

.status-faults-head p {
  margin: 0;
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}

.status-faults-head .filter-button,
.status-fault-remove {
  min-height: 30px;
  border-radius: 7px;
  font-size: 11px;
  white-space: nowrap;
}

.status-fault-list { display: grid; gap: 8px; }

.status-fault-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  padding: 11px;
  border: 1px solid var(--is-border);
  border-radius: 8px;
  background: color-mix(in srgb, var(--is-surface-strong) 94%, transparent);
}

.status-fault-row-head { grid-column: 1 / -1; align-items: center; }

.status-fault-remove {
  border: 1px solid color-mix(in srgb, var(--is-danger) 42%, var(--is-border));
  background: transparent;
  color: var(--is-danger);
  cursor: pointer;
  padding: 0 9px;
}

.status-fault-row label {
  display: grid;
  gap: 5px;
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.status-fault-row select,
.status-fault-row input {
  min-width: 0;
  min-height: 36px;
  color: var(--is-input-text);
  font-size: 13px;
  font-weight: 750;
}

.status-fault-row .status-fault-description { grid-column: 1 / -1; }

.status-fault-summary {
  display: block;
  padding-top: 9px;
  border-top: 1px solid var(--is-border);
  color: var(--is-primary);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.status-page .status-note-form .status-substitute-field {
  display: grid;
  grid-column: 1 / -1;
  gap: 7px;
  padding: 12px;
  border: 1px solid color-mix(in srgb, var(--is-primary) 32%, var(--is-border));
  border-radius: 10px;
  background: color-mix(in srgb, var(--is-primary) 7%, var(--is-surface-strong));
}

.status-page .status-note-form .status-substitute-field[hidden] { display: none; }

.status-page .status-note-form .status-substitute-label {
  color: var(--is-text);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: none;
}

.status-page .status-note-form .status-substitute-field small {
  color: var(--is-muted);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.35;
  text-transform: none;
}

.status-situation-form-head { grid-column: 1 / -1; }

.status-workbench-actions {
  position: static;
  display: flex;
  grid-column: 1 / -1;
  justify-content: flex-end;
  gap: 8px;
  margin: 8px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid var(--is-border);
  background: transparent;
}

.status-workbench-actions button { min-width: 140px; }

.status-technical-info {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

.status-technical-group {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  min-width: 0;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-md);
  background: color-mix(in srgb, var(--is-surface-strong) 90%, transparent);
}

.status-technical-group legend {
  padding-right: 8px;
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.status-technical-group label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.status-technical-group input,
.status-technical-group textarea {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid color-mix(in srgb, var(--is-border-strong) 82%, transparent);
  border-radius: 7px;
  background: #f7fbff;
  color: #10243b;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
}

.status-technical-group input { min-height: 40px; padding: 0 11px; }
.status-technical-group textarea { resize: none; padding: 10px 11px; }
.status-technical-group input.tag-status-operacao { color: #147a4d; }
.status-technical-group input.tag-status-manutencao { color: #b3303f; }
.status-technical-group input.tag-status-preventiva { color: #1565a8; }

.status-technical-group--condition,
.status-technical-group--future { grid-column: 1 / -1; }
.status-technical-group--condition label { grid-column: 1 / -1; }

.status-technical-group--future {
  display: block;
  border-style: dashed;
  background: color-mix(in srgb, var(--is-surface-strong) 70%, transparent);
}

.status-technical-group--future p {
  max-width: 680px;
  margin: 8px 0 0;
  color: var(--is-muted);
  font-size: 13px;
  font-weight: 700;
}

.status-workbench-history {
  display: grid;
  gap: 0;
  max-height: none;
  overflow: visible;
  padding: 0;
}

.status-workbench-event {
  position: relative;
  display: grid;
  gap: 6px;
  margin-left: 9px;
  padding: 14px 16px 14px 24px;
  border: 0;
  border-bottom: 1px solid var(--is-border);
  border-radius: 0;
  background: transparent;
}

.status-workbench-event::before {
  position: absolute;
  top: 20px;
  bottom: -1px;
  left: 0;
  width: 1px;
  background: var(--is-border-strong);
  content: "";
}

.status-workbench-event::after {
  position: absolute;
  top: 17px;
  left: -4px;
  width: 9px;
  height: 9px;
  border: 2px solid var(--is-primary);
  border-radius: 50%;
  background: var(--is-surface);
  content: "";
}

.status-workbench-event:first-child { padding-top: 0; }
.status-workbench-event:first-child::before { top: 3px; }
.status-workbench-event:first-child::after { top: 0; }
.status-workbench-event:last-child { border-bottom: 0; }
.status-workbench-event:last-child::before { bottom: auto; height: 22px; }

@media (max-width: 720px) {
  .status-page .status-menu { padding: 0; }
  .status-page .status-menu-panel { max-height: none; }
  .status-page .status-menu-head { padding: 16px 16px 12px; }
  .status-workbench-tabs { overflow-x: auto; padding: 0 10px; }
  .status-workbench-tab { flex: 0 0 auto; padding: 0 12px; }
  .status-workbench-tab::after { right: 12px; left: 12px; }
  .status-workbench-panel { padding: 16px; }
  .status-page .status-menu-options,
  .status-page .status-note-form,
  .status-technical-info,
  .status-technical-group { grid-template-columns: 1fr; }
  .status-workbench-actions {
    justify-content: stretch;
    margin: 8px 0 0;
    padding: 12px 0 0;
  }

  .status-fault-row { grid-template-columns: 1fr 1fr; }
  .status-workbench-actions button { flex: 1 1 0; min-width: 0; }
}

.status-table-row.is-active {
  background: color-mix(in srgb, var(--is-primary) 12%, transparent);
}

.status-table-row:hover {
  background: color-mix(in srgb, var(--is-primary) 7%, transparent);
}

.status-table-tag {
  display: inline-flex;
  min-width: 88px;
  min-height: 28px;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  border: 1px solid var(--is-border-strong);
  border-radius: 8px;
  background: color-mix(in srgb, var(--is-surface-strong) 74%, transparent);
  color: var(--is-text);
  padding: 0 9px;
  cursor: pointer;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: 0;
  transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

.status-table-tag:hover {
  border-color: currentColor;
  background: color-mix(in srgb, currentColor 11%, var(--is-surface-strong));
  transform: translateY(-1px);
}

.status-table .status-dot {
  width: 8px;
  height: 8px;
  box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 14%, transparent);
}

.status-badge {
  display: inline-flex;
  min-width: 108px;
  min-height: 26px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: color-mix(in srgb, currentColor 10%, var(--is-surface));
  padding: 0 10px;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.status-card-history {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--is-border-strong);
  border-radius: 8px;
  background: color-mix(in srgb, var(--is-surface-strong) 90%, transparent);
  color: var(--is-primary);
  padding: 0 11px;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.status-card-history:hover {
  border-color: var(--is-primary);
  background: color-mix(in srgb, var(--is-primary) 12%, var(--is-surface-strong));
}

.status-badge.tag-status-operacao,
.status-table-tag.tag-status-operacao { color: var(--is-success); }
.status-badge.tag-status-manutencao,
.status-table-tag.tag-status-manutencao { color: var(--is-danger); }
.status-badge.tag-status-preventiva,
.status-table-tag.tag-status-preventiva { color: var(--is-info); }
.status-badge.tag-status-sem-motorista,
.status-table-tag.tag-status-sem-motorista { color: var(--is-warning); }
.status-badge.tag-status-reserva,
.status-table-tag.tag-status-reserva,
.status-badge.tag-status-sillion,
.status-table-tag.tag-status-sillion { color: var(--is-primary); }

.status-detail-panel {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 14px;
}

.status-detail-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border-bottom: 1px solid var(--is-border);
  padding-bottom: 12px;
}

.status-detail-head strong {
  display: block;
  font-size: 30px;
  line-height: 1;
}

.status-detail-head span:not(.status-dot):not(.status-badge) {
  color: var(--is-muted);
  font-size: 13px;
  font-weight: 750;
}

.status-detail-list {
  display: grid;
  gap: 8px;
  margin: 0;
}

.status-detail-list div {
  padding: 8px 0;
  border-bottom: 1px solid var(--is-border);
}

.status-detail-list dt {
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.status-detail-list dd {
  margin: 2px 0 0;
  font-size: 13px;
  font-weight: 760;
}

.status-detail-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.status-detail-empty {
  display: grid;
  min-height: 180px;
  place-content: center;
  gap: 6px;
  color: var(--is-muted);
  text-align: center;
}

.status-event-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 8px;
  padding: 10px;
}

.status-event-item {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px 10px;
  align-items: start;
  padding-left: 12px;
}

.status-event-item .status-dot {
  grid-row: 1 / 4;
  align-self: start;
  margin-top: 5px;
}

.status-event-item strong,
.status-event-item > span:not(.status-dot),
.status-event-item small {
  grid-column: 2;
  min-width: 0;
}

.status-event-item strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-event-item small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-page .empty-state {
  min-height: 260px;
  display: grid;
  place-content: center;
  border: 1px dashed var(--is-border-strong);
  border-radius: var(--is-radius-md);
  color: var(--is-muted);
}

@media (max-width: 1180px) {
  .status-command-layout {
    grid-template-columns: 1fr;
  }

  .status-toolbar {
    grid-template-columns: auto minmax(130px, 0.55fr) minmax(190px, 1fr) auto;
  }

  .status-view-panel {
    grid-template-columns: auto 1fr auto;
  }

  .status-event-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .status-command-toolbar {
    flex-wrap: wrap;
  }

  .status-command-toolbar .primary-button {
    margin-left: 0;
  }

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

  .status-view-fields,
  .status-event-strip {
    grid-template-columns: 1fr;
  }

  .status-metrics {
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 0;
  }

  .status-metrics .metric-card {
    padding: 0 9px;
  }

  .status-view-panel {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .status-technical-info,
  .status-page .status-menu-options,
  .status-page .status-note-form { grid-template-columns: 1fr; }

  .status-page .status-note-form label:nth-child(2),
  .status-workbench-actions { grid-column: auto; }

  .status-workbench-tabs,
  .status-workbench-actions {
    width: 100%;
    flex-wrap: wrap;
  }

  .status-hero {
    display: grid;
  }

  .status-clock {
    width: 100%;
    text-align: left;
  }
}

/* STATUS-LAYOUT-1: central operacional da frota. */
.status-page {
  gap: 12px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  clip-path: inset(50%);
}

.status-control-deck {
  position: sticky;
  z-index: 20;
  top: 8px;
  display: grid;
  grid-template-columns: auto minmax(200px, 1fr) minmax(145px, 180px) auto auto auto;
  align-items: center;
  gap: 7px;
  width: min(100%, 1320px);
  margin: 0 auto;
  border: 1px solid var(--is-border-strong);
  border-radius: var(--is-radius-md);
  background: var(--is-section-bg);
  box-shadow: 0 8px 20px rgba(6, 46, 50, 0.08);
  padding: 7px;
}

.status-control-deck__customize {
  min-width: 96px;
  color: var(--is-primary);
  font-weight: 900;
}

.status-customize-panel {
  top: calc(100% + 6px);
  grid-template-columns: minmax(180px, 0.7fr) minmax(0, 1.6fr);
  width: min(760px, calc(100vw - 28px));
}

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

.status-customize-sections fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.status-customize-sections legend {
  margin-bottom: 6px;
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.status-customize-statuses { grid-column: 1 / -1; }
.status-customize-panel .is-customize-reset { grid-column: 1; grid-row: 2; }

.status-customize-panel {
  grid-template-columns: minmax(175px, 0.62fr) minmax(0, 1.7fr);
  gap: 16px 20px;
  width: min(820px, calc(100vw - 28px));
}

.status-customize-panel .is-customize-copy {
  align-self: start;
  display: grid;
  gap: 6px;
}

.status-customize-panel .is-customize-copy strong {
  color: var(--is-text);
  font-size: 15px;
  line-height: 1.28;
}

.status-customize-panel .is-customize-copy small {
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 700;
}

.status-customize-sections {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.status-customize-sections fieldset {
  display: grid;
  gap: 7px;
  padding-top: 2px;
}

.status-customize-sections .status-customize-mode,
.status-customize-sections .status-customize-statuses {
  grid-column: 1 / -1;
}

.status-customize-mode > small,
.status-customize-subtitle {
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 700;
}

.status-customize-subtitle { margin-top: 3px; }

.status-customize-panel .is-customize-options {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.status-customize-panel .is-customize-options button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
}

.status-customize-mode .is-customize-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.status-customize-mode .is-customize-options button {
  min-height: 50px;
  flex-direction: column;
  align-items: flex-start;
  padding: 8px 10px;
  text-align: left;
}

.status-customize-mode .is-customize-options button strong {
  color: inherit;
  font-size: 12px;
}

.status-customize-mode .is-customize-options button small {
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 700;
}

.status-customize-mode .is-customize-options button.is-active small { color: currentColor; opacity: 0.82; }

.status-customize-preview {
  min-height: 32px;
  border-left: 2px solid var(--is-primary);
  padding: 7px 9px;
  background: var(--is-primary-soft);
  color: var(--is-text);
  font-size: 11px;
  font-weight: 700;
}

.status-customize-quick-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.status-customize-quick-actions button {
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 800;
}

.status-customize-actions {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  align-items: center;
  gap: 8px;
  border-top: 1px solid var(--is-border);
  padding-top: 12px;
}

.status-customize-actions .is-customize-reset {
  grid-column: auto;
  grid-row: auto;
}

.status-customize-actions .secondary-button,
.status-customize-actions .primary-button {
  min-height: 34px;
  padding-inline: 12px;
}

/* Keep the personalizer as a short decision panel instead of a form wall. */
.status-page .status-customize-panel {
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  width: min(760px, calc(100vw - 28px));
  padding: 16px;
}

.status-page .status-customize-sections fieldset {
  border: 1px solid var(--is-divider);
  border-radius: var(--is-radius-sm);
  background: var(--is-section-subtle);
  padding: 10px;
}

.status-page .status-customize-sections .status-customize-mode {
  background: var(--is-technical-bg);
}

.status-page .status-customize-sections .status-customize-advanced {
  border: 1px solid var(--is-divider);
  border-radius: var(--is-radius-sm);
  background: var(--is-control-bg);
  padding: 9px 10px;
}

.status-page .status-customize-panel .is-customize-copy {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 10px;
}

.status-page .status-customize-panel .is-customize-copy .section-kicker {
  margin: 0;
}

.status-page .status-customize-panel .is-customize-copy strong {
  font-size: 14px;
  line-height: 1.2;
}

.status-page .status-customize-panel .is-customize-copy small {
  text-align: right;
  white-space: nowrap;
}

.status-page .status-customize-sections {
  grid-template-columns: minmax(230px, 0.82fr) minmax(300px, 1.18fr);
  gap: 12px 16px;
}

.status-page .status-customize-sections .status-customize-mode,
.status-page .status-customize-sections .status-customize-advanced {
  grid-column: 1 / -1;
}

.status-page .status-customize-sections .status-customize-card,
.status-page .status-customize-sections .status-customize-organization {
  align-content: start;
}

.status-page .status-customize-preview {
  min-height: 0;
  margin-top: 1px;
  padding: 6px 8px;
  line-height: 1.3;
}

.status-customize-advanced {
  border-top: 1px solid var(--is-border);
  padding-top: 9px;
}

.status-customize-advanced summary {
  width: fit-content;
  cursor: pointer;
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
}

.status-customize-advanced[open] summary { margin-bottom: 9px; }

.status-customize-advanced .status-customize-statuses {
  display: grid;
  gap: 7px;
}

/* Cada escolha usa a mesma célula visual; o painel deixa de variar conforme o texto. */
@media (min-width: 721px) {
  .status-page .status-customize-card .is-customize-options,
  .status-page .status-customize-organization .is-customize-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, 106px);
    gap: 7px;
  }

  .status-page .status-customize-card .is-customize-options button,
  .status-page .status-customize-organization .is-customize-options button {
    inline-size: 106px;
    min-height: 40px;
    padding-inline: 8px;
    white-space: nowrap;
  }

  .status-page .status-customize-actions .secondary-button,
  .status-page .status-customize-actions .primary-button {
    inline-size: 122px;
    min-height: 38px;
    padding-inline: 8px;
  }
}

@media (max-width: 720px) {
  .status-page .status-customize-panel .is-customize-copy {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .status-page .status-customize-panel .is-customize-copy small { text-align: left; }
  .status-page .status-customize-sections { grid-template-columns: 1fr; }
  .status-page .status-customize-sections .status-customize-card,
  .status-page .status-customize-sections .status-customize-organization { grid-column: 1; }
  .status-customize-mode .is-customize-options { grid-template-columns: 1fr; }
}

.status-control-deck__areas {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  border-right: 1px solid var(--is-border);
  padding-right: 7px;
}

.status-control-deck .filter-button,
.status-control-deck select,
.status-control-deck input {
  min-height: 34px;
  border-radius: 7px;
  font-size: 12px;
}

.status-control-deck__areas .filter-button {
  min-width: 58px;
  border-color: transparent;
  background: transparent;
  padding-inline: 9px;
}

.status-control-deck__areas .filter-button.active {
  border-color: var(--is-border-strong);
  background: var(--is-control-active);
  color: var(--is-primary);
}

.status-control-deck__search,
.status-control-deck__filter {
  display: block;
  min-width: 0;
}

.status-control-deck__search input,
.status-control-deck__filter select {
  width: 100%;
  margin: 0;
}

.status-control-deck__state {
  display: grid;
  gap: 1px;
  border-left: 1px solid var(--is-border);
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 780;
  line-height: 1.15;
  padding-left: 9px;
  white-space: nowrap;
}

.status-control-deck__state > span:first-child {
  color: var(--is-text);
  font-size: 12px;
  font-weight: 900;
}

.status-control-deck__state strong,
.status-control-deck__state time {
  color: var(--is-primary);
  font-weight: 850;
}

.status-control-deck__sync {
  min-width: 88px;
  border-color: var(--is-primary);
  background: var(--is-control-active);
  color: var(--is-primary);
  font-weight: 900;
}

.status-control-deck .status-feedback {
  grid-column: 1 / -1;
  margin: 0 4px 1px;
  color: var(--is-danger);
  font-size: 11px;
  font-weight: 750;
}

.status-control-deck .status-feedback[hidden] {
  display: none;
}

.status-command-layout {
  display: block;
}

.status-board-panel {
  min-width: 0;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-md);
  background: var(--is-section-bg);
  padding: 12px;
}

.status-lanes {
  gap: 14px;
  padding: 0;
}

.status-lane {
  border-top-width: 1px;
  padding-top: 9px;
}

.status-lane:first-child {
  border-top: 0;
  padding-top: 0;
}

.status-lane-head {
  margin-bottom: 8px;
  padding: 0 2px;
}

.status-lane-head h3 {
  font-size: 12px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.status-lane-head strong {
  display: grid;
  min-width: 22px;
  min-height: 22px;
  place-items: center;
  border: 1px solid var(--is-border-strong);
  border-radius: 999px;
  color: var(--is-muted);
  font-size: 11px;
}

.status-unit-grid {
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 7px;
}

.status-category-groups {
  display: grid;
  gap: 10px;
}

.status-category-group {
  min-width: 0;
  padding-top: 7px;
  border-top: 1px solid color-mix(in srgb, var(--is-border) 76%, transparent);
}

.status-category-group:first-child {
  padding-top: 0;
  border-top: 0;
}

.status-category-head {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 24px;
  margin: 0 2px 6px;
}

.status-category-head h4 {
  margin: 0;
  color: var(--is-text);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.02em;
}

.status-category-head strong {
  display: grid;
  min-width: 20px;
  min-height: 20px;
  place-items: center;
  border: 1px solid var(--is-border-strong);
  border-radius: 999px;
  color: var(--is-muted);
  font-size: 10px;
}

.status-unit {
  --status-card-accent: var(--is-primary);
  min-height: 82px;
  border-radius: var(--is-radius-sm);
  border-color: color-mix(in srgb, var(--status-card-accent) 40%, var(--is-border-strong));
  border-left: 4px solid var(--status-card-accent);
  background: var(--is-section-subtle);
  box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 24%, transparent);
  transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.status-unit-detail {
  display: -webkit-box;
  overflow: hidden;
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.status-unit--compact { min-height: 54px; }
.status-unit--essential { min-height: 68px; }
.status-unit-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.status-unit-head .status-unit-meta {
  flex: 0 1 auto;
  min-width: 0;
  text-align: right;
}

.status-unit--complete {
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 132px;
  align-content: stretch;
  gap: 8px;
}

.status-unit-grid--complete {
  grid-template-columns: repeat(auto-fill, minmax(264px, 1fr));
}

.status-unit-complete-content {
  display: grid;
  align-content: start;
  gap: 7px;
  min-width: 0;
}

.status-unit-reason {
  display: -webkit-box;
  overflow: hidden;
  color: var(--is-text);
  font-size: 12px;
  font-weight: 780;
  line-height: 1.32;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.status-unit-facts {
  display: grid;
  gap: 2px;
  padding-top: 6px;
  border-top: 1px solid color-mix(in srgb, var(--status-card-accent) 32%, var(--is-border));
}

.status-unit-facts span {
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 760;
  line-height: 1.25;
}
.status-board-panel--comfortable .status-unit-grid { gap: 10px; }
.status-board-panel--comfortable .status-unit { padding: 11px 12px; }
.status-board-panel--compact .status-unit-grid { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
.status-board-panel--compact .status-unit-grid--complete { grid-template-columns: repeat(auto-fill, minmax(246px, 1fr)); }

.status-board-panel--type .status-lanes {
  display: grid;
  gap: 16px;
}

.status-type-lane {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--is-border);
  border-radius: var(--is-radius-sm);
  background: var(--is-section-subtle);
}

.status-type-head,
.status-type-status-head {
  display: flex;
  align-items: center;
  gap: 8px;
}

.status-type-head {
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--is-border);
}

.status-type-head h3,
.status-type-status-head h4 { margin: 0; color: var(--is-text); }
.status-type-head h3 { font-size: 13px; }
.status-type-head strong,
.status-type-status-head strong {
  display: inline-grid;
  min-width: 21px;
  min-height: 21px;
  place-items: center;
  border: 1px solid var(--is-border-strong);
  border-radius: 999px;
  color: var(--is-muted);
  font-size: 10px;
}

.status-type-statuses {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  align-items: start;
}

.status-type-status { min-width: 0; }
.status-type-statuses--weighted {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.34fr);
}

.status-type-statuses--weighted .status-type-status--dominant .status-unit-grid {
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

/* A faixa dominante resume o estado; exceções mantêm o espaço para seus dados. */
.status-page .status-type-statuses--weighted .status-type-status--dominant .status-unit--complete {
  min-height: 84px;
  gap: 4px;
}

.status-page .status-type-statuses--weighted .status-type-status--dominant .status-unit-complete-content {
  gap: 3px;
}

.status-page .status-type-statuses--weighted .status-type-status--dominant .status-unit-facts {
  padding-top: 3px;
}

.status-type-statuses--weighted .status-type-status:not(.status-type-status--dominant) {
  min-width: 300px;
}
.status-type-status-head { min-height: 25px; margin-bottom: 6px; }
.status-type-status-head h4 {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.status-type-status .status-unit-grid { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.status-type-status .status-unit-grid--complete { grid-template-columns: repeat(auto-fill, minmax(246px, 1fr)); }

.status-board-panel[data-preset="failures"] .status-unit.tag-status-manutencao,
.status-board-panel[data-preset="failures"] .status-unit.tag-status-preventiva,
.status-board-panel[data-preset="failures"] .status-unit.tag-status-sillion {
  border-color: color-mix(in srgb, var(--status-card-accent) 72%, var(--is-border-strong));
}

.status-unit.tag-status-operacao {
  --status-card-accent: var(--is-success);
  background: var(--is-state-success-bg);
}

.status-unit.tag-status-manutencao {
  --status-card-accent: var(--is-danger);
  background: var(--is-state-danger-bg);
}

.status-unit.tag-status-preventiva {
  --status-card-accent: var(--is-info);
  background: var(--is-state-info-bg);
}

.status-unit.tag-status-sem-motorista {
  --status-card-accent: var(--is-warning);
  background: var(--is-state-warning-bg);
}

.status-unit.tag-status-reserva {
  --status-card-accent: var(--is-accent);
  background: var(--is-state-reserve-bg);
}

.status-unit.tag-status-sillion {
  --status-card-accent: var(--is-state-sillion);
  background: var(--is-state-sillion-bg);
}

.status-unit:hover {
  border-color: color-mix(in srgb, var(--status-card-accent) 76%, var(--is-border-strong));
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, #ffffff 24%, transparent),
    0 8px 16px color-mix(in srgb, var(--status-card-accent) 12%, transparent);
  transform: translateY(-1px);
}

.status-unit-tag {
  color: var(--is-text);
  font-size: 15px;
}

.status-unit-name {
  font-size: 12px;
}

.status-page .empty-state {
  min-height: 300px;
}

@media (max-width: 840px) {
  .status-control-deck {
    grid-template-columns: auto 1fr auto auto;
  }

  .status-control-deck__search {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .status-control-deck__filter {
    grid-column: 2;
  }

  .status-control-deck__customize { grid-column: 3; }

  .status-control-deck__state {
    grid-column: 1 / -1;
    grid-row: 3;
    border-top: 1px solid var(--is-border);
    border-left: 0;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px;
    padding: 7px 0 0;
  }
}

@media (max-width: 560px) {
  .status-control-deck {
    position: static;
    grid-template-columns: 1fr auto;
  }

  .status-control-deck__areas {
    grid-column: 1 / -1;
    border-right: 0;
    border-bottom: 1px solid var(--is-border);
    justify-content: stretch;
    padding: 0 0 7px;
  }

  .status-control-deck__areas .filter-button {
    flex: 1;
  }

  .status-control-deck__filter {
    grid-column: 1;
  }

  .status-control-deck__customize {
    grid-column: 1;
    grid-row: 4;
  }

  .status-control-deck__sync {
    grid-column: 2;
    grid-row: 4;
  }

  .status-control-deck__sync {
    min-width: 78px;
  }

  .status-control-deck__search,
  .status-control-deck__state {
    grid-column: 1 / -1;
  }

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

  .status-category-groups {
    gap: 12px;
  }

  .status-customize-panel { grid-template-columns: 1fr; }
  .status-customize-sections { grid-template-columns: 1fr; }
  .status-customize-statuses { grid-column: 1; }
  .status-customize-panel .is-customize-reset { grid-column: 1; grid-row: auto; }
  .status-type-statuses { grid-template-columns: 1fr; }
  .status-type-statuses--weighted { grid-template-columns: 1fr; }
  .status-type-statuses--weighted .status-type-status:not(.status-type-status--dominant) { min-width: 0; }

  .status-page .status-workbench-actions {
    grid-column: 1 / -1;
  }
}

/* Login-reference visual finish for the operational command center. */
.status-page .status-control-deck,
.status-page .status-lane,
.status-page .status-situation-section,
.status-page .status-note-form,
.status-page .status-technical-group,
.status-page .status-workbench-event {
  border-color: var(--is-metal-line);
  box-shadow: none;
}

.status-page .status-control-deck,
.status-page .status-situation-section,
.status-page .status-note-form,
.status-page .status-technical-group,
.status-page .status-workbench-event {
  background: color-mix(in srgb, var(--is-surface-strong) 88%, var(--is-primary-soft));
}

.status-page .status-control-deck__areas .filter-button.active,
.status-page .status-menu-option.is-selected {
  border-color: color-mix(in srgb, var(--is-primary) 66%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-primary) 14%, var(--is-surface-strong));
  color: var(--is-primary);
}

.status-page .status-menu-panel {
  background: linear-gradient(145deg, var(--is-brand-deep), var(--is-brand-mid) 44%, var(--is-surface-strong));
}

.status-page .status-menu-head,
.status-page .status-workbench-tabs {
  background: color-mix(in srgb, var(--is-brand-deep) 70%, transparent);
}

html[data-theme="light"] .status-page .status-menu-panel {
  background: linear-gradient(145deg, #eff7ff, var(--is-surface-strong) 54%, #dcebf8);
}

html[data-theme="light"] .status-page .status-menu-head,
html[data-theme="light"] .status-page .status-workbench-tabs {
  background: color-mix(in srgb, var(--is-primary) 8%, var(--is-surface-strong));
}

/* STATUS-COMPONENTES-3: superficies com funcao definida, sem apagar as cores da frota. */
.status-page .status-control-deck {
  border-color: color-mix(in srgb, var(--is-info) 48%, var(--is-border-strong));
  background:
    linear-gradient(90deg, color-mix(in srgb, var(--is-info) 10%, var(--is-section-bg)), var(--is-section-bg) 40%);
}

.status-page .status-control-deck__areas {
  border-color: color-mix(in srgb, var(--is-info) 28%, var(--is-border));
}

.status-page .status-control-deck__areas .filter-button,
.status-page .status-control-deck__customize {
  background: var(--is-control-bg);
}

.status-page .status-control-deck__areas .filter-button.active {
  border-color: var(--is-info);
  background: var(--is-state-info-bg);
  color: var(--is-primary-strong);
}

.status-page .status-control-deck__customize {
  border-color: color-mix(in srgb, var(--is-accent) 48%, var(--is-border-strong));
  color: var(--is-accent);
}

.status-page .status-control-deck__customize:hover,
.status-page .status-control-deck__customize.is-active {
  background: var(--is-accent-soft);
  border-color: var(--is-accent);
  color: var(--is-accent);
}

.status-page .status-control-deck__sync {
  border-color: color-mix(in srgb, var(--is-success) 44%, var(--is-border-strong));
  background: var(--is-state-success-bg);
  color: var(--is-success);
}

.status-contract-coverage {
  border-color: color-mix(in srgb, var(--is-accent) 46%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-accent-soft) 62%, var(--is-section-bg));
}

.status-contract-item {
  background: var(--is-section-bg);
  border-color: color-mix(in srgb, var(--is-accent) 28%, var(--is-border));
  box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 22%, transparent);
}

.status-contract-item__metric {
  border-left-color: color-mix(in srgb, var(--is-accent) 24%, var(--is-divider));
}

.status-command-layout .status-board-panel {
  border-color: color-mix(in srgb, var(--is-brand-teal) 36%, var(--is-border-strong));
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--is-brand-glacier) 8%, var(--is-section-bg)), var(--is-section-bg) 160px);
  box-shadow: 0 12px 28px color-mix(in srgb, var(--is-brand-deep) 8%, transparent);
}

.status-board-panel--type .status-type-lane {
  border-color: color-mix(in srgb, var(--is-info) 26%, var(--is-border));
  background: color-mix(in srgb, var(--is-technical-bg) 52%, var(--is-section-bg));
}

.status-board-panel--type .status-type-head {
  border-color: color-mix(in srgb, var(--is-info) 28%, var(--is-divider));
}

.status-category-head,
.status-lane-head,
.status-type-status-head {
  position: relative;
}

.status-category-head::before,
.status-lane-head::before,
.status-type-status-head::before {
  width: 4px;
  height: 15px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: var(--is-info);
  content: "";
}

.status-lane.operacao .status-lane-head::before,
.status-type-status.operacao .status-type-status-head::before { background: var(--is-success); }
.status-lane.manutencao_corretiva .status-lane-head::before,
.status-type-status.manutencao_corretiva .status-type-status-head::before { background: var(--is-danger); }
.status-lane.manutencao_preventiva .status-lane-head::before,
.status-type-status.manutencao_preventiva .status-type-status-head::before { background: var(--is-info); }
.status-lane.sem_motorista .status-lane-head::before,
.status-type-status.sem_motorista .status-type-status-head::before { background: var(--is-warning); }
.status-lane.reserva .status-lane-head::before,
.status-type-status.reserva .status-type-status-head::before { background: var(--is-accent); }
.status-lane.sillion .status-lane-head::before,
.status-type-status.sillion .status-type-status-head::before { background: var(--is-state-sillion); }

.status-unit {
  background: var(--is-section-bg);
  border-width: 1px 1px 1px 4px;
  box-shadow: 0 1px 0 color-mix(in srgb, #ffffff 24%, transparent);
}

.status-unit.tag-status-operacao {
  background: color-mix(in srgb, var(--is-state-success-bg) 76%, var(--is-section-bg));
  border-color: var(--is-state-success-border);
  border-left-color: var(--is-success);
}

.status-unit.tag-status-manutencao {
  background: color-mix(in srgb, var(--is-state-danger-bg) 78%, var(--is-section-bg));
  border-color: var(--is-state-danger-border);
  border-left-color: var(--is-danger);
}

.status-unit.tag-status-preventiva {
  background: color-mix(in srgb, var(--is-state-info-bg) 78%, var(--is-section-bg));
  border-color: var(--is-state-info-border);
  border-left-color: var(--is-info);
}

.status-unit.tag-status-sem-motorista {
  background: color-mix(in srgb, var(--is-state-warning-bg) 82%, var(--is-section-bg));
  border-color: var(--is-state-warning-border);
  border-left-color: var(--is-warning);
}

.status-unit.tag-status-reserva {
  background: color-mix(in srgb, var(--is-state-reserve-bg) 82%, var(--is-section-bg));
  border-color: var(--is-state-reserve-border);
  border-left-color: var(--is-accent);
}

.status-unit.tag-status-sillion {
  background: color-mix(in srgb, var(--is-state-sillion-bg) 82%, var(--is-section-bg));
  border-color: var(--is-state-sillion-border);
  border-left-color: var(--is-state-sillion);
}

.status-unit:hover,
.status-unit:focus-visible {
  background: color-mix(in srgb, var(--status-card-accent) 16%, var(--is-section-bg));
  box-shadow: 0 8px 18px color-mix(in srgb, var(--status-card-accent) 15%, transparent);
}

.status-page .status-customize-panel {
  border-color: color-mix(in srgb, var(--is-accent) 46%, var(--is-border-strong));
  background: var(--is-section-bg);
}

.status-page .status-customize-panel .section-kicker {
  color: var(--is-info);
}

.status-page .status-customize-sections .status-customize-mode {
  border-color: color-mix(in srgb, var(--is-info) 42%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-state-info-bg) 72%, var(--is-section-bg));
}

.status-page .status-customize-sections .status-customize-card {
  border-color: color-mix(in srgb, var(--is-success) 38%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-state-success-bg) 66%, var(--is-section-bg));
}

.status-page .status-customize-sections .status-customize-organization {
  border-color: color-mix(in srgb, var(--is-accent) 42%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-accent-soft) 64%, var(--is-section-bg));
}

.status-page .status-customize-sections .status-customize-advanced {
  border-color: color-mix(in srgb, var(--is-state-sillion) 34%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-state-sillion-bg) 62%, var(--is-section-bg));
}

.status-page .status-customize-preview {
  border-left-color: var(--is-success);
  background: color-mix(in srgb, var(--is-state-success-bg) 75%, var(--is-section-bg));
}

@media (max-width: 720px) {
  .status-command-layout .status-board-panel { padding: 9px; }
  .status-board-panel--type .status-type-lane { padding: 9px; }
}

/* No Dark, cada superficie maior precisa manter sua funcao visivel. */
html[data-theme="dark"] .status-page .status-control-deck {
  border-color: #498092;
  background: #183f4c;
}

html[data-theme="dark"] .status-page .status-contract-coverage {
  border-color: #a87555;
  background: #3a3028;
}

html[data-theme="dark"] .status-page .status-contract-item {
  border-color: #5f6f68;
  background: #17383c;
}

html[data-theme="dark"] .status-page .status-command-layout .status-board-panel {
  border-color: #315a60;
  background: #0b353a;
  box-shadow: 0 12px 28px rgba(1, 25, 28, 0.28);
}

html[data-theme="dark"] .status-page .status-board-panel--type .status-type-lane {
  border-color: #3d6974;
  background: #133c45;
}

html[data-theme="dark"] .status-page .status-category-group {
  border-color: rgba(155, 203, 214, 0.18);
}

html[data-theme="dark"] .status-page .status-customize-panel {
  border-color: #a87555;
  background: #0f343a;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-mode {
  border-color: #4f8798;
  background: #183f4c;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-card {
  border-color: #4b9d7a;
  background: #123f36;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-organization {
  border-color: #a87555;
  background: #49382e;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-advanced {
  border-color: #4b8d8b;
  background: #153f40;
}

/* Correção de hierarquia Dark: azul e grafite estruturam; verde só sinaliza operação. */
html[data-theme="dark"] .status-page .status-control-deck {
  border-color: #426f88;
  background: #162d3d;
}

html[data-theme="dark"] .status-page .status-contract-coverage {
  border-color: #a87555;
  background: #382f2d;
}

html[data-theme="dark"] .status-page .status-contract-item {
  border-color: #50636c;
  background: #1c2b33;
}

html[data-theme="dark"] .status-page .status-command-layout .status-board-panel {
  border-color: #304d5f;
  background: #101f2a;
}

html[data-theme="dark"] .status-page .status-board-panel--type .status-type-lane {
  border-color: #3b6074;
  background: #162a36;
}

html[data-theme="dark"] .status-unit.tag-status-operacao {
  background: #162c30;
  border-color: #386f62;
  border-left-color: var(--is-success);
}

html[data-theme="dark"] .status-unit.tag-status-manutencao {
  background: #3b2930;
  border-color: #a85d66;
}

html[data-theme="dark"] .status-unit.tag-status-preventiva {
  background: #1b3442;
  border-color: #558aa1;
}

html[data-theme="dark"] .status-unit.tag-status-sem-motorista {
  background: #403724;
  border-color: #a9823d;
}

html[data-theme="dark"] .status-unit.tag-status-reserva {
  background: #3d3129;
  border-color: #a87555;
}

html[data-theme="dark"] .status-unit.tag-status-sillion {
  background: #19323a;
  border-color: #4a818d;
}

html[data-theme="dark"] .status-page .status-customize-panel {
  border-color: #668095;
  background: #152832;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-mode {
  border-color: #4f819a;
  background: #183847;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-card {
  border-color: #56737c;
  background: #1b2e38;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-organization {
  border-color: #a87555;
  background: #3d3029;
}

html[data-theme="dark"] .status-page .status-customize-sections .status-customize-advanced {
  border-color: #4a7680;
  background: #18323c;
}

/* Contract data is operational context here; editing remains in Cadastros. */
.status-page .status-contract-coverage {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 42px;
  margin: 6px 0;
  padding: 6px 10px;
  border: 1px solid var(--is-border);
  border-left: 3px solid var(--is-success);
  background: var(--is-section-bg);
  overflow: hidden;
}

.status-page .status-contract-coverage[data-tone="warning"] { border-left-color: var(--is-warning); }
.status-page .status-contract-coverage[data-tone="danger"] { border-left-color: var(--is-danger); }
.status-contract-summary { display: flex; align-items: baseline; gap: 7px; flex: 0 0 auto; }
.status-contract-summary > span { color: var(--is-text-muted); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.status-contract-summary > strong { color: var(--is-text); font-size: 1rem; }
.status-contract-summary > small { color: var(--is-text-muted); font-weight: 700; }
.status-contract-summary > em { color: var(--is-info); font-size: 0.72rem; font-style: normal; font-weight: 900; }
.status-contract-types { display: flex; align-items: center; gap: 5px; min-width: 0; overflow: auto hidden; scrollbar-width: none; }
.status-contract-types::-webkit-scrollbar { display: none; }
.status-contract-types > span {
  flex: 0 0 auto;
  padding: 3px 7px;
  border: 1px solid var(--is-border);
  border-radius: 999px;
  color: var(--is-text-muted);
  font-size: 0.7rem;
}
.status-contract-types > span[data-tone="danger"] { border-color: color-mix(in srgb, var(--is-danger) 65%, var(--is-border)); color: var(--is-danger); }
.status-contract-types > span[data-tone="warning"] { border-color: color-mix(in srgb, var(--is-warning) 65%, var(--is-border)); color: var(--is-warning); }

.status-technical-info {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.42fr);
  gap: 10px;
}

.status-technical-group--summary { padding: 12px; }
.status-technical-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; grid-column: 1 / -1; }
.status-technical-title span,
.status-contract-link span { color: var(--is-text-muted); font-size: 0.7rem; font-weight: 900; text-transform: uppercase; }
.status-technical-title strong { color: var(--is-text); font-size: 1rem; }
.status-technical-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-column: 1 / -1; gap: 8px; margin: 0; }
.status-technical-facts div { min-width: 0; padding-top: 7px; border-top: 1px solid var(--is-divider); }
.status-technical-facts dt { color: var(--is-text-muted); font-size: 0.66rem; font-weight: 800; }
.status-technical-facts dd { margin: 2px 0 0; overflow: hidden; color: var(--is-text); font-size: 0.78rem; font-weight: 900; text-overflow: ellipsis; white-space: nowrap; }
.status-contract-link {
  display: grid;
  align-content: center;
  gap: 5px;
  padding: 11px 12px;
  border: 1px solid var(--is-border);
  border-left: 3px solid var(--is-info);
  background: var(--is-technical-bg);
}
.status-contract-link > div { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.status-contract-link strong { color: var(--is-text); }
.status-contract-link > span { text-transform: none; }
.status-contract-link small { color: var(--is-text-muted); font-weight: 700; }
.status-contract-link[data-configured="false"] { border-left-color: var(--is-warning); }
.status-technical-group--condition { padding: 12px; }

@media (max-width: 850px) {
  .status-page .status-contract-coverage { align-items: flex-start; flex-direction: column; }
  .status-contract-types { width: 100%; }
  .status-technical-info { grid-template-columns: 1fr; }
  .status-technical-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* STATUS-TIPOS-DARK-1: cada família recebe uma superfície metálica própria. */
.status-page {
  --status-type-pipa: #176f9d;
  --status-type-pipa-bg: #d7e8ef;
  --status-type-retro: #4e5f9d;
  --status-type-retro-bg: #e0e4f0;
  --status-type-mini-loader: #a86238;
  --status-type-mini-loader-bg: #f0e0d4;
  --status-type-mini-retro: #2f7789;
  --status-type-mini-retro-bg: #d9eaec;
  --status-type-sky: #275f8e;
  --status-type-sky-bg: #dce8f0;
  --status-type-dump: #3e746d;
  --status-type-dump-bg: #dce8e3;
  --status-type-lowboy: #8d5647;
  --status-type-lowboy-bg: #ecdcda;
  --status-type-pickup: #3d5f99;
  --status-type-pickup-bg: #dde4f1;
  --status-type-green-car: #356f72;
  --status-type-green-car-bg: #dceae9;
  --status-type-light-car: #5e4b87;
  --status-type-light-car-bg: #e5e0ef;
  --status-type-other: #536a78;
  --status-type-other-bg: #e1e8eb;
}

html[data-theme="dark"] .status-page {
  --status-type-pipa: #53a8cf;
  --status-type-pipa-bg: #193243;
  --status-type-retro: #8899d2;
  --status-type-retro-bg: #292f45;
  --status-type-mini-loader: #cf8a61;
  --status-type-mini-loader-bg: #392e29;
  --status-type-mini-retro: #5e9eaa;
  --status-type-mini-retro-bg: #20363b;
  --status-type-sky: #6095c3;
  --status-type-sky-bg: #243348;
  --status-type-dump: #63958b;
  --status-type-dump-bg: #263733;
  --status-type-lowboy: #ba7a68;
  --status-type-lowboy-bg: #382d2c;
  --status-type-pickup: #718fc3;
  --status-type-pickup-bg: #273246;
  --status-type-green-car: #5f9493;
  --status-type-green-car-bg: #233838;
  --status-type-light-car: #9785ba;
  --status-type-light-car-bg: #302e40;
  --status-type-other: #899da7;
  --status-type-other-bg: #29343a;
}

.status-page :is(.status-type-lane, .status-category-group)[data-type-tone] {
  --status-type-accent: var(--status-type-other);
  --status-type-surface: var(--status-type-other-bg);
  border: 1px solid color-mix(in srgb, var(--status-type-accent) 52%, #263d50);
  border-left: 5px solid var(--status-type-accent);
  border-radius: var(--is-radius-sm);
  background: var(--status-type-surface);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, var(--status-type-accent) 30%, transparent),
    0 5px 14px color-mix(in srgb, var(--status-type-accent) 8%, transparent);
  padding: 11px;
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="pipa"] {
  --status-type-accent: var(--status-type-pipa);
  --status-type-surface: var(--status-type-pipa-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="retro"] {
  --status-type-accent: var(--status-type-retro);
  --status-type-surface: var(--status-type-retro-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="mini-carregadeira"] {
  --status-type-accent: var(--status-type-mini-loader);
  --status-type-surface: var(--status-type-mini-loader-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="mini-retro"] {
  --status-type-accent: var(--status-type-mini-retro);
  --status-type-surface: var(--status-type-mini-retro-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="sky-munck"] {
  --status-type-accent: var(--status-type-sky);
  --status-type-surface: var(--status-type-sky-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="basculante"] {
  --status-type-accent: var(--status-type-dump);
  --status-type-surface: var(--status-type-dump-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="prancha"] {
  --status-type-accent: var(--status-type-lowboy);
  --status-type-surface: var(--status-type-lowboy-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="caminhonete"] {
  --status-type-accent: var(--status-type-pickup);
  --status-type-surface: var(--status-type-pickup-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="carro-selo"] {
  --status-type-accent: var(--status-type-green-car);
  --status-type-surface: var(--status-type-green-car-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="carro-leve"] {
  --status-type-accent: var(--status-type-light-car);
  --status-type-surface: var(--status-type-light-car-bg);
}

.status-page :is(.status-type-lane, .status-category-group, .status-type-legend-item)[data-type-tone="outros"] {
  --status-type-accent: var(--status-type-other);
  --status-type-surface: var(--status-type-other-bg);
}

.status-page :is(.status-type-head, .status-category-head) {
  margin: -4px -4px 9px;
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb, var(--status-type-accent, var(--is-info)) 42%, transparent);
  border-radius: 6px;
  border-bottom-color: color-mix(in srgb, var(--status-type-accent, var(--is-info)) 38%, transparent);
  background: color-mix(in srgb, var(--status-type-accent, var(--is-info)) 16%, var(--status-type-surface, var(--is-section-bg)));
}

.status-page :is(.status-type-head, .status-category-head)::before {
  background: var(--status-type-accent, var(--is-info));
}

.status-page :is(.status-type-head, .status-category-head) :is(h3, h4) {
  color: color-mix(in srgb, var(--status-type-accent, var(--is-info)) 42%, var(--is-text));
}

.status-page :is(.status-type-head, .status-category-head) > strong {
  border-color: color-mix(in srgb, var(--status-type-accent, var(--is-info)) 68%, #42586a);
  background: color-mix(in srgb, var(--status-type-accent, var(--is-info)) 17%, var(--is-section-bg));
  color: var(--is-text);
}

html[data-theme="dark"] .status-page .status-type-status {
  --status-indicator-color: var(--is-info);
  border: 1px solid color-mix(in srgb, var(--is-border) 78%, transparent);
  border-top-color: color-mix(in srgb, var(--status-indicator-color) 72%, var(--is-border));
  border-radius: 7px;
  background: color-mix(in srgb, var(--status-indicator-color) 11%, rgba(7, 24, 38, 0.72));
  padding: 8px;
}

html[data-theme="dark"] .status-page .status-type-status.operacao { --status-indicator-color: var(--is-success); }
html[data-theme="dark"] .status-page .status-type-status.manutencao_corretiva { --status-indicator-color: var(--is-danger); }
html[data-theme="dark"] .status-page .status-type-status.manutencao_preventiva { --status-indicator-color: var(--is-info); }
html[data-theme="dark"] .status-page .status-type-status.sem_motorista { --status-indicator-color: var(--is-warning); }
html[data-theme="dark"] .status-page .status-type-status.reserva { --status-indicator-color: var(--is-accent); }
html[data-theme="dark"] .status-page .status-type-status.sillion { --status-indicator-color: var(--is-state-sillion); }

html[data-theme="dark"] .status-page .status-type-status-head {
  min-height: 28px;
  margin-bottom: 7px;
  padding: 0 3px 6px;
  border-bottom: 1px solid var(--is-divider);
}

html[data-theme="dark"] .status-page .status-type-status-head h4 {
  color: color-mix(in srgb, var(--status-indicator-color) 62%, #ffffff);
}

html[data-theme="dark"] .status-page .status-type-status-head strong {
  border-color: color-mix(in srgb, var(--status-indicator-color) 74%, #526879);
  background: color-mix(in srgb, var(--status-indicator-color) 17%, rgba(5, 20, 32, 0.68));
  color: #f4f8fb;
}

html[data-theme="dark"] .status-page :is(.status-type-lane, .status-category-group)[data-type-tone] {
  border-color: color-mix(in srgb, var(--status-type-accent) 48%, #3b5363);
  border-left-color: var(--status-type-accent);
  background: var(--status-type-surface);
  box-shadow:
    inset 0 1px 0 color-mix(in srgb, var(--status-type-accent) 20%, transparent),
    0 5px 14px rgba(3, 15, 24, 0.16);
}

html[data-theme="dark"] .status-page :is(.status-type-head, .status-category-head) {
  border-color: color-mix(in srgb, var(--status-type-accent) 38%, #476073);
  background: color-mix(in srgb, var(--status-type-accent) 16%, #162633);
}

html[data-theme="dark"] .status-page :is(.status-type-head, .status-category-head) :is(h3, h4) {
  color: color-mix(in srgb, var(--status-type-accent) 42%, #ffffff);
}

@media (max-width: 720px) {
}

/* O tipo organiza a frota; o estado operacional é a informação visual dominante. */
.status-page :is(.status-type-lane, .status-category-group)[data-type-tone] {
  --status-type-accent: var(--is-border-strong);
  --status-type-surface: var(--is-section-subtle);
  border-left-width: 1px;
  border-left-color: var(--is-border-strong);
  border-color: var(--is-border);
  background: var(--is-section-subtle);
  box-shadow: none;
}

.status-page :is(.status-type-head, .status-category-head) {
  border-color: transparent;
  border-bottom-color: var(--is-divider);
  background: transparent;
}

.status-page :is(.status-type-head, .status-category-head) :is(h3, h4),
.status-page :is(.status-type-head, .status-category-head) > strong {
  color: var(--is-text);
}

html[data-theme="dark"] .status-page :is(.status-type-lane, .status-category-group)[data-type-tone] {
  border-left-color: #3e5a6d;
  border-color: #2c4b5f;
  background: #162a36;
  box-shadow: none;
}

html[data-theme="dark"] .status-page :is(.status-type-head, .status-category-head) {
  border-color: transparent;
  border-bottom-color: #355369;
  background: transparent;
}

html[data-theme="dark"] .status-page :is(.status-type-head, .status-category-head) :is(h3, h4),
html[data-theme="dark"] .status-page :is(.status-type-head, .status-category-head) > strong {
  color: #edf6fb;
}

/* Status: leitura operacional azul, com comandos e cards mais definidos. */
.status-page .status-control-deck {
  border-color: color-mix(in srgb, var(--is-primary) 42%, var(--is-border-strong));
  background: linear-gradient(105deg, color-mix(in srgb, var(--is-brand-deep) 10%, var(--is-section-bg)), var(--is-section-bg) 48%, color-mix(in srgb, var(--is-brand-glacier) 14%, var(--is-section-bg)));
  box-shadow: 0 12px 28px color-mix(in srgb, var(--is-brand-deep) 12%, transparent);
}

.status-page .status-control-deck__areas .filter-button,
.status-page .status-control-deck__customize,
.status-page .status-control-deck__sync {
  min-height: 40px;
  border-radius: 9px;
  font-size: 12px;
}

.status-page .status-control-deck__areas .filter-button {
  border-color: color-mix(in srgb, var(--is-brand-mid) 28%, var(--is-border));
  background: color-mix(in srgb, var(--is-control-bg) 88%, var(--is-brand-glacier));
}

.status-page .status-control-deck__areas .filter-button.active {
  border-color: var(--is-primary);
  background: var(--is-primary);
  color: var(--is-on-primary);
  box-shadow: 0 7px 14px color-mix(in srgb, var(--is-primary) 22%, transparent);
}

.status-page .status-control-deck__customize {
  border-color: color-mix(in srgb, var(--is-brand-mid) 42%, var(--is-border-strong));
  background: color-mix(in srgb, var(--is-brand-mid) 10%, var(--is-control-bg));
  color: var(--is-primary-strong);
}

.status-page .status-control-deck__customize:hover,
.status-page .status-control-deck__customize.is-active {
  border-color: var(--is-primary);
  background: color-mix(in srgb, var(--is-primary) 15%, var(--is-control-bg));
}

.status-page .status-control-deck__sync {
  border-color: var(--is-brand-deep);
  background: var(--is-brand-deep);
  color: var(--is-on-primary);
  box-shadow: 0 8px 16px color-mix(in srgb, var(--is-brand-deep) 24%, transparent);
}

.status-page .status-control-deck__sync:hover { background: var(--is-primary-strong); }

.status-page .status-control-deck__state {
  min-width: 136px;
  padding-left: 10px;
  border-left: 1px solid var(--is-divider);
}

.status-command-layout .status-board-panel {
  padding: 14px;
  border-color: color-mix(in srgb, var(--is-brand-mid) 38%, var(--is-border));
  background: linear-gradient(180deg, color-mix(in srgb, var(--is-brand-glacier) 13%, var(--is-section-bg)), var(--is-section-bg) 180px);
  box-shadow: 0 18px 34px color-mix(in srgb, var(--is-brand-deep) 10%, transparent);
}

.status-page .status-category-group {
  margin-top: 8px;
  padding: 10px;
  border: 1px solid color-mix(in srgb, var(--is-brand-mid) 22%, var(--is-border));
  border-radius: var(--is-radius-sm);
  background: color-mix(in srgb, var(--is-technical-bg) 38%, var(--is-section-bg));
}

.status-page .status-category-group:first-child { margin-top: 0; }

.status-page .status-category-head {
  min-height: 28px;
  margin: 0 0 8px;
  padding-bottom: 7px;
  border-bottom: 1px solid color-mix(in srgb, var(--is-brand-mid) 18%, var(--is-divider));
}

.status-page .status-category-head::before { background: var(--is-primary); }
.status-page .status-category-head h4 { font-size: 12px; }
.status-page .status-unit-grid { gap: 9px; }

.status-page .status-unit {
  --status-card-accent: var(--is-primary);
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto auto;
  align-content: center;
  gap: 3px 9px;
  min-height: 98px;
  padding: 11px 12px;
  border: 1px solid color-mix(in srgb, var(--status-card-accent) 36%, var(--is-border));
  border-left: 4px solid var(--status-card-accent);
  border-radius: 10px;
  background: color-mix(in srgb, var(--is-section-bg) 88%, var(--status-card-accent));
  box-shadow: 0 1px 0 color-mix(in srgb, #ffffff 28%, transparent), 0 6px 14px color-mix(in srgb, var(--is-brand-deep) 7%, transparent);
}

.status-page .status-unit::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 42px;
  height: 2px;
  border-radius: 0 10px 0 2px;
  background: color-mix(in srgb, var(--status-card-accent) 64%, transparent);
  content: "";
}

.status-page .status-unit--compact { min-height: 62px; }
.status-page .status-unit--essential { min-height: 82px; }
.status-page .status-unit--complete { min-height: 158px; }
.status-page .status-unit-head { display: contents; }
.status-page .status-unit-tag {
  grid-column: 1;
  grid-row: 1;
  color: var(--is-text);
  font-size: 17px;
  letter-spacing: 0.02em;
}
.status-page .status-unit-state {
  grid-column: 2;
  grid-row: 1;
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  min-width: 0;
  color: var(--status-card-accent);
  font-size: 10px;
  font-weight: 900;
  white-space: nowrap;
}

.status-page .status-unit-state .status-dot {
  position: static;
  display: block;
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  border: 0;
  box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 15%, transparent);
}

.status-page .status-unit-meta {
  grid-column: 1 / -1;
  grid-row: 2;
  color: var(--is-muted);
  font-size: 11px;
  font-weight: 750;
}

.status-page .status-unit--essential .status-unit-reason {
  grid-column: 1 / -1;
  grid-row: 3;
  overflow: hidden;
  color: var(--is-text);
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-page .status-unit-complete-content { grid-column: 1 / -1; gap: 6px; margin-top: 2px; }
.status-page .status-unit-reason { color: var(--is-text); font-size: 12px; }
.status-page .status-unit-facts { grid-template-columns: 1fr 1fr; gap: 4px 10px; }
.status-page .status-unit-facts span { color: var(--is-muted); }

/* O estado é distinguido por azul, borda e rotulo, sem transformar o painel em semaforo. */
.status-page .status-unit.tag-status-operacao { --status-card-accent: var(--is-success); }
.status-page .status-unit.tag-status-manutencao { --status-card-accent: var(--is-danger); }
.status-page .status-unit.tag-status-preventiva { --status-card-accent: var(--is-info); }
.status-page .status-unit.tag-status-sem-motorista { --status-card-accent: var(--is-warning); }
.status-page .status-unit.tag-status-reserva { --status-card-accent: var(--is-accent); }
.status-page .status-unit.tag-status-sillion { --status-card-accent: var(--is-state-sillion); }

.status-page .status-unit:hover,
.status-page .status-unit:focus-visible {
  border-color: color-mix(in srgb, var(--status-card-accent) 78%, var(--is-border));
  background: color-mix(in srgb, var(--status-card-accent) 12%, var(--is-section-bg));
  box-shadow: 0 12px 22px color-mix(in srgb, var(--status-card-accent) 16%, transparent);
}

.status-page-footer {
  display: grid;
  grid-template-columns: minmax(180px, auto) 1fr;
  align-items: center;
  gap: 18px;
  width: min(100%, 1320px);
  margin: 0 auto;
  border-top: 1px solid color-mix(in srgb, var(--is-brand-mid) 30%, var(--is-divider));
  padding: 16px 4px 8px;
}

.status-page-footer div { display: grid; gap: 2px; }
.status-page-footer__eyebrow { color: var(--is-primary); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.status-page-footer strong { color: var(--is-text); font-size: 12px; }
.status-page-footer p { margin: 0; color: var(--is-muted); font-size: 11px; font-weight: 650; text-align: right; }

html[data-theme="dark"] .status-page .status-control-deck {
  border-color: #376c91;
  background: linear-gradient(105deg, #17364f, #162b3d 52%, #1c4058);
}
html[data-theme="dark"] .status-page .status-control-deck__areas .filter-button { background: #203c50; border-color: #3e6883; color: #dcebf6; }
html[data-theme="dark"] .status-page .status-control-deck__areas .filter-button.active { background: #3d89bc; border-color: #70b9e2; color: #f7fbff; }

/* STATUS-COMMANDS-2: faixa principal compacta e filtros sob demanda. */
.status-page .status-control-deck {
  display: block;
  width: min(100%, 1640px);
  padding: 6px 8px;
}

.status-page .status-control-deck__bar {
  display: grid;
  grid-template-columns: auto minmax(170px, 1fr) auto;
  min-height: 34px;
  align-items: center;
  gap: 10px;
}

.status-page .status-control-deck__state {
  justify-self: end;
}

.status-page .status-control-deck__actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.status-page .status-control-deck__filters {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(160px, 210px);
  gap: 8px;
  margin-top: 6px;
  padding-top: 6px;
  border-top: 1px solid var(--is-divider, var(--is-border));
}

.status-page .status-control-deck__filters[hidden] { display: none !important; }

.status-page .status-control-deck :is(input, select, .filter-button) {
  box-sizing: border-box;
  height: 34px;
  min-height: 34px;
}

.status-page .status-control-deck__actions .filter-button {
  min-width: 78px;
  padding: 0 10px;
  white-space: nowrap;
}

.status-page #statusFiltersToggle.active {
  border-color: var(--is-primary);
  background: var(--is-control-active);
  color: var(--is-primary);
}

@media (max-width: 900px) {
  .status-page .status-control-deck__bar {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .status-page .status-control-deck__state { justify-self: end; }
  .status-page .status-control-deck__actions { grid-column: 1 / -1; justify-content: flex-end; }
}

@media (max-width: 620px) {
  .status-page .status-control-deck__bar { grid-template-columns: 1fr; gap: 6px; }
  .status-page .status-control-deck__areas { grid-row: 1; border: 0; padding: 0; }
  .status-page .status-control-deck__state {
    grid-row: 2;
    width: 100%;
    grid-template-columns: auto 1fr;
    justify-self: stretch;
    border: 0;
    border-top: 1px solid var(--is-divider, var(--is-border));
    padding: 5px 0 0;
  }
  .status-page .status-control-deck__state > span:last-child { text-align: right; }
  .status-page .status-control-deck__actions {
    grid-row: 3;
    grid-column: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .status-page .status-control-deck__actions .filter-button { width: 100%; min-width: 0; }
  .status-page .status-control-deck__filters { grid-template-columns: 1fr; }
  .status-page .status-control-deck__search { grid-area: auto; order: 1; }
  .status-page .status-control-deck__filter { grid-area: auto; order: 2; }
}
html[data-theme="dark"] .status-page .status-control-deck__customize { background: #1a3448; border-color: #5885a0; color: #cceaff; }
html[data-theme="dark"] .status-page .status-control-deck__sync { background: #2c75a5; border-color: #78c0e7; color: #f7fbff; }
html[data-theme="dark"] .status-command-layout .status-board-panel { border-color: #315978; background: linear-gradient(180deg, #1a374d, #142a3a 180px); }
html[data-theme="dark"] .status-page .status-category-group { border-color: #315a74; background: #172f40; }
html[data-theme="dark"] .status-page .status-category-head { border-color: #31556d; }
html[data-theme="dark"] .status-page .status-unit { background: #1b3445; border-color: color-mix(in srgb, var(--status-card-accent) 52%, #365d73); box-shadow: 0 1px 0 rgba(221, 243, 255, .08), 0 8px 16px rgba(3, 17, 29, .2); }
html[data-theme="dark"] .status-page .status-unit:hover,
html[data-theme="dark"] .status-page .status-unit:focus-visible { background: color-mix(in srgb, var(--status-card-accent) 18%, #1b3445); }
html[data-theme="dark"] .status-page-footer { border-color: #31546c; }

@media (max-width: 720px) {
  .status-page .status-control-deck__state { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--is-divider); padding: 7px 2px 0; }
  .status-page-footer { grid-template-columns: 1fr; gap: 7px; }
  .status-page-footer p { text-align: left; }
}

@media (min-width: 721px) and (max-width: 900px) {
  .status-page .status-control-deck {
    padding: 5px 6px;
  }

  .status-page .status-control-deck__bar {
    grid-template-columns: auto minmax(0, 1fr);
    min-height: 30px;
    gap: 6px 8px;
  }

  .status-page .status-control-deck__areas .filter-button,
  .status-page .status-control-deck__actions .filter-button {
    height: 32px;
    min-height: 32px;
    padding-inline: 8px;
  }

  .status-page .status-control-deck__actions {
    grid-column: 2;
    grid-row: 1;
    justify-content: end;
  }

  .status-page .status-control-deck__state {
    grid-column: 1 / -1;
    justify-self: stretch;
    min-height: 24px;
    padding-top: 4px;
    border-top: 1px solid var(--is-divider, var(--is-border));
  }
}

@media (min-width: 481px) and (max-width: 720px) {
  .status-page .status-unit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-unit--complete { min-height: 128px; }
}

@media (max-width: 480px) {
  .status-page .status-unit-grid { grid-template-columns: 1fr; }
  .status-page .status-unit--complete { min-height: 138px; }
}

/* Paleta do conceito Stitch: azul-noite, aco, sinal e azul-gelo. */
.status-page {
  --status-blue-night: #0b2943;
  --status-blue-steel: #20546c;
  --status-blue-mid: #176c9e;
  --status-blue-signal: #168de2;
  --status-blue-ice: #dcecf5;
}

.status-page .status-control-deck__customize,
.status-page .status-customize-panel,
.status-page .status-contract-coverage {
  border-color: color-mix(in srgb, var(--status-blue-mid) 38%, var(--is-border));
  background: color-mix(in srgb, var(--status-blue-ice) 52%, var(--is-section-bg));
}

.status-page .status-customize-sections :is(.status-customize-mode, .status-customize-card, .status-customize-organization, .status-customize-advanced) {
  border-color: color-mix(in srgb, var(--status-blue-mid) 28%, var(--is-border));
  background: color-mix(in srgb, var(--status-blue-ice) 40%, var(--is-section-bg));
}

.status-page .status-customize-panel .is-customize-options button.is-active {
  border-color: var(--status-blue-signal);
  background: color-mix(in srgb, var(--status-blue-signal) 14%, var(--is-control-bg));
  color: var(--status-blue-night);
}

html[data-theme="dark"] .status-page {
  --status-blue-night: #0b1f33;
  --status-blue-steel: #173f5c;
  --status-blue-mid: #236c98;
  --status-blue-signal: #66b9e7;
  --status-blue-ice: #b8d8e8;
}

html[data-theme="dark"] .status-page .status-control-deck,
html[data-theme="dark"] .status-page .status-customize-panel,
html[data-theme="dark"] .status-page .status-contract-coverage {
  border-color: #356884;
  background: linear-gradient(135deg, #122d43, #193b52);
}

html[data-theme="dark"] .status-page .status-customize-sections :is(.status-customize-mode, .status-customize-card, .status-customize-organization, .status-customize-advanced) {
  border-color: #376783;
  background: #1a364a;
}

html[data-theme="dark"] .status-page .status-customize-panel .is-customize-options button.is-active {
  border-color: var(--status-blue-signal);
  background: #235675;
  color: #f1f9fd;
}

/* Cobertura: detalhe sob demanda, sem roubar o foco visual do Status. */
.status-page .status-control-deck { grid-template-columns: auto minmax(200px, 1fr) minmax(145px, 180px) auto auto auto auto; }
.status-page .status-control-deck__coverage { min-height: 40px; border-color: color-mix(in srgb, var(--is-info) 44%, var(--is-border-strong)); background: color-mix(in srgb, var(--is-info) 10%, var(--is-control-bg)); color: var(--is-primary-strong); font-size: 12px; font-weight: 900; }
.status-page .status-control-deck__coverage:hover, .status-page .status-control-deck__coverage.is-active { border-color: var(--is-info); background: color-mix(in srgb, var(--is-info) 18%, var(--is-control-bg)); }
.status-coverage-panel { position: absolute; z-index: 36; top: calc(100% + 7px); right: 8px; display: grid; width: min(540px, calc(100vw - 28px)); gap: 9px; border: 1px solid color-mix(in srgb, var(--is-info) 36%, var(--is-border-strong)); border-radius: 7px; background: var(--is-section-bg); box-shadow: 0 22px 42px rgba(0, 0, 0, .24); padding: 11px; }
.status-coverage-panel[hidden] { display: none; }
.status-coverage-panel__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.status-coverage-panel__head > div { display: grid; gap: 2px; }
.status-coverage-panel__head strong { color: var(--is-text); font-size: 14px; }
.status-coverage-panel__close { display: grid; width: 29px; height: 29px; place-items: center; border: 1px solid var(--is-border); border-radius: 5px; background: var(--is-control-bg); color: var(--is-text); font: inherit; font-size: 19px; line-height: 1; cursor: pointer; }
.status-coverage-summary { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 3px 10px; border: 1px solid var(--is-divider); border-radius: 5px; background: var(--is-control-bg); padding: 8px 9px; }
.status-coverage-summary > strong { grid-row: 1 / span 2; color: var(--is-primary); font-size: 24px; line-height: 1; }
.status-coverage-summary > span, .status-coverage-summary > small { color: var(--is-text-muted); font-size: 11px; font-weight: 750; }
.status-coverage-summary > b { color: var(--is-success); font-size: 11px; }
.status-coverage-summary > b.is-deficit { color: var(--is-danger); }
.status-coverage-summary > small { grid-column: 2 / -1; }
.status-coverage-list { display: grid; gap: 4px; max-height: min(42vh, 320px); overflow-y: auto; overscroll-behavior: contain; padding: 1px 5px 1px 1px; scrollbar-gutter: stable; }
.status-coverage-list::-webkit-scrollbar { width: 8px; }
.status-coverage-list::-webkit-scrollbar-track { border-radius: 8px; background: color-mix(in srgb, var(--is-control-bg) 72%, var(--is-section-bg)); }
.status-coverage-list::-webkit-scrollbar-thumb { border: 2px solid transparent; border-radius: 8px; background: color-mix(in srgb, var(--is-primary) 72%, var(--is-section-bg)); background-clip: padding-box; }
.status-coverage-list { scrollbar-color: color-mix(in srgb, var(--is-primary) 72%, var(--is-section-bg)) color-mix(in srgb, var(--is-control-bg) 72%, var(--is-section-bg)); scrollbar-width: thin; }
.status-coverage-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2px 10px; border: 1px solid var(--is-border); border-left: 3px solid var(--is-success); border-radius: 5px; background: var(--is-control-bg); padding: 7px 9px; color: var(--is-text); font: inherit; text-align: left; cursor: pointer; }
.status-coverage-row:hover { border-color: var(--is-info); background: var(--is-control-hover); }
.status-coverage-row > span { overflow: hidden; color: var(--is-text); font-size: 12px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.status-coverage-row > strong { color: var(--is-primary); font-size: 13px; }
.status-coverage-row > small { grid-column: 1 / -1; color: var(--is-text-muted); font-size: 10px; font-weight: 720; }
.status-coverage-row > em { grid-column: 1 / -1; color: var(--is-muted); font-size: 10px; font-style: normal; font-weight: 700; }
.status-coverage-row--warning { border-left-color: var(--is-warning); }
.status-coverage-row--danger { border-left-color: var(--is-danger); }
.status-type-coverage {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "value" "track";
  align-items: center;
  gap: 3px;
  width: 64px;
  min-height: 24px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  padding: 2px 3px;
  color: var(--is-success);
  font: inherit;
  cursor: pointer;
  transition: background .16s ease;
}
.status-type-coverage:hover {
  background: color-mix(in srgb, currentColor 7%, transparent);
}
.status-type-coverage__track { grid-area: track; display: block; width: 100%; height: 4px; overflow: hidden; border-radius: 2px; background: color-mix(in srgb, var(--is-text) 14%, transparent); }
.status-type-coverage__track > i { display: block; width: var(--coverage-percent, 0%); height: 100%; border-radius: inherit; background: currentColor; box-shadow: 0 0 8px color-mix(in srgb, currentColor 55%, transparent); }

/* Compact operational workbench: the dialog is for decisions, not a second page. */
.status-page .status-menu-panel {
  width: min(920px, calc(100vw - 24px));
  max-height: min(760px, calc(100vh - 24px));
}

.status-page .status-menu-head {
  min-height: 58px;
  padding: 10px 14px;
}

.status-page .status-menu-head strong { font-size: 24px; }
.status-menu-identity { grid-template-columns: auto auto minmax(0, 1fr); align-items: center; gap: 3px 10px; }
.status-menu-identity > span:first-child { display: none; }
.status-menu-identity small { grid-column: 2 / -1; font-size: 11px; }
.status-menu-status { grid-column: 1; grid-row: 1 / 3; align-self: center; }

.status-workbench-tabs { min-height: 40px; }
.status-workbench-tab { min-height: 40px; padding: 0 13px; font-size: 12px; }
.status-workbench-panel { padding: 12px 14px; }
.status-workbench-panel.active[data-status-workbench-panel="situation"] { gap: 8px; }
.status-situation-section { gap: 7px; padding: 9px 11px; }
.status-situation-section-head { display: flex; align-items: baseline; gap: 8px; padding: 0; border: 0; }
.status-situation-section-head span { font-size: 10px; }
.status-situation-section-head p { font-size: 11px; }

.status-page .status-menu-options { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; }
.status-page .status-menu-option { min-height: 48px; grid-template-columns: auto minmax(0, 1fr); padding: 6px 8px; }
.status-page .status-menu-option small { display: none; }
.status-page .status-menu-option strong { font-size: 11px; line-height: 1.1; }

.status-page .status-note-form { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; padding: 10px; }
.status-page .status-note-form > label:nth-child(2) { grid-column: span 2; }
.status-page .status-note-form textarea { min-height: 58px; resize: vertical; }
.status-page .status-situation-form-head { grid-column: 1 / -1; min-height: 24px; }
.status-page .status-situation-form-head > p { font-size: 11px; }
.status-page .status-note-form label { font-size: 10px; }
.status-page .status-note-form select,
.status-page .status-note-form input { min-height: 34px; }
.status-page .status-faults-section { gap: 7px; padding: 9px; }
.status-faults-head p { display: none; }
.status-fault-row { grid-template-columns: 1.1fr 1.15fr 1.25fr .8fr; gap: 7px; padding: 8px; }
.status-fault-row-head { min-height: 20px; }
.status-fault-row-head strong { font-size: 11px; }
.status-fault-row .status-fault-description { grid-column: 1 / -1; }
.status-fault-row select,
.status-fault-row input { min-height: 32px; font-size: 12px; }
.status-fault-summary { padding-top: 6px; font-size: 11px; }
.status-page .status-note-form .status-substitute-field { grid-column: span 2; gap: 4px; padding: 8px; }
.status-page .status-note-form .status-substitute-field small { display: none; }
.status-workbench-actions { margin: 0; padding: 8px 0 0; }
.status-workbench-actions button { min-height: 34px; min-width: 118px; }

.status-workbench-panel-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.status-workbench-panel-head p { font-size: 11px; text-align: right; }
.status-technical-info { display: block; }
.status-technical-group--summary { padding: 0; border: 0; background: transparent; }
.status-technical-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 12px; }
.status-technical-facts div { padding: 7px 0; }
.status-technical-facts div:last-child { grid-column: span 2; }

.status-workbench-history { gap: 0; }
.status-workbench-event--dense {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr) auto;
  align-items: start;
  gap: 8px;
  padding: 9px 0 9px 2px;
  border-bottom: 1px solid var(--is-divider);
  background: transparent;
}
.status-workbench-event--dense::before,
.status-workbench-event--dense::after { display: none; }
.status-workbench-event__dot { width: 7px; height: 7px; margin-top: 5px; border-radius: 50%; }
.status-workbench-event__main { min-width: 0; }
.status-workbench-event__main strong { display: block; color: var(--is-text); font-size: 12px; }
.status-workbench-event__main p { margin: 2px 0 0; color: var(--is-text-muted); font-size: 11px; line-height: 1.3; }
.status-workbench-event--dense time { color: var(--is-text-muted); font-size: 10px; font-weight: 750; white-space: nowrap; }

@media (max-width: 760px) {
  .status-page .status-menu-panel { width: 100vw; max-height: 100vh; }
  .status-page .status-menu-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .status-page .status-note-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-note-form > label:nth-child(2),
  .status-page .status-note-form .status-substitute-field { grid-column: 1 / -1; }
  .status-fault-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-technical-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-technical-facts div:last-child { grid-column: 1 / -1; }
  .status-workbench-panel-head { display: grid; }
  .status-workbench-panel-head p { text-align: left; }
}

/* Status workbench: wide enough for work, compact enough to keep context visible. */
.status-page .status-menu {
  display: grid;
  place-items: center;
  padding: 20px;
  background: color-mix(in srgb, var(--is-bg) 40%, rgba(5, 18, 32, .65));
}

.status-page .status-menu-panel {
  width: min(1040px, 100%);
  height: auto;
  max-height: min(780px, calc(100vh - 40px));
  padding: 0;
  overflow: hidden;
  border-radius: 12px;
  background: var(--is-surface);
}

.status-page .status-menu-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 68px;
  padding: 11px 16px;
  border-bottom: 1px solid var(--is-divider);
  background: color-mix(in srgb, var(--is-surface-strong) 86%, var(--is-primary) 14%);
}

.status-menu-identity { display: grid; grid-template-columns: auto auto minmax(0, 1fr); align-items: center; gap: 2px 10px; }
.status-menu-identity > span:first-child { display: none; }
.status-page .status-menu-head strong { grid-column: 1; grid-row: 1 / 3; font-size: 28px; line-height: 1; }
.status-menu-identity small { grid-column: 2; grid-row: 1; overflow: hidden; color: var(--is-text); font-size: 13px; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.status-menu-status { grid-column: 2; grid-row: 2; justify-self: start; min-height: 20px; padding: 0 7px; font-size: 10px; }
.status-page .status-menu-head button { align-self: center; }

.status-workbench-tabs { display: flex; width: 100%; min-height: 42px; margin: 0; padding: 0 12px; border: 0; border-bottom: 1px solid var(--is-divider); border-radius: 0; background: var(--is-surface); }
.status-workbench-tab { min-height: 42px; padding: 0 14px; border-radius: 0; font-size: 12px; }
.status-workbench-tab.active { background: color-mix(in srgb, var(--is-primary) 8%, transparent); color: var(--is-primary); box-shadow: inset 0 -3px 0 var(--is-primary); }
.status-workbench-tab::after { display: none; }

.status-workbench-panel { max-height: calc(min(780px, 100vh - 40px) - 112px); padding: 12px 16px; overflow: auto; }
.status-workbench-panel.active[data-status-workbench-panel="situation"] { gap: 8px; }
.status-situation-section { padding: 8px 10px; border-radius: 8px; }
.status-situation-section-head { min-height: 18px; }
.status-page .status-menu-options { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 5px; }
.status-page .status-menu-option { min-height: 40px; padding: 5px 7px; border-radius: 6px; }
.status-page .status-menu-option .status-dot { width: 8px; height: 8px; }
.status-page .status-menu-option strong { font-size: 10px; }

.status-page .status-note-form { grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; padding: 9px; border-radius: 8px; }
.status-page .status-note-form > label:nth-child(2) { grid-column: span 2; }
.status-page .status-note-form textarea { min-height: 42px; }
.status-page .status-note-form .status-substitute-field { grid-column: span 2; min-height: 0; }
.status-page .status-note-form .status-substitute-field small { display: none; }

.status-page .status-faults-section { padding: 9px; border-radius: 8px; }
.status-faults-head { align-items: center; }
.status-faults-head > div { display: flex; align-items: baseline; gap: 8px; }
.status-faults-head p { display: block; font-size: 10px; }
.status-fault-list { gap: 6px; }
.status-fault-row { grid-template-columns: 1fr 1fr 1.2fr .72fr; gap: 6px; padding: 8px; border-radius: 7px; }
.status-fault-row-head { min-height: 18px; }
.status-fault-row .status-fault-description { grid-column: 1 / -1; }
.status-fault-row select,
.status-fault-row input { min-height: 32px; }
.status-fault-quick-picks { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.status-fault-quick-picks > span { color: var(--is-text-muted); font-size: 10px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.status-fault-quick-picks button { min-height: 25px; border: 1px solid color-mix(in srgb, var(--is-primary) 35%, var(--is-border)); border-radius: 999px; background: color-mix(in srgb, var(--is-primary) 7%, var(--is-surface)); color: var(--is-text); cursor: pointer; font-size: 10px; font-weight: 800; padding: 0 8px; }
.status-fault-quick-picks button:hover { border-color: var(--is-primary); background: color-mix(in srgb, var(--is-primary) 14%, var(--is-surface)); }
.status-fault-summary { padding-top: 6px; }
.status-fault-criticality { display: inline-flex; min-height: 32px; align-items: center; justify-content: center; align-self: end; border: 1px solid var(--is-border-strong); border-radius: 6px; background: var(--is-surface-strong); color: var(--is-text); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.status-fault-row[data-criticality="alta"] .status-fault-criticality { border-color: color-mix(in srgb, var(--is-danger) 56%, var(--is-border)); background: color-mix(in srgb, var(--is-danger) 12%, var(--is-surface)); color: var(--is-danger); }
.status-fault-row[data-criticality="media"] .status-fault-criticality { border-color: color-mix(in srgb, var(--is-warning) 56%, var(--is-border)); background: color-mix(in srgb, var(--is-warning) 12%, var(--is-surface)); color: var(--is-warning); }
.status-fault-row[data-criticality="baixa"] .status-fault-criticality { border-color: color-mix(in srgb, var(--is-info) 56%, var(--is-border)); background: color-mix(in srgb, var(--is-info) 12%, var(--is-surface)); color: var(--is-info); }
.status-fault-criticality-source { display: none !important; }

.status-workbench-actions {
  position: static;
  margin: 0 -16px;
  padding: 9px 16px;
  border-top: 1px solid var(--is-divider);
  background: var(--is-surface);
}

/* Quadro operacional: a cor sinaliza a situacao, sem competir com os dados. */
.status-page .status-board-panel {
  background: color-mix(in srgb, var(--is-section-bg) 88%, var(--is-bg));
  border-color: color-mix(in srgb, var(--is-brand-mid) 30%, var(--is-border));
  box-shadow: 0 10px 24px color-mix(in srgb, var(--is-brand-deep) 8%, transparent);
}

.status-page .status-lanes {
  display: grid;
  gap: 10px;
}

.status-page .status-lane {
  --status-lane-accent: var(--is-primary);
  padding: 10px 11px 11px;
  border: 1px solid color-mix(in srgb, var(--status-lane-accent) 26%, var(--is-border));
  border-left: 3px solid var(--status-lane-accent);
  border-radius: 9px;
  background: color-mix(in srgb, var(--is-section-bg) 94%, var(--status-lane-accent));
}

.status-page .status-lane:first-child {
  padding-top: 10px;
  border-top: 1px solid color-mix(in srgb, var(--status-lane-accent) 26%, var(--is-border));
}

.status-page .status-lane.operacao { --status-lane-accent: var(--is-success); }
.status-page .status-lane.manutencao_corretiva { --status-lane-accent: var(--is-danger); }
.status-page .status-lane.manutencao_preventiva { --status-lane-accent: var(--is-info); }
.status-page .status-lane.sem_motorista { --status-lane-accent: var(--is-warning); }
.status-page .status-lane.reserva { --status-lane-accent: var(--is-accent); }
.status-page .status-lane.sillion { --status-lane-accent: var(--is-state-sillion); }

.status-page .status-lane-marker {
  background: var(--status-lane-accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-lane-accent) 14%, transparent);
}

.status-page .status-lane-head {
  min-height: 25px;
  margin: 0 0 9px;
  padding: 0 1px 8px;
  border-bottom: 1px solid color-mix(in srgb, var(--status-lane-accent) 22%, var(--is-divider));
}

.status-page .status-lane-head h3 { color: var(--status-lane-accent); }

.status-page .status-lane-head strong {
  border-color: color-mix(in srgb, var(--status-lane-accent) 45%, var(--is-border));
  background: color-mix(in srgb, var(--status-lane-accent) 10%, var(--is-control-bg));
  color: var(--status-lane-accent);
}

.status-page .status-category-groups { gap: 8px; }

.status-page .status-category-group,
.status-page .status-category-group:first-child {
  padding: 8px;
  border: 1px solid color-mix(in srgb, var(--is-border) 84%, var(--is-brand-mid));
  border-radius: 7px;
  background: color-mix(in srgb, var(--is-surface) 88%, var(--is-section-bg));
}

.status-page .status-category-head {
  min-height: 25px;
  margin: 0 0 7px;
  padding: 0 1px 7px;
  border-bottom-color: color-mix(in srgb, var(--is-brand-mid) 25%, var(--is-divider));
}

.status-page .status-category-head::before { background: var(--is-primary); }

.status-page .status-category-head strong {
  border-color: color-mix(in srgb, var(--is-primary) 36%, var(--is-border));
  background: color-mix(in srgb, var(--is-primary) 8%, var(--is-control-bg));
  color: var(--is-primary-strong);
}

.status-page .status-unit {
  background: color-mix(in srgb, var(--is-surface) 88%, var(--status-card-accent));
  box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 24%, transparent), 0 5px 12px color-mix(in srgb, var(--is-brand-deep) 6%, transparent);
}

html[data-theme="dark"] .status-page .status-board-panel {
  background: #10283a;
  border-color: #315b78;
}

html[data-theme="dark"] .status-page .status-lane {
  background: color-mix(in srgb, #132d40 94%, var(--status-lane-accent));
  border-color: color-mix(in srgb, var(--status-lane-accent) 36%, #315b78);
}

html[data-theme="dark"] .status-page .status-category-group,
html[data-theme="dark"] .status-page .status-category-group:first-child {
  background: #142f42;
  border-color: #315a73;
}

html[data-theme="dark"] .status-page .status-unit {
  background: color-mix(in srgb, #173448 91%, var(--status-card-accent));
}

/* O card inteiro funciona como indicador: a situacao deve ser reconhecida antes da leitura. */
.status-page .status-unit {
  --status-card-fill: #245b7a;
  border-color: color-mix(in srgb, #ffffff 34%, var(--status-card-fill));
  border-left-color: color-mix(in srgb, #ffffff 70%, var(--status-card-fill));
  background:
    linear-gradient(142deg, rgba(255, 255, 255, .22) 0%, rgba(255, 255, 255, .07) 34%, transparent 58%),
    linear-gradient(180deg, color-mix(in srgb, var(--status-card-fill) 90%, #dff5ff) 0%, var(--status-card-fill) 54%, color-mix(in srgb, var(--status-card-fill) 84%, #09283b) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .32),
    inset 0 -1px 0 rgba(3, 24, 38, .28),
    0 7px 16px color-mix(in srgb, var(--status-card-fill) 26%, transparent);
  backdrop-filter: blur(7px) saturate(1.08);
}

.status-page .status-unit.tag-status-operacao { --status-card-fill: #147653; }
.status-page .status-unit.tag-status-manutencao { --status-card-fill: #963b45; }
.status-page .status-unit.tag-status-preventiva { --status-card-fill: #28629d; }
.status-page .status-unit.tag-status-sem-motorista { --status-card-fill: #795700; }
.status-page .status-unit.tag-status-reserva { --status-card-fill: #98500f; }
.status-page .status-unit.tag-status-sillion { --status-card-fill: #684c91; }

.status-page .status-unit .status-unit-tag,
.status-page .status-unit .status-unit-state,
.status-page .status-unit .status-unit-meta,
.status-page .status-unit .status-unit-reason,
.status-page .status-unit .status-unit-facts span {
  color: #ffffff;
}

.status-page .status-unit .status-unit-meta,
.status-page .status-unit .status-unit-facts span { color: rgba(255, 255, 255, .82); }

.status-page .status-unit .status-unit-state .status-dot {
  background: #ffffff;
  color: #ffffff;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .2);
}

.status-page .status-unit::after {
  width: 52%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .72));
}

/* Grade operacional compacta: mais equipamentos visiveis sem sacrificar o estado. */
.status-page .status-unit-grid,
.status-page .status-board-panel--compact .status-unit-grid,
.status-page .status-type-status .status-unit-grid {
  grid-template-columns: repeat(auto-fill, minmax(176px, 1fr));
  gap: 6px;
}

.status-page .status-unit-grid--complete,
.status-page .status-board-panel--compact .status-unit-grid--complete,
.status-page .status-type-status .status-unit-grid--complete {
  grid-template-columns: repeat(auto-fill, minmax(224px, 1fr));
}

.status-page .status-unit {
  min-height: 72px;
  gap: 2px 7px;
  padding: 8px 9px;
  border-left-width: 3px;
  border-radius: 8px;
}

.status-page .status-unit--compact { min-height: 50px; }
.status-page .status-unit--essential { min-height: 64px; }
.status-page .status-unit--complete { min-height: 118px; }
.status-page .status-unit-tag { font-size: 15px; }
.status-page .status-unit-state { gap: 4px; font-size: 9px; }
.status-page .status-unit-state .status-dot { width: 7px; height: 7px; }
.status-page .status-unit-meta { font-size: 10px; }
.status-page .status-unit--essential .status-unit-reason,
.status-page .status-unit-reason { font-size: 11px; }
.status-page .status-unit-complete-content { gap: 4px; margin-top: 1px; }
.status-page .status-unit-facts { gap: 3px 7px; font-size: 10px; }

.status-page .status-unit:hover,
.status-page .status-unit:focus-visible,
html[data-theme="dark"] .status-page .status-unit:hover,
html[data-theme="dark"] .status-page .status-unit:focus-visible {
  border-color: rgba(255, 255, 255, .78);
  background:
    linear-gradient(142deg, rgba(255, 255, 255, .3) 0%, rgba(255, 255, 255, .09) 36%, transparent 60%),
    linear-gradient(180deg, color-mix(in srgb, var(--status-card-fill) 84%, #eaf8ff) 0%, color-mix(in srgb, var(--status-card-fill) 94%, #ffffff) 54%, color-mix(in srgb, var(--status-card-fill) 82%, #09283b) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .4),
    inset 0 -1px 0 rgba(3, 24, 38, .3),
    0 11px 24px color-mix(in srgb, var(--status-card-fill) 38%, transparent);
}

html[data-theme="dark"] .status-page .status-unit {
  border-color: color-mix(in srgb, #ffffff 30%, var(--status-card-fill));
  border-left-color: color-mix(in srgb, #ffffff 68%, var(--status-card-fill));
  background:
    linear-gradient(142deg, rgba(255, 255, 255, .18) 0%, rgba(255, 255, 255, .05) 35%, transparent 58%),
    linear-gradient(180deg, color-mix(in srgb, var(--status-card-fill) 93%, #bfe8ff) 0%, color-mix(in srgb, var(--status-card-fill) 94%, #102d40) 100%);
}

@media (max-width: 560px) {
  .status-page .status-lane,
  .status-page .status-lane:first-child { padding: 8px; }

  .status-page .status-category-group,
  .status-page .status-category-group:first-child { padding: 7px; }
}

/* Previa isolada: linguagem visual escura inspirada na referencia do usuario. */
html[data-theme="dark"] {
  --is-page-bg: #090c10;
  --is-surface: #11161c;
  --is-section-bg: #0d1218;
  --is-control-bg: #171d24;
  --is-border: #2b333d;
  --is-border-strong: #3b4653;
  --is-divider: #252d36;
  --is-text: #f5f7fa;
  --is-text-muted: #a7b0bc;
}

html[data-theme="dark"],
html[data-theme="dark"] body,
html[data-theme="dark"] .status-page {
  background: #090c10;
}

html[data-theme="dark"] .status-page .status-board-panel {
  border-color: #29313b;
  background: rgba(13, 18, 24, .94);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .28);
}

html[data-theme="dark"] .status-page .status-lane,
html[data-theme="dark"] .status-page .status-category-group,
html[data-theme="dark"] .status-page .status-category-group:first-child,
html[data-theme="dark"] .status-page .status-type-lane,
html[data-theme="dark"] .status-page .status-type-status {
  border-color: #29313b;
  background: rgba(17, 22, 28, .9);
  box-shadow: none;
}

html[data-theme="dark"] .status-page .status-lane-head,
html[data-theme="dark"] .status-page .status-category-head,
html[data-theme="dark"] .status-page .status-type-head,
html[data-theme="dark"] .status-page .status-type-status-head {
  border-color: #272f38;
}

html[data-theme="dark"] .status-page .status-unit {
  border: 1px solid color-mix(in srgb, var(--status-card-fill) 44%, #303944);
  border-left: 3px solid color-mix(in srgb, var(--status-card-fill) 78%, #dce7f2);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .035), transparent 48%),
    color-mix(in srgb, #151b22 94%, var(--status-card-fill));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .045), 0 5px 12px rgba(0, 0, 0, .18);
  backdrop-filter: blur(10px) saturate(.92);
  transform: translateY(0);
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

html[data-theme="dark"] .status-page .status-unit::after {
  width: 38%;
  height: 1px;
  opacity: .52;
  background: linear-gradient(90deg, transparent, var(--status-card-fill));
}

html[data-theme="dark"] .status-page .status-unit .status-unit-state .status-dot {
  background: var(--status-card-fill);
  color: var(--status-card-fill);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-card-fill) 18%, transparent);
}

html[data-theme="dark"] .status-page .status-unit:hover,
html[data-theme="dark"] .status-page .status-unit:focus-visible,
html[data-theme="dark"] .status-page .status-unit:active {
  border-color: color-mix(in srgb, var(--status-card-fill) 76%, #dce7f2);
  border-left-color: color-mix(in srgb, var(--status-card-fill) 92%, #ffffff);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .13), transparent 50%),
    color-mix(in srgb, var(--status-card-fill) 58%, #151b22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, .14),
    0 0 0 1px color-mix(in srgb, var(--status-card-fill) 26%, transparent),
    0 12px 28px color-mix(in srgb, var(--status-card-fill) 28%, transparent);
  transform: translateY(-2px);
}

html[data-theme="dark"] .status-page .status-unit-tag,
html[data-theme="dark"] .status-page .status-unit-state,
html[data-theme="dark"] .status-page .status-unit-meta,
html[data-theme="dark"] .status-page .status-unit-reason,
html[data-theme="dark"] .status-page .status-unit-facts span {
  color: #f7f9fb;
}

html[data-theme="dark"] .status-page .status-unit-meta,
html[data-theme="dark"] .status-page .status-unit-facts span {
  color: #adb7c3;
}

html[data-theme="dark"] .status-page .status-unit.tag-status-operacao { --status-card-fill: #18a66f; }
html[data-theme="dark"] .status-page .status-unit.tag-status-manutencao { --status-card-fill: #ef5362; }
html[data-theme="dark"] .status-page .status-unit.tag-status-preventiva { --status-card-fill: #e5a52f; }
html[data-theme="dark"] .status-page .status-unit.tag-status-sem-motorista { --status-card-fill: #82909f; }
html[data-theme="dark"] .status-page .status-unit.tag-status-reserva { --status-card-fill: #27a9d4; }
html[data-theme="dark"] .status-page .status-unit.tag-status-sillion { --status-card-fill: #9b6ce3; }
.status-workbench-actions button { min-height: 34px; }
.status-workbench-panel-head { margin-bottom: 8px; }
.status-technical-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.status-workbench-event--dense { grid-template-columns: 8px minmax(150px, .8fr) minmax(0, 2.2fr) auto; align-items: center; gap: 9px; padding: 10px 2px; }
.status-workbench-event--dense .status-workbench-event__main { display: contents; }
.status-workbench-event--dense .status-workbench-event__main strong { grid-column: 2; font-size: 12px; line-height: 1.25; }
.status-workbench-event--dense .status-workbench-event__main p { grid-column: 3; margin: 0; overflow-wrap: anywhere; }
.status-workbench-event--dense time { grid-column: 4; align-self: center; }

/* Janela da TAG: editor centralizado, compacto e com contexto permanente. */
.status-page .status-menu {
  display: grid;
  place-items: center;
  padding: 20px;
}

.status-page .status-menu-panel {
  position: relative;
  inset: auto;
  width: min(1120px, calc(100vw - 40px));
  height: auto;
  max-height: min(780px, calc(100vh - 40px));
  border-color: color-mix(in srgb, var(--is-brand-mid) 40%, var(--is-border));
  border-radius: 12px;
  background: var(--is-surface);
  box-shadow: 0 22px 52px color-mix(in srgb, var(--is-brand-deep) 28%, transparent);
}

.status-page .status-menu-head {
  min-height: 64px;
  padding: 10px 16px;
  background: color-mix(in srgb, var(--is-surface-strong) 84%, var(--is-primary) 16%);
}

.status-menu-identity {
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 11px;
}

.status-page .status-menu-head strong {
  font-size: 30px;
  letter-spacing: 0.02em;
}

.status-menu-identity small { font-size: 12px; }
.status-menu-status { min-height: 19px; padding: 0 8px; font-size: 9px; letter-spacing: 0.05em; }

.status-workbench-tabs {
  min-height: 40px;
  padding: 0 16px;
  background: color-mix(in srgb, var(--is-surface) 90%, var(--is-primary) 10%);
}

.status-workbench-tab { min-height: 40px; padding: 0 15px; }

.status-workbench-panel {
  min-height: 0;
  max-height: calc(min(780px, 100vh - 40px) - 104px);
  padding: 12px 16px;
  background: var(--is-surface);
}

.status-situation-section {
  padding: 9px 10px;
  border-color: color-mix(in srgb, var(--is-primary) 28%, var(--is-border));
  background: color-mix(in srgb, var(--is-primary) 5%, var(--is-section-bg));
}

.status-situation-section-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: baseline;
  gap: 8px;
}

.status-situation-section-head p { margin: 0; }

.status-page .status-menu-options { gap: 6px; }

.status-page .status-menu-option {
  min-height: 42px;
  border-color: color-mix(in srgb, var(--is-border) 82%, var(--is-primary));
  background: var(--is-control-bg);
}

.status-page .status-note-form {
  grid-template-columns: minmax(190px, .72fr) minmax(0, 1.28fr);
  gap: 9px 12px;
  padding: 10px;
  border-color: color-mix(in srgb, var(--is-brand-mid) 26%, var(--is-border));
  background: color-mix(in srgb, var(--is-section-bg) 92%, var(--is-primary));
}

.status-page .status-situation-form-head {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 12px;
}

.status-page .status-situation-form-head p { margin: 0; }
.status-page .status-note-form > label:nth-child(2) { grid-column: auto; }
.status-page .status-note-form > label:nth-child(3) { grid-column: auto; }
.status-page .status-note-form > label:nth-child(3) textarea { min-height: 42px; }
.status-page .status-report-preview {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(140px, .34fr) minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--is-primary) 34%, var(--is-border));
  border-left: 3px solid var(--is-primary);
  border-radius: 7px;
  background: color-mix(in srgb, var(--is-primary) 8%, var(--is-section-bg));
}

.status-page .status-report-preview span {
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.status-page .status-report-preview textarea {
  min-width: 0;
  min-height: 38px;
  padding: 7px 9px;
  resize: vertical;
  color: var(--is-text);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.status-page .status-report-preview small {
  grid-column: 2;
  color: var(--is-muted);
  font-size: 10px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.status-page .status-report-preview.is-empty {
  border-left-color: var(--is-border-strong);
  background: var(--is-section-subtle);
}

.status-page .status-report-preview.is-empty textarea { color: var(--is-muted); }
.status-page .status-note-form > .status-faults-section { grid-column: 1 / -1; }
.status-page .status-note-form .status-substitute-field { grid-column: 1 / -1; }

.status-page .status-faults-section {
  border-color: color-mix(in srgb, var(--is-danger) 24%, var(--is-border));
  background: color-mix(in srgb, var(--is-section-bg) 94%, var(--is-danger));
}

.status-workbench-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin: 2px 0 0;
  padding: 10px 0 0;
  background: transparent;
}

.status-workbench-actions button {
  min-width: 132px;
  min-height: 36px;
}

@media (max-width: 760px) {
  .status-page .status-menu { place-items: stretch; padding: 0; }
  .status-page .status-menu-panel { width: 100%; max-height: 100vh; border-radius: 0; }
  .status-page .status-menu-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .status-page .status-note-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-note-form > label:nth-child(2),
  .status-page .status-report-preview,
  .status-page .status-note-form .status-substitute-field { grid-column: 1 / -1; }
  .status-page .status-report-preview { grid-template-columns: 1fr; gap: 3px; }
  .status-fault-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-fault-row .status-fault-description { grid-column: 1 / -1; }
  .status-fault-criticality { grid-column: span 1; }
  .status-workbench-panel { max-height: calc(100vh - 112px); padding: 11px 12px; }
  .status-workbench-actions { margin-right: -12px; margin-left: -12px; padding-right: 12px; padding-left: 12px; }
  .status-workbench-event--dense { grid-template-columns: 8px minmax(0, 1fr) auto; align-items: start; }
  .status-workbench-event--dense .status-workbench-event__main { display: block; grid-column: 2; }
  .status-workbench-event--dense .status-workbench-event__main strong,
  .status-workbench-event--dense .status-workbench-event__main p { grid-column: auto; }
  .status-workbench-event--dense time { grid-column: 3; }
}
.status-type-coverage strong { grid-area: value; justify-self: center; color: var(--is-text); font-size: 10px; font-variant-numeric: tabular-nums; line-height: 1; white-space: nowrap; }
.status-type-coverage strong i { color: var(--is-text-muted); font-size: 9px; font-style: normal; font-weight: 750; }
.status-category-head .status-type-coverage strong,
.status-type-head .status-type-coverage strong { display: block; min-width: 0; min-height: 0; border: 0; border-radius: 0; }
.status-type-coverage--warning { color: var(--is-warning); }
.status-type-coverage--danger { color: var(--is-danger); }
html[data-theme="dark"] .status-page .status-control-deck__coverage, html[data-theme="dark"] .status-coverage-panel { border-color: var(--is-border-strong); background: var(--is-layer-raised); color: var(--is-text); }
html[data-theme="dark"] .status-coverage-row { background: var(--is-layer-base); border-color: var(--is-border); color: var(--is-text); }
html[data-theme="dark"] .status-coverage-row:hover { background: var(--is-layer-metal); }
html[data-theme="dark"] .status-coverage-row > span, html[data-theme="dark"] .status-coverage-panel__head strong, html[data-theme="dark"] .status-coverage-panel__close { color: var(--is-text); }
html[data-theme="dark"] .status-coverage-panel__close { background: var(--is-layer-metal); border-color: var(--is-border-strong); }
html[data-theme="dark"] .status-type-coverage { background: transparent; }

/* Status e uma bancada de alteracao: prioriza alcance visual e reduz rolagem. */
.status-board-panel--compact .status-category-groups { gap: 6px; }
.status-board-panel--compact .status-category-group { padding-top: 4px; }
.status-board-panel--compact .status-category-head { min-height: 20px; margin-bottom: 3px; }
.status-board-panel--compact .status-category-head > strong { min-width: 18px; min-height: 18px; }
.status-board-panel--compact .status-unit-grid { grid-template-columns: repeat(auto-fill, minmax(148px, 1fr)); gap: 4px; }
.status-board-panel--compact .status-unit { min-height: 44px; padding: 5px 7px; border-left-width: 3px; }
.status-board-panel--compact .status-unit-tag { font-size: 13px; }
.status-board-panel--compact .status-unit-state,
.status-board-panel--compact .status-unit-meta { font-size: 9px; }
.status-board-panel--compact .status-lanes { gap: 8px; }
.status-board-panel--compact .status-lane { padding: 8px; }
.status-board-panel--type.status-board-panel--compact .status-type-lane { padding: 8px; }
.status-board-panel--type.status-board-panel--compact .status-type-head { margin-bottom: 6px; padding-bottom: 5px; }
.status-board-panel--type.status-board-panel--compact .status-type-statuses { gap: 7px; }
@media (min-width: 721px) {
  .status-page .status-type-statuses { display: flex; flex-wrap: wrap; align-items: flex-start; }
  .status-page .status-type-status { flex: 1 1 520px; }
  .status-page .status-type-status:not(:has(.status-unit:nth-child(2))) { flex: 0 1 230px; }
}
@media (max-width: 900px) { .status-page .status-control-deck { grid-template-columns: auto minmax(180px, 1fr) minmax(140px, 180px) auto auto; } .status-page .status-control-deck__state { grid-column: 1 / -1; } }
@media (max-width: 620px) { .status-page .status-control-deck__coverage { grid-column: 1 / span 2; } .status-coverage-panel { right: 0; width: min(100vw - 18px, 500px); } .status-coverage-list { max-height: min(52vh, 420px); } }

/* A ultima regra responsiva precisa vencer as grades tecnicas de desktop. */
@media (max-width: 620px) {
  .status-page .status-control-deck,
  .status-page .status-command-layout,
  .status-page .status-board,
  .status-page .status-board-panel {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }

  .status-page .status-control-deck {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .status-page .status-control-deck__areas,
  .status-page .status-control-deck__search,
  .status-page .status-control-deck__state {
    grid-column: 1 / -1;
  }

  .status-page .status-control-deck__areas {
    padding-right: 0;
    border-right: 0;
    border-bottom: 1px solid var(--is-divider);
    padding-bottom: 7px;
  }

  .status-page .status-control-deck__filter,
  .status-page .status-control-deck__coverage,
  .status-page .status-control-deck__customize,
  .status-page .status-control-deck__sync {
    grid-column: auto;
    grid-row: auto;
    min-width: 0;
    width: 100%;
  }

  .status-page .status-control-deck__state {
    grid-template-columns: minmax(0, 1fr);
    gap: 3px;
    overflow-wrap: anywhere;
  }

  .status-page .status-command-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .status-page .status-lanes,
  .status-page .status-category-groups,
  .status-page .status-category-group,
  .status-page .status-unit-grid {
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
  }
}

/* Janela de detalhes: camada responsiva final, sem depender da ordem dos campos. */
.status-page .status-menu {
  padding: 20px;
  place-items: center;
}

.status-page .status-menu-panel {
  width: min(1120px, calc(100vw - 40px));
  max-height: min(820px, calc(100dvh - 40px));
  min-height: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  overflow: hidden;
  border-radius: 12px;
}

.status-page .status-menu-head {
  min-height: 78px;
  padding: 14px 18px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: center;
  gap: 14px;
}

.status-page .status-menu-identity {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
  row-gap: 2px;
}

.status-page .status-menu-identity > span:first-child {
  grid-column: 1 / -1;
  font-size: 10px;
}

.status-page #statusMenuTag {
  font-size: clamp(26px, 3vw, 36px);
  line-height: 1;
}

.status-page #statusMenuIdentity,
.status-page #statusMenuStatus {
  min-width: 0;
  align-self: center;
}

.status-page #statusMenuClose {
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  display: grid;
  place-items: center;
}

.status-page .status-workbench-tabs {
  min-height: 48px;
  padding: 0 16px;
  gap: 2px;
  overflow-x: auto;
  scrollbar-width: thin;
}

.status-page .status-workbench-tab {
  min-height: 46px;
  padding: 0 16px;
  white-space: nowrap;
}

.status-page .status-workbench-panel {
  min-height: 0;
  max-height: none;
  overflow: auto;
  padding: 14px 18px 18px;
  scrollbar-gutter: stable;
}

.status-page .status-situation-section,
.status-page .status-note-form {
  max-width: none;
}

.status-page .status-situation-section {
  padding: 12px;
  gap: 10px;
}

.status-page .status-situation-section-head {
  display: flex;
  align-items: baseline;
  gap: 10px;
}

.status-page .status-situation-section-head p {
  margin: 0;
  min-width: 0;
}

.status-page .status-menu-options {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
}

.status-page .status-menu-option {
  min-width: 0;
  min-height: 40px;
  padding: 7px 10px;
  align-items: center;
  justify-content: flex-start;
}

.status-page .status-note-form {
  grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.4fr) minmax(180px, 1fr) minmax(180px, 1fr);
  align-items: start;
  gap: 10px 12px;
  padding: 12px;
}

.status-page .status-note-form .status-situation-form-head,
.status-page .status-note-form > .status-report-preview,
.status-page .status-note-form > .status-faults-section,
.status-page .status-note-form .status-form-field--substitute,
.status-page .status-workbench-actions {
  grid-column: 1 / -1;
}

.status-page .status-note-form .status-form-field--area { grid-column: span 1; }
.status-page .status-note-form .status-form-field--report-note { grid-column: span 2; }
.status-page .status-note-form .status-form-field--location,
.status-page .status-note-form .status-form-field--forecast { grid-column: span 1; }

.status-page .status-note-form label {
  min-width: 0;
  gap: 5px;
  font-size: 11px;
}

.status-page .status-note-form input,
.status-page .status-note-form select,
.status-page .status-note-form textarea {
  min-width: 0;
  min-height: 38px;
}

.status-page .status-note-form textarea {
  min-height: 70px;
  resize: vertical;
}

.status-page .status-report-preview {
  display: grid;
  grid-template-columns: 152px minmax(0, 1fr);
  align-items: baseline;
  gap: 8px 12px;
  min-height: 42px;
  padding: 9px 11px;
}

.status-page .status-report-preview textarea {
  min-width: 0;
  overflow-wrap: anywhere;
}

.status-page .status-faults-section {
  padding: 11px;
}

.status-page .status-faults-head {
  align-items: center;
  gap: 12px;
}

.status-page .status-faults-head .filter-button,
.status-page .status-workbench-actions button {
  min-height: 38px;
}

.status-page .status-fault-row {
  grid-template-columns: minmax(145px, 1fr) minmax(170px, 1.15fr) minmax(190px, 1.4fr) 118px;
  gap: 9px;
  padding: 10px;
}

.status-page .status-fault-row .status-fault-description { grid-column: 1 / -1; }

.status-page .status-workbench-actions {
  position: sticky;
  bottom: -18px;
  z-index: 3;
  margin: 2px -12px -18px;
  padding: 10px 12px;
  border-top: 1px solid var(--is-divider);
  background: color-mix(in srgb, var(--is-section-bg) 96%, var(--is-bg));
}

.status-page .status-workbench-actions button {
  flex: 0 0 142px;
  min-width: 142px;
}

.status-page .status-technical-info {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 980px) {
  .status-page .status-menu-panel { width: min(920px, calc(100vw - 28px)); }
  .status-page .status-note-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-note-form .status-form-field--report-note,
  .status-page .status-note-form .status-form-field--substitute { grid-column: 1 / -1; }
  .status-page .status-fault-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-fault-row .status-fault-description { grid-column: 1 / -1; }
}

@media (max-width: 720px) {
  .status-page .status-menu { padding: 0; place-items: stretch; }
  .status-page .status-menu-panel { width: 100%; max-height: 100dvh; border-radius: 0; }
  .status-page .status-menu-head { min-height: 70px; padding: 12px 14px; }
  .status-page .status-menu-identity { column-gap: 8px; }
  .status-page #statusMenuTag { font-size: 28px; }
  .status-page .status-workbench-tabs { padding: 0 10px; }
  .status-page .status-workbench-panel { padding: 12px; }
  .status-page .status-menu-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .status-page .status-situation-section-head { align-items: flex-start; flex-direction: column; gap: 3px; }
  .status-page .status-technical-info { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 480px) {
  .status-page .status-menu-head { grid-template-columns: minmax(0, 1fr) 38px; }
  .status-page .status-menu-identity {
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    row-gap: 2px;
  }
  .status-page .status-menu-identity > span:first-child { display: none; }
  .status-page #statusMenuTag { grid-column: 1; grid-row: 1 / -1; align-self: center; }
  .status-page #statusMenuIdentity { grid-column: 2; grid-row: 1; justify-self: start; }
  .status-page #statusMenuStatus { grid-column: 2; grid-row: 2; justify-self: start; }
  .status-page .status-menu-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-note-form { grid-template-columns: 1fr; }
  .status-page .status-report-preview small { grid-column: 1; }
  .status-page .status-note-form .status-form-field--area,
  .status-page .status-note-form .status-form-field--report-note,
  .status-page .status-note-form .status-form-field--location,
  .status-page .status-note-form .status-form-field--forecast { grid-column: 1; }
  .status-page .status-report-preview { grid-template-columns: 1fr; gap: 3px; }
  .status-page .status-fault-row { grid-template-columns: 1fr; }
  .status-page .status-workbench-actions { bottom: -12px; margin: 2px -12px -12px; }
  .status-page .status-workbench-actions button { flex: 1 1 0; min-width: 0; }
  .status-page .status-technical-info { grid-template-columns: 1fr; }
}

/* Composição visual do formulário: diagnóstico em uma faixa, edição abaixo. */
@media (min-width: 981px) {
  .status-page .status-menu-head {
    min-height: 66px;
    padding-top: 11px;
    padding-bottom: 11px;
  }

  .status-page .status-note-form {
    grid-template-columns: minmax(175px, .7fr) minmax(250px, 1.05fr) minmax(290px, 1.25fr);
  }

  .status-page .status-note-form .status-form-field--area { grid-column: 1; }
  .status-page .status-note-form .status-form-field--report-note { grid-column: 2; }
  .status-page .status-note-form > .status-report-preview { grid-column: 3; }
  .status-page .status-note-form .status-form-field--location { grid-column: 1; }
  .status-page .status-note-form .status-form-field--forecast { grid-column: 2; }

  .status-page .status-report-preview {
    grid-template-columns: 1fr;
    align-content: center;
    gap: 4px;
    min-height: 70px;
    border-left: 3px solid var(--is-primary);
  }
}

.status-page .status-situation-form-head {
  min-height: 34px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--is-divider);
}

.status-page .status-situation-form-head > span {
  color: var(--is-primary);
}

.status-page .status-situation-form-head .status-undo-button {
  margin-left: auto;
  min-height: 34px;
  padding: 0 12px;
}

.status-page .status-report-preview > span {
  color: var(--is-text-muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.status-page .status-menu-options {
  padding: 2px;
  border-radius: 8px;
  background: color-mix(in srgb, var(--is-bg) 28%, transparent);
}

.status-page .status-menu-option {
  border-width: 1px;
  border-radius: 6px;
}

.status-page .status-menu-option.active {
  box-shadow: inset 0 -2px 0 currentColor;
}

.status-page .status-faults-section {
  border-radius: 8px;
}

.status-page .status-faults-head > div {
  display: grid;
  gap: 2px;
}

.status-page .status-faults-head p {
  color: var(--is-text-muted);
}

/* STATUS-DETALHES-4: painel operacional inspirado na composição do login. */
.status-page .status-menu-panel {
  width: min(1060px, calc(100vw - 40px));
  height: min(650px, calc(100dvh - 40px));
  max-height: none;
  grid-template-columns: 218px minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  border: 1px solid color-mix(in srgb, var(--is-primary) 52%, var(--is-border));
  border-radius: 14px;
  background: var(--is-section-bg);
  box-shadow: 0 24px 72px rgb(4 21 37 / 34%);
}

.status-page .status-detail-rail {
  min-width: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  overflow: hidden;
  border-right: 1px solid rgb(124 211 255 / 32%);
  background:
    linear-gradient(155deg, rgb(83 176 218 / 34%), transparent 44%),
    linear-gradient(180deg, #1b5f88 0%, #123b5d 58%, #102f4d 100%);
  color: #f4fbff;
}

.status-page .status-detail-rail .status-menu-head {
  min-height: 0;
  padding: 22px 18px 18px;
  grid-template-columns: minmax(0, 1fr) 36px;
  align-items: start;
  background: transparent !important;
  border: 0;
}

.status-page .status-detail-rail .status-menu-identity {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 5px;
}

.status-page .status-detail-rail .status-menu-identity > span:first-child {
  display: block;
  color: #89d8ff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.status-page .status-detail-rail #statusMenuTag {
  color: #fff;
  font-size: 34px;
  line-height: 1;
  letter-spacing: 0;
}

.status-page .status-detail-rail #statusMenuIdentity {
  max-width: 100%;
  color: #d2e8f5;
  font-size: 13px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.status-page .status-detail-rail #statusMenuStatus {
  margin-top: 5px;
  max-width: 100%;
}

.status-page .status-detail-rail #statusMenuClose {
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border: 1px solid rgb(207 236 251 / 48%);
  background: rgb(8 38 62 / 38%);
  color: #fff;
}

.status-page .status-detail-rail #statusMenuClose:hover {
  background: rgb(234 247 255 / 16%);
}

.status-page .status-detail-rail .status-workbench-tabs {
  min-height: 0;
  padding: 8px 12px;
  display: grid;
  align-content: start;
  gap: 5px;
  overflow: visible;
  background: rgb(4 30 51 / 24%) !important;
  border: 0;
}

.status-page .status-detail-rail .status-workbench-tab {
  width: 100%;
  min-height: 42px;
  padding: 0 11px;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #c9deeb;
  text-align: left;
}

.status-page .status-detail-rail .status-workbench-tab > span {
  color: #7fcff5;
  font-size: 10px;
  font-weight: 900;
}

.status-page .status-detail-rail .status-workbench-tab:hover {
  border-color: rgb(159 218 247 / 28%);
  background: rgb(205 238 255 / 8%);
}

.status-page .status-detail-rail .status-workbench-tab.active {
  border-color: rgb(145 220 255 / 45%);
  background: rgb(174 227 252 / 14%);
  color: #fff;
  box-shadow: inset 3px 0 0 #72d1ff;
}

.status-page .status-detail-rail__caption {
  align-self: end;
  margin: 0;
  padding: 18px;
  color: #9fc4d8;
  font-size: 11px;
  line-height: 1.45;
}

.status-page .status-detail-workspace {
  min-width: 0;
  min-height: 0;
  display: grid;
  overflow: hidden;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--is-primary) 5%, transparent), transparent 150px),
    var(--is-section-bg);
}

.status-page .status-detail-workspace .status-workbench-panel {
  min-width: 0;
  min-height: 0;
  max-height: none;
  padding: 18px 22px 18px 18px;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-gutter: stable;
}

.status-page .status-detail-workspace .status-situation-section,
.status-page .status-detail-workspace .status-note-form {
  border: 0;
  background: transparent;
}

.status-page .status-detail-workspace .status-situation-section {
  padding: 0 0 14px;
  gap: 9px;
  border-bottom: 1px solid var(--is-divider);
  border-radius: 0;
}

.status-page .status-situation-section-head > span {
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.status-page .status-detail-workspace .status-menu-options {
  padding: 0;
  gap: 6px;
  background: transparent;
}

.status-page .status-detail-workspace .status-menu-option {
  min-height: 38px;
  border-radius: 6px;
  background: var(--is-control-bg);
}

.status-page .status-detail-workspace .status-note-form {
  min-width: 0;
  max-width: 100%;
  padding: 14px 0 0;
  grid-template-columns: minmax(155px, .62fr) minmax(250px, 1.38fr) minmax(160px, .7fr) minmax(180px, .8fr);
  gap: 10px;
}

.status-page .status-detail-workspace .status-situation-form-head {
  min-height: 0;
  padding: 0;
  border: 0;
  justify-content: end;
}

.status-page .status-detail-workspace .status-situation-form-head:has(.status-undo-button[hidden]) {
  display: none;
}

.status-page .status-detail-workspace .status-situation-form-head .status-undo-button {
  min-height: 28px;
  padding: 0 9px;
  font-size: 10px;
}

.status-page .status-detail-workspace .status-form-field--area { grid-column: span 1; }
.status-page .status-detail-workspace .status-form-field--report-note { grid-column: span 3; }
.status-page .status-detail-workspace .status-form-field--location,
.status-page .status-detail-workspace .status-form-field--forecast { grid-column: span 2; }

.status-page .status-detail-workspace .status-note-form input,
.status-page .status-detail-workspace .status-note-form select,
.status-page .status-detail-workspace .status-note-form textarea {
  min-height: 40px;
  border-radius: 7px;
}

.status-page .status-detail-workspace .status-note-form textarea {
  height: 40px;
  min-height: 40px;
  max-height: 82px;
  padding-top: 10px;
}

.status-page .status-detail-workspace .status-faults-section {
  grid-column: 1 / -1;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--is-danger) 26%, var(--is-border));
  border-radius: 8px;
  background: var(--is-section-subtle);
}

.status-page .status-detail-workspace .status-faults-head {
  min-height: 48px;
  padding: 8px 10px;
  border-bottom: 1px solid var(--is-divider);
  background: color-mix(in srgb, var(--is-danger) 5%, var(--is-section-bg));
}

.status-page .status-faults-controls,
.status-page .status-workbench-action-buttons {
  display: flex;
  align-items: center;
  gap: 7px;
}

.status-page .status-faults-controls button {
  min-width: 104px;
  min-height: 34px;
}

.status-page .status-fault-body {
  display: grid;
  gap: 8px;
  padding: 9px;
}

.status-page .status-fault-body[hidden] { display: none; }

.status-page .status-detail-workspace .status-fault-quick-picks {
  max-width: 100%;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
}

.status-page .status-detail-workspace .status-fault-row {
  min-width: 0;
  max-width: 100%;
  grid-template-columns: minmax(105px, .9fr) minmax(120px, 1fr) minmax(135px, 1.15fr) 88px minmax(145px, 1.25fr);
  align-items: end;
  gap: 7px;
  padding: 8px;
}

.status-page .status-detail-workspace .status-fault-row-head { grid-column: 1 / -1; }
.status-page .status-detail-workspace .status-fault-row > label {
  grid-column: auto;
  min-width: 0;
}
.status-page .status-detail-workspace .status-fault-row > label.status-fault-description { grid-column: auto; }
.status-page .status-detail-workspace .status-fault-row select,
.status-page .status-detail-workspace .status-fault-row input,
.status-page .status-detail-workspace .status-fault-row .status-fault-criticality {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.status-page .status-detail-workspace .status-fault-criticality-source { display: none; }

.status-page .status-faults-head > .status-faults-controls {
  display: flex;
  grid-auto-flow: column;
  gap: 7px;
}

.status-page .status-detail-workspace .status-workbench-actions {
  position: sticky;
  bottom: -18px;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  margin: 2px -18px -18px;
  padding: 10px 18px;
  border-top: 1px solid var(--is-divider);
  background: color-mix(in srgb, var(--is-section-bg) 96%, var(--is-bg));
  box-shadow: 0 -10px 22px rgb(3 25 42 / 8%);
}

.status-page .status-detail-workspace .status-report-preview {
  grid-column: span 3;
  min-width: 0;
  min-height: 38px;
  padding: 0;
  grid-template-columns: 1fr;
  gap: 4px;
  border: 0;
  background: transparent;
}

.status-page .status-detail-workspace .status-report-preview textarea {
  color: var(--is-control-text, #10283a);
  background: var(--is-control-bg, #fff);
  -webkit-text-fill-color: currentColor;
  opacity: 1;
}

html[data-theme="dark"] .status-page .status-detail-workspace .status-report-preview textarea {
  color: #10283a;
  background: #f7fbfd;
}

.status-page .status-detail-workspace .status-report-preview small {
  overflow: hidden;
  color: var(--is-muted);
  font-size: 10px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.status-page .status-detail-workspace .status-workbench-actions {
  grid-template-columns: 1fr;
  justify-items: end;
}

.status-page .status-workbench-action-buttons button {
  width: 140px;
  min-width: 140px;
  min-height: 40px;
}

html[data-theme="dark"] .status-page .status-detail-workspace {
  background:
    linear-gradient(180deg, rgb(75 164 211 / 8%), transparent 150px),
    #183a52;
}

/* Ficha tecnica compacta da subaba Dados tecnicos. */
.status-page .status-detail-workspace .status-technical-info {
  display: block;
  width: 100%;
}

.status-page .status-technical-sheet {
  width: 100%;
  color: var(--is-text);
}

.status-page .status-technical-sheet__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--is-divider);
}

.status-page .status-technical-sheet__head > div {
  display: grid;
  gap: 3px;
}

.status-page .status-technical-sheet__head span {
  color: var(--is-primary);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.status-page .status-technical-sheet__head strong {
  font-size: 15px;
}

.status-page .status-technical-sheet__head small {
  color: var(--is-text-muted);
  font-size: 11px;
  font-weight: 700;
  text-align: right;
}

.status-page .status-technical-sheet__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.status-page .status-technical-sheet__item {
  min-width: 0;
  padding: 13px 14px;
  border-bottom: 1px solid var(--is-divider);
}

.status-page .status-technical-sheet__item:not(:nth-child(3n)) {
  border-right: 1px solid var(--is-divider);
}

.status-page .status-technical-sheet__item dt {
  color: var(--is-text-muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.status-page .status-technical-sheet__item dd {
  margin: 5px 0 0;
  color: var(--is-text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.status-page .status-technical-sheet__item dd span {
  color: var(--is-text-muted);
}

.status-page .status-technical-sheet__item--wide {
  grid-column: 1 / -1;
  padding-block: 15px;
  border-right: 0 !important;
  background: color-mix(in srgb, var(--is-primary) 5%, transparent);
}

@media (max-width: 820px) {
  .status-page .status-technical-sheet__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-technical-sheet__item { border-right: 0 !important; }
  .status-page .status-technical-sheet__item:nth-child(odd):not(.status-technical-sheet__item--wide) { border-right: 1px solid var(--is-divider) !important; }
}

@media (max-width: 520px) {
  .status-page .status-technical-sheet__head { align-items: flex-start; flex-direction: column; gap: 5px; }
  .status-page .status-technical-sheet__head small { text-align: left; }
  .status-page .status-technical-sheet__grid { grid-template-columns: 1fr; }
  .status-page .status-technical-sheet__item { padding: 11px 4px; border-right: 0 !important; }
  .status-page .status-technical-sheet__item:nth-child(odd):not(.status-technical-sheet__item--wide) { border-right: 0 !important; }
  .status-page .status-technical-sheet__item--wide { padding-inline: 10px; }
}

html[data-theme="dark"] .status-page .status-detail-workspace .status-situation-section,
html[data-theme="dark"] .status-page .status-detail-workspace .status-note-form {
  color: #e9f3f8;
}

@media (max-width: 900px) {
  .status-page .status-menu-panel {
    width: min(820px, calc(100vw - 28px));
    height: min(760px, calc(100dvh - 28px));
    grid-template-columns: 168px minmax(0, 1fr);
  }

  .status-page .status-detail-rail .status-menu-head { padding: 18px 14px 14px; }
  .status-page .status-detail-rail #statusMenuTag { font-size: 28px; }
  .status-page .status-detail-rail__caption { padding: 14px; }
  .status-page .status-detail-workspace .status-menu-options { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .status-page .status-detail-workspace .status-note-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-detail-workspace .status-form-field--report-note,
  .status-page .status-detail-workspace .status-form-field--substitute { grid-column: 1 / -1; }
  .status-page .status-detail-workspace .status-form-field--location,
  .status-page .status-detail-workspace .status-form-field--forecast { grid-column: span 1; }
  .status-page .status-detail-workspace .status-fault-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-detail-workspace .status-fault-row > label.status-fault-description { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  .status-page .status-menu-panel {
    width: 100%;
    height: 100dvh;
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
    border: 0;
    border-radius: 0;
  }

  .status-page .status-detail-rail {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
    border-right: 0;
    border-bottom: 1px solid rgb(124 211 255 / 32%);
  }

  .status-page .status-detail-rail .status-menu-head {
    min-height: 68px;
    padding: 10px 12px;
    grid-template-columns: minmax(0, 1fr) 36px;
  }

  .status-page .status-detail-rail .status-menu-identity {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    row-gap: 2px;
  }

  .status-page .status-detail-rail .status-menu-identity > span:first-child { display: none; }
  .status-page .status-detail-rail #statusMenuTag { grid-row: 1 / -1; font-size: 27px; align-self: center; }
  .status-page .status-detail-rail #statusMenuIdentity { grid-column: 2; grid-row: 1; }
  .status-page .status-detail-rail #statusMenuStatus { grid-column: 2; grid-row: 2; margin: 0; justify-self: start; }

  .status-page .status-detail-rail .status-workbench-tabs {
    padding: 0 8px 8px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    background: transparent !important;
  }

  .status-page .status-detail-rail .status-workbench-tab {
    min-height: 36px;
    padding: 0 8px;
    display: flex;
    justify-content: center;
    gap: 5px;
    font-size: 11px;
    text-align: center;
  }

  .status-page .status-detail-rail .status-workbench-tab.active { box-shadow: inset 0 -2px 0 #72d1ff; }
  .status-page .status-detail-rail__caption { display: none; }
  .status-page .status-detail-workspace .status-workbench-panel { padding: 12px 16px 12px 12px; }
  .status-page .status-detail-workspace .status-workbench-actions {
    bottom: -12px;
    grid-template-columns: 1fr;
    gap: 7px;
    margin: 2px -12px -12px;
    padding: 8px 12px;
  }
  .status-page .status-detail-workspace .status-report-preview { grid-template-columns: 1fr; gap: 2px; }
  .status-page .status-workbench-action-buttons { width: 100%; }
  .status-page .status-workbench-action-buttons button { flex: 1 1 0; width: auto; min-width: 0; }
}

@media (max-width: 430px) {
  .status-page .status-detail-workspace .status-menu-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .status-page .status-detail-workspace .status-note-form { grid-template-columns: 1fr; }
  .status-page .status-detail-workspace .status-form-field--area,
  .status-page .status-detail-workspace .status-form-field--report-note,
  .status-page .status-detail-workspace .status-form-field--location,
  .status-page .status-detail-workspace .status-form-field--forecast { grid-column: 1; }
  .status-page .status-faults-head { align-items: flex-start; }
  .status-page .status-faults-controls { flex-direction: column; }
  .status-page .status-faults-controls button { width: 104px; }
  .status-page .status-detail-workspace .status-fault-row { grid-template-columns: 1fr; }
  .status-page .status-detail-workspace .status-fault-row > label { grid-column: 1; }
}

/* Final workbench geometry: one report field, compact undo and dense fault review. */
body .status-page .status-detail-workspace .status-note-form {
  grid-template-columns: 180px minmax(0, 1fr) auto;
  gap: 8px 10px;
  padding-top: 10px;
}

body .status-page .status-detail-workspace .status-situation-form-head {
  display: flex;
  grid-column: 3;
  grid-row: 1;
  align-self: end;
  justify-content: flex-end;
  width: auto;
}

body .status-page .status-detail-workspace .status-situation-form-head:has(.status-undo-button[hidden]) {
  display: none;
}

body .status-page .status-detail-workspace .status-situation-form-head .status-undo-button {
  width: auto;
  min-width: 82px;
  min-height: 40px;
  margin: 0;
  padding: 0 12px;
}

body .status-page .status-detail-workspace .status-form-field--area {
  grid-column: 1;
  grid-row: 1;
}

body .status-page .status-detail-workspace .status-report-preview {
  grid-column: 2;
  grid-row: 1;
  display: grid;
  grid-template-columns: 1fr;
  min-width: 0;
  min-height: 0;
  align-content: start;
  gap: 4px;
}

body .status-page .status-detail-workspace .status-report-preview textarea {
  width: 100%;
  height: 40px;
  min-height: 40px;
  resize: none;
}

body .status-page .status-detail-workspace .status-report-preview small {
  display: none;
}

body .status-page .status-detail-workspace .status-faults-section,
body .status-page .status-detail-workspace .status-form-field--location,
body .status-page .status-detail-workspace .status-form-field--forecast,
body .status-page .status-detail-workspace .status-form-field--substitute,
body .status-page .status-detail-workspace .status-workbench-actions {
  grid-column: 1 / -1;
}

body .status-page .status-detail-workspace .status-faults-head {
  min-height: 42px;
  padding: 6px 10px;
}

body .status-page .status-detail-workspace .status-fault-body {
  gap: 6px;
  padding: 7px 9px;
}

body .status-page .status-detail-workspace .status-fault-row {
  padding: 6px;
}

body .status-page .status-detail-workspace .status-fault-quick-picks {
  min-height: 30px;
  padding-bottom: 2px;
}

body .status-page .status-detail-workspace .status-workbench-actions {
  min-height: 56px;
  padding-block: 8px;
}

@media (max-width: 900px) {
  body .status-page .status-detail-workspace .status-note-form {
    grid-template-columns: 150px minmax(0, 1fr) auto;
  }
}

@media (max-width: 640px) {
  body .status-page .status-detail-workspace .status-note-form {
    grid-template-columns: 1fr auto;
  }
  body .status-page .status-detail-workspace .status-form-field--area { grid-column: 1; grid-row: 1; }
  body .status-page .status-detail-workspace .status-situation-form-head { grid-column: 2; grid-row: 1; }
  body .status-page .status-detail-workspace .status-report-preview { grid-column: 1 / -1; grid-row: 2; }
}

/* Densidade do Status: independente do detalhe dos cards e visivelmente distinta. */
.status-page .status-board-panel--compact .status-unit-grid {
  grid-template-columns: repeat(auto-fill, minmax(142px, 1fr));
  gap: 4px;
}

.status-page .status-board-panel--compact .status-unit-grid--complete {
  grid-template-columns: repeat(auto-fill, minmax(208px, 1fr));
}

.status-page .status-board-panel--compact .status-unit {
  min-height: 52px;
  padding: 5px 7px;
}

.status-page .status-board-panel--compact .status-unit--compact { min-height: 42px; }
.status-page .status-board-panel--compact .status-unit--essential { min-height: 50px; }
.status-page .status-board-panel--compact .status-unit--complete { min-height: 92px; }

.status-page .status-board-panel--comfortable .status-unit-grid {
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 7px;
}

.status-page .status-board-panel--comfortable .status-unit-grid--complete {
  grid-template-columns: repeat(auto-fill, minmax(236px, 1fr));
}

.status-page .status-board-panel--comfortable .status-unit {
  min-height: 68px;
  padding: 8px 9px;
}

.status-page .status-board-panel--comfortable .status-unit--compact { min-height: 50px; }
.status-page .status-board-panel--comfortable .status-unit--essential { min-height: 62px; }
.status-page .status-board-panel--comfortable .status-unit--complete { min-height: 116px; }

@media (max-width: 720px) {
  .status-page .status-board-panel--compact .status-unit-grid,
  .status-page .status-board-panel--comfortable .status-unit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .status-page .status-board-panel--compact .status-unit-grid--complete,
  .status-page .status-board-panel--comfortable .status-unit-grid--complete {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 430px) {
  .status-page .status-board-panel--compact .status-unit-grid,
  .status-page .status-board-panel--comfortable .status-unit-grid {
    grid-template-columns: 1fr;
  }
}
