/* Inventory and GPU comparisons share the interface tokens. These components
   own their layout; obsolete summary-card and carousel rules are not applied. */
.dashboard .fleet-summary-panel,.dashboard .gpu-breakdown-panel { min-width: 0; grid-column: 1 / -1; }
.fleet-overview-strip {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.25fr);
  align-items: center; gap: 16px 24px; margin-block-start: 16px;
  padding-block-end: 14px; border-block-end: 1px solid var(--border-subtle);
  font-variant-numeric: tabular-nums;
}
.fleet-overview-inventory { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 12px; }
.fleet-overview-inventory > div {
  min-width: 0; padding: 10px 12px; border: 1px solid var(--border-subtle);
  border-radius: 10px; background: var(--surface-secondary);
}
.fleet-overview-count { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: baseline; gap: 8px; margin-block-end: 5px; }
.fleet-overview-count > span { color: var(--muted); font-size: .8rem; }
.fleet-overview-count > strong { font-size: 1.4rem; line-height: 1.2; }
.fleet-overview-detail { display: flex; flex-wrap: wrap; gap: 3px 12px; margin-block-start: 4px; color: var(--muted); font-size: .72rem; line-height: 1.45; }
.fleet-overview-detail > span { max-width: 100%; overflow-wrap: anywhere; }
.fleet-overview-detail b { color: var(--text); margin-inline-start: 3px; }
.fleet-overview-performance { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(0,1.8fr); gap: 4px 18px; padding-inline-start: 24px; border-inline-start: 1px solid var(--border-subtle); }
.fleet-overview-metric { display: grid; grid-template-rows: subgrid; grid-row: span 3; min-width: 0; align-content: start; }
.fleet-overview-label { color: var(--muted); font-size: .75rem; line-height: 1.4; }
.fleet-overview-label small { font-size: .68rem; white-space: nowrap; }
.fleet-overview-value { font-size: clamp(1.15rem,1.8vw,1.5rem); line-height: 1.2; white-space: nowrap; }
.fleet-overview-metric > small { font-size: .68rem; line-height: 1.4; color: var(--muted); }
.fleet-overview-trends { display: flex; flex-wrap: wrap; gap: 3px 10px; font-size: .65rem; line-height: 1.4; font-weight: 600; }
.fleet-overview-strip :is(.summary-value-good,.summary-trend-positive,.summary-capacity-positive) { color: var(--green); }
.fleet-overview-strip :is(.summary-value-warn,.summary-trend-negative) { color: var(--yellow); }
.fleet-overview-strip :is(.summary-value-bad,.summary-capacity-negative) { color: var(--red); }
.fleet-overview-strip :is(.summary-trend-flat,.summary-capacity-flat,.summary-capacity-pending) { color: var(--muted); }

/* Each named section contains its operational counts and all five prices.
   A section grid replaces table cells previously used only for page layout. */
