/* Recon visual direction: calm command center. Scoped to the Recon page. */
body.lp-recon-polished {
  --recon-ink: #142238;
  --recon-muted: #65758a;
  --recon-line: #dfe7f0;
  --recon-blue: #286fea;
  --recon-canvas: #f3f6fa;
  background: var(--recon-canvas) !important;
}
body.lp-recon-polished .lp-main { background: var(--recon-canvas) !important; }
body.lp-recon-polished .page { max-width: 1680px; gap: 16px; padding-top: 20px; }
body.lp-recon-polished .lp-operations-header {
  min-height: 132px;
  padding: 26px 30px !important;
  border: 1px solid #203d5b !important;
  border-radius: 18px !important;
  background: radial-gradient(circle at 84% -40%, rgba(65,142,239,.30), transparent 34%),
              linear-gradient(120deg, #101f34 0%, #193958 100%) !important;
  box-shadow: 0 16px 36px rgba(18,43,71,.14) !important;
}
body.lp-recon-polished .lp-operations-header-copy h2 {
  color: #fff !important;
  font-size: clamp(26px, 2.3vw, 34px);
  font-weight: 780;
  letter-spacing: -.045em;
}
body.lp-recon-polished .lp-operations-header-copy p {
  max-width: 550px;
  margin-top: 8px;
  color: #b9cadd !important;
  font-size: 13px;
  line-height: 1.45;
}
body.lp-recon-polished .lp-operations-header .view-toggle-group {
  border-color: rgba(220,235,255,.24);
  background: rgba(8,22,39,.34);
}
body.lp-recon-polished .lp-operations-header .view-toggle { color: #cad9e9 !important; }
body.lp-recon-polished .lp-operations-header .view-toggle.active {
  color: #102a48 !important;
  background: #fff !important;
}
body.lp-recon-polished .lp-operations-header .ghost-btn {
  border-color: rgba(220,235,255,.28) !important;
  background: rgba(255,255,255,.07) !important;
  color: #f5f9ff !important;
}
body.lp-recon-polished .lp-operations-header .ghost-btn:hover { background: rgba(255,255,255,.16) !important; }

/* Five measurements read as one instrument panel. */
body.lp-recon-polished .recon-operations-kpis.lp-operations-kpis {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  padding: 9px 5px;
  border: 1px solid var(--recon-line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 7px 22px rgba(19,45,75,.045);
}
body.lp-recon-polished .recon-operations-kpi.lp-operations-kpi {
  min-height: 70px !important;
  padding: 10px 18px !important;
  border: 0 !important;
  border-right: 1px solid #e8edf4 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
body.lp-recon-polished .recon-operations-kpi:last-child { border-right: 0 !important; }
body.lp-recon-polished .recon-operations-kpi-icon { display: none !important; }
body.lp-recon-polished .recon-operations-kpi strong {
  font-size: 25px !important;
  font-weight: 780 !important;
  letter-spacing: -.045em;
}
body.lp-recon-polished .recon-operations-kpi div span {
  margin-top: 3px;
  color: var(--recon-muted) !important;
  font-size: 10px !important;
  letter-spacing: .035em !important;
}

/* Filters are a quiet work surface. */
body.lp-recon-polished .recon-filter-rail.lp-operations-filters {
  min-height: 64px;
  padding: 11px !important;
  border-radius: 14px !important;
  box-shadow: 0 5px 18px rgba(19,45,75,.04) !important;
}
body.lp-recon-polished .lp-operations-filters .search-bar,
body.lp-recon-polished .lp-operations-filters select {
  min-height: 40px !important;
  border-color: #dae3ee !important;
  background: #f8fafc !important;
  color: var(--recon-ink) !important;
  font-size: 12px !important;
}
body.lp-recon-polished .lp-operations-filters :is(input, select, button):focus-visible,
body.lp-recon-polished #reconCards :is(button, a, select, [role="button"]):focus-visible {
  outline: 2px solid var(--recon-blue) !important;
  outline-offset: 2px;
}

/* Board: neutral stages, SLA color only on vehicle outlines. */
body.lp-recon-polished.recon-view-board #reconCards {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 275px), 1fr));
  gap: 14px;
  align-items: start;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column {
  min-height: 210px;
  padding: 12px !important;
  border: 1px solid #dfe7f0 !important;
  border-top: 1px solid #dfe7f0 !important;
  border-radius: 15px !important;
  background: #eaf0f6 !important;
  box-shadow: none !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column-header {
  padding: 3px 3px 12px;
  border-bottom: 1px solid #d8e2ec !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column-title strong {
  color: #1a2e46 !important;
  font-size: 13px;
  font-weight: 780;
  letter-spacing: -.012em;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column-title span {
  color: var(--recon-muted) !important;
  font-size: 11px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column-count {
  border: 0;
  background: #dce6f0;
  color: #314c68;
  font-size: 11px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-board-column-list { gap: 10px; }

/* Vehicle identity leads. Preserve the status dropdown and all card actions. */
body.lp-recon-polished.recon-view-board #reconCards .recon-vehicle-card,
body.lp-recon-polished.recon-view-board #reconCards .recon-vehicle-card.is-stale {
  border: 2px solid var(--sla-accent, #b7c7d8) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 12px rgba(20,42,69,.055) !important;
  background: #fff !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-vehicle-card:hover {
  box-shadow: 0 11px 23px rgba(20,42,69,.12) !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-vehicle-card::before { display: none; }
body.lp-recon-polished.recon-view-board #reconCards .recon-card-stage-header {
  padding: 11px 12px 2px;
  background: #fff !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-stage-pill {
  padding: 0;
  border: 0;
  background: none;
  color: #728198;
  font-size: 10px;
  font-weight: 750;
  letter-spacing: .025em;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-stage-pill > span { display: none; }
body.lp-recon-polished.recon-view-board #reconCards .recon-card-status-age,
body.lp-recon-polished.recon-view-board #reconCards .recon-vehicle-card.is-stale .recon-card-status-age {
  padding: 0;
  background: none;
  color: #61748a;
  font-size: 10px;
  font-weight: 750;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-vehicle {
  grid-template-columns: 104px minmax(0, 1fr);
  gap: 12px;
  padding: 9px 12px 12px;
  cursor: pointer;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-photo {
  width: 104px;
  height: 76px;
  border: 0;
  border-radius: 8px;
  object-fit: cover;
  background: #e5ebf2;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-identity > strong {
  color: var(--recon-ink) !important;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 780;
  letter-spacing: -.025em;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-identity > span {
  color: #52647a !important;
  font-size: 11px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-identifiers {
  margin-top: 7px;
  color: #718197 !important;
  font-size: 10px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-status-control {
  margin: 0 12px 11px;
  padding: 8px 10px;
  border: 1px solid #d7e3f2;
  border-radius: 8px;
  background: #f4f8fd;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-status-icon { display: none; }
body.lp-recon-polished.recon-view-board #reconCards .recon-card-status-caption {
  color: #58769b;
  font-size: 10px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-status-select {
  color: #1d4f91;
  font-size: 12px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts {
  gap: 0 12px;
  padding: 5px 12px 7px;
  border-top: 1px solid #ebeff4;
  background: #fff;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts > div,
body.lp-recon-polished.recon-view-board #reconCards .recon-card-assigned-wrap {
  min-height: 33px;
  padding: 7px 0;
  border: 0;
  border-bottom: 1px solid #f0f3f7;
  border-radius: 0;
  background: transparent;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts > div > span,
body.lp-recon-polished.recon-view-board #reconCards .recon-card-assigned-wrap > span { display: none; }
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts > div {
  grid-template-columns: minmax(0, 1fr);
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts small {
  color: #77879a !important;
  font-size: 9px;
  letter-spacing: .03em;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-facts strong {
  color: #263b52;
  font-size: 11px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-assigned-wrap {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-assigned-wrap select {
  width: 100%;
  color: #263b52;
  font-size: 11px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-notes {
  padding: 9px 12px;
  border-top: 1px solid #ebeff4 !important;
  background: #fff !important;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-notes-heading {
  color: #75859a;
  font-size: 10px;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-notes p {
  color: #42546a;
  font-size: 11px;
  line-height: 1.4;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-footer {
  gap: 5px;
  padding: 9px 11px;
  border-top: 1px solid #e7edf3;
  background: #f9fbfe;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-footer :is(button, a) {
  color: #2863b4;
  font-size: 10px;
  font-weight: 750;
}
body.lp-recon-polished.recon-view-board #reconCards .recon-card-stage-action {
  color: #fff !important;
  background: #286fea !important;
}

/* Table keeps the same visual rhythm when toggled. */
body.lp-recon-polished .lp-operations-table {
  border-radius: 15px !important;
  box-shadow: 0 7px 22px rgba(19,45,75,.045) !important;
}
body.lp-recon-polished .lp-operations-table .lp-table-head h3 {
  color: var(--recon-ink);
  font-size: 14px;
  letter-spacing: -.015em;
}
body.lp-recon-polished .lp-operations-table .vehicle-table tbody tr:hover {
  background: #f2f7ff !important;
}

@media (max-width: 1180px) {
  body.lp-recon-polished .recon-operations-kpis.lp-operations-kpis {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  body.lp-recon-polished .recon-operations-kpi:nth-child(3) { border-right: 0 !important; }
  body.lp-recon-polished .recon-operations-kpi:nth-child(n+4) { border-top: 1px solid #e8edf4 !important; }
}
@media (max-width: 850px) {
  body.lp-recon-polished .page { padding-top: 10px; gap: 11px; }
  body.lp-recon-polished .lp-operations-header { min-height: 0; padding: 19px !important; }
  body.lp-recon-polished .recon-operations-kpis.lp-operations-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.lp-recon-polished .recon-operations-kpi:nth-child(3) { border-right: 1px solid #e8edf4 !important; }
  body.lp-recon-polished .recon-operations-kpi:nth-child(even) { border-right: 0 !important; }
  body.lp-recon-polished .recon-operations-kpi:nth-child(n+3) { border-top: 1px solid #e8edf4 !important; }
  body.lp-recon-polished .recon-operations-kpi:last-child { border-right: 0 !important; }
}
@media (max-width: 560px) {
  body.lp-recon-polished .lp-operations-header { gap: 18px; }
  body.lp-recon-polished .lp-operations-header-copy h2 { font-size: 28px; }
  body.lp-recon-polished .lp-operations-header-actions .toolbar-actions { flex-wrap: wrap; }
  body.lp-recon-polished .lp-operations-header-actions .view-toggle-group { flex: 1 1 100%; }
  body.lp-recon-polished .lp-operations-header-actions .toolbar-actions > .ghost-btn { flex: 1; font-size: 11px; }
  body.lp-recon-polished .lp-operations-header-actions #printActiveReconReportBtn::after,
  body.lp-recon-polished .lp-operations-header-actions #toggleFunnelBtn::after { content: none; }
  body.lp-recon-polished .recon-operations-kpi.lp-operations-kpi { padding: 12px !important; }
  body.lp-recon-polished .recon-operations-kpi strong { font-size: 21px !important; }
  body.lp-recon-polished.recon-view-board #reconCards {
    grid-template-columns: minmax(0, 1fr);
  }
  body.lp-recon-polished.recon-view-board #reconCards .recon-board-column { min-height: 0; }
  body.lp-recon-polished.recon-view-board #reconCards .recon-card-vehicle {
    grid-template-columns: 110px minmax(0, 1fr);
  }
  body.lp-recon-polished.recon-view-board #reconCards .recon-card-photo { width: 110px; height: 80px; }
}
@media (prefers-reduced-motion: reduce) {
  body.lp-recon-polished #reconCards .recon-vehicle-card { transition: none !important; }
}

/* Recon table: the board's visual language in a dense, scannable queue. */
body.lp-recon-polished .recon-table-card.lp-operations-table {
  border: 1px solid var(--recon-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 7px 22px rgba(19,45,75,.045) !important;
}
body.lp-recon-polished .recon-table-head.lp-table-head {
  min-height: 72px;
  padding: 15px 20px !important;
  background: #fff !important;
  border-bottom: 1px solid #e5ebf2 !important;
}
body.lp-recon-polished .recon-table-head h3 {
  color: var(--recon-ink) !important;
  font-size: 17px !important;
  font-weight: 780;
  letter-spacing: -.025em;
}
body.lp-recon-polished .recon-table-head .meta {
  color: #395a7b !important;
  font-size: 11px !important;
  font-weight: 750;
  text-transform: none;
  letter-spacing: 0;
}
body.lp-recon-polished .recon-table-head .meta-sub {
  color: #8290a1 !important;
  font-size: 10px !important;
  font-weight: 600;
}
body.lp-recon-polished #reconTableWrap { overflow-x: auto; overscroll-behavior-x: contain; }
body.lp-recon-polished #reconTableWrap .vehicle-table {
  min-width: 1260px;
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: auto;
}
body.lp-recon-polished #reconTableWrap .vehicle-table th {
  height: 44px;
  padding: 10px 13px !important;
  background: #f5f8fc !important;
  border-bottom: 1px solid #dfe7f0 !important;
  color: #718198 !important;
  font-size: 10px !important;
  font-weight: 790 !important;
  letter-spacing: .06em;
  white-space: nowrap;
}
body.lp-recon-polished #reconTableWrap .vehicle-table th.sortable {
  cursor: pointer;
}
body.lp-recon-polished #reconTableWrap .vehicle-table th.sortable:hover,
body.lp-recon-polished #reconTableWrap .vehicle-table th.sortable.sorted-asc,
body.lp-recon-polished #reconTableWrap .vehicle-table th.sortable.sorted-desc {
  background: #eaf2ff !important;
  color: #245d9d !important;
}
body.lp-recon-polished #reconTableWrap .vehicle-table th .sort-icon {
  color: #91a0b2;
  font-size: 11px;
}
body.lp-recon-polished #reconTableWrap .vehicle-table tbody tr,
body.lp-recon-polished #reconTableWrap .vehicle-table tbody tr:nth-child(even) {
  background: #fff !important;
}
body.lp-recon-polished #reconTableWrap .vehicle-table tbody tr:hover {
  background: #f5f9fe !important;
}
body.lp-recon-polished #reconTableWrap .vehicle-table td {
  height: 86px;
  padding: 12px 13px !important;
  border-bottom: 1px solid #e9eef4 !important;
  color: #31445b !important;
  font-size: 12px !important;
  vertical-align: middle;
}
body.lp-recon-polished #reconTableWrap .vehicle-table tr:last-child td { border-bottom: 0 !important; }
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-cell {
  min-width: 300px;
  position: relative;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-link {
  width: 100%;
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 0;
  border: 0 !important;
  background: transparent !important;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-link:hover strong {
  color: var(--recon-blue) !important;
}
body.lp-recon-polished #reconTableWrap .recon-table-photo {
  width: 82px;
  height: 60px;
  border: 1px solid #dfe7ef;
  border-radius: 9px;
  background: #e8edf3;
  object-fit: cover;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-copy { gap: 2px; }
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-copy strong {
  color: var(--recon-ink);
  font-size: 13px;
  font-weight: 780;
  letter-spacing: -.018em;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-copy > span {
  color: #52667e;
  font-size: 11px;
  font-weight: 580;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-copy small {
  color: #7a8a9e;
  font-size: 10px;
  font-weight: 580;
  line-height: 1.3;
}
body.lp-recon-polished #reconTableWrap .recon-table-vehicle-copy small:last-child {
  color: #9aa7b6;
  font-size: 9px;
}
body.lp-recon-polished #reconTableWrap .recon-table-photo-action {
  margin: 4px 0 0 94px;
  padding: 0;
  min-height: 18px;
  border: 0 !important;
  background: none !important;
  color: #2863b4 !important;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
body.lp-recon-polished #reconTableWrap .recon-table-status-control {
  min-width: 162px;
  min-height: 38px;
  padding: 0 9px;
  border: 1px solid #d8e4f1;
  border-radius: 8px;
  background: #f4f8fd;
  color: #2863b4;
}
body.lp-recon-polished #reconTableWrap .recon-table-status-control > span { display: none; }
body.lp-recon-polished #reconTableWrap .recon-table-status-select {
  min-height: 34px;
  padding: 0 21px 0 2px;
  border: 0 !important;
  background: transparent !important;
  color: #24578f !important;
  font-size: 11px;
  font-weight: 760;
}
body.lp-recon-polished #reconTableWrap .recon-table-time {
  color: #20344a;
  font-size: 13px;
  font-weight: 780;
  font-variant-numeric: tabular-nums;
}
body.lp-recon-polished #reconTableWrap .recon-table-time.is-overdue { color: #b93642; }
body.lp-recon-polished #reconTableWrap td.cell-age strong,
body.lp-recon-polished #reconTableWrap td.cell-number strong {
  color: #30445c;
  font-size: 12px;
  font-weight: 720;
  font-variant-numeric: tabular-nums;
}
body.lp-recon-polished #reconTableWrap .recon-attention-badge {
  padding: 6px 9px;
  border: 1px solid #e1e9f0;
  border-radius: 7px;
  background: #f5f8fb;
  color: #64788d;
  font-size: 10px;
  font-weight: 750;
}
body.lp-recon-polished #reconTableWrap .recon-attention-badge > span { display: none; }
body.lp-recon-polished #reconTableWrap .recon-attention-badge.needs-attention {
  border-color: #f3c8cb;
  background: #fff1f1;
  color: #ab303a;
}
body.lp-recon-polished #reconTableWrap .recon-table-assigned-select {
  min-width: 130px;
  min-height: 36px;
  padding: 6px 8px;
  border-color: #dce6f1 !important;
  border-radius: 8px;
  background: #fff !important;
  color: #344a61 !important;
  font-size: 11px;
}
body.lp-recon-polished #reconTableWrap .recon-table-assigned,
body.lp-recon-polished #reconTableWrap .recon-table-updated {
  color: #687b90;
  font-size: 11px;
  font-weight: 630;
}
body.lp-recon-polished #reconTableWrap td.cell-actions {
  min-width: 150px;
  text-align: right;
}
body.lp-recon-polished #reconTableWrap .cell-actions :is(button, a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: none;
  color: #2863b4;
  font-size: 10px;
  font-weight: 750;
  text-decoration: none;
  cursor: pointer;
}
body.lp-recon-polished #reconTableWrap .recon-table-add-note { padding: 0 7px; }
body.lp-recon-polished #reconTableWrap .recon-table-stage-action {
  width: 34px;
  background: #eaf2ff !important;
  color: #1e5fae !important;
  font-size: 16px !important;
}
body.lp-recon-polished #reconTableWrap .recon-table-more {
  width: 32px;
  color: #6d7f94 !important;
  font-size: 13px !important;
}
body.lp-recon-polished #reconTableWrap .cell-actions :is(button, a):hover {
  background: #dfeeff !important;
  color: #164d91 !important;
}
body.lp-recon-polished .recon-table-footer.lp-table-footer {
  min-height: 60px;
  padding: 11px 18px !important;
  background: #fff !important;
  border-top: 1px solid #e5ebf2 !important;
}
body.lp-recon-polished .recon-table-footer .left,
body.lp-recon-polished .recon-table-footer .right {
  color: #60738a;
  font-size: 11px;
  font-weight: 650;
}
body.lp-recon-polished .recon-table-footer .ghost-btn {
  min-height: 34px;
  padding: 0 11px;
}
body.lp-recon-polished #reconTableWrap :is(button, a, select):focus-visible,
body.lp-recon-polished .recon-table-footer :is(button, select):focus-visible {
  outline: 2px solid var(--recon-blue) !important;
  outline-offset: 2px;
}
@media (max-width: 850px) {
  body.lp-recon-polished .recon-table-head.lp-table-head { padding: 13px !important; }
  body.lp-recon-polished .recon-table-head h3 { font-size: 15px !important; }
  body.lp-recon-polished .recon-table-footer.lp-table-footer { padding: 10px !important; }
}
