/*
 * Frontend audit implementation — 2026-08-07
 * Loaded after the portal and chrome stability layers so the review can remain
 * isolated in one reversible commit.
 */

:root {
  --dpd-audit-ink: #101820;
  --dpd-audit-muted: #5b6875;
  --dpd-audit-line: #d8e0e7;
  --dpd-audit-soft: #f4f7f9;
  --dpd-audit-yellow: #ffea00;
  --dpd-audit-teal: #1fc8b1;
}

body.dpd-member-surface :is(a, button, input, select, textarea, [tabindex]):focus-visible,
body.page-template-template-contact :is(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 3px solid var(--dpd-audit-yellow) !important;
  outline-offset: 3px !important;
}

/* Dashboard alignment, card rhythm, and explicit actions. */

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-dashboard #dashboard .dashboard-head-left {
  box-sizing: border-box !important;
  padding-left: clamp(20px, 2vw, 30px) !important;
  padding-right: clamp(20px, 2vw, 30px) !important;
}

/* Operations card actions sit on a shared baseline. The cards in this row are
   already the same height, but each card's action row simply followed its own
   content, so the three yellow CTAs landed at three different heights and the
   row read as unfinished. Pinning the actions to the card floor lines them up.

   The cards are already position: relative with absolutely-positioned trailing
   children, so this follows the pattern the component already uses. Two of the
   three cards are grids that place this element into a named "actions" area,
   and an absolutely-positioned grid item with a definite grid position resolves
   its offsets against that area rather than the card — which is why the
   placement is cleared first. The class is repeated to out-specify the rule
   that assigns the area, the same approach this file already takes with
   #sub-page-main-content-wrapper elsewhere. The padding reserves the floor so
   the pinned row cannot sit on top of the card's own content, and :has() keeps
   that reservation off cards that have no actions to pin.

   The wrapper id is doubled on the padding rule because responsive-style-logout.css
   sets `padding: 18px !important` on these same cards from a longer selector.
   Without the doubling that rule wins, the floor is never reserved, and the
   pinned actions overlap the card's last content row. */
