/* GPU price index page (scripts/build_gpu_index.py). Loaded on that page only; spacing comes from main.page (--section-gap). */
#giChart{height:340px}
.gi-index{margin-top:18px}
.gi-index td{vertical-align:top}
.gi-index td.num,.gi-index th.num{text-align:right}
.gi-index .gi-med{font-weight:650;font-variant-numeric:tabular-nums}
.gi-index .src{white-space:nowrap}
.gi-prices-sec .sec-head{flex-wrap:wrap;gap:10px 16px}
.gi-prices-sec .sec-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.gi-csv{display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:9px;border:1px solid var(--border,#e4e4ea);font-size:12px;font-weight:600;color:var(--font-grey-dk,#30313a);text-decoration:none;white-space:nowrap}
.gi-csv:hover{border-color:var(--ts-blue,#3540d8);color:var(--ts-blue,#3540d8)}
table.screener.gi-prices{min-width:860px}
table.screener.gi-prices tbody tr{cursor:default}
table.screener.gi-prices td{vertical-align:top;line-height:1.45}
table.screener.gi-prices td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
table.screener.gi-prices td.asof-c{color:var(--font-grey,#6e6f79);font-size:12px}
table.screener.gi-prices td a.v{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}
table.screener.gi-prices td a.v:hover{color:var(--ts-blue,#3540d8)}
table.screener.gi-prices th.sortable[aria-sort]::after{content:'';display:inline-block;margin-left:5px;border:4px solid transparent;vertical-align:middle}
table.screener.gi-prices th[aria-sort=ascending]::after{border-bottom-color:currentColor;margin-top:-4px}
table.screener.gi-prices th[aria-sort=descending]::after{border-top-color:currentColor;margin-top:4px}
.gi-prices-sec .table-card{box-shadow:none}
.gi-more{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:12px;color:var(--font-grey,#6e6f79)}
.gi-more button{height:32px;padding:0 14px;border-radius:9px;border:1px solid var(--border,#e4e4ea);background:var(--white,#fff);color:var(--font-grey-dk,#30313a);font:600 12px Inter,sans-serif;cursor:pointer}
.gi-more button:hover{border-color:var(--ts-blue,#3540d8);color:var(--ts-blue,#3540d8)}
.gi-method{margin:0;padding-left:18px;font-size:13px;line-height:1.6;color:var(--font-grey-dk,#36363c)}
.gi-method li+li{margin-top:6px}
.gi-method a{color:inherit}
@media (max-width:640px){
  #giChart{height:260px}
  .gi-index.stack td.gi-gpu{padding-bottom:2px}
  .gi-prices-sec .sec-tools{width:100%;display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px}
  .gi-prices-sec .reg-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0}
  .gi-prices-sec .reg-filter{flex-direction:column;align-items:stretch;gap:4px;min-width:0}
  .gi-prices-sec .reg-filter select{width:100%;min-width:0}
}
.gi-index .gi-grp th{padding-bottom:6px;text-align:center}
.gi-index .gi-grp th[colspan]{border-bottom:1px solid var(--border,#e4e4ea)}
.gi-index .gi-grp th:nth-child(3){border-left:28px solid var(--card-bg,#fff)}
.gi-index tbody td:nth-child(5),.gi-index thead tr+tr th:nth-child(4){padding-left:28px}
.gi-index .gi-grp th:first-child{text-align:left;vertical-align:bottom}
.gi-index tr>*:last-child{padding-right:0}
.gi-index td.gi-x{color:var(--font-grey,#6e6f79);font-variant-numeric:tabular-nums}
.gi-index .gi-m{display:none}
.gi-method a{text-decoration:underline;text-decoration-color:var(--border,#d4d4dc);text-underline-offset:2px}
@media (max-width:640px){
  .gi-index td.gi-x{display:none!important}
  .gi-index .gi-m{display:block}
  .gi-index.stack td:not(:first-child){align-items:flex-start}
  .gi-index.stack tbody td:nth-child(5){padding-left:0}
  .gi-index td .gi-med{display:block}
}
/* price by GPU memory tier (same table layout as the index table) */
.gi-tiers td.gi-gpu .src{display:block;white-space:nowrap}
.gi-tiers a.v{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}
.gi-tiers a.v:hover{color:var(--ts-blue,#3540d8)}
table.screener.gi-prices td.num .src a{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}
@media (max-width:640px){
  .gi-prices-sec .sec-tools{grid-template-columns:1fr}
  .gi-prices-sec .reg-filters{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gi-prices-sec .gi-csv{justify-self:start}
}
@media (max-width:640px){
  .gi-tiers .src.gi-m{white-space:normal}
}
.gi-tiers .gi-nw{white-space:nowrap}
