/* Station overrides compose the shared fleet/distributor primitives. */
.station-surface {
  --primary: #ed1c24;
  --primary-soft: rgba(237, 28, 36, .08);
  --station-action: #c8171e;
  --focus-ring: #c8171e;
  --shadow: 0 18px 42px -28px rgba(96, 21, 27, .25), inset 0 1px 1px rgba(255, 255, 255, .88);
  background: var(--bg);
}
.station-surface .pill-button.primary { background: var(--station-action); border-color: var(--station-action); color: #fff; box-shadow: 0 16px 28px rgba(237,28,36,.12); }
.station-surface a.pill-button { text-decoration: none; }
.station-surface .eyebrow { color: var(--station-action); }
.station-surface .sb-header { gap: 1.5rem; }
.station-surface .sb-brand { min-width: 0; }
.station-surface .sb-account { display: inline-flex; margin-left: auto; flex: 0 0 auto; }
.station-surface .station-nav { min-width: 0; }
.station-surface .station-nav a { order: 0; white-space: nowrap; min-height: 44px; display: inline-flex; align-items: center; padding: .5rem 1rem; border-radius: 999px; }
.station-surface .station-nav a::after { display: none; }
.station-surface .station-nav a[aria-current="page"] { color: var(--station-action); background: var(--primary-soft); border-color: transparent; box-shadow: none; }
.station-skip { position: absolute; top: -100px; left: 1rem; z-index: 100; padding: 1rem; background: var(--surface-strong); color: var(--text); }
.station-skip:focus { top: 1rem; }
.station-surface :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 3px solid var(--focus-ring); outline-offset: 3px; }
.station-surface :is(input, select, button) { min-height: 44px; }
.station-surface button:disabled { cursor: not-allowed; opacity: .55; }
.station-surface [hidden] { display: none !important; }
.station-surface .station-main { display: grid; gap: 1.5rem; padding-bottom: 3rem; }
.station-surface .station-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 0; }
.station-surface .station-heading h1 { font-size: clamp(2rem, 4vw, 3rem); }
.station-surface .station-heading p { margin-bottom: 0; }
.station-surface .station-note, .station-surface .hint, .station-surface .message { color: var(--muted); font-size: .875rem; line-height: 1.6; }
.station-surface :is(.message, .form-message):empty { display: none; }
.station-surface :is(.info-panel, .station-identity, .station-login-media) { min-width: 0; }
.station-surface :is(h1, h2, h3, p, dd, .station-response-note) { overflow-wrap: anywhere; }
.station-surface .results-head { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; margin-bottom: 1rem; }
.station-surface .results-head h2 { margin: 0; }
.station-surface .results-head p { margin: .5rem 0 0; }
.station-surface .filters .vehicle-form { display: flex; flex-wrap: wrap; align-items: end; gap: 1rem; }
.station-surface .filters label { flex: 1 1 10rem; min-width: 0; }
.station-surface .filters label { display: grid; gap: .5rem; font-size: .875rem; }
.station-surface .filters input { width: 100%; min-width: 0; border: 1px solid var(--line); border-radius: .75rem; padding: .75rem; font: inherit; background: var(--surface-strong); color: var(--text); }
.station-surface .distributor-login-form input { border: 1px solid var(--line); box-shadow: inset 0 1px 2px rgba(28,27,27,.03); }
.station-surface .distributor-login-form input:focus { border-color: var(--station-action); box-shadow: 0 0 0 3px var(--primary-soft); }
.station-surface .local-filters { display: flex; flex-wrap: wrap; gap: 1rem; }
.station-surface .local-filters label { display: grid; gap: .5rem; font-size: .875rem; }
.station-surface .local-filters :is(input, select) { border: 1px solid var(--line); border-radius: .75rem; padding: .75rem; background: var(--surface-strong); color: var(--text); font: inherit; }
.station-surface .table-scroll { overflow-x: auto; max-width: 100%; }
.station-surface .vehicle-table { width: 100%; font-variant-numeric: tabular-nums; }
.station-surface .vehicle-table :is(td, th) { white-space: nowrap; }
.station-surface .vehicle-table tr:nth-child(even) td { background: var(--primary-soft); }
.station-surface .vehicle-table details p { white-space: normal; min-width: 16rem; max-width: 30rem; }
.station-surface .pager { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 1rem; padding-top: 1rem; }
.station-surface .phase { border-radius: 999px; background: var(--surface-high); padding: .5rem 1rem; white-space: nowrap; color: var(--muted); }
.station-surface .station-login-shell { grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); grid-template-areas: 'form media'; min-height: calc(100dvh - 150px); }
.station-surface .distributor-login-card { grid-area: form; }
.station-surface .distributor-login-card h1 { font-size: clamp(2rem, 3vw, 3rem); }
.station-surface .station-login-media { grid-area: media; position: relative; isolation: isolate; margin: 0; border-radius: 1.45rem; overflow: hidden; min-height: 38rem; background: var(--surface-high); box-shadow: var(--shadow); }
.station-login-media > img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: 54% center; }
.station-login-media::after { content: ''; position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, rgba(28,27,27,.85)); z-index: 0; }
.station-login-media figcaption { position: absolute; z-index: 1; inset: auto 2rem 2rem; color: #fff; display: grid; gap: 1rem; }
.station-login-media figcaption strong { font-size: clamp(2rem, 4vw, 3rem); line-height: 1.1; }
.station-login-media figcaption p { color: #fff; margin: 0; }
.station-surface .station-overview-hero { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.station-surface .station-identity { border-radius: 1.45rem; display: grid; align-items: center; }
.station-identity > div { padding: 2rem; align-self: center; }
.station-identity h2 { font-size: 2rem; line-height: 1.2; margin-top: .5rem; }
.station-surface .station-today { display: flex; flex-direction: column; justify-content: center; }
.station-metrics { margin: 1rem 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
.station-metrics dt, .station-tank-values dt { color: var(--muted); font-size: .875rem; }
.station-metrics dd { margin: .5rem 0 0; font-size: 2.25rem; font-weight: 750; font-variant-numeric: tabular-nums; line-height: 1.1; }
.station-tank-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(30rem, 100%), 1fr)); gap: 1.5rem; }
.station-tank-card { display: grid; grid-template-columns: 10rem minmax(0,1fr); align-items: center; gap: 1rem; min-width: 0; padding: 1.5rem; border-radius: .75rem; background: var(--surface-high); }
.station-tank-card smartpoint-tank { display: block; width: 100%; aspect-ratio: 1; }
.station-tank-info { min-width: 0; }
.station-tank-card h3 { margin: 0; font-size: 1.1rem; }
.station-tank-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; align-items: end; margin: 1.5rem 0; }
.station-tank-values dd { margin: .5rem 0 0; font-weight: 700; font-variant-numeric: tabular-nums; }
.station-tank-percentage dd { color: var(--chart-primary, #004ac6); font-size: 1.6rem; line-height: 1; }
.station-period-list { display: grid; }
.station-period { display: flex; align-items: center; gap: 1.5rem; padding: 1rem; border-radius: .75rem; color: var(--text); text-decoration: none; }
.station-period:hover { background: var(--surface-high); }
.station-period > div { flex: 1; }
.station-period p { margin: .5rem 0 0; }
.station-period-action { color: var(--station-action); font-size: .875rem; font-weight: 650; }
.station-surface .station-response-form { border-top: 1px solid var(--line); margin-top: 1.5rem; padding-top: 1.5rem; }
.station-surface .station-response-form form { display: grid; gap: 1rem; }
.station-surface .station-response-form label { display: grid; gap: .5rem; }
.station-surface .station-response-form .station-confirm { display: flex; align-items: center; gap: .75rem; }
.station-surface .station-confirm input { min-height: auto; width: 1.25rem; height: 1.25rem; accent-color: var(--primary); flex: 0 0 auto; }
.station-surface .station-response-form textarea { font: inherit; min-height: 7rem; width: 100%; padding: .75rem; border: 1px solid var(--line); border-radius: .75rem; background: var(--surface-strong); color: var(--text); resize: vertical; }
.station-surface .station-response-form button { justify-self: start; }
.station-surface .station-response-form summary { cursor: pointer; min-height: 44px; padding: .75rem 0; }
.station-surface .station-response-note { white-space: pre-wrap; }
.station-surface [data-receipt-rows] { list-style: none; padding: 0; display: grid; gap: .75rem; }
.station-surface [data-receipt-rows] li { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; border-top: 1px solid var(--line); padding-top: 1rem; overflow-wrap: anywhere; }
.station-surface dialog[data-receipt-preview] { max-width: min(52rem, calc(100% - 2rem)); border: 1px solid var(--line); border-radius: 1.45rem; padding: 1.5rem; background: var(--bg); }
.station-surface dialog[data-receipt-preview]::backdrop { background: rgba(28,27,27,.5); }
@media (max-width: 1060px) {
  .station-surface .station-login-shell { grid-template-columns: minmax(0,1fr); grid-template-areas: 'form' 'media'; }
  .station-surface .station-login-media { min-height: 24rem; }
  .station-surface .station-overview-hero { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 720px) {
  .station-surface .sb-header { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: .75rem; padding: 1rem; }
  .station-surface .sb-account { grid-column: 2; grid-row: 1; }
  .station-surface .station-cabin-picker { grid-column: 1 / -1; grid-row: 2; }
  .station-surface .sb-brand strong { font-size: 1rem; }
  .station-surface .station-nav { grid-column: 1 / -1; order: 3; flex-basis: 100%; flex-wrap: nowrap; overflow-x: auto; margin: 0; }
  .station-surface .station-nav a { flex: 0 0 auto; }
  .station-surface .station-main { gap: 1rem; }
  .station-surface .station-heading { align-items: flex-start; }
  .station-surface .station-heading h1 { font-size: 2rem; }
  .station-surface .results-head { flex-direction: column; align-items: flex-start; }
  .station-identity > div { padding: 1.5rem; }
  .station-metrics dd { font-size: clamp(1.4rem, 6.5vw, 2.25rem); }
  .station-tank-card { grid-template-columns: minmax(0,1fr); padding: 1.25rem; }
  .station-tank-card smartpoint-tank { max-width: 12rem; justify-self: center; }
  .station-period { flex-wrap: wrap; gap: .75rem; padding: 1rem 0; }
  .station-period > div { flex-basis: 100%; }
  .station-period-action { margin-left: auto; }
  .station-surface .local-filters { width: 100%; }
  .station-surface .local-filters label { min-width: 0; flex: 1 1 10rem; }
  .station-surface .local-filters :is(input,select) { width: 100%; min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .station-surface *, .station-surface *::before, .station-surface *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

@media (max-width: 420px) {
  .station-tank-values { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .station-tank-percentage { grid-column: 1 / -1; }
  .station-tank-percentage dd { white-space: nowrap; }
}

.station-surface .station-sale-actions { width: 52px; padding-inline: .25rem; text-align: center; }
.station-surface .station-sale-more { width: 44px; height: 44px; border: 0; border-radius: 12px; background: transparent; color: var(--text-primary, #172033); font-size: 1.5rem; cursor: pointer; }
.station-surface .station-sale-more:hover,
.station-surface .station-sale-more:focus-visible { background: #ed1c240d; color: var(--station-action, #c8171e); }
.station-surface .station-sale-menu { position: fixed; inset: auto; margin: 0; padding: 4px; width: 224px; max-width: calc(100vw - 16px); border: 1px solid #e7e7ec; border-radius: 14px; background: #fff; box-shadow: 0 12px 36px #1720331f; }
.station-surface .station-sale-report { display: block; width: 100%; border: 0; border-radius: 10px; background: transparent; color: var(--station-action, #c8171e); font: inherit; font-size: .85rem; text-align: left; min-height: 44px; padding: .65rem .75rem; cursor: pointer; }
.station-surface .station-sale-report:hover,
.station-surface .station-sale-report:focus-visible { background: #ed1c240d; }
.station-surface .station-sales-table .station-sale-actions { width: 72px; min-width: 72px; text-align: left; white-space: nowrap; }
.station-surface .station-sale-more { vertical-align: top; }
.station-sale-status { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; padding: 0; border: 1px solid currentColor; border-radius: 10px; background: var(--receipt-state-soft); color: var(--receipt-state); font: inherit; cursor: pointer; }
.station-sale-status[hidden] { display: none; }
.station-sale-status:hover { filter: brightness(.96); }
.station-sale-state-icon { display: inline-flex; pointer-events: none; }
.station-sale-state-tooltip { position: absolute; bottom: calc(100% + 8px); left: 0; z-index: 5; width: max-content; max-width: 240px; padding: 7px 10px; border-radius: 8px; background: #172033; color: #fff; font-size: 12px; line-height: 1.4; white-space: normal; opacity: 0; visibility: hidden; pointer-events: none; }
.station-sale-status:hover .station-sale-state-tooltip,
.station-sale-status:focus-visible .station-sale-state-tooltip { opacity: 1; visibility: visible; }
.station-sale-status[data-tone="processing"] { --receipt-state: #225eb0; --receipt-state-soft: #e9f0fc; }
.station-sale-status[data-tone="review"] { --receipt-state: #8e540c; --receipt-state-soft: #fff2d9; }
.station-sale-status[data-tone="approved"] { --receipt-state: #23733a; --receipt-state-soft: #e5f3e8; }
.station-sale-status[data-tone="rejected"], .station-sale-status[data-tone="failed"] { --receipt-state: #b32632; --receipt-state-soft: #fbe8eb; }
.station-receipt-detail-dialog { width: min(860px, calc(100vw - 32px)); max-height: 90dvh; overflow: auto; padding: 0; border: 0; border-radius: 20px; background: #fff; color: var(--text, #172033); }
.station-receipt-detail-dialog::backdrop { background: rgb(15 23 42 / 60%); }
.station-receipt-detail-header { position: sticky; top: 0; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; border-bottom: 1px solid var(--line); background: #fff; }
.station-receipt-detail-header h2 { margin: 0; font-size: 20px; }
.station-sale-modal-detail { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(220px, .8fr); grid-template-rows: min-content minmax(0, 1fr); align-items: start; gap: 20px; padding: 20px; }
.station-sale-modal-detail > .station-sale-receipt { grid-column: 1; grid-row: 1 / 3; }
.station-sale-modal-detail > .station-sale-outcome { grid-column: 2; grid-row: 1; align-self: start; }
.station-sale-modal-detail > .station-sale-progress { grid-column: 2; grid-row: 2; }
.station-sale-modal-detail > p { grid-column: 1 / -1; }
.station-receipt-detail-image { display: block; justify-self: center; width: auto; max-width: 100%; max-height: 65dvh; height: auto; object-fit: contain; }
@media (max-width: 700px) {
  .station-sale-modal-detail { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
  .station-sale-modal-detail > :is(.station-sale-receipt, .station-sale-outcome, .station-sale-progress) { grid-column: 1; grid-row: auto; }
}
.station-surface .station-sales-scroll { container-type: inline-size; }
.station-surface .station-sale-detail-row > td { padding: 0; white-space: normal; }
.station-sale-detail { position: sticky; left: 0; box-sizing: border-box; width: 100cqw; max-width: 100%; padding: 20px; display: grid; grid-template-columns: minmax(230px, .9fr) minmax(270px, 1.3fr) minmax(200px, 1fr); align-items: center; gap: 24px; background: var(--surface-strong); border-block: 1px solid var(--line); }
.station-sale-detail > p { grid-column: 1 / -1; }
.station-sale-receipt, .station-sale-outcome { display: grid; justify-items: start; gap: 8px; min-width: 0; overflow-wrap: anywhere; }
.station-sale-receipt > span, .station-sale-outcome p { font-size: .85rem; margin: 0; }
.station-sale-receipt-thumb { width: 80px; height: 100px; object-fit: contain; border-radius: 6px; }
.station-sale-receipt:has(.station-sale-receipt-thumb) { grid-template-columns: 80px minmax(0, 1fr); }
.station-sale-receipt:has(.station-sale-receipt-thumb) > :not(img) { grid-column: 2; }
.station-sale-receipt-thumb { grid-column: 1; grid-row: 1 / 5; }
.station-sale-progress { display: flex; list-style: none; margin: 0; padding: 0; align-self: start; padding-top: 12px; }
.station-sale-progress li { flex: 1; position: relative; padding: 24px 6px 0; text-align: center; font-size: .8rem; line-height: 1.5; color: var(--text-soft); border-top: 2px solid var(--line); }
.station-sale-progress li::before { content: ''; position: absolute; top: -8px; left: calc(50% - 7px); width: 12px; height: 12px; border: 2px solid var(--line); border-radius: 50%; background: var(--surface-strong); }
.station-sale-progress li[data-step="done"]::before { background: #225eb0; border-color: #225eb0; }
.station-sale-progress li[aria-current="step"] { color: var(--text); font-weight: 600; }
.station-sale-progress li[aria-current="step"]::before { border-color: var(--station-action); }
@media (max-width: 720px) {
  .station-sale-detail { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 16px; }
}
.station-sale-dialog { width: min(34rem, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; padding: 1.5rem; border: 1px solid var(--outline); border-radius: 1.45rem; color: var(--text); background: var(--surface-high, #f2eeee); box-shadow: 0 24px 80px rgba(0,0,0,.2); }
.station-sale-dialog::backdrop { background: rgba(0,0,0,.5); }
.station-receipt-image { display: block; max-width: 100%; height: auto; margin: 1rem auto; border-radius: .75rem; }
.station-receipt-image[hidden] { display: none; }
.station-sale-dialog header, .station-sale-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.station-sale-dialog h2 { font-size: 1.25rem; margin: 0; }
.station-sale-dialog footer { justify-content: flex-end; margin-top: 1.5rem; }
.station-sale-file { display: grid; gap: .75rem; margin: 1.25rem 0; }
.station-sale-file input { max-width: 100%; }
.station-sale-file[hidden] { display: none; }

.station-sale-file input::file-selector-button { min-height: 44px; padding: .6rem 1rem; margin-right: .75rem; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-strong); color: var(--text); font: inherit; cursor: pointer; }

.station-surface .station-settlement-scroll { container-type: inline-size; }
.station-surface .settlement-inline-detail-row > td { padding: 0; white-space: normal; }
.station-surface .station-response-detail { position: sticky; left: 0; width: 100cqw; max-width: 100%; box-sizing: border-box; padding: 1.5rem; border-left: 3px solid var(--primary); background: var(--surface-strong); white-space: normal; }
.station-surface .station-download-menu button { display: block; width: 100%; padding: .5rem .75rem; border: 0; background: transparent; color: var(--text); text-align: left; font: inherit; cursor: pointer; }
.station-surface .station-download-menu button:hover { background: var(--primary-soft); }
@media (max-width: 720px) {
  .station-surface .station-main { padding-top: 3rem; }
  .station-surface .station-response-detail { padding: 1rem; }
}
.station-sale-dialog [data-sale-description-label] { display: grid; gap: .5rem; margin: 1rem 0; }
.station-sale-dialog textarea { width: 100%; box-sizing: border-box; padding: .75rem; border: 1px solid var(--line); border-radius: .75rem; font: inherit; background: var(--surface-strong); color: var(--text); resize: vertical; }

/* The objection pool stays outside the expandable sales table. */
.station-objection-pool { margin-top: 28px; border-top: 3px solid #ed1c24; }
.station-objection-pool > .results-head { background: var(--primary-soft); padding: 16px; border-radius: 12px; }
.station-objection-group { padding: 16px 0; }
.station-objection-group + .station-objection-group { border-top: 1px solid var(--line); }
.station-objection-group header, .station-objection-group footer, .station-objection-item { display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; }
.station-objection-group header { margin-bottom: 12px; }
.station-objection-group h3, .station-objection-item p { margin: 0; }
.station-objection-item { padding: 14px 0; border-top: 1px solid var(--line); }
.station-objection-item > div:first-child { flex: 1 1 240px; overflow-wrap: anywhere; }
.station-objection-group footer { border-top: 1px solid var(--line); padding-top: 16px; }
.station-objection-buttons { display: flex; gap: 8px; }
.station-row-note { display: block; color: var(--muted); }
.station-sale-dialog [data-objection-body] form { display: grid; gap: 14px; }
.station-sale-dialog [data-objection-body] label { display: grid; gap: 6px; }
.station-sale-dialog [data-objection-body] label[hidden] { display: none; }
.station-sale-dialog [data-objection-body] input, .station-sale-dialog [data-objection-body] select, .station-sale-dialog [data-objection-body] textarea { box-sizing: border-box; width: 100%; min-width: 0; padding: 10px; border: 1px solid var(--line); border-radius: 10px; font: inherit; }
.station-sale-dialog [data-objection-body] .vehicle-table { min-width: 0; }
.station-sale-dialog [data-objection-body] .vehicle-table td { white-space: normal; }
.station-sale-dialog [data-objection-body] .vehicle-table .pill-button { white-space: normal; }

/* Station settlements reuse the fleet cards and history layout. */
.station-settlement-filters { display: flex; align-items: end; gap: 1.25rem; flex-wrap: wrap; width: 100%; }
.station-settlement-filters .form-control { flex: 1 1 180px; }
.station-settlement-filters :is(input, select) { width: 100%; }
.station-surface .settlement-summary-grid { margin: 0; }
.station-surface .metric-cell small { color: var(--muted); font-size: .75rem; }
.station-surface .settlement-party-strip { margin: 0; }
.station-surface .station-cycle-panel .invoice-cycle-status { border-color: rgba(237, 28, 36, .18); background: var(--primary-soft); }
.station-surface .station-cycle-panel .invoice-progress-fill { background: repeating-linear-gradient(-45deg, #ffffff2e 0 9px, transparent 9px 18px), linear-gradient(90deg, var(--primary), #bf1720); }
.station-progress-track .station-fill-0 { width: 8%; }
.station-progress-track .station-fill-1 { width: 30%; }
.station-progress-track .station-fill-2 { width: 55%; }
.station-progress-track .station-fill-3 { width: 80%; }
.station-progress-track .station-fill-4 { width: 100%; }
.station-progress-track .station-marker-0 { left: 12.5%; }
.station-progress-track .station-marker-1 { left: 37.5%; }
.station-progress-track .station-marker-2 { left: 62.5%; }
.station-progress-track .station-marker-3 { left: 87.5%; }
.station-progress-track .is-pending i { background: #636363; }
.station-progress-track .is-complete i { background: #fff; }
.station-cycle-panel .invoice-cycle-status strong { line-height: 1.12; }
.station-cycle-panel .invoice-cycle-foot { gap: 1rem; }
.station-surface .station-settlement-scroll > .settlement-table > tbody > tr > td:first-child { font-weight: 750; white-space: normal; min-width: 120px; }
.station-surface .station-settlement-scroll > .settlement-table > tbody > tr:nth-child(even) > td { background: transparent; }
.station-surface .station-settlement-scroll > .settlement-table > tbody > tr:has([aria-expanded="true"]) > td { background: var(--primary-soft); }
.station-surface .station-empty { text-align: center; padding: 2rem; color: var(--muted); }
@media (max-width: 640px) {
  .station-surface .settlement-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .station-surface .metric-cell { min-width: 0; padding: 1rem; }
  .station-surface .metric-cell strong { font-size: 1.7rem; }
  .station-cycle-panel .invoice-progress-captions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .station-progress-track .invoice-progress-marker { width: 62px; }
  .station-progress-track .invoice-progress-marker strong { font-size: .64rem; max-width: 68px; }
  .station-progress-track .invoice-progress-marker small { font-size: .55rem; letter-spacing: 0; }
  .station-cycle-panel .invoice-cycle-foot { align-items: stretch; flex-direction: column; }
  .station-settlement-filters { gap: .75rem; }
  .station-settlement-filters .form-control { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) { .station-cycle-panel .invoice-progress-fill { transition: none; } }
.station-settlement-filters input { min-height: 44px; border: 1px solid var(--line); border-radius: .75rem; padding: .7rem .85rem; background: var(--surface-strong); color: var(--text); font: inherit; }
.station-surface .settlement-party-strip { border-radius: 1rem; }
.station-surface .settlement-progress.is-current .settlement-progress-pie path.is-filled { fill: var(--primary); }
@media (forced-colors: active) { .station-surface .settlement-progress.is-current .settlement-progress-pie path.is-filled { fill: Highlight; } }

/* Overview keeps sales share and the existing blue cabinet in one panel. */
body[data-page="station-settlements"] .settlement-inline-detail { position: sticky; left: 0; width: 100cqw; max-width: 100%; box-sizing: border-box; white-space: normal; }
body[data-page="station-settlements"] .station-settlement-purchases .vehicle-table { min-width: 660px; }
body[data-page="station-settlements"] .settlement-inline-workspace .invoice-objection-form { margin-bottom: 1rem; }
body[data-page="station-settlements"] .station-objection-pool { margin-top: 0; border-top: 1px solid var(--line); }
body[data-page="station-settlements"] .station-objection-pool > .results-head { padding: 0; background: transparent; }
body[data-page="station-settlements"] .settlement-inline-workspace .settlement-inline-note { white-space: normal; line-height: 1.6; }

.station-surface .station-performance { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); border-radius: 1.45rem; overflow: hidden; }
.station-surface .station-share-panel { padding: 2rem; min-width: 0; }
.station-surface .station-share-panel .results-head { align-items: flex-start; }
.station-surface .station-share-panel h2 { font-size: 1.25rem; line-height: 1.4; }
.station-surface .station-range { display: grid; gap: .5rem; font-size: .8rem; color: var(--muted); flex: 0 0 auto; }
.station-surface .station-range select { font: inherit; color: var(--text); padding: .6rem .8rem; border: 1px solid var(--line); border-radius: .75rem; background: var(--surface-strong); }
.station-surface .station-share-title { display: grid; gap: .5rem; font-size: 1.35rem; font-weight: 650; margin: 2rem 0 1.5rem; }
.station-surface .station-share-title strong { font-size: clamp(3.5rem,6vw,5.5rem); letter-spacing: -.06em; line-height: 1.1; color: var(--station-action); font-variant-numeric: tabular-nums; }
.station-surface .station-share-title span { font-size: .875rem; font-weight: 400; color: var(--muted); }
.station-surface .station-share-track { height: .75rem; border-radius: 999px; background: var(--chart-compare, #777783); overflow: hidden; margin-bottom: 1.5rem; }
.station-surface .station-share-track span { display: block; height: 100%; background: var(--primary); }
.station-surface .station-sales-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin: 0 0 1.5rem; }
.station-surface .station-sales-values dt { font-size: .8rem; color: var(--muted); }
.station-surface .station-sales-values dd { margin: .6rem 0 0; font-size: clamp(1.25rem,2.3vw,2rem); line-height: 1.2; font-weight: 750; font-variant-numeric: tabular-nums; }
.station-surface .station-sales-values > div:nth-child(2) dd { color: var(--station-action); }
.station-surface .station-overview-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.station-surface .station-cabinet-panel { min-width: 0; padding: 2rem; border-left: 1px solid var(--line); background: var(--surface-high); }
.station-surface .station-cabinet-panel h2 { font-size: 1.25rem; }
.station-surface .station-cabinet-panel .station-tank-card { grid-template-columns: minmax(0,1fr); padding: 0; background: transparent; gap: 0; }
.station-surface .station-cabinet-panel smartpoint-tank { max-width: 20rem; justify-self: center; }
.station-surface .station-cabinet-panel .station-tank-info > h3,
.station-surface .station-cabinet-panel .station-tank-info > h3 + p { display: none; }
.station-surface .station-cabinet-panel .station-tank-values { margin-top: .5rem; }
.station-surface .station-cabinet-panel .station-tank-percentage dd { font-size: 2rem; }
@media(max-width:900px) {
  .station-surface .station-performance { grid-template-columns: minmax(0,1fr); }
  .station-surface .station-cabinet-panel { border-left: 0; border-top: 1px solid var(--line); }
}
@media(max-width:540px) {
  .station-surface .station-share-panel,.station-surface .station-cabinet-panel { padding: 1.25rem; }
  .station-surface .station-share-panel .results-head { flex-direction: row; gap: .75rem; }
  .station-surface .station-sales-values { grid-template-columns: minmax(0,1fr); gap: .75rem; }
  .station-surface .station-sales-values > div { display: flex; justify-content: space-between; align-items: baseline; gap: .75rem; }
  .station-surface .station-sales-values dd { margin: 0; font-size: 1.6rem; }
  .station-surface .station-cabinet-panel smartpoint-tank { max-width: 18rem; }
}
.station-cabin-picker{display:flex;align-items:center;gap:8px;color:var(--muted,#667085);font-size:12px}.station-cabin-picker select{max-width:220px;min-height:38px;border:1px solid var(--line,#dce2e9);border-radius:10px;background:#fff;color:var(--ink,#1d2939);padding:0 10px;font:inherit}@media(max-width:760px){.station-cabin-picker{width:100%;justify-content:space-between}.station-cabin-picker select{flex:1;max-width:none}}

/* Shared only by the station support page and the admin station support panel. */
.support-surface { min-width: 0; display: grid; gap: 1rem; }
.support-surface [hidden] { display: none !important; }
.support-surface :is(h2, h3, p, label, td) { overflow-wrap: anywhere; }
.support-surface .results-head { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.support-surface .results-head h2 { margin: 0; margin-right: auto; }
.support-surface .vehicle-form { display: flex; flex-wrap: wrap; align-items: end; gap: 1rem; margin: 1rem 0; }
.support-surface .vehicle-form label { display: grid; gap: .5rem; flex: 1 1 12rem; min-width: 0; font-size: .875rem; }
.support-surface :is(select, textarea) { width: 100%; min-width: 0; min-height: 44px; border: 1px solid var(--line); border-radius: .75rem; padding: .75rem; font: inherit; background: var(--surface-strong); color: var(--text); }
.support-surface .support-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.support-surface .support-form label:has(textarea) { grid-column: 1 / -1; }
.support-surface .support-form button { justify-self: start; }
.support-surface textarea { resize: vertical; }
.support-surface .table-scroll { max-width: 100%; overflow-x: auto; }
.support-surface .vehicle-table { width: 100%; }
.support-surface .confirm-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; margin-top: 1rem; }
.support-surface .support-text { white-space: pre-wrap; overflow-wrap: anywhere; }
.support-surface .support-message { padding: 1rem 0; border-bottom: 1px solid var(--line); }
.support-surface .support-message strong { font-size: .875rem; color: var(--muted); }
.support-surface .form-message:empty { display: none; }
.support-surface :is(a, button, select, textarea, [tabindex]):focus-visible { outline: 3px solid var(--focus-ring, var(--primary)); outline-offset: 3px; }
.support-surface button:disabled { opacity: .55; cursor: not-allowed; }
.station-surface[data-page="station-support"] .station-main { width: min(960px, calc(100% - 2rem)); padding: 1.25rem 0 2rem; gap: .75rem; }
.station-surface[data-page="station-support"] .station-heading h1 { margin: 0; font-size: 1.5rem; }
.support-surface [data-support-detail] { display: grid; align-content: start; gap: .625rem; padding: 1rem; }
.support-surface [data-support-detail] :is(h2, h3, p) { margin: 0; }
.support-surface [data-support-detail] h2 { font-size: 1rem; }
.support-surface [data-support-detail] h3 { font-size: .875rem; }
.support-surface .support-detail-head { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; }
.support-surface .support-detail-head [data-support-detail-refresh] { margin-left: auto; }
.support-surface .support-meta { font-size: .8125rem; line-height: 1.5; }
.support-surface .support-dates { color: var(--muted); font-size: .75rem; line-height: 1.5; }
.support-surface .support-description { padding: .5rem 0; font-size: .875rem; line-height: 1.5; }
.support-surface [data-support-detail] .support-message { padding: .625rem 0; font-size: .875rem; line-height: 1.5; }
.support-surface [data-support-detail] .support-message:first-child { padding-top: 0; }
.support-surface [data-support-detail] .support-message strong { font-size: .75rem; }
.support-surface [data-support-detail] .support-form { gap: .5rem; margin: 0; }
.support-surface [data-support-detail] .support-form textarea { min-height: 3.5rem; height: 3.5rem; padding: .5rem .625rem; }
.support-surface [data-support-resolved] { color: var(--muted); font-size: .75rem; line-height: 1.5; }
@media (max-width: 600px) { .support-surface .support-form { grid-template-columns: minmax(0, 1fr); } }

body[data-page="platform-admin"][data-admin-active-tab="support"] :is(.sb-main, #support) { min-width: 0; max-width: 100%; }
.admin-support-inbox { grid-template-columns: minmax(0, 1fr); max-width: 100%; }
.admin-support-inbox > .info-panel { min-width: 0; max-width: 100%; }
.admin-support-inbox .table-wrap { max-width: 100%; overflow-x: auto; }
body[data-page="platform-admin"] .admin-support-inbox .vehicle-table { min-width: 72rem; table-layout: fixed; }
.admin-support-inbox th:nth-child(1), .admin-support-inbox td:first-child { width: 9rem; text-align: left; }
.admin-support-inbox th:nth-child(5) { width: 18%; }
.admin-support-inbox th:last-child { width: 17rem; }
.admin-support-inbox td { vertical-align: top; }
.admin-support-inbox td small, .support-inbox-number { display: block; }
.support-inbox-number { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.support-inbox-preview { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.support-inbox-actions { display: flex; gap: .5rem; }
.admin-support-inbox .pill-button { min-height: var(--admin-external-target); }
.support-category-manager { margin-block: 1rem; padding-block: 1rem; border-block: 1px solid var(--line); }
.support-category-manager[hidden] { display: none; }
.support-category-manager h3 { margin-top: 0; }
.support-category-manager > label { display: grid; gap: .5rem; max-width: 20rem; }
.support-category-list { margin-block: 1rem; display: grid; gap: 1rem; }
.support-category-row { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; padding-block: .5rem; }
.support-category-name { flex: 1 1 12rem; min-width: 0; overflow-wrap: anywhere; }
.support-category-row.is-subcategory { margin-inline-start: 1.5rem; }
.support-category-form input { min-width: 0; width: 100%; min-height: 44px; padding: .75rem; border: 1px solid var(--line); border-radius: .75rem; background: var(--surface-strong); color: var(--text); font: inherit; }
.support-category-form input:focus-visible { outline: 3px solid var(--focus-ring, var(--primary)); outline-offset: 3px; }
.support-category-form input:disabled { opacity: .65; }
.admin-support-inbox [data-support-transfer]:disabled { opacity: 1; color: var(--muted); background: var(--surface-high); }
.admin-support-inbox [data-support-inline-detail] { max-width: min(52rem, calc(100vw - 6rem)); white-space: normal; }
.admin-support-inbox [data-support-inline-detail] h3 { font-size: 1rem; }
.admin-support-inbox [data-support-inline-detail] p { overflow-wrap: anywhere; }
body[data-page="platform-admin"][data-admin-active-tab="support"] .sb-main { padding-top: 1.5rem; }
body[data-page="platform-admin"][data-admin-active-tab="support"] .page-heading { margin-bottom: 1rem; gap: 1rem; }
body[data-page="platform-admin"][data-admin-active-tab="support"] .page-heading h1 { font-size: 1.5rem; line-height: 1.25; margin: 0; }
body[data-page="platform-admin"][data-admin-active-tab="support"] .page-heading > div > p { display: none; }
.admin-support-inbox > .info-panel > .results-head { gap: .5rem; margin-bottom: .5rem; }
.admin-support-inbox > .info-panel > .vehicle-form { gap: .75rem; margin: .5rem 0; }
.admin-support-inbox > .info-panel > .vehicle-form label { flex: 0 1 13rem; }
.admin-support-inbox > .info-panel > .muted-cell { margin-bottom: .5rem; }