html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper .dpd-v2-admin-ops-grid .dpd-v2-admin-ops-card:has(> .dpd-v2-admin-ops-card__actions) {
  padding-bottom: 68px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-ops-grid .dpd-v2-admin-ops-card > .dpd-v2-admin-ops-card__actions.dpd-v2-admin-ops-card__actions.dpd-v2-admin-ops-card__actions {
  grid-area: auto !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 18px !important;
  margin-top: 0 !important;
  flex-wrap: nowrap !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-visual-grid,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid {
  align-items: stretch !important;
  grid-auto-rows: max-content !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-visual-grid > *,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-card,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid > * {
  height: auto !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .dpd-v2-dashboard-section--program-visuals .dpd-v2-program-visual-grid > .dpd-v2-program-card.dpd-v2-info-managed {
  align-self: stretch !important;
  height: auto !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-card,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid > * {
  display: flex !important;
  flex-direction: column !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .main-content-area-right #admin-program-visuals.dpd-v2-dashboard-section--program-visuals .mock-panel.is-dark.dpd-v2-program-card {
  border-color: rgba(255, 255, 255, 0.12) !important;
  box-shadow: 0 18px 42px rgba(7, 13, 19, 0.18) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .dpd-v2-dashboard-section--program-visuals .dpd-v2-program-card__header {
  align-items: center !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .dpd-v2-dashboard-section--program-visuals .dpd-v2-program-card__title {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  flex: 1 1 auto !important;
  font-size: clamp(20px, 1.5vw, 24px) !important;
  line-height: 1.08 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-transform: none !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .dpd-v2-dashboard-section--program-visuals .dpd-v2-program-card .dpd-v2-card-kicker {
  display: none !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-signals.dpd-v2-admin-dashboard-widget {
  border-top: 1px solid rgba(16, 24, 32, 0.1) !important;
}

/*
 * Remove decorative "AI brow" edge rails from the admin dashboard. Status
 * remains explicit in the labels, chips, counts, and true data tracks.
 */
html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-flow.dpd-v2-admin-dashboard-widget {
  background-image: linear-gradient(180deg, #ffffff 0%, #f7f9f9 100%) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-service .dpd-v2-admin-ops-stat {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-service .dpd-v2-admin-service-list__item,
html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-service .dpd-v2-admin-service-list__item:is(.is-ok, .is-warn, .is-bad) {
  border: 1px solid rgba(255, 255, 255, 0.11) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-activity .dpd-v2-admin-operations-metrics > span,
html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell #admin-widget-activity .dpd-v2-admin-operations-metrics > span:is(.is-ok, .is-warn, .is-bad) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-card :is(.dpd-v2-program-card__action, .dpd-v2-action-row):last-child,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid > * > .dpd-v2-action-row:last-child {
  margin-top: auto !important;
  padding-top: 16px !important;
}

html body.dpd-member-surface #dealer-session-console .dpd-v2-inline-summary {
  justify-content: flex-start !important;
}

html body.dpd-member-surface .dpd-v2-assisted-sessions__scope-copy {
  color: var(--dpd-audit-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  margin: 0 0 12px !important;
  max-width: 980px !important;
}

html body.dpd-member-surface #dealer-session-console .dpd-v2-results-pagination {
  justify-content: flex-end !important;
  margin: 16px 0 0 !important;
}

/* Notifications: compact feed, with management controls where the context starts. */
html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__inner {
  width: min(440px, 100vw) !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__header {
  padding: 20px 58px 14px 18px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__summary {
  margin-bottom: 10px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__header-actions {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__header-actions .mock-btn {
  align-items: center !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  flex: 0 0 36px !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 !important;
  width: 36px !important;
}

html body .dpd-audit-visually-hidden {
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__content {
  padding: 12px 14px 16px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__list {
  gap: 10px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__item {
  border: 1px solid var(--dpd-audit-line) !important;
  border-left-width: 1px !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  padding: 14px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__item.is-unread {
  background: #f3fbfa !important;
  border-color: #a8ded6 !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__item-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin-top: 12px !important;
}

html body.dpd-member-surface #dpd-v2-updates-drawer .dpd-v2-updates-drawer__item-actions .mock-btn {
  background: #fff !important;
  border-color: var(--dpd-audit-line) !important;
  color: var(--dpd-audit-ink) !important;
  min-height: 32px !important;
  padding-inline: 11px !important;
}

/* Training: a single course action and an accessible, solid progress rail. */
html body.dpd-member-surface .dpd-v2-training-preview-card__meter {
  background: rgba(255, 255, 255, 0.28) !important;
  bottom: 14px !important;
  height: 7px !important;
  overflow: visible !important;
  right: 54px !important;
}

html body.dpd-member-surface .dpd-v2-training-preview-card__meter > span {
  background: var(--dpd-audit-teal) !important;
  box-shadow: none !important;
}

html body.dpd-member-surface .dpd-v2-training-preview-card__meter-value {
  color: #fff !important;
  font-size: 11px !important;
  font-variant-numeric: tabular-nums !important;
  left: calc(100% + 8px) !important;
  line-height: 1 !important;
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

html body.dpd-member-surface .dpd-v2-training-preview-card__actions {
  justify-content: flex-end !important;
}

/* Tire Finder and selected-size states: remove decorative yellow brows. */
html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-filter {
  border: 1px solid var(--dpd-audit-line) !important;
  border-top-width: 1px !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 28px rgba(16, 24, 32, 0.07) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-topline {
  padding: 20px 22px 14px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-tabs {
  gap: 6px !important;
  padding: 0 22px 14px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-tabs button {
  border: 1px solid var(--dpd-audit-line) !important;
  border-radius: 999px !important;
  min-height: 38px !important;
  padding: 0 15px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-tabs button.is-active {
  background: var(--dpd-audit-ink) !important;
  border-color: var(--dpd-audit-ink) !important;
  color: #fff !important;
  /* The motorcycle tab (dpd-v2-portal.css) still carries a legacy
     -webkit-text-fill-color from when the active pill was yellow, which paints
     the label dark over this now-dark pill and hides it. Reset the fill so the
     white color above actually shows for every active tab. */
  -webkit-text-fill-color: #fff !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-tabs button.is-active::after {
  content: none !important;
  display: none !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-legacy-panels {
  padding: 16px 22px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-finder .dpd-v2-finder-bike-shortcuts--featured {
  padding: 14px 22px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-detail .dpd-v2-tire-size-selector__option {
  border-left-width: 1px !important;
  box-shadow: none !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-detail .dpd-v2-tire-size-selector__option.is-active {
  background: rgba(31, 200, 177, 0.12) !important;
  border-color: var(--dpd-audit-teal) !important;
  box-shadow: inset 0 0 0 1px var(--dpd-audit-teal) !important;
  transform: none !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-detail .dpd-v2-tire-size-selector__option:is(.is-active, :hover)::before,
html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-guided-route--tire-detail .dpd-v2-tire-size-selector__option:is(.is-active, :hover)::after {
  content: none !important;
  display: none !important;
}

html body.dpd-member-surface .dpd-v2-promo-download-card__header {
  justify-content: flex-end !important;
}

/* Downloads: treat additional files as compact rows, not oversized cards. */
html body.dpd-member-surface .dpd-v2-additional-list {
  gap: 10px !important;
}

html body.dpd-member-surface .dpd-v2-additional-card {
  align-items: center !important;
  border-left-width: 1px !important;
  box-shadow: none !important;
  gap: 14px !important;
  grid-template-columns: minmax(180px, 0.8fr) minmax(280px, 1.5fr) auto !important;
  padding: 14px 16px !important;
}

html body.dpd-member-surface .dpd-v2-additional-card__value {
  margin-bottom: 0 !important;
}

/* Data-heavy admin tools: rows are the default; cards remain an explicit option. */
html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"] .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr,
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-tire-points-screen .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr {
  border-left-width: 1px !important;
  border-left-color: var(--dpd-audit-line) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"] .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr:is(.is-pending, .is-warning, .is-complete),
html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-tire-points-screen .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr:is(.is-pending, .is-warning, .is-complete) {
  border-left-color: var(--dpd-audit-line) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"] .dpd-admin-ops-card,
html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"] .dpd-admin-ops-table-card {
  box-shadow: 0 10px 26px rgba(15, 23, 42, 0.06) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-card--parents-working {
  padding: 18px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-parents-load-form {
  gap: 12px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-parents-load-form textarea {
  min-height: 72px !important;
}

@media (min-width: 1000px) {
  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap {
    overflow-x: auto !important;
    padding: 0 18px 18px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table {
    background: #fff !important;
    border: 1px solid var(--dpd-audit-line) !important;
    border-collapse: separate !important;
    border-radius: 12px !important;
    border-spacing: 0 !important;
    display: table !important;
    min-width: 980px !important;
    overflow: hidden !important;
    table-layout: auto !important;
    width: 100% !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table thead {
    display: table-header-group !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody {
    display: table-row-group !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr {
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: table-row !important;
    padding: 0 !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr:hover td {
    background: #f7fafb !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td,
  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td:nth-child(n) {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #e5ebf0 !important;
    border-radius: 0 !important;
    color: var(--dpd-audit-ink) !important;
    display: table-cell !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    min-height: 0 !important;
    padding: 10px 12px !important;
    vertical-align: middle !important;
    white-space: normal !important;
    width: auto !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td::before {
    content: none !important;
    display: none !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td.is-empty {
    display: table-cell !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-admin-cardified-wrap table.dpd-admin-cardified-table :is(input, select) {
    min-height: 36px !important;
    padding: 7px 10px !important;
  }
}

/*
 * Audit redo: the view toggle was reporting List while higher-specificity
 * card rules still rendered each record as a poster-sized grid. Restore true
 * table geometry on desktop; the existing responsive cards remain below the
 * breakpoint.
 */
@media (min-width: 1000px) {
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap {
    overflow-x: auto !important;
    padding: 0 12px 16px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table {
    background: #fff !important;
    border: 1px solid var(--dpd-audit-line) !important;
    border-collapse: separate !important;
    border-radius: 10px !important;
    border-spacing: 0 !important;
    display: table !important;
    min-width: 1440px !important;
    overflow: hidden !important;
    table-layout: auto !important;
    width: 100% !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--dealers.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table {
    min-width: 1680px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table thead {
    display: table-header-group !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody {
    display: table-row-group !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody tr,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-tire-points-screen .dpd-tire-points-table-wrap table.dpd-admin-cardified-table tbody tr {
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: table-row !important;
    padding: 0 !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td:nth-child(n),
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-tire-points-screen .dpd-tire-points-table-wrap table.dpd-admin-cardified-table tbody td,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-tire-points-screen .dpd-tire-points-table-wrap table.dpd-admin-cardified-table tbody td:nth-child(n) {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #e5ebf0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--dpd-audit-ink) !important;
    display: table-cell !important;
    font-size: 11px !important;
    grid-area: auto !important;
    grid-column: auto !important;
    line-height: 1.3 !important;
    min-height: 0 !important;
    padding: 8px 10px !important;
    vertical-align: middle !important;
    white-space: normal !important;
    width: auto !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td::before,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-tire-points-screen .dpd-tire-points-table-wrap table.dpd-admin-cardified-table tbody td::before {
    content: none !important;
    display: none !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td.is-empty,
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-tire-points-screen .dpd-tire-points-table-wrap table.dpd-admin-cardified-table tbody td.is-empty:nth-child(n) {
    display: table-cell !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td form {
    align-items: center !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 6px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell[class*="dpd-v2-admin-tool--"].dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap :is(input, select, button, .btn, .dpd-admin-ops-inline-link) {
    font-size: 10px !important;
    min-height: 32px !important;
    padding: 5px 8px !important;
  }

  /* Registration details already live in the row's View Details modal. */
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--dealers.dpd-admin-record-view-list .dpd-admin-cardified-table :is(th, td):nth-child(n + 4):nth-child(-n + 9) {
    display: none !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-portal-shell.dpd-v2-admin-tool--dealers.dpd-admin-record-view-list .dpd-v2-admin-tool-frame .dpd-admin-cardified-wrap table.dpd-admin-cardified-table tbody td:nth-child(n + 4):nth-child(-n + 9) {
    display: none !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--dealers.dpd-admin-record-view-list .dpd-admin-cardified-table tbody td:nth-child(3) {
    min-width: 220px !important;
  }

  /* Keep the Master List's two row actions beside each other. */
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-admin-record-view-list .dpd-admin-ops-master-table tbody td:nth-child(5) {
    min-width: 240px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-admin-record-view-list .dpd-admin-ops-master-table .dpd-admin-ops-inline-actions {
    flex-wrap: nowrap !important;
  }

  /*
   * Tire Points exposes the full workflow from Review Sale. Keep the list to
   * its summary fields instead of repeating the 400px loyalty editor per row.
   */
  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-tire-points-table-wrap tbody td:nth-child(6) > :is(.dpd-tire-loyalty-card, p) {
    display: none !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-tire-points-table-wrap tbody td:nth-child(3) {
    min-width: 240px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--tire-points.dpd-admin-record-view-list .dpd-tire-points-table-wrap tbody td:nth-child(3) br {
    display: none !important;
  }
}

/* Parent hierarchy form: remove unused vertical space before records load. */
html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-card--parents-working {
  gap: 10px !important;
  padding: 10px 0 !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-parents-load-form {
  gap: 8px !important;
  padding: 12px 14px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper#sub-page-main-content-wrapper.dpd-v2-admin-tool--parents .dpd-admin-ops-parents-load-form textarea {
  min-height: 56px !important;
}

/* Support tickets: preserve readable columns and stack before the queue is squeezed. */
html body.dpd-member-surface .dpd-support-ops__grid {
  gap: 14px !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.65fr) !important;
}

html body.dpd-member-surface .dpd-support-card {
  min-width: 0 !important;
  padding: 16px !important;
}

html body.dpd-member-surface .dpd-support-card:first-child {
  overflow-x: auto !important;
}

html body.dpd-member-surface .dpd-support-table {
  min-width: 620px !important;
  table-layout: fixed !important;
}

html body.dpd-member-surface .dpd-support-table :is(th, td) {
  overflow-wrap: anywhere !important;
  padding: 10px 8px !important;
  word-break: normal !important;
}

html body.dpd-member-surface .dpd-support-table :is(th, td):nth-child(1) { width: 31% !important; }
html body.dpd-member-surface .dpd-support-table :is(th, td):nth-child(2) { width: 30% !important; }
html body.dpd-member-surface .dpd-support-table :is(th, td):nth-child(3) { width: 18% !important; }
html body.dpd-member-surface .dpd-support-table :is(th, td):nth-child(4) { width: 21% !important; }

html body.dpd-member-surface .dpd-support-empty {
  padding: 18px !important;
}

/* Contact flow: remove the large inter-section gaps and keep the FAQ/form compact. */
html body.page-template-template-contact .sign-up-main-sec.dpd-contact-page.dpd-contact-page--routing-first {
  gap: 18px !important;
  padding-top: 18px !important;
  padding-bottom: 38px !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-left-tools {
  gap: 18px !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-support-dashboard,
html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-support-paths,
html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .sign-up-main-right {
  margin-top: 0 !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-support-paths {
  padding: clamp(22px, 2.5vw, 32px) !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-support-paths h2 {
  font-size: clamp(32px, 3.6vw, 48px) !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .sign-up-main-right-con-top {
  gap: 16px !important;
  padding: 22px !important;
}

html body.page-template-template-contact .dpd-contact-page.dpd-contact-page--routing-first .dpd-contact-primary-form {
  margin-top: 14px !important;
  padding: clamp(18px, 2.4vw, 28px) !important;
}

@media (max-width: 1220px) {
  html body.dpd-member-surface .dpd-support-ops__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 780px) {
  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-dashboard #dashboard .dashboard-head-left {
    padding-inline: 20px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper :is(
    .dpd-v2-program-visual-grid,
    .dpd-v2-admin-dashboard-grid
  ) {
    align-items: start !important;
    grid-auto-rows: max-content !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-visual-grid > *,
  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-card,
  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid > * {
    align-self: start !important;
    height: auto !important;
    min-height: 0 !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-program-card :is(.dpd-v2-program-card__action, .dpd-v2-action-row):last-child,
  html body.dpd-member-surface #sub-page-main-content-wrapper .dpd-v2-admin-dashboard-grid > * > .dpd-v2-action-row:last-child {
    margin-top: 0 !important;
    padding-top: 12px !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .main-content-area-right .dpd-v2-dashboard-section--program-visuals [data-dpd-program-visual="rewards"] .dpd-v2-program-flow-meter,
  html body.dpd-member-surface #sub-page-main-content-wrapper.dpd-v2-portal-shell .main-content-area-right .dpd-v2-dashboard-section--program-visuals [data-dpd-program-visual="submittingRebates"] .dpd-v2-program-card__action {
    margin-top: 0 !important;
  }

  html body.dpd-member-surface .dpd-v2-additional-card {
    align-items: start !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  html body.dpd-member-surface #dealer-session-console .dpd-v2-results-pagination {
    justify-content: center !important;
  }

  html body.dpd-member-surface .dpd-support-table {
    min-width: 0 !important;
  }

  html body.page-template-template-contact .sign-up-main-sec.dpd-contact-page.dpd-contact-page--routing-first {
    max-width: calc(100vw - 24px) !important;
    padding-top: 12px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .dpd-v2-training-preview-card__meter > span,
  html body .dpd-admin-record-card-row,
  html body .dpd-v2-tire-size-selector__option {
    animation: none !important;
    transition: none !important;
  }
}

/* ==========================================================================
   Assisted Sessions console
   --------------------------------------------------------------------------
   This block is where an operator takes over a dealer's account, so it is
   treated as an access checkpoint rather than another dashboard panel.

   The portal paints every control Dunlop yellow, which left the one
   consequential act here — entering somebody else's account — with no more
   weight than a link to a log, and left the selected filter indistinguishable
   from the four unselected ones despite the markup already marking it with
   aria-current. Yellow is therefore spent exactly once in this section, on
   Open Session in the table below. Everything in the control header is ink,
   paper and hairline, so that the single yellow thing on screen carries
   meaning again.

   Everything is scoped to #assisted-sessions: .mock-btn and .mock-toolbar are
   shared across the portal and must not move.
   ========================================================================== */

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions {
  --as-ink: #14161a;
  --as-mute: #5b636e;
  --as-rule: #e2e6ea;
  --as-field: #f7f8fa;
  --as-paper: #fff;
  --as-signal: #fff200;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__console {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  margin-top: 14px !important;
}

/* Intro: the scope sentence and the session terms share a baseline, so the
   rules of engagement read as part of the description rather than a footnote. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__intro {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: start !important;
  justify-content: space-between !important;
  gap: 12px 28px !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__scope-copy {
  flex: 1 1 420px !important;
  max-width: 68ch !important;
  margin: 0 !important;
  color: var(--as-mute) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
}

/* The signature element. Three facts that change how the tool is used, set in
   the utility face because they are terms of access, not prose. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-session-terms {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 1px solid var(--as-rule) !important;
  border-radius: 3px !important;
  overflow: hidden !important;
  background: var(--as-paper) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-session-terms li {
  margin: 0 !important;
  padding: 6px 11px !important;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: var(--as-mute) !important;
  text-transform: none !important;
  white-space: nowrap !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-session-terms li + li {
  border-left: 1px solid var(--as-rule) !important;
}

/* Controls: scope on one line, find on the next. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__controls {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px 18px !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Segmented filter. One connected group reads as "pick one of these", which is
   what the control actually does; five detached pills did not. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__filters {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--as-rule) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  background: var(--as-paper) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item {
  margin: 0 !important;
  padding: 9px 15px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--as-mute) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color 120ms ease, color 120ms ease !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item + .dpd-v2-seg__item {
  border-left: 1px solid var(--as-rule) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item:hover {
  background: var(--as-field) !important;
  color: var(--as-ink) !important;
}

/* The selected filter, which previously looked exactly like the other four. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item[aria-current="page"] {
  background: var(--as-ink) !important;
  color: #fff !important;
}

/* Find row. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 1 1 380px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* The placeholder names four things you can search by, so the field is given
   room to say so and the inherited uppercasing is dropped — it was clipping
   the sentence to "SEARCH NAME, DEALERSHIP, EM…". */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form input[type="search"] {
  flex: 1 1 340px !important;
  min-width: 0 !important;
  max-width: 460px !important;
  height: 38px !important;
  padding: 0 12px !important;
  border: 1px solid var(--as-rule) !important;
  border-radius: 4px !important;
  background: var(--as-field) !important;
  color: var(--as-ink) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form input[type="search"]::placeholder {
  color: #8b929c !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  opacity: 1 !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form__submit {
  height: 38px !important;
  padding: 0 20px !important;
  border: 1px solid var(--as-ink) !important;
  border-radius: 4px !important;
  background: var(--as-ink) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background-color 120ms ease !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form__submit:hover {
  background: #2b3038 !important;
}

/* Clear and Audit history are secondary routes, not actions on this form. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-quiet-link {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--as-mute) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  text-decoration-color: var(--as-rule) !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-quiet-link:hover {
  color: var(--as-ink) !important;
  text-decoration-color: currentColor !important;
}

html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__aside {
  margin: 0 0 0 auto !important;
}

/* The one place yellow is spent in this section. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-dealer-session-actions .mock-btn {
  background: var(--as-signal) !important;
  border: 1px solid #d9cf00 !important;
  color: #14161a !important;
  font-weight: 800 !important;
}

/* Quality floor: a visible focus ring on every control in the block. */
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item:focus-visible,
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-quiet-link:focus-visible,
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form__submit:focus-visible,
html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form input[type="search"]:focus-visible {
  outline: 2px solid var(--as-ink) !important;
  outline-offset: 2px !important;
}

@media (prefers-reduced-motion: reduce) {
  html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions * {
    transition: none !important;
  }
}

@media (max-width: 780px) {
  html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-assisted-sessions__filters,
  html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-search-form {
    width: 100% !important;
  }

  html body.dpd-member-surface #sub-page-main-content-wrapper #assisted-sessions .dpd-v2-seg__item {
    flex: 1 1 auto !important;
    text-align: center !important;
  }
}