.gpu-market-guide { display: flex; flex-wrap: wrap; gap: 4px 7px; margin-block: 10px 14px; font-size: .75rem; line-height: 1.5; color: var(--muted); }
.gpu-breakdown-list { display: grid; gap: 12px; min-width: 0; }
.gpu-breakdown-group { min-width: 0; padding: 12px; border: 1px solid var(--border-subtle); border-radius: 10px; background: var(--surface-inset); }
.gpu-summary-inline { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin-block-end: 12px; }
.gpu-summary-title { flex: 0 1 170px; min-width: 0; margin: 0; font-size: .9rem; line-height: 1.4; }
.gpu-breakdown-group .breakdown-gpu-filter {
  display: inline; max-width: 100%; padding: 0; border: 0; border-radius: 0;
  color: var(--text); background: transparent; font: inherit; font-weight: 700;
  text-align: start; white-space: normal; overflow-wrap: anywhere; cursor: pointer;
}
.gpu-breakdown-group .breakdown-gpu-filter:is(:hover,[aria-pressed="true"]) { color: var(--action); text-decoration: underline; text-underline-offset: 3px; }
.gpu-inline-stat { display: inline-flex; align-items: center; gap: 6px; min-width: 0; font-size: .76rem; line-height: 1.4; }
.gpu-inline-stat > span { color: var(--muted); }
.gpu-inline-stat > strong { font-size: .86rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.gpu-inline-stat .util-chip { font-size: .78rem; padding: 3px 7px; }
.gpu-breakdown-group .breakdown-metric-button { padding: 2px 0; border: 0; border-radius: 3px; font: inherit; color: var(--action); background: transparent; cursor: pointer; }
.gpu-breakdown-group :is(.breakdown-gpu-filter,.breakdown-metric-button):focus-visible { outline: 2px solid var(--action); outline-offset: 3px; }
.gpu-price-compare { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; }
.gpu-price-box { display: grid; grid-template-rows: subgrid; grid-row: span 4; align-content: start; gap: 5px; min-width: 0; padding: 10px; text-align: center; border: 1px solid var(--border-subtle); border-radius: 8px; background: var(--surface-secondary); }
.gpu-price-label { color: var(--text-secondary); font-size: .78rem; line-height: 1.4; overflow-wrap: anywhere; }
.gpu-price-value { font-size: 1.12rem; line-height: 1.2; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.gpu-price-meta { color: var(--muted); font-size: .69rem; line-height: 1.4; overflow-wrap: anywhere; }
.gpu-price-comparisons { display: flex; flex-wrap: wrap; align-content: start; justify-content: center; gap: 3px 8px; font-size: .66rem; line-height: 1.4; font-weight: 600; }
.gpu-compare-positive { color: var(--green); }
.gpu-compare-negative { color: var(--yellow); }

@media (max-width: 1100px) {
  .gpu-price-compare { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 1050px) {
  .fleet-overview-strip { grid-template-columns: minmax(0,1fr); gap: 14px; }
  .fleet-overview-performance { border: 0; padding: 0; }
  .gpu-summary-title { flex-basis: 100%; }
}
@media (max-width: 720px) {
  .gpu-price-compare { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 540px) {
  .fleet-overview-strip { margin-block-start: 14px; }
  .fleet-overview-inventory { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .fleet-overview-performance { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 6px 14px; }
  .fleet-overview-earnings { grid-column: 1 / -1; grid-row: span 2; grid-template-columns: minmax(0,1fr) auto; grid-template-rows: auto auto; align-items: baseline; }
  .fleet-overview-earnings .fleet-overview-value { font-size: 1.4rem; }
  .fleet-overview-trends { grid-column: 1 / -1; }
  .gpu-breakdown-group { padding: 10px; }
}

.gpu-summary-stats {flex:1 1 600px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 18px;min-width:0;}
@media(max-width:800px){.gpu-summary-stats {grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;}}

.overview-verified {color:var(--blue,#60a5fa);}
.overview-unlisted {color:var(--orange,#f59e0b);}
html[data-theme="light"] .overview-verified {color:#1d4ed8;}
html[data-theme="light"] .overview-unlisted {color:#9a4b00;}
@media(max-width:800px){
 .capacity-legend {display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px !important;width:100%;}
 .capacity-legend button {min-width:0;min-height:44px;padding:3px !important;font-size:clamp(9px,2.7vw,12px);gap:2px;flex-wrap:wrap;justify-content:center;}
 .capacity-legend button[data-capacity-state="unknown"] {grid-column:1/-1;}
 .fleet-overview-machines {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:start;}
 .fleet-overview-machines > .fleet-overview-count {grid-column:1/-1;display:flex;justify-content:space-between;align-items:baseline;}
 .fleet-overview-machines .fleet-overview-detail {display:grid;gap:8px;}
 .fleet-overview-machines .fleet-overview-detail > span {display:flex;flex-direction:column;gap:3px;align-items:flex-start;}
 .capacity-plot {touch-action:pan-y;}
}


.gpu-benchmark-controls {display:flex;flex-wrap:wrap;align-items:center;gap:18px 36px;margin:18px 0 20px;padding:16px 18px;border:1px solid var(--panel-border);border-radius:16px;background:color-mix(in srgb,var(--panel-bg,#142630) 85%,transparent);}
.gpu-benchmark-controls .benchmark-options {margin:0;padding:0;border:0;min-width:0;}
.gpu-benchmark-controls legend {padding:0;margin-bottom:9px;font-size:11px;line-height:1.4;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#9bb4c4);}
.benchmark-chips {display:flex;flex-wrap:wrap;gap:6px;}
.benchmark-chips label {position:relative;cursor:pointer;}
.benchmark-chips input {position:absolute;opacity:0;width:1px;height:1px;}
.benchmark-chips label > span {display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;box-sizing:border-box;padding:8px 16px;border:1px solid var(--panel-border,#34505d);border-radius:10px;font-size:13px;font-weight:600;color:var(--muted,#a4b9c5);background:transparent;transition:background .15s,border-color .15s,color .15s;}
.benchmark-chips input:checked + span {color:#67e8d2;background:rgba(45,212,191,.12);border-color:rgba(45,212,191,.55);}
.benchmark-chips input:checked + span::before {content:'✓';font-size:12px;}
.benchmark-chips label:hover > span {border-color:#65b8c2;}
.benchmark-chips input:focus-visible + span {outline:2px solid #38bdf8;outline-offset:3px;}
.benchmark-chips small {font-size:11px;font-weight:500;}
.benchmark-dc input:checked + span {color:#e9c780;background:rgba(217,170,83,.12);border-color:rgba(217,170,83,.55);}
.benchmark-scope .benchmark-chips {gap:2px;padding:3px;border:1px solid var(--panel-border,#34505d);border-radius:12px;}
.benchmark-scope .benchmark-chips label > span {border-color:transparent;min-height:34px;padding:6px 13px;border-radius:8px;}
.benchmark-scope input:checked + span::before {content:none;}
html[data-theme="light"] .benchmark-chips input:checked + span {color:#08675e;background:#d9f2ec;}
html[data-theme="light"] .benchmark-dc input:checked + span {color:#80570e;background:#fff0cf;}
#gpu-breakdown-panel .gpu-price-compare {grid-template-columns:none !important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);}
@media(max-width:600px){.gpu-benchmark-controls{padding:14px;gap:16px;}.benchmark-chips label > span{padding:8px 12px;}.benchmark-scope{width:100%;}.benchmark-scope .benchmark-chips{display:flex;}.benchmark-scope label{flex:1;}.benchmark-scope .benchmark-chips label > span{padding:8px 6px;font-size:12px;}}
html[data-theme="light"] .gpu-benchmark-controls {background:#f5f9f8;border-color:#c8d8d9;}
html[data-theme="light"] .gpu-benchmark-controls legend,
html[data-theme="light"] .benchmark-chips label > span {color:#48616c;}
html[data-theme="light"] .benchmark-chips input:checked + span {color:#08675e;}
html[data-theme="light"] .benchmark-dc input:checked + span {color:#80570e;}

/* Keep the chosen references alongside own prices, regardless of card count. */
#gpu-breakdown-panel .gpu-price-comparisons > span {white-space:nowrap;}
@media(max-width:1100px){
 #gpu-breakdown-panel .gpu-price-compare {grid-auto-columns:minmax(165px,1fr);overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity;}
 #gpu-breakdown-panel .gpu-price-box {scroll-snap-align:start;}
}
