.fleet-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0 0 24px; }
.fleet-count { display: flex; align-items: baseline; gap: 10px; background: var(--surface); border: 1px solid var(--line); border-radius: 11px; padding: 17px 20px; }
.fleet-count strong { font-size: 1.85rem; font-weight: 650; line-height: 1.2; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.fleet-count span { font-size: .8125rem; color: var(--muted); }
.fleet-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.fleet-toolbar input[type="search"], #fleet-search { min-height: 48px; border: 1px solid var(--control-border); border-radius: 8px; background: var(--input-bg); color: var(--ink); padding: 10px 14px; font-size: 16px; flex: 1; min-width: 180px; }
.fleet-toolbar input::placeholder, #fleet-search::placeholder { color: var(--muted); opacity: 1; }
.fleet-filters { display: flex; flex-wrap: wrap; gap: 6px; }
.fleet-filters button { min-height: 44px; padding: 9px 13px; border: 1px solid var(--line); border-radius: 7px; background: var(--surface); font-size: .8125rem; color: var(--muted); }
.fleet-filters button[aria-pressed="true"] { color: var(--accent-ink); background: var(--teal-light); border-color: var(--accent-border); font-weight: 600; }
.fleet-list { display: grid; gap: 10px; }
.fleet-row { display: grid; grid-template-columns: minmax(150px, 1.15fr) minmax(160px, 1fr) minmax(120px, .8fr) auto; gap: 16px; align-items: center; width: 100%; padding: 20px; border: 1px solid var(--line); border-radius: 11px; background: var(--surface); color: var(--ink); text-align: left; }
.fleet-row:hover { border-color: var(--control-border); background: var(--hover); }
.fleet-identity, .fleet-status, .fleet-report { display: grid; min-width: 0; gap: 5px; }
.fleet-property { font-size: .95rem; font-weight: 650; overflow-wrap: anywhere; }
.fleet-serial, .fleet-pump-state, .fleet-age, .fleet-policy { font-size: .75rem; color: var(--muted); overflow-wrap: anywhere; }
.fleet-reasons { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; }
.fleet-reason { padding: 3px 8px; border-radius: 5px; background: var(--offline-bg); color: var(--offline-ink); font-size: .75rem; }
.fleet-reason.is-alert { background: var(--notice-bg); color: var(--notice-ink); }
.fleet-reason.is-connected { background: var(--online-bg); color: var(--online); }
.fleet-action { color: var(--accent-ink); font-size: .8125rem; font-weight: 600; white-space: nowrap; }
#fleet-empty { padding: 40px 20px; color: var(--muted); text-align: center; background: var(--surface); border: 1px solid var(--line); border-radius: 11px; }
@media (max-width: 1100px) {
  .fleet-row { grid-template-columns: minmax(120px, 1fr) minmax(140px, 1fr); }
  .fleet-action { justify-self: end; }
}
@media (max-width: 800px) {
  .fleet-summary { gap: 8px; margin-bottom: 18px; }
  .fleet-count { display: grid; gap: 5px; padding: 13px 12px; border-radius: 12px; }
  .fleet-count strong { font-size: 1.65rem; }
  .fleet-count span { font-size: .6875rem; }
  .fleet-toolbar { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .fleet-toolbar input[type="search"], #fleet-search { width: 100%; min-width: 0; }
  .fleet-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .fleet-filters button { padding-inline: 5px; }
  .fleet-row { grid-template-columns: minmax(0, 1fr) auto; gap: 13px 10px; padding: 17px 16px; border-radius: 14px; }
  .fleet-identity { grid-column: 1 / -1; }
  .fleet-property { font-size: 1rem; }
  .fleet-status { grid-column: 1 / -1; gap: 7px; }
  .fleet-report { grid-column: 1; }
  .fleet-action { grid-column: 2; align-self: end; }
}
.fleet-search {display:grid; gap:6px; flex:1; min-width:0; font-size:.8125rem; color:var(--muted);}
.portfolio-open .mobile-brand {color:var(--ink);}
.system-summary {grid-template-columns:repeat(4,minmax(0,1fr));}
.admin-context {padding:12px 16px; border:1px solid var(--accent-border); border-radius:10px; background:var(--teal-light); color:var(--accent-ink); font-size:.8125rem; line-height:1.6; margin:0 0 22px;}
article.fleet-row .fleet-action {color:var(--muted); font-weight:400;}
@media (max-width:800px) {
  .system-summary {grid-template-columns:repeat(2,minmax(0,1fr));}
  .fleet-filters.system-filters {grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-context {padding:10px 12px; margin-bottom:16px;}
  .portfolio-open .page-heading h1 {position:static; width:auto; height:auto; overflow:visible; clip:auto; clip-path:none; white-space:normal; margin:0; font-size:1.6rem;}
}
