/* Shopping pages share the catalog's type, spacing and purchase actions. */
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.shop-page { max-width:1440px; margin:auto; padding:24px; }
.shop-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:8px 0 22px; }
.shop-heading h1 { font-size:clamp(27px,3vw,36px); margin:0 0 10px; }
.shop-heading p { font-size:13px; color:rgb(var(--color-muted)); margin:0; }
.shop-heading .section-label { font-size:10px; margin-bottom:10px; }
.shop-heading>a { flex-shrink:0; font-size:12px; font-weight:650; color:rgb(var(--color-accent)); }
.shop-disclosure { font-size:11px; color:rgb(var(--color-muted)); margin:10px 0 16px; }
.shop-paths { display:flex; flex-wrap:wrap; gap:10px 24px; padding:14px 0; border-top:1px solid rgb(var(--color-border)); }
.shop-paths a { font-size:12px; font-weight:600; color:rgb(var(--color-accent)); }
.shop-paths a:hover { text-decoration:underline; text-underline-offset:3px; }
.shop-filterbar { position:sticky; top:68px; z-index:30; background:rgb(var(--color-canvas)); border-top:2px solid rgb(var(--color-text)); border-bottom:1px solid rgb(var(--color-border)); }
.shop-filterbar>div { padding-left:0; padding-right:0; max-width:none; }
.shop-filterbar button,.shop-filterbar input,.shop-filterbar select { border-radius:3px; }
.shop-quick-filters { display:flex; align-items:center; justify-content:space-between; gap:18px; border-bottom:1px solid rgb(var(--color-border)); }
.shop-type-tabs { display:flex; flex-wrap:wrap; gap:0 20px; }
.shop-type-tabs button { font-size:12px; font-weight:650; padding:13px 0; border-bottom:3px solid transparent; color:rgb(var(--color-muted)); }
.shop-type-tabs button[aria-pressed=true] { color:rgb(var(--color-accent)); border-bottom-color:rgb(var(--color-accent)); }
.shop-capacity-select { display:flex; align-items:center; gap:8px; font-size:11px; color:rgb(var(--color-muted)); white-space:nowrap; }
.shop-capacity-select select { font-size:12px; color:rgb(var(--color-text)); background:rgb(var(--color-canvas)); border:1px solid rgb(var(--color-border)); padding:6px 8px; max-width:180px; }
.shop-page .shop-listings { max-width:none; padding:20px 0 32px; }
.shop-results-heading { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:14px; }
.shop-results-heading h2 { font-size:18px; }
.shop-results-heading p { font-size:11px; color:rgb(var(--color-muted)); }
.shop-table-wrap { border-top:1px solid rgb(var(--color-border)); overflow-x:auto; }
.shop-table { width:100%; border-collapse:collapse; font-size:13px; }
.shop-table th { padding:12px 14px; font-size:10px; text-transform:uppercase; letter-spacing:.07em; text-align:left; color:rgb(var(--color-muted)); background:rgb(var(--color-surface)); white-space:nowrap; }
.shop-table th button { display:inline-flex; align-items:center; gap:5px; font:inherit; text-transform:inherit; letter-spacing:inherit; }
.shop-table th button svg { width:12px; height:12px; }
.shop-table td { padding:16px 14px; vertical-align:middle; border-bottom:1px solid rgb(var(--color-border)); }
.shop-table .offer-product { width:48%; max-width:none!important; min-width:240px!important; }
.shop-drive { display:flex; align-items:center; gap:16px; }
.shop-drive-info { min-width:0; }
.shop-product-name { display:block; font-size:13px; font-weight:650; line-height:1.5; overflow-wrap:anywhere; }
.shop-product-name:hover { color:rgb(var(--color-accent)); text-decoration:underline; }
.shop-thumb { flex:0 0 64px; width:64px; height:64px; padding:4px; object-fit:contain; background:white; border-radius:4px; }
.shop-thumb-empty { display:grid; place-items:center; background:rgb(var(--color-surface)); color:rgb(var(--color-muted)); }
.shop-thumb-empty svg { width:28px; height:28px; stroke-width:1; }
.shop-specs { display:flex; flex-wrap:wrap; gap:4px 12px; font-size:11px; color:rgb(var(--color-muted)); margin-top:6px; }
.shop-specs strong { font-weight:600; }
.shop-table .listing-spec-link { display:inline-block; font-size:11px; margin-top:5px; }
.shop-table .offer-checked { font-size:10px; margin-top:6px; line-height:1.5; }
.shop-table .offer-capacity { font-size:15px; font-weight:650; white-space:nowrap; }
.shop-table th.offer-capacity { font-size:10px; font-weight:500; }
.shop-condition { display:inline-flex; border:1px solid rgb(var(--color-border)); padding:3px 7px; border-radius:3px; font-size:10px; white-space:nowrap; color:rgb(var(--color-muted)); }
.shop-condition-new { color:rgb(var(--color-accent)); border-color:rgba(var(--color-accent),.25); background:rgb(var(--color-accent-light)); }
.shop-table .offer-ppt,.shop-table .offer-price { text-align:right; white-space:nowrap; }
.shop-table .offer-price .price-badge { font-size:16px; font-weight:700; color:rgb(var(--color-text)); }
.shop-table .offer-ppt .price-badge { font-size:13px; font-weight:500; }
.shop-table .offer-action { min-width:140px; }
.shop-table .amazon-button { padding:9px 12px; min-height:38px; font-size:11px; white-space:nowrap; }
.shop-table .region-btn { display:block; margin-top:8px; font-size:10px; color:rgb(var(--color-muted)); }
.shop-table .offer-save { width:28px; padding-left:4px; padding-right:0; }
.shop-table .save-btn { display:grid; place-items:center; width:28px; height:34px; }
.shop-empty { padding:40px 20px; border:1px solid rgb(var(--color-border)); text-align:center; color:rgb(var(--color-muted)); font-size:13px; }
.shop-empty a { color:rgb(var(--color-accent)); text-decoration:underline; }
.shop-page>section:not(.shop-filterbar):not(.shop-listings) { background:transparent; }
.shop-page>section:not(.shop-filterbar):not(.shop-listings)>div { max-width:none; padding-left:0; padding-right:0; }
.best-library { max-width:1200px; }
.shop-route-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:2px solid rgb(var(--color-text)); border-bottom:1px solid rgb(var(--color-border)); margin:16px 0 32px; }
.shop-route-grid>a { display:flex; flex-direction:column; padding:24px; border-right:1px solid rgb(var(--color-border)); gap:10px; }
.shop-route-grid>a:first-child { padding-left:0; }
.shop-route-grid>a:last-child { border-right:0; }
.shop-route-grid>a:hover strong { color:rgb(var(--color-accent)); }
.shop-route-grid .section-label { margin:0; font-size:10px; }
.shop-route-grid strong { font-size:21px; letter-spacing:-.03em; }
.shop-route-grid p { font-size:12px; color:rgb(var(--color-muted)); }
.shop-route-grid span:last-child { color:rgb(var(--color-accent)); font-size:12px; font-weight:600; margin-top:auto; }
.best-directory-heading { display:flex; align-items:baseline; justify-content:space-between; padding-bottom:16px; border-bottom:2px solid rgb(var(--color-text)); gap:16px; }
.best-directory-heading h2 { font-size:22px; }
.best-directory-heading a { font-size:12px; color:rgb(var(--color-accent)); }
.best-directory-row { display:grid; grid-template-columns:220px 1fr; gap:28px; padding:24px 0; border-bottom:1px solid rgb(var(--color-border)); }
.best-directory-row h3 { font-size:16px; letter-spacing:-.02em; }
.best-directory-row p { font-size:11px; color:rgb(var(--color-muted)); margin-top:8px; }
.best-capacities { display:flex; flex-wrap:wrap; gap:8px; align-content:start; }
.best-capacities a,.shop-filter-links a { display:inline-flex; align-items:center; justify-content:center; border:1px solid rgb(var(--color-border)); border-radius:3px; padding:8px 12px; font-size:12px; }
.best-capacities a:hover,.shop-filter-links a:hover { color:rgb(var(--color-accent)); border-color:rgb(var(--color-accent)); }
.shop-filter-links { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.shop-filter-links a[aria-current] { background:rgb(var(--color-text)); color:rgb(var(--color-canvas)); border-color:rgb(var(--color-text)); }
.shop-filter-links .filter-label { align-self:center; font-size:11px; color:rgb(var(--color-muted)); margin-right:8px; }
.best-detail { max-width:1280px; }
.best-detail>.breadcrumbs { margin-bottom:16px; }
.best-detail .best-heading { padding:12px 0 24px; }
.best-detail .best-heading h1 { font-size:clamp(28px,3vw,38px); }
.best-detail .best-heading p { font-size:13px; }
.best-detail .best-body { max-width:none; padding:24px 0; }
.best-detail .best-body>section { margin-top:28px; }
.best-detail .best-body h2 { font-size:22px; }
.best-detail .shop-table .offer-rank { width:30px; font-size:11px; color:rgb(var(--color-muted)); padding-left:8px; }
.best-detail .offer-market { display:none; }
.shop-focus-links { display:flex; flex-wrap:wrap; align-items:center; gap:8px 18px; font-size:12px; padding:14px 0; border-top:1px solid rgb(var(--color-border)); border-bottom:1px solid rgb(var(--color-border)); }
.shop-focus-links span { font-size:11px; color:rgb(var(--color-muted)); }
.shop-focus-links a { color:rgb(var(--color-accent)); font-weight:600; }
.nas-capacities { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
#nas-offers-heading { scroll-margin-top:130px; }
.nas-capacities a { border:1px solid rgb(var(--color-border)); padding:8px 14px; border-radius:3px; font-size:12px; }
.nas-capacities a[aria-current] { background:rgb(var(--color-text)); color:rgb(var(--color-canvas)); }
.nas-choice-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.nas-choice-grid .guide-buying-card { padding:22px; }
.nas-card-top { display:flex; align-items:center; gap:20px; margin:0 0 16px; }
.nas-card-top .buying-product-image { margin:0; width:88px; height:88px; }
.nas-array-cost { width:100%; border-collapse:collapse; font-size:11px; margin:0 0 14px; }
.nas-array-cost th,.nas-array-cost td { padding:8px 0; border-top:1px solid rgb(var(--color-border)); text-align:left; }
.nas-array-cost th { color:rgb(var(--color-muted)); font-weight:500; }
.nas-array-cost td:last-child { text-align:right; font-family:ui-monospace,monospace; font-weight:600; }
.nas-reference-controls { display:flex; align-items:center; gap:16px; margin:16px 0; }
.nas-reference-controls label { font-size:12px; flex:1; max-width:380px; }
.nas-reference-controls input { display:block; width:100%; background:rgb(var(--color-canvas)); border:1px solid rgb(var(--color-border)); border-radius:3px; margin-top:6px; padding:10px; font-size:13px; }
.nas-reference-controls output { font-size:12px; color:rgb(var(--color-muted)); }
.nas-reference-table [hidden] { display:none; }
@media(max-width:1000px) {
  .shop-quick-filters { flex-wrap:wrap; gap:10px; padding-bottom:12px; }
  .shop-type-tabs { gap:0 16px; }
  .shop-table .offer-condition { display:none; }
  .shop-table .offer-product { width:auto; }
  .shop-table .offer-mobile-meta { display:block; font-size:11px; color:rgb(var(--color-muted)); margin-top:6px; }
}
@media(max-width:640px) {
  .shop-page { padding:16px; }
  .shop-heading { padding:0 0 16px; align-items:start; }
  .shop-heading>a { display:none; }
  .shop-heading h1 { font-size:27px; }
  .shop-heading p { font-size:12px; }
  .shop-page:not(.best-library):not(.best-detail)>.shop-heading .section-label { display:none; }
  .shop-page:not(.best-library):not(.best-detail)>.shop-heading p:not(.section-label) { display:none; }
  .shop-page:not(.best-library):not(.best-detail)>.shop-paths { flex-wrap:nowrap; overflow-x:auto; white-space:nowrap; }
  .shop-paths { gap:10px 16px; padding:10px 0; }
  .shop-paths a { font-size:11px; }
  .shop-filterbar { position:relative; top:0; }
  .shop-filterbar .min-w-48 { flex-basis:100%; }
  .shop-main-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px; gap:8px; }
  .shop-main-controls>div:first-child { grid-column:1/-1; min-width:0; order:1; }
  .shop-main-controls #condition-dropdown { grid-column:1; order:2; }
  .shop-main-controls #sort-dropdown { grid-column:2/-1; order:3; }
  .shop-main-controls #locale-dropdown { grid-column:1; order:4; }
  .shop-main-controls #more-filters-btn { grid-column:2; order:5; padding-left:8px; padding-right:8px; }
  .shop-main-controls #saved-only-btn { grid-column:3; order:6; padding:8px; }
  .shop-main-controls #saved-only-btn span { display:none; }
  .shop-main-controls #reset-btn { grid-column:1/-1; order:7; font-size:11px; }
  .shop-main-controls button { font-size:11px; min-height:36px; }
  .shop-main-controls #locale-trigger { padding-left:8px; width:100%; }
  .shop-main-controls #condition-trigger { padding-left:8px; width:100%; }
  .shop-filterbar #sort-dropdown { flex:1; }
  .shop-filterbar #sort-trigger { width:100%; }
  .shop-filterbar #more-filters-panel>div { gap:20px; }
  .shop-filterbar #more-filters-panel>div>div { min-width:0; max-width:100%; }
  .shop-type-tabs { gap:0 16px; }
  .shop-type-tabs button { font-size:11px; padding:10px 0; }
  .shop-capacity-select { width:100%; justify-content:space-between; }
  .shop-capacity-select select { flex:1; }
  .shop-results-heading p { display:none; }
  .shop-table-wrap { overflow:visible; }
  .shop-table,.shop-table tbody { display:block; width:100%; }
  .shop-table thead { display:none; }
  .shop-table tr.disk-row { display:grid; grid-template-columns:minmax(0,1fr) auto; position:relative; padding:16px 0; border-bottom:1px solid rgb(var(--color-border)); }
  .shop-table tr.disk-row>td { border:0; padding:0; }
  .shop-table .offer-product { grid-column:1/-1; min-width:0!important; max-width:none!important; width:auto; padding-right:28px!important; }
  .shop-drive { gap:12px; align-items:start; }
  .shop-thumb { flex-basis:54px; width:54px; height:64px; }
  .shop-product-name { font-size:12px; }
  .shop-table .offer-save { position:absolute; top:14px; right:0; }
  .shop-table .offer-capacity,.shop-table .offer-condition,.shop-table .offer-rank,.shop-table .offer-market { display:none; }
  .shop-table .offer-price { grid-column:1; grid-row:2; text-align:left; margin:14px 0 0 66px; }
  .shop-table .offer-price .price-badge { font-size:20px; }
  .shop-table .offer-ppt { grid-column:2; grid-row:2; margin-top:14px; align-self:center; }
  .shop-table .offer-action { grid-column:1/-1; grid-row:3; margin:12px 0 0 66px; }
  .shop-table .offer-action .amazon-button { display:flex; min-height:40px; width:100%; }
  .shop-table .offer-mobile-meta { display:block; font-size:10px; margin-top:6px; }
  .shop-table .offer-checked { font-size:9px; }
  .shop-table .shop-specs { font-size:10px; gap:4px 8px; }
  .shop-route-grid { grid-template-columns:1fr; margin-bottom:24px; }
  .shop-route-grid>a,.shop-route-grid>a:first-child { padding:18px 0; border-right:0; border-bottom:1px solid rgb(var(--color-border)); gap:7px; }
  .shop-route-grid>a:last-child { border-bottom:0; }
  .shop-route-grid strong { font-size:19px; }
  .best-directory-row { grid-template-columns:1fr; gap:14px; padding:20px 0; }
  .best-directory-heading { align-items:center; }
  .best-directory-heading h2 { font-size:18px; }
  .best-directory-heading a { font-size:11px; }
  .best-capacities a { padding:9px 11px; font-size:11px; }
  .best-detail .best-heading { padding-top:0; }
  .best-detail .best-body { padding-top:20px; }
  .best-detail .best-body h2 { font-size:20px; }
  .nas-choice-grid { grid-template-columns:1fr; }
  .nas-choice-grid .guide-buying-card { padding:18px; }
  .nas-card-top { gap:14px; }
  .nas-reference-controls { align-items:end; }
}
