/* OPChase design system v2 (2026-09-30). ONE stylesheet for every page type:
   home, /cards/<slug>/, /privacy/, /sets/, /sets/<set>/, /card/<number>/.
   Sections: 1 font · 2 tokens (dark default / light) · 3 base & type · 4 layout · 5 header/footer · 6 components · 7 tables · 8 home · 9 card page · 10 database · 11 mobile */

/* ---------- 1. Font (self-hosted Inter variable, Latin subset; SIL OFL, see assets/fonts/Inter-LICENSE.txt) ---------- */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("fonts/InterVariable.woff2") format("woff2")}

/* ---------- 2. Tokens ---------- */
:root{
  --font:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","PingFang SC","Microsoft YaHei",sans-serif,"Apple Color Emoji","Segoe UI Emoji";
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;
  /* type scale 12/14/16/18/20/24/30/36 */
  --fs-12:.75rem;--fs-14:.875rem;--fs-16:1rem;--fs-18:1.125rem;--fs-20:1.25rem;--fs-24:1.5rem;--fs-30:1.875rem;--fs-36:2.25rem;
  --lh-tight:1.15;--lh-snug:1.3;--lh-body:1.6;
  /* 4/8 px spacing grid */
  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;
  --r-sm:6px;--r-md:8px;--r-lg:12px;--r-pill:999px;
  --maxw:1160px;--measure:70ch;--header-h:57px;
  --ease:cubic-bezier(.2,.7,.3,1);
}
/* dark (only when the visitor picks it with the theme button; 2026-10-01) */
:root,[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0b0d11;--surface:#12151a;--surface-2:#181c22;--surface-3:#1f242b;
  --border:#242a32;--border-strong:#323944;
  --text:#e8eaed;--text-2:#bac0c9;--muted:#9098a4;
  --accent:#f0b429;--accent-strong:#ffc94d;--accent-text:#f2bf45;--accent-bg:rgba(240,180,41,.07);--accent-bg-2:rgba(240,180,41,.14);--accent-border:rgba(240,180,41,.42);--on-accent:#17120a;
  --up:#4ac25e;--dn:#ff7b72;--warn:#e3b341;--warn-bg:rgba(227,179,65,.07);--warn-border:rgba(227,179,65,.32);
  --ok:#5ad46e;--ok-bg:rgba(63,185,80,.12);--ok-border:rgba(63,185,80,.38);
  --zebra:rgba(255,255,255,.018);--hover:rgba(255,255,255,.04);
  --shadow:0 1px 0 rgba(255,255,255,.02) inset;--shadow-pop:0 8px 28px rgba(0,0,0,.55);
  --chart:#f0b429;--header-bg:rgba(11,13,17,.82);--img-bg:#07080a;--tip-bg:#05060a;--tip-text:#e8eaed;--focus:#f2bf45;
}
/* light = DEFAULT theme (2026-10-01): applies whenever data-theme is not "dark" (incl. no-JS); OS dark preference is not followed */
:root:not([data-theme="dark"]){
  color-scheme:light;
  --bg:#fbfbfa;--surface:#ffffff;--surface-2:#f6f6f4;--surface-3:#efefec;
  --border:#e8e7e4;--border-strong:#d5d4cf;
  --text:#1f1e1b;--text-2:#45433e;--muted:#67655f;
  --accent:#f0b429;--accent-strong:#e2a515;--accent-text:#8a5a00;--accent-bg:rgba(240,180,41,.09);--accent-bg-2:rgba(240,180,41,.18);--accent-border:rgba(190,135,10,.5);--on-accent:#1d1605;
  --up:#1a7f37;--dn:#c42b2b;--warn:#8a5a00;--warn-bg:#fff8e5;--warn-border:#f0d48a;
  --ok:#1a7f37;--ok-bg:#eaf6ee;--ok-border:#a9d9b8;
  --zebra:#fafaf8;--hover:#f3f3f0;
  --shadow:0 1px 2px rgba(15,15,15,.04);--shadow-pop:0 10px 30px rgba(15,15,15,.14);
  --chart:#b07a00;--header-bg:rgba(255,255,255,.86);--img-bg:#f1f1ee;--tip-bg:#1f1e1b;--tip-text:#ffffff;--focus:#b07a00;
}


/* ---------- 3. Base & typography ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + var(--sp-4))}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-16);line-height:var(--lh-body);
  font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
h1,h2,h3,h4{color:var(--text);font-weight:650;margin:0}
h1{font-size:var(--fs-36);line-height:var(--lh-tight);letter-spacing:-.025em;margin:var(--sp-8) 0 var(--sp-2)}
h2{font-size:var(--fs-24);line-height:var(--lh-snug);letter-spacing:-.018em;margin:0 0 var(--sp-2)}
h3{font-size:var(--fs-18);line-height:var(--lh-snug);letter-spacing:-.011em;margin:var(--sp-6) 0 var(--sp-2)}
h4{font-size:var(--fs-16);line-height:var(--lh-snug);letter-spacing:-.006em;margin:var(--sp-6) 0 var(--sp-3)}
h2 .sm,h3 .sm,h4 .sm{font-weight:400;letter-spacing:0}
p{margin:0 0 var(--sp-3)}ul,ol{margin:0 0 var(--sp-3);padding-left:var(--sp-6)}li{margin:var(--sp-1) 0}
a{color:var(--accent-text);text-decoration:none;text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration:underline}
b,strong{font-weight:600}
code{font-family:var(--mono);font-size:.875em;background:var(--surface-2);border:1px solid var(--border);padding:1px 6px;border-radius:var(--r-sm)}
sub,sup{line-height:0}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:4px}
::selection{background:var(--accent-bg-2)}
/* numbers: tabular figures for prices, %, counts, tables */
table,.kpi .v,.kv .v,.t5p,.opxb,.opxv,.r,.tnum,.upd,.ago,.left,.pill,svg text,.rng{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
.sm{font-size:var(--fs-14);color:var(--muted);line-height:1.5}
.up{color:var(--up)}.dn{color:var(--dn)}
.hid{display:none!important}
.unk{color:var(--muted)}
.insuf{color:var(--text-2);font-weight:500}
a.insuf{color:var(--text-2)}

/* ---------- 4. Layout ---------- */
main{max-width:var(--maxw);margin:0 auto;padding:0 var(--sp-6) var(--sp-12)}
.panel,section.tier,.toc{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-6);margin:var(--sp-6) 0;box-shadow:var(--shadow)}
.panel>h2:first-child,section.tier>h2:first-child{margin-top:0}
.panel>h3:first-child{margin-top:0}
:where(.panel)>p,:where(.panel)>ul,:where(.meth,.faq,#zh,.pro,.prose) :where(p,li){max-width:var(--measure)}
.tag-line{font-size:var(--fs-18);line-height:1.5;color:var(--text-2);margin:0 0 var(--sp-3);max-width:var(--measure)}
.upd{display:block;font-size:var(--fs-14);color:var(--muted);margin:0 0 var(--sp-2)}
.upd b{color:var(--text-2);font-weight:500}
.upd::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--up);margin-right:var(--sp-2);vertical-align:2px;box-shadow:0 0 0 3px color-mix(in srgb,var(--up) 18%,transparent)}
.panel.narrow{max-width:calc(var(--measure) + 2 * var(--sp-6) + 2px)}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-8)}

/* ---------- 5. Header / nav / footer ---------- */
.site-h{position:sticky;top:0;z-index:30;background:var(--header-bg);border-bottom:1px solid var(--border);-webkit-backdrop-filter:saturate(1.6) blur(10px);backdrop-filter:saturate(1.6) blur(10px)}
.hw{max-width:var(--maxw);margin:0 auto;padding:0 var(--sp-6);min-height:56px;display:flex;align-items:center;gap:var(--sp-6)}
.logo{font-weight:700;font-size:var(--fs-18);letter-spacing:-.03em;color:var(--text);white-space:nowrap}
.logo:hover{text-decoration:none}.logo span{color:var(--accent)}
:root:not([data-theme="dark"]) .logo span{color:#b07a00}
.site-nav{display:flex;gap:2px;margin-left:auto;align-items:center}
.site-nav a{padding:6px 10px;border-radius:var(--r-sm);color:var(--text-2);font-size:var(--fs-14);font-weight:500;white-space:nowrap;transition:background .15s var(--ease),color .15s}
.site-nav a:hover{background:var(--hover);color:var(--text);text-decoration:none}
.site-nav a[aria-current]{color:var(--text);background:var(--surface-2)}
.hact{display:flex;gap:var(--sp-2);align-items:center}
.ibtn,.zhb{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;padding:0 10px;border-radius:var(--r-md);border:1px solid var(--border);background:transparent;color:var(--text-2);font:500 var(--fs-14)/1 var(--font);cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.ibtn{padding:0;width:32px}
.ibtn:hover,.zhb:hover{background:var(--hover);border-color:var(--border-strong);color:var(--text)}
.ibtn svg{width:16px;height:16px}
.ibtn .i-moon,:root:not([data-theme="dark"]) .ibtn .i-sun{display:none}
:root:not([data-theme="dark"]) .ibtn .i-moon{display:block}
.site-f{border-top:1px solid var(--border);margin-top:var(--sp-8)}
.fw{max-width:var(--maxw);margin:0 auto;padding:var(--sp-8) var(--sp-6) var(--sp-12);color:var(--muted);font-size:var(--fs-14);line-height:1.6;display:grid;grid-template-columns:200px 1fr;gap:var(--sp-6)}
.fw p{margin:0 0 var(--sp-2);max-width:80ch}
.fw a{color:var(--text-2)}.fw a:hover{color:var(--text)}
.fw .logo{font-size:var(--fs-16)}
.flinks{display:flex;flex-wrap:wrap;gap:var(--sp-1) var(--sp-4)}
.flinks .rep{margin:0;font-size:inherit;color:var(--text-2)!important}
.fw .faff{font-size:var(--fs-12,12px);color:var(--muted)}.fw .faff a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}   /* EPN disclosure (2026-10-03) */
/* breadcrumbs */
.bc{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-1) var(--sp-2);margin:var(--sp-6) 0 0;font-size:var(--fs-14);color:var(--muted)}
.bc a{color:var(--text-2)}.bc a:hover{color:var(--text)}
.bc+h1{margin-top:var(--sp-3)}

/* ---------- 6. Components ---------- */
/* stat cards */
.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-4);margin:var(--sp-6) 0}
.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-5);min-width:0;box-shadow:var(--shadow)}
.panel .kpi{background:var(--surface-2);box-shadow:none}
.kpi .l,.kv .l{font-size:var(--fs-12);font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;line-height:1.4}
.kpi .v{font-size:var(--fs-30);font-weight:650;letter-spacing:-.025em;line-height:1.2;margin:var(--sp-1) 0 var(--sp-1);color:var(--text)}
.kpi .v a{color:inherit}.kpi .v a:hover{color:var(--accent-text)}
.kpi .v.vs{font-size:var(--fs-20);letter-spacing:-.012em;margin-top:var(--sp-2)}
.kpi .v.v2{font-size:var(--fs-24)}
.kpi .sm{font-size:var(--fs-12)}
.kpi .v.insuf{color:var(--warn)}
/* buttons */
.ebtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 14px;border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text)!important;font-size:var(--fs-14);font-weight:500;white-space:nowrap;text-decoration:none!important;cursor:pointer;transition:background .15s,border-color .15s,transform .05s}
.ebtn:hover{background:var(--surface-3);border-color:var(--muted)}
.ebtn:active{transform:translateY(1px)}
.btn-p,.pro .ebtn,.prob .ebtn{background:var(--accent);border-color:var(--accent);color:var(--on-accent)!important;font-weight:600;height:40px;padding:0 18px}
.btn-p:hover,.pro .ebtn:hover,.prob .ebtn:hover{background:var(--accent-strong);border-color:var(--accent-strong)}
summary.btn{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);width:100%;min-height:44px;padding:var(--sp-2) var(--sp-4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-14);font-weight:600;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s}
summary.btn:hover{background:var(--surface-3);border-color:var(--muted)}
details.cl{margin-top:var(--sp-6)}details.mt{margin-top:var(--sp-2)}
details.cl>summary{list-style:none}details.cl>summary::-webkit-details-marker{display:none}
details.cl[open]>summary.btn{background:transparent;margin-bottom:var(--sp-4)}
summary .lc{display:none}details[open]>summary .lc{display:inline}details[open]>summary .lo{display:none}
.pv{display:inline-flex}.pv img{width:28px;height:28px;object-fit:cover;border-radius:var(--r-sm);border:2px solid var(--surface-2);background:var(--img-bg);margin-left:-8px}.pv img:first-child{margin-left:0}details[open]>summary .pv{display:none}
/* segmented filters + chips */
.flt{display:inline-flex;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}
.flt button{height:30px;padding:0 var(--sp-3);border:0;border-radius:var(--r-sm);background:transparent;color:var(--text-2);font:500 var(--fs-14)/1 var(--font);cursor:pointer}
.flt button:hover{color:var(--text)}
.flt button.on{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border-strong),0 1px 2px rgba(0,0,0,.12)}
.chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}
.chips button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 var(--sp-3);border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);color:var(--text);font:500 var(--fs-14)/1 var(--font);cursor:pointer;transition:background .15s,border-color .15s}
.chips button:hover{border-color:var(--border-strong);background:var(--hover)}
.chips button .sm{font-size:var(--fs-12);font-weight:400}
.chips button.on{background:var(--accent-bg-2);border-color:var(--accent-border);color:var(--accent-text)}
.chips button.on .sm{color:var(--accent-text);opacity:.85}
/* status badges (eBay listing checks) */
.pill{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:var(--r-pill);font-size:var(--fs-12);font-weight:600;white-space:nowrap;cursor:help;position:relative;line-height:1}
.pill.ok{background:var(--ok-bg);color:var(--ok);border:1px solid var(--ok-border)}
.pill.au2{background:var(--surface-2);color:var(--text-2);border:1px solid var(--border-strong)}
.tC{--tip:"Details checked: we opened this listing's eBay item details and they match (PSA, grade 10, card number, language, variant). The PSA cert itself is not verified."}
.tR{--tip:"Reviewed: a person looked at this listing. Still verify the PSA label and cert before buying."}
.tA{--tip:"Auto: matched automatically from the eBay title and search data only. Verify the PSA label, cert, language and variant in the photos before buying."}
.pill[data-tip]:focus{outline:none}
.pill[data-tip]:focus::after,.pill[data-tip]:hover::after{content:var(--tip);position:absolute;z-index:20;left:0;top:calc(100% + 6px);width:260px;white-space:normal;background:var(--tip-bg);color:var(--tip-text);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);font-size:var(--fs-12);font-weight:400;line-height:1.5;box-shadow:var(--shadow-pop);cursor:default}
td[data-l="Status"] .pill[data-tip]:hover::after,td[data-l="Status"] .pill[data-tip]:focus::after{left:auto;right:0}
/* OPChase Index badge: our own estimate, always visually separate from eBay listing content (eBay API compliance) */
.opx{background:var(--accent-bg);border-left:1px dashed var(--accent-border)!important}
th.opx{color:var(--accent-text)}
.opxb{display:inline-flex;align-items:center;height:22px;white-space:nowrap;font-weight:600;font-size:var(--fs-12);border:1px solid var(--accent-border);border-radius:var(--r-sm);padding:0 7px;color:var(--accent-text);background:var(--surface)}
.opxv{font-size:var(--fs-12);color:var(--muted);margin-top:var(--sp-1)}
/* OPChase Index strip (2026-10-01): line 1 "OPChase Index $X" (bold), line 2 "Current price N% below/above index" (only with a listing) */
.opxi{display:block;font-weight:700;font-size:var(--fs-14);line-height:1.3;color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}
.opxd{display:block;font-size:var(--fs-12);line-height:1.35;color:var(--text-2);margin-top:2px;white-space:nowrap;font-variant-numeric:tabular-nums}
td.opx .opxi{font-size:var(--fs-12)}
.t5x{border:1px dashed var(--accent-border)!important;border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);background:var(--accent-bg)}
/* callouts */
.note{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-14);color:var(--text-2);margin:var(--sp-3) 0;max-width:none}
.vn{border:1px solid var(--warn-border);border-left:3px solid var(--warn);background:var(--warn-bg);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);font-size:var(--fs-14);color:var(--text-2);margin:var(--sp-3) 0;max-width:none}
.vn .sm{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--sp-2);font-size:var(--fs-12)}
.ebn{font-size:var(--fs-12);color:var(--muted);margin:var(--sp-3) 0 0;border-top:1px solid var(--border);padding-top:var(--sp-3);max-width:none}
.ago{white-space:nowrap;color:var(--muted)}
.vis{color:var(--accent-text);font-weight:600}.vis:not(:empty)::after{content:" · "}
.rep{display:inline-block;margin-left:var(--sp-2);font-size:var(--fs-12);color:var(--muted)!important;white-space:nowrap}
.rep:hover{color:var(--warn)!important;text-decoration:none}
/* thumbnails + placeholder + lightbox */
.th{position:relative;padding:0;border:1px solid var(--border);border-radius:var(--r-md);background:var(--img-bg);cursor:zoom-in;display:block;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.th:hover{border-color:var(--border-strong)}
.th img{display:block;width:100%;height:100%;object-fit:contain;background:var(--img-bg)}
.ph{display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);color:var(--muted);font-size:var(--fs-12);font-weight:600;text-align:center;flex:none}
/* source tags */
sup.src{font-size:10px;font-weight:600;letter-spacing:.02em;color:var(--accent-text);border:1px solid var(--accent-border);border-radius:4px;padding:1px 4px;margin-left:3px;cursor:help;vertical-align:2px;line-height:1}
/* FAQ */
.faq h3{font-size:var(--fs-16);font-weight:600;margin:0;padding:var(--sp-4) 0 var(--sp-1);border-top:1px solid var(--border)}
.faq h2+h3{border-top:0;padding-top:var(--sp-2)}
.faq p{margin:0 0 var(--sp-3);color:var(--text-2)}
/* charts */
svg{width:100%;height:auto;max-width:760px;display:block}
svg .ln{fill:none;stroke:var(--chart);stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}
svg .g line{stroke:var(--border)}
svg text{fill:var(--muted);font-size:11px;font-family:var(--font)}
svg.tr .dot{fill:var(--text-2);stroke:var(--surface);stroke-width:1.5}
svg.tr .an{stroke:var(--chart);stroke-dasharray:5 4;stroke-width:1.5}
.ibtn svg{display:block}

/* ---------- 7. Tables ---------- */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}
table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-14);line-height:1.45}
th,td{padding:var(--sp-3);border-bottom:1px solid var(--border);text-align:left;vertical-align:top}
tbody tr:last-child>td,tbody tr:last-child>th{border-bottom:0}
thead th{position:sticky;top:0;z-index:2;background:var(--surface-2);color:var(--muted);font-size:var(--fs-12);font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;vertical-align:bottom}
tbody tr:nth-child(even){background:var(--zebra)}
tbody tr{transition:background .12s}
tbody tr:hover{background:var(--hover)}
td .sm{font-size:var(--fs-12)}
th.r,td.r,.r{text-align:right}
td b{font-weight:600}
a.cn{color:var(--text)}a.cn:hover{color:var(--accent-text)}
/* links inside data tables: neutral text with a quiet underline (gold stays reserved for OPChase Index, CTAs and prose links) */
td a:not(.ebtn):not(.rep):not(.cn){color:var(--text);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px}
td a:not(.ebtn):not(.rep):not(.cn):hover{color:var(--accent-text);text-decoration-color:currentColor}
table+p,.tw+p,.tw+.ebn,table+.ebn{margin-top:var(--sp-3)}
table.crd td[data-l="Card"]{min-width:128px}
table.crd td[data-l="Last sale"],td.nw{white-space:nowrap}
table.stk td[data-l="Product"]{min-width:150px}
table.stk td[data-l="PSA 10 price"]{min-width:130px}
.ttl{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
td.im{width:112px}
td.lk{vertical-align:middle;white-space:nowrap}
td.lk .rep{display:block;margin:6px 0 0 6px}
/* Character is already part of the card name; the column is hidden (rows keep data-c for the character filter) */
.hc,td[data-l="Character"]{display:none}
table.lst td,table.lst th{padding:10px 8px}
table.lst td:first-child,table.lst th:first-child{padding-left:12px}table.lst td:last-child,table.lst th:last-child{padding-right:12px}
table.lst td[data-l="Variant"]{max-width:120px}
table.crd td[data-l="Source"]{max-width:150px}
table.crd td,table.crd th{padding-left:8px;padding-right:8px}table.crd td:first-child,table.crd th:first-child{padding-left:12px}
td[data-l="Price"] b,td[data-l="Current bid"] b{white-space:nowrap}
table.lst td[data-l="Price"]{min-width:120px}table.lst td[data-l="Current bid"]{min-width:104px}
td.im .th{width:96px;height:128px}table.crd td.im{width:88px}
td[data-l="Status"]{vertical-align:middle}
td.opx{vertical-align:middle}
/* desktop: let tables escape the scroll box so the header sticks under the site header while the page scrolls */
@media (min-width:1160px){
  .tw{overflow:visible}
  thead th{top:var(--header-h)}
  thead th:first-child{border-top-left-radius:var(--r-md)}thead th:last-child{border-top-right-radius:var(--r-md)}
}

/* ---------- 8. Home page ---------- */
.tools{padding:var(--sp-4)}
.tools .trow{display:flex;gap:var(--sp-3);flex-wrap:wrap;align-items:center}
#q{flex:1 1 300px;min-width:0;height:40px;padding:0 var(--sp-3) 0 38px;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 12px 50%;color:var(--text);font:400 var(--fs-16)/1 var(--font);transition:border-color .15s,box-shadow .15s}
#q::placeholder{color:var(--muted)}
#q:focus,.fbar input:focus,.fbar select:focus,#sort:focus,.wlr input[type=email]:focus{outline:2px solid var(--focus);outline-offset:2px;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg-2)}
select,#sort{height:40px;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);padding:0 32px 0 var(--sp-3);font:400 var(--fs-14)/1 var(--font);max-width:100%;cursor:pointer;-webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23888' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
.tools .flt{margin:0}
#sort{flex:0 1 240px;min-width:0;width:240px;text-overflow:ellipsis}
#q{flex-basis:420px}
#qn:not(:empty){margin-top:var(--sp-2)}
.toc ol{margin:var(--sp-2) 0 0;padding-left:var(--sp-6);columns:2;column-gap:var(--sp-8)}
.toc li{margin:var(--sp-1) 0;break-inside:avoid;color:var(--muted)}
.toc li a{color:var(--text);font-weight:500}.toc li a:hover{color:var(--accent-text)}
.toc>b{font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.chipbar>b{font-size:var(--fs-16);font-weight:600}
section.tier>h2{display:flex;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap}
.rng{font-size:var(--fs-16);color:var(--muted);font-weight:500;letter-spacing:0}
section.tier>h3{font-size:var(--fs-20);margin-top:var(--sp-6)}
.bnw h4,.auw h4{display:flex;align-items:baseline;gap:var(--sp-2);flex-wrap:wrap}
.t5g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--sp-3);margin:var(--sp-4) 0 var(--sp-3)}
.t5{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3);min-width:0;transition:border-color .15s}
.t5:hover{border-color:var(--border-strong)}
.t5 .th,.t5 .ph{margin:0 auto}
.t5b{display:flex;flex-direction:column;gap:var(--sp-1);min-width:0;flex:1}
.t5b>.cn{font-size:var(--fs-14);line-height:1.35}
.t5v{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--fs-12)!important}
.t5p{font-size:var(--fs-20);font-weight:650;letter-spacing:-.015em;line-height:1.2;margin-top:var(--sp-1)}.t5p b{font-weight:inherit}
.t5b>.sm{font-size:var(--fs-12)}
.t5 .ebtn{width:100%;margin-top:auto}
.t5s{margin:0}
.prob{display:flex;gap:var(--sp-4);align-items:center;justify-content:space-between;flex-wrap:wrap;padding:var(--sp-4) var(--sp-6);background:linear-gradient(90deg,var(--accent-bg-2),var(--accent-bg) 55%,var(--surface));border-color:var(--accent-border)}
.prob .sm{display:block;margin-top:2px}
.pro-t{color:var(--text);font-size:var(--fs-16);font-weight:650}
.pro-tag{display:inline-flex;align-items:center;height:20px;font-size:var(--fs-12);font-weight:500;border:1px solid var(--accent-border);color:var(--accent-text);border-radius:var(--r-pill);padding:0 8px;margin-left:var(--sp-2);vertical-align:1px}
.pro-go{white-space:nowrap}
#pro{scroll-margin-top:120px}
.pro{border-color:var(--accent-border)}
.prol{margin:var(--sp-2) 0 var(--sp-3) var(--sp-5);padding:0}
.wlf fieldset{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin:var(--sp-3) 0}
.wlf legend{font-weight:600;padding:0 var(--sp-1)}
.wlc{display:flex;gap:var(--sp-2);align-items:flex-start;padding:var(--sp-1) 0;cursor:pointer}
.wlc input{margin-top:4px;width:18px;height:18px;accent-color:var(--accent)}
.wlr{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin:var(--sp-3) 0}
.wlr input[type=email]{flex:1 1 240px;min-width:0;height:40px;padding:0 var(--sp-3);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:400 var(--fs-16)/1 var(--font)}
.wlr .ebtn{border:0}
.prl{margin-top:var(--sp-2)}
.meth h3{font-size:var(--fs-16);font-weight:650;margin-top:var(--sp-6)}
.meth li{color:var(--text-2)}.meth li b,.meth p b{color:var(--text)}
#zh{display:none}#zh.show{display:block}
#zh p{line-height:1.8}
.empty td{color:var(--muted);font-style:italic}

/* ---------- 9. /cards/<slug>/ page ---------- */
.cp{display:grid;grid-template-columns:360px 1fr;gap:var(--sp-8);align-items:start}
.cimg{min-width:0}.cimg .hs-attr{max-width:360px}
.cmain{min-width:0}
.cprice{margin-bottom:var(--sp-4)}
.cprice .v{font-size:var(--fs-36)}
.kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:0;border:1px solid var(--border);border-radius:var(--r-md);overflow:hidden;background:var(--border);gap:1px}
.kv>div{background:var(--surface);padding:var(--sp-3) var(--sp-4);min-width:0}
.kv .v{font-size:var(--fs-16);font-weight:600;margin-top:2px;overflow-wrap:anywhere}
.cmeta{margin-top:var(--sp-4)}
.cmeta .rep{margin-left:0}

/* ---------- 10. Card database (/sets/, /card/) ---------- */
.kvt{border:0}
.kvt th{width:170px;color:var(--muted);font-size:var(--fs-14);font-weight:500;text-transform:none;letter-spacing:0;position:static;background:none;white-space:normal;vertical-align:top}
.kvt td{font-size:var(--fs-14)}
.kvt tr:nth-child(even){background:none}.kvt tr:hover{background:none}
.kvt ul{margin:0 0 var(--sp-2);padding-left:var(--sp-5)}
.lbl{font-family:var(--mono);font-size:var(--fs-12);line-height:1.45;background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-sm);padding:var(--sp-1) var(--sp-2);color:var(--text);max-width:260px}
.mono{font-family:var(--mono);font-size:var(--fs-12)}
.fbar{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:var(--sp-4) 0;align-items:center}
.fbar input{flex:1 1 240px;min-width:180px;height:40px;padding:0 var(--sp-3);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font:400 var(--fs-16)/1 var(--font)}
.fbar select{flex:0 1 auto}
#fn{margin-left:auto}
#cl td:first-child,.stk td:first-child{white-space:nowrap}
.dbstat .v{font-size:var(--fs-30)}

/* ---------- 11. Responsive ---------- */
@media (max-width:1099px){.t5g{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.cp{grid-template-columns:1fr}.cimg{display:flex;justify-content:center}.fw{grid-template-columns:1fr;gap:var(--sp-3)}}
@media (max-width:760px){
  :root{--header-h:97px}
  h1{font-size:var(--fs-30);margin-top:var(--sp-6)}
  h2{font-size:var(--fs-20)}
  h3{font-size:var(--fs-18)}
  .tag-line{font-size:var(--fs-16)}
  main{padding:0 var(--sp-4) var(--sp-10)}
  .hw{flex-wrap:wrap;padding:0 var(--sp-4);gap:0 var(--sp-3);min-height:0}
  .logo{order:1;padding:var(--sp-3) 0}
  .hact{order:2;margin-left:auto}
  .site-nav{order:3;width:calc(100% + 2 * var(--sp-4));margin:0 calc(-1 * var(--sp-4));padding:0 var(--sp-3) var(--sp-2);overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .site-nav::-webkit-scrollbar{display:none}
  .site-nav a{padding:6px 10px}
  .panel,section.tier,.toc{padding:var(--sp-4);margin:var(--sp-4) 0;border-radius:var(--r-lg)}
  .hero{grid-template-columns:1fr 1fr;gap:var(--sp-3);margin:var(--sp-4) 0}
  .kpi{padding:var(--sp-3) var(--sp-4)}
  .kpi .v{font-size:var(--fs-24)}
  .kpi .v.vs{font-size:var(--fs-18)}
  .cprice .v{font-size:var(--fs-30)}
  .toc ol{columns:1}
  .chips{display:grid;grid-auto-flow:column;grid-template-rows:repeat(3,auto);justify-content:start;justify-items:start;overflow-x:auto;scrollbar-width:none;margin-left:calc(-1 * var(--sp-4));margin-right:calc(-1 * var(--sp-4));padding:0 var(--sp-4) var(--sp-1)}
  .chips::-webkit-scrollbar{display:none}
  .chips button{white-space:nowrap}
  .cols{grid-template-columns:1fr;gap:0}
  .tools .trow{gap:var(--sp-2)}
  #sort{flex:1 1 100%}
  .flt{flex:1 1 100%}.flt button{flex:1}
  .prob{padding:var(--sp-4)}
  .prob .ebtn{width:100%}
  .fw{padding:var(--sp-6) var(--sp-4) var(--sp-10)}
  /* stacked tables: listing + card tables become compact cards */
  .tw:has(>table.lst),.tw:has(>table.crd),.tw:has(>table.stk){border:0;background:none;border-radius:0;overflow:visible}
  table.lst thead,table.crd thead,table.stk thead{display:none}
  table.lst,table.crd,table.lst tbody,table.crd tbody{display:block}
  table.lst tr,table.crd tr{display:grid;gap:2px var(--sp-3);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-3);margin:0 0 var(--sp-2);align-items:start}
  table.crd tr{grid-template-columns:64px repeat(4,minmax(0,1fr))}
  table.lst tr{grid-template-columns:88px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"im card card" "im var var" "im price left" "opx opx opx" "foot foot foot"}
  table.lst tbody tr:nth-child(even),table.crd tbody tr:nth-child(even){background:var(--surface)}
  table.lst td,table.crd td{border:0;padding:0;text-align:left;font-size:var(--fs-14);line-height:1.35;min-width:0;max-width:none}
  table.lst td::before,table.crd td::before{content:attr(data-l);display:block;font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;line-height:1.3;margin-bottom:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  td.im{grid-row:1/span 4;grid-column:1;width:auto}
  table.lst td.im{grid-row:auto;grid-column:auto}
  table.lst td.im{grid-area:im}
  td.im::before,td[data-l="Card"]::before,td[data-l="Variant"]::before,td[data-l="Status"]::before,td[data-l="Link"]::before,td[data-l="Source"]::before,table.lst td.opx::before{display:none!important}
  td[data-l="#"],td[data-l="Character"],table.crd td[data-l="Last sale"],table.crd td[data-l="Sales 60d"],table.crd td[data-l="Source"],table.crd td[data-l="PSA 10 pop"]{display:none}
  td[data-l="Card"],td[data-l="Variant"]{grid-column:2/-1}
  table.lst td[data-l="Card"]{grid-area:card}table.lst td[data-l="Variant"]{grid-area:var}
  td[data-l="Variant"]{color:var(--muted);font-size:var(--fs-12)!important;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  table.lst td .sm{display:none}
  table.lst td[data-l="Price"],table.lst td[data-l="Current bid"]{grid-area:price;margin-top:var(--sp-2)}
  table.lst td[data-l="Price"] b,table.lst td[data-l="Current bid"] b{font-size:var(--fs-16)}
  table.lst td[data-l="Time left"]{grid-area:left;margin-top:var(--sp-2)}
  table.lst td.opx{grid-area:opx;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);margin-top:var(--sp-3);background:var(--accent-bg);border:1px dashed var(--accent-border)!important;border-radius:var(--r-md);padding:6px var(--sp-3)}
  table.lst td.opx .opxb{height:auto;border:0;padding:0;background:none;font-size:var(--fs-12);line-height:1.35}
  table.lst td.opx{flex-direction:column;align-items:flex-start!important;justify-content:center;gap:1px}
  table.lst td.opx .opxv{margin-top:0}
  .opxi,.opxd{white-space:normal}
  table.lst td.opx .opxi{font-size:var(--fs-14)}
  table.lst td[data-l="Status"]{grid-area:foot;justify-self:start;align-self:center;margin-top:var(--sp-2)}
  table.lst td[data-l="Link"]{grid-area:foot;justify-self:end;align-self:center;margin-top:var(--sp-2)}
  table.lst td[data-l="Link"] .rep{display:none}
  .ebtn{height:36px}
  .pill[data-tip]:focus::after,.pill[data-tip]:hover::after{left:0;right:auto;width:min(260px,70vw)}
  .ttl{max-width:100%}
  td.im .th,.ph.t-lst{width:88px;height:117px}
  .t-crd,.ph.t-crd{width:64px!important;height:85px!important}
  .t5g{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:var(--sp-2);padding-bottom:var(--sp-2);margin-left:calc(-1 * var(--sp-4));margin-right:calc(-1 * var(--sp-4));padding-left:var(--sp-4);padding-right:var(--sp-4);scroll-padding-left:var(--sp-4)}
  .t5{flex:0 0 196px;scroll-snap-align:start}
  .t5x .opxb{white-space:normal;height:auto;padding:2px 6px;line-height:1.35}
  .cimg{flex-direction:column;align-items:center}
  .t-main,.ph.t-main{width:min(300px,72vw)!important;height:auto!important;aspect-ratio:3/4}
  .kv{grid-template-columns:1fr 1fr}
  /* database tables -> stacked cards */
  table.stk,table.stk tbody,table.stk tr,table.stk td{display:block;width:100%}
  table.stk tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-2) var(--sp-3);border:1px solid var(--border);border-radius:var(--r-lg);margin:0 0 var(--sp-2);padding:var(--sp-3);background:var(--surface)!important}
  table.stk td{grid-column:1/-1;width:auto;border:0;padding:0;text-align:left!important;min-width:0!important}
  table.stk td.r,table.stk td[data-l="PSA 10 price"],table#cl td{grid-column:auto}
  table#cl td[data-l="No."],table#cl td[data-l="Name"]{grid-column:auto}
  table.stk td[data-l="#"]{display:none}
  table.stk td:empty{display:none}
  table.stk td[data-l]::before{content:attr(data-l);display:block;font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
  .kvt,.kvt tbody,.kvt tr,.kvt th,.kvt td{display:block;width:auto}
  .kvt tr{padding:var(--sp-3) 0;border-bottom:1px solid var(--border)}.kvt tr:last-child{border-bottom:0}
  .kvt th,.kvt td{padding:0;border:0}
  .kvt th{font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:2px}
  .panel>.tw:has(.kvt){border:0}
  .lbl{max-width:none}
  .fbar input{flex:1 1 100%}
  .fbar select{flex:1 1 calc(50% - var(--sp-2));min-width:0}
  #fn{margin-left:0}
}

/* ---------- 12. photo gallery (gallery v1, 2026-10-01): thumbnails, home hero carousel, fullscreen lightbox ----------
   Every photo is an eBay listing photo hotlinked from i.ebayimg.com and stays inside its eBay listing block with a
   "Photo: eBay listing by <seller> · View on eBay" credit; the OPChase Index box sits outside that block (License 8.1(b)(2)). */
.t-lst,.ph.t-lst{width:96px;height:128px}
.t-crd,.ph.t-crd{width:72px;height:96px}
.t-main,.ph.t-main{width:360px;height:480px;border-radius:var(--r-lg)}
.t-hero,.ph.t-hero{width:100%;height:auto;aspect-ratio:3/4;border-radius:var(--r-lg)}
.ph.t-main,.ph.t-hero{font-size:var(--fs-18)}
.th:hover{box-shadow:0 0 0 1px var(--border-strong)}
.th:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.t-hero,.t-main{background:radial-gradient(120% 80% at 50% 30%,var(--surface-3),var(--img-bg) 70%)}
.t-hero img,.t-main img{background:transparent;transition:transform .35s ease}
.t-hero:hover img,.t-main:hover img{transform:scale(1.025)}
.th-n{position:absolute;right:6px;bottom:6px;display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 6px 0 5px;border-radius:var(--r-pill);background:rgba(8,9,12,.72);color:#fff;font-size:11px;font-weight:600;line-height:1;backdrop-filter:blur(4px)}
.th-n::before{content:"";width:11px;height:11px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linejoin='round'%3E%3Crect x='7' y='3' width='14' height='14' rx='2'/%3E%3Cpath d='M17 21H5a2 2 0 0 1-2-2V7'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linejoin='round'%3E%3Crect x='7' y='3' width='14' height='14' rx='2'/%3E%3Cpath d='M17 21H5a2 2 0 0 1-2-2V7'/%3E%3C/svg%3E") center/contain no-repeat}
.th-z{display:none}
.t-hero .th-z,.t-main .th-z{display:block;position:absolute;right:10px;top:10px;width:34px;height:34px;border-radius:50%;background:rgba(8,9,12,.62);opacity:0;transition:opacity .2s;backdrop-filter:blur(4px)}
.t-hero .th-z::after,.t-main .th-z::after{content:"";position:absolute;inset:9px;background:#fff;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21M10.5 7.5v6M7.5 10.5h6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21M10.5 7.5v6M7.5 10.5h6'/%3E%3C/svg%3E") center/contain no-repeat}
.th:hover .th-z,.th:focus-visible .th-z{opacity:1}
.t-hero .th-n,.t-main .th-n{right:10px;bottom:10px;height:24px;padding:0 9px 0 7px;font-size:12px}
.hs-attr{margin:var(--sp-2) 0 0;font-size:11.5px;line-height:1.4;color:var(--muted)}
.hs-attr a{color:var(--text-2)!important;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:2px}

/* hero carousel */
.car{position:relative;overflow:hidden;--slide:800px}
.car-h{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4)}
.car-h h2{margin-bottom:0}
.car-ctl{display:flex;gap:var(--sp-2);flex:none;padding-top:2px}
.car-pp svg{width:14px;height:14px;fill:currentColor}
.car-pp .i-play,.car-pp[aria-pressed="true"] .i-pause{display:none}.car-pp[aria-pressed="true"] .i-play{display:block}
.car-vp{position:relative;margin:var(--sp-5) calc(-1 * var(--sp-6)) 0}
.car-track{display:flex;gap:var(--sp-5);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:var(--sp-1) calc((100% - var(--slide)) / 2) var(--sp-2);-webkit-overflow-scrolling:touch}
.car-track::-webkit-scrollbar{display:none}
.car-track:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.car-vp::before,.car-vp::after{content:"";position:absolute;top:0;bottom:0;width:calc((100% - var(--slide)) / 2 - var(--sp-5));z-index:1;pointer-events:none}
.car-vp::before{left:0;background:linear-gradient(90deg,var(--surface) 0,transparent 100%)}
.car-vp::after{right:0;background:linear-gradient(270deg,var(--surface) 0,transparent 100%)}
.hs{flex:0 0 var(--slide);scroll-snap-align:center;scroll-snap-stop:always;min-width:0;opacity:.42;transform:scale(.955);transition:opacity .45s ease,transform .45s ease}
.hs.is-cur{opacity:1;transform:none}
.car-track.jump .hs{transition:none}
.hs:not(.is-cur){cursor:pointer}
.hs:not(.is-cur) .hs-eb{box-shadow:none}
.hs-eb{display:grid;grid-template-columns:340px minmax(0,1fr);gap:var(--sp-6);align-items:start;padding:var(--sp-5);border:1px solid var(--border-strong);border-radius:16px;background:var(--surface-2);box-shadow:var(--shadow-pop)}
.hs-media{min-width:0}
.hs-body{display:flex;flex-direction:column;min-width:0;padding-top:var(--sp-2);gap:var(--sp-1)}
.hs-src{display:inline-flex;align-self:flex-start;align-items:center;gap:6px;height:22px;padding:0 9px;border:1px solid var(--border-strong);border-radius:var(--r-pill);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:var(--sp-3)}
.hs-name{font-size:30px;line-height:1.15;letter-spacing:-.02em;font-weight:700;margin:0}
.hs-name a{color:var(--text)!important;text-decoration:none}
.hs-name a:hover{color:var(--accent-text)!important}
.hs-code{color:var(--text-2);font-weight:600}
.hs-var{font-size:var(--fs-18);font-weight:600;color:var(--accent-text);line-height:1.35;margin-top:var(--sp-1)}
.hs-set{font-size:var(--fs-14);color:var(--muted)}
.hs-price{margin:var(--sp-5) 0 var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--border)}
.hs-price>b{display:block;font-size:36px;line-height:1.1;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.hs-kind{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--sp-2);font-size:var(--fs-14);color:var(--text-2)}
.mi{white-space:nowrap}.ms{color:var(--muted)}
.hk{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-sm);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--border-strong);color:var(--text)}
.hk.au{border-color:var(--info-border,var(--border-strong))}
.ebtn-lg{height:44px;padding:0 22px;font-size:var(--fs-16);font-weight:600;align-self:flex-start}
.hs-x{display:flex;align-items:center;gap:var(--sp-3);margin:var(--sp-3) var(--sp-1) 0}
.hs-x .t5x{flex:1;display:block;min-width:0}
.hs-x .opxv{margin:0}
.hs-x .t5s{flex:none}
.car-arr{position:absolute;top:calc(50% - 40px);z-index:2;width:48px;height:48px;border-radius:50%;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-pop);transition:background .15s,transform .15s}
.car-arr:hover{background:var(--surface-3);transform:scale(1.06)}
.car-arr:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.car-arr svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.car-prev{left:calc((100% - var(--slide)) / 2 - 24px)}
.car-next{right:calc((100% - var(--slide)) / 2 - 24px)}
.car-dots{display:flex;justify-content:center;gap:8px;margin:var(--sp-4) 0 var(--sp-3)}
.car-dot{width:8px;height:8px;padding:0;border:0;border-radius:var(--r-pill);background:var(--border-strong);cursor:pointer;transition:width .3s,background .3s}
.car-dot[aria-current="true"]{width:26px;background:var(--accent)}
.car-dot:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
@media (max-width:1099px){.car{--slide:min(760px,78vw)}.hs-eb{grid-template-columns:minmax(0,300px) minmax(0,1fr)}}
@media (max-width:760px){
  .car{--slide:78vw;margin-left:calc(-1 * var(--sp-4));margin-right:calc(-1 * var(--sp-4));border-radius:0;border-left:0;border-right:0}
  .car-h h2 .sm{display:block;font-size:var(--fs-12);margin-top:var(--sp-1)}
  .car-vp{margin:var(--sp-4) 0 0}
  .car-track{gap:var(--sp-3)}
  .car-vp::before,.car-vp::after{display:none}
  .hs{transform:scale(.97);opacity:.5}
  .hs-eb{grid-template-columns:1fr;gap:var(--sp-3);padding:var(--sp-3);border-radius:14px}
  .t-hero,.ph.t-hero{aspect-ratio:4/5}
  .hs-body{padding-top:0}
  .hs-src{margin-bottom:var(--sp-2)}
  .hs-name{font-size:24px}
  .hs-var{font-size:var(--fs-16)}
  .hs-price{margin:var(--sp-3) 0;padding-top:var(--sp-3)}
  .hs-price>b{font-size:28px}
  .ebtn-lg{align-self:stretch}
  .hs-x{flex-wrap:wrap;margin:var(--sp-2) 0 0}
  .car-arr{width:38px;height:38px;top:calc(var(--slide) * .5)}
  .car-prev{left:6px}.car-next{right:6px}
  .car-h{flex-direction:column;gap:var(--sp-2)}.car-ctl{position:absolute;right:var(--sp-4);top:var(--sp-4)}
  .car-h h2{padding-right:44px}
}

/* fullscreen lightbox */
html.gx-lock{overflow:hidden}
.gx{position:fixed;inset:0;z-index:100;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#07080a;color:#e8eaed;opacity:0;transition:opacity .2s}
.gx.on{opacity:1}
.gx[hidden]{display:none}
.gx-top{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4) var(--sp-2) var(--sp-5)}
.gx-cap{display:flex;flex-direction:column;min-width:0}
.gx-t{font-size:var(--fs-16);font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gx-s{font-size:var(--fs-14);color:#9aa1ab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gx-tools{display:flex;align-items:center;gap:var(--sp-2);flex:none}
.gx-n{font-size:var(--fs-12);color:#9aa1ab;margin-right:var(--sp-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.gx-b{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;font:500 20px/1 var(--font);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.gx-b:hover,.gx-nav:hover{background:rgba(255,255,255,.14)}
.gx-b:focus-visible,.gx-nav:focus-visible,.gx-tb:focus-visible,.gx-attr a:focus-visible{outline:2px solid #f2bf45;outline-offset:2px}
.gx-stage{position:relative;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}
.gx-pan{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transform-origin:center;will-change:transform}
.gx-img{width:calc(100% - 160px);height:calc(100% - 16px);object-fit:contain;cursor:zoom-in;-webkit-user-drag:none}
.gx.is-zoomed .gx-img{cursor:grab}
.gx-load{display:none;position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px;border-radius:50%;border:3px solid rgba(255,255,255,.18);border-top-color:#f2bf45;animation:gxs .8s linear infinite}
.gx.is-loading .gx-load{display:block}
@keyframes gxs{to{transform:rotate(360deg)}}
.gx-nav{position:absolute;top:50%;margin-top:-28px;width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(20,22,27,.7);color:#fff;font:300 40px/1 var(--font);cursor:pointer;display:flex;align-items:center;justify-content:center;padding-bottom:4px;backdrop-filter:blur(6px)}
.gx-prev{left:var(--sp-5)}.gx-next{right:var(--sp-5)}
.gx-nav[hidden]{display:none}
.gx-bot{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4) var(--sp-4)}
.gx-th{display:flex;gap:var(--sp-2);overflow-x:auto;max-width:100%;scrollbar-width:none}
.gx-th:empty{display:none}
.gx-tb{flex:none;width:52px;height:64px;padding:0;border:2px solid transparent;border-radius:6px;background:#111;cursor:pointer;overflow:hidden;opacity:.6;transition:opacity .15s,border-color .15s}
.gx-tb img{width:100%;height:100%;object-fit:contain;display:block}
.gx-tb:hover{opacity:1}.gx-tb.on{opacity:1;border-color:#f2bf45}
.gx-attr{margin:0;padding:6px 14px;border:1px solid rgba(255,255,255,.14);border-radius:var(--r-pill);background:rgba(255,255,255,.04);font-size:var(--fs-12);color:#b6bcc6;text-align:center}
.gx-attr b{color:#e8eaed;font-weight:600}
.gx-attr a{color:#fff!important;text-decoration:underline;text-underline-offset:2px}
@media (max-width:760px){
  .gx-top{padding:var(--sp-2) var(--sp-2) var(--sp-1) var(--sp-4)}
  .gx-zo,.gx-zi{display:none}
  .gx-n{display:none}
  .gx-img{width:100%;height:100%}
  .gx-nav{width:42px;height:42px;margin-top:-21px;font-size:30px;background:rgba(20,22,27,.55)}
  .gx-prev{left:var(--sp-2)}.gx-next{right:var(--sp-2)}
  .gx-bot{padding-bottom:max(var(--sp-3),env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){.hs,.hs.is-cur{transform:none}.t-hero:hover img,.t-main:hover img{transform:none}.gx-load{animation-duration:2s}}

/* ---------- 13. home tier galleries + biggest-gaps strip (gallery v2, 2026-10-01) ----------
   One endless carousel per tier (every card). Cards with a live eBay listing: eBay photo inside the eBay block + attribution.
   Cards without one: an OPChase "card plate" (pure typography + CSS gradient, no image of any kind). */
.car.tg{--slide:720px;--tc:#f0b429;box-shadow:inset 0 2px 0 var(--tc)}
.car.tg-grail{--tc:#f0b429}.car.tg-premium{--tc:#b4bfcd}.car.tg-core{--tc:#cf8f52}
:root:not([data-theme="dark"]) .car.tg-premium{--tc:#7b8798}:root:not([data-theme="dark"]) .car.tg-core{--tc:#a8692c}:root:not([data-theme="dark"]) .car.tg-grail{--tc:#c99412}
.tg-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin:0 12px 0 2px;vertical-align:2px;background:var(--tc);box-shadow:0 0 0 4px color-mix(in srgb,var(--tc) 20%,transparent)}
.tg .car-h p.sm{margin:var(--sp-1) 0 0}
.tg .car-vp{margin-top:var(--sp-4)}
.tg .hs-eb,.hs-ob{grid-template-columns:300px minmax(0,1fr);gap:var(--sp-6)}
.hs-ob{display:grid;align-items:start;padding:var(--sp-5);border:1px solid var(--border);border-radius:16px;background:var(--surface-2);box-shadow:var(--shadow-pop)}
.hs:not(.is-cur) .hs-ob{box-shadow:none}
.hs-src-o{color:var(--accent-text);border-color:var(--accent-border)}
.tg .hs-name{font-size:28px}
.tg .hs-price{margin:var(--sp-4) 0}
.hs-none>b{font-size:var(--fs-20)!important;color:var(--text-2);letter-spacing:-.01em}
.hs-none .hs-kind{color:var(--muted)}
.hs-more{display:inline-block;margin-top:var(--sp-2);font-size:var(--fs-14)}
.opxv b{color:var(--text);font-weight:650}
.car-count{font-size:var(--fs-12);color:var(--muted);font-variant-numeric:tabular-nums;align-self:center;min-width:56px;text-align:right}
.tg .ebn{margin-top:var(--sp-4)}
/* card plate */
.pt-grail{--tc:#f0b429}.pt-premium{--tc:#cdd6e2}.pt-core{--tc:#e09a5c}
.plate{position:relative;display:block;aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;text-decoration:none!important;color:#f4f1ea!important;isolation:isolate;
  background:radial-gradient(95% 55% at 12% 0%,hsl(var(--h) 80% 50% / .5),transparent 70%),radial-gradient(70% 55% at 105% 100%,hsl(calc(var(--h) + 35) 75% 45% / .32),transparent 70%),
    repeating-linear-gradient(135deg,hsl(var(--h) 60% 75% / .065) 0 1px,transparent 1px 12px),linear-gradient(165deg,hsl(var(--h) 42% 17%),#08090c 78%);
  border:1px solid hsl(var(--h) 40% 45% / .55);box-shadow:inset 0 1px 0 rgba(255,255,255,.07);transition:transform .35s ease,box-shadow .35s ease}
.plate:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 0 0 1px hsl(var(--h) 60% 60% / .5)}
.plate:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.plate::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.07) 45%,transparent 60%);pointer-events:none}
.pl-in{position:absolute;inset:12px;border:1px solid hsl(var(--h) 50% 80% / .2);border-radius:9px;display:flex;flex-direction:column;justify-content:space-between;padding:16px 18px 14px}
.pl-top{display:flex;justify-content:space-between;align-items:center;position:relative;z-index:1}
.pl-mark{font-weight:800;letter-spacing:-.02em;font-size:14px;color:#fff}.pl-mark b{color:var(--tc);font-weight:800}
.pl-tier{color:var(--tc);border:1px solid color-mix(in srgb,var(--tc) 65%,transparent);border-radius:999px;padding:3px 10px;font-weight:700;font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.pl-wm{position:absolute;right:-2px;top:34px;font-size:150px;font-weight:900;line-height:1;letter-spacing:-.07em;color:hsl(var(--h) 70% 85% / .07);font-variant-numeric:tabular-nums;pointer-events:none}
.pl-mid{display:flex;flex-direction:column;gap:5px;position:relative;margin-top:auto;margin-bottom:22px}
.pl-name{font-size:46px;line-height:.95;font-weight:800;letter-spacing:-.04em;color:#fff;text-shadow:0 2px 26px hsl(var(--h) 85% 45% / .55);overflow-wrap:anywhere}
.pl-name.pl-long{font-size:36px}
.pl-code{font-size:15px;font-weight:650;letter-spacing:.09em;color:hsl(var(--h) 35% 88%);font-variant-numeric:tabular-nums}
.pl-rule{width:46px;height:2px;background:var(--tc);margin:9px 0 5px;border-radius:2px}
.pl-var{font-size:15px;font-weight:600;color:#fff;line-height:1.3}
.pl-set{font-size:12px;color:hsl(var(--h) 18% 76%);line-height:1.35}
.pl-bot span{white-space:nowrap}
.pl-bot{display:flex;justify-content:space-between;gap:8px;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:hsl(var(--h) 18% 74%);border-top:1px solid hsl(var(--h) 40% 80% / .14);padding-top:10px}
.plate{--h:40}.plate.h0{--h:0}.plate.h1{--h:10}.plate.h2{--h:20}.plate.h3{--h:30}.plate.h4{--h:40}.plate.h5{--h:50}.plate.h6{--h:60}.plate.h7{--h:70}.plate.h8{--h:80}.plate.h9{--h:90}.plate.h10{--h:100}.plate.h11{--h:110}.plate.h12{--h:120}.plate.h13{--h:130}.plate.h14{--h:140}.plate.h15{--h:150}.plate.h16{--h:160}.plate.h17{--h:170}.plate.h18{--h:180}.plate.h19{--h:190}.plate.h20{--h:200}.plate.h21{--h:210}.plate.h22{--h:220}.plate.h23{--h:230}.plate.h24{--h:240}.plate.h25{--h:250}.plate.h26{--h:260}.plate.h27{--h:270}.plate.h28{--h:280}.plate.h29{--h:290}.plate.h30{--h:300}.plate.h31{--h:310}.plate.h32{--h:320}.plate.h33{--h:330}.plate.h34{--h:340}.plate.h35{--h:350}
/* biggest-gaps strip */
.gp-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-3);margin:var(--sp-4) 0 var(--sp-3)}
.gp{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}
.gp-eb{display:flex;gap:var(--sp-3);padding:var(--sp-3);border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface-2);flex:1;min-width:0}
.t-feat,.ph.t-feat{width:72px;height:96px;flex:none}
.gp-b{min-width:0;display:flex;flex-direction:column;gap:2px;flex:1}
.gp-b .cn{font-weight:650;font-size:var(--fs-14);color:var(--text)!important;text-decoration:none;line-height:1.3}
.gp-b .cn span{color:var(--text-2);font-weight:500}
.gp-v{font-size:var(--fs-12);color:var(--accent-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gp-p{margin-top:auto;font-size:var(--fs-12);color:var(--muted);line-height:1.35}.gp-p b{font-size:var(--fs-18);color:var(--text);font-weight:700;font-variant-numeric:tabular-nums}
.gp-attr{margin:2px 0 0;font-size:10.5px;line-height:1.35;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gp-attr a{color:var(--text-2)!important}
.gp-x{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);border:1px dashed var(--accent-border);border-radius:var(--r-md);background:var(--accent-bg);padding:5px 8px}
.gp-x .opxb{height:auto;border:0;padding:0;background:none}
@media (max-width:1099px){.car.tg{--slide:min(680px,80vw)}.tg .hs-eb,.hs-ob{grid-template-columns:minmax(0,260px) minmax(0,1fr)}.gp-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .car.tg{--slide:78vw}
  .tg .hs-eb,.hs-ob{grid-template-columns:1fr;gap:var(--sp-3);padding:var(--sp-3);border-radius:14px}
  .tg .hs-name{font-size:24px}
  /* info stacked below the image: centre the whole block (desktop side-by-side stays left-aligned) */
  .hs-media,.hs-attr{text-align:center}
  .hs-body{align-items:center;text-align:center}
  .hs-src{align-self:center}
  .hs-price{align-self:stretch}
  .hs-kind{justify-content:center}
  .hs-x{flex-direction:column;align-items:center;text-align:center;gap:var(--sp-2)}
  .hs-x .t5x{align-self:stretch;text-align:center}
  .pl-name{font-size:42px}.pl-name.pl-long{font-size:33px}
  .pl-wm{font-size:130px}
  .pl-bot{font-size:9.5px;letter-spacing:.09em}
  .pl-in{padding:14px 16px 12px}
  .gp-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:var(--sp-3) calc(-1 * var(--sp-4));padding:0 var(--sp-4) var(--sp-1);gap:var(--sp-2);scrollbar-width:none;scroll-padding-left:var(--sp-4)}
  .gp-row::-webkit-scrollbar{display:none}
  .gp{flex:0 0 80vw;scroll-snap-align:start}
}
@media (prefers-reduced-motion:reduce){.plate{transition:none}}
@media print{.site-h,.hact,.gx,.car-arr,.car-ctl,.car-dots{display:none}body{background:#fff;color:#000}}

/* ---------- 14. light-default polish + card-page discoverability (2026-10-01) ---------- */
/* card plate on the light (default) theme: pale tinted paper, dark ink (AA contrast on every hue) */
:root:not([data-theme="dark"]) .pt-grail{--tc:#8a5d00}:root:not([data-theme="dark"]) .pt-premium{--tc:#4f5a6a}:root:not([data-theme="dark"]) .pt-core{--tc:#87491a}
:root:not([data-theme="dark"]) .plate{color:#1f1e1b!important;
  background:radial-gradient(95% 55% at 12% 0%,hsl(var(--h) 85% 78% / .55),transparent 70%),radial-gradient(70% 55% at 105% 100%,hsl(calc(var(--h) + 35) 80% 80% / .5),transparent 70%),
    repeating-linear-gradient(135deg,hsl(var(--h) 50% 40% / .05) 0 1px,transparent 1px 12px),linear-gradient(165deg,hsl(var(--h) 60% 96%),hsl(var(--h) 35% 90%) 85%);
  border:1px solid hsl(var(--h) 35% 78%);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 2px rgba(15,15,15,.06)}
:root:not([data-theme="dark"]) .plate:hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 0 0 1px hsl(var(--h) 45% 55% / .55)}
:root:not([data-theme="dark"]) .plate::after{background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.45) 45%,transparent 60%)}
:root:not([data-theme="dark"]) .pl-in{border-color:hsl(var(--h) 35% 45% / .22)}
:root:not([data-theme="dark"]) .pl-mark{color:#1f1e1b}
:root:not([data-theme="dark"]) .pl-wm{color:hsl(var(--h) 55% 35% / .08)}
:root:not([data-theme="dark"]) .pl-name{color:hsl(var(--h) 45% 16%);text-shadow:0 2px 22px hsl(var(--h) 80% 70% / .45)}
:root:not([data-theme="dark"]) .pl-code{color:hsl(var(--h) 30% 28%)}
:root:not([data-theme="dark"]) .pl-var{color:#1f1e1b}
:root:not([data-theme="dark"]) .pl-set,:root:not([data-theme="dark"]) .pl-bot{color:hsl(var(--h) 15% 32%)}
:root:not([data-theme="dark"]) .pl-bot{border-top-color:hsl(var(--h) 30% 40% / .18)}
:root:not([data-theme="dark"]) .tg .hs-eb,:root:not([data-theme="dark"]) .hs-ob{background:var(--surface);box-shadow:0 1px 2px rgba(15,15,15,.04),0 8px 24px rgba(15,15,15,.07)}
:root:not([data-theme="dark"]) .hs:not(.is-cur) .hs-eb,:root:not([data-theme="dark"]) .hs:not(.is-cur) .hs-ob{box-shadow:none}

/* card name = clear on-site link (all slides, gaps strip, tables) */
a.cn{text-decoration:none;text-underline-offset:3px;text-decoration-thickness:1.5px}
a.cn::after{content:"\00a0›";color:var(--accent-text);font-weight:700;display:inline-block;transition:transform .15s}
a.cn:hover,a.cn:focus-visible{color:var(--accent-text)!important;text-decoration:underline}
a.cn:hover::after{transform:translateX(2px)}
.gp-b a.cn:hover{color:var(--accent-text)!important;text-decoration:underline}
/* brand CTA to the card page: outlined gold (eBay pill stays neutral grey) */
.dbtn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 16px;border-radius:var(--r-pill);border:1.5px solid var(--accent-border);background:var(--accent-bg);color:var(--accent-text)!important;font-size:var(--fs-14);font-weight:650;white-space:nowrap;text-decoration:none!important;transition:background .15s,border-color .15s}
.dbtn:hover{background:var(--accent-bg-2);border-color:var(--accent)}
.dbtn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.dbtn-lg{height:44px;padding:0 22px;font-size:var(--fs-16)}
.dbtn-sm{height:28px;padding:0 10px;font-size:var(--fs-12)}
/* OPChase Index strip = link to the card page */
a.opx-a{display:block;color:inherit!important;text-decoration:none!important;border-radius:inherit}
a.t5x.opx-a,a.opx-s{transition:border-color .15s,background .15s}
a.t5x.opx-a:hover,a.opx-s:hover{border-color:var(--accent)!important;background:var(--accent-bg-2)}
a.opx-a .opxi::after{content:"\00a0›";color:var(--accent-text);font-weight:700}
td.opx a.opx-a:hover .opxi{text-decoration:underline;text-underline-offset:3px}
.hs-x .dbtn{flex:none}
.gp-x{flex-wrap:wrap}
.gp-x .dbtn-sm{margin-left:auto}
/* tables: the whole card cell opens the card page; small "Details" link */
td.cncell{position:relative}
td.cncell a.cn::before{content:"";position:absolute;inset:0}
td.cncell:hover{background:var(--hover)}
.dlk{position:relative;z-index:1;display:inline-block;margin-top:2px;font-size:var(--fs-12);font-weight:600;color:var(--accent-text)!important;text-decoration:none!important}
.dlk:hover{text-decoration:underline!important}
@media (max-width:760px){
  .hs-x .dbtn{align-self:stretch;height:44px;font-size:var(--fs-16)}
  .hs-x .t5s{align-self:center}
  .gp-x .dbtn-sm{margin-left:0;flex:1 0 100%}
}
@media (max-width:760px){.hs-media .plate{text-align:left}.hs-body .dbtn-lg{align-self:stretch}}

/* ---------- 15. merged OPChase panel (2026-10-01 08:30): index + inline status + BIN line + CTA in ONE link, outside the eBay block ---------- */
.opp{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:10px 14px;border:1px solid var(--accent-border);border-radius:14px;background:var(--accent-bg);color:var(--text)!important;text-decoration:none!important;text-align:left;transition:background .15s,border-color .15s}
.opp:hover{background:var(--accent-bg-2);border-color:var(--accent)}
.opp:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.opp-l{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.opp-t{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px}
.opp .opxi{font-size:var(--fs-16);white-space:nowrap}
.opp .opxd{margin:0;white-space:normal}
.opp .pill.mini{height:18px;padding:0 6px;font-size:11px;cursor:help}
.opp-auto{position:relative;font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);cursor:help}
.opp-auto[data-tip]:hover::after{content:var(--tip);position:absolute;z-index:20;left:0;top:calc(100% + 6px);width:260px;white-space:normal;text-transform:none;letter-spacing:0;font-weight:500;font-size:var(--fs-12);line-height:1.45;background:var(--tip-bg);color:var(--tip-text);padding:8px 10px;border-radius:var(--r-md);box-shadow:var(--shadow-pop)}
.opp-c{flex:none;font-size:var(--fs-14);font-weight:650;color:var(--accent-text);white-space:nowrap}
.opp:hover .opp-c{text-decoration:underline;text-underline-offset:3px}
.hs-x2{display:block!important;margin:var(--sp-3) var(--sp-1) 0}
.gp-x2 .opp{flex-wrap:wrap;padding:8px 10px;gap:4px var(--sp-2)}
.gp-x2 .opp .opxi{font-size:var(--fs-14)}
.gp-x2 .opp-l{flex:1 0 100%}
.gp-x2 .opp-c{flex:1 0 100%;font-size:var(--fs-12);padding-top:6px;border-top:1px solid color-mix(in srgb,var(--accent-border) 60%,transparent);text-align:center}
.gp-x2 .opxd{white-space:nowrap}
@media (max-width:760px){
  .hs-x2{margin:var(--sp-2) 0 0}
  .hs-x2 .opp{text-align:left}
  .opp-auto[data-tip]:hover::after{width:min(260px,70vw)}
}
@media (max-width:760px){.hs-x2 .opp{flex-wrap:wrap;row-gap:8px;padding:10px 14px 9px}.hs-x2 .opp-l{flex:1 0 100%}.hs-x2 .opp-c{flex:1 0 100%;padding-top:8px;border-top:1px solid color-mix(in srgb,var(--accent-border) 60%,transparent);text-align:center}}

/* ---------- 16. encyclopedia rollout (2026-10-01): tracked-on-OPChase callout, open questions, tracked rows ---------- */
.trkp{border-color:var(--accent-border)}
.trkl{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--sp-2);margin-top:var(--sp-3)}
a.trki{display:grid;grid-template-columns:1fr auto;gap:2px var(--sp-2);padding:10px 14px;border:1px solid var(--accent-border);border-radius:12px;background:var(--accent-bg);color:var(--text)!important;text-decoration:none!important;transition:background .15s,border-color .15s}
a.trki:hover{background:var(--accent-bg-2);border-color:var(--accent)}
a.trki:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.trkv{font-weight:650;font-size:var(--fs-14)}
.trks{font-size:var(--fs-12);color:var(--muted);text-align:right}
.trkp2{font-weight:700;font-variant-numeric:tabular-nums}
.trkc{font-size:var(--fs-12);font-weight:650;color:var(--accent-text);text-align:right;align-self:end}
a.trki:hover .trkc{text-decoration:underline;text-underline-offset:3px}
.oq{border-left:3px solid var(--warn,#c98a00)}
.oq ul{margin:var(--sp-2) 0 0;padding-left:var(--sp-5)}
.oq li{margin:0 0 var(--sp-2);font-size:var(--fs-14)}
tr.trk td:first-child{box-shadow:inset 3px 0 0 var(--accent)}
td .dbtn-sm{margin-top:6px}
.encl{display:flex;flex-wrap:wrap;align-items:center;gap:6px var(--sp-2);margin:var(--sp-3) 0 var(--sp-2)}

/* ---------- 17. carousel photo placeholder + light plate contrast (2026-10-01, blank-slide fix) ---------- */
/* until a hero photo has pixels the frame shows the card name and "Loading photo…" (slow cellular); on error "Photo unavailable" */
.th.t-hero::before{content:attr(data-cap) "\A" "Loading photo…";white-space:pre-line;position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:16px;
  font-size:15px;font-weight:650;line-height:1.5;color:var(--muted);pointer-events:none;z-index:0}
.th.t-hero img{position:relative;z-index:1}
.th.t-hero.img-ok::before{content:none}
.th.t-hero.img-err::before{content:attr(data-cap) "\A" "Photo unavailable · tap View on eBay";z-index:2}
.th.t-hero.img-err img{visibility:hidden}
/* light-theme plates: a stronger tier tint so a plate never reads as an empty box */
:root:not([data-theme="dark"]) .plate{background:radial-gradient(95% 55% at 12% 0%,hsl(var(--h) 85% 72% / .7),transparent 70%),radial-gradient(70% 55% at 105% 100%,hsl(calc(var(--h) + 35) 80% 74% / .6),transparent 70%),
    repeating-linear-gradient(135deg,hsl(var(--h) 50% 40% / .07) 0 1px,transparent 1px 12px),linear-gradient(165deg,hsl(var(--h) 60% 92%),hsl(var(--h) 38% 84%) 85%);border-color:hsl(var(--h) 35% 68%)}
:root:not([data-theme="dark"]) .pl-wm{color:hsl(var(--h) 55% 35% / .13)}

/* ---------- 18. eBay block buttons: Buy Now + Bid (2026-10-01) ---------- */
.ebp{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:var(--sp-2)}
.ebp-i{display:flex;flex-direction:column;gap:3px;min-width:0}
.ebp-also{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.ebtn-bn{border-color:var(--text-2);color:var(--text)!important;font-weight:650}
.ebtn-au{font-weight:500;color:var(--text-2)!important}
.ebtn-sm{height:30px;padding:0 11px;font-size:var(--fs-12)}
.gp-b .ebp{margin-top:6px}.gp-b .ebp-also{font-size:10px}
.t-main~.ebp,.hs-attr~.ebp{justify-content:center}
@media (max-width:760px){
  .ebp{flex-direction:column;align-items:stretch}
  .ebp .ebtn{width:100%}
  .hs-body .ebp{align-self:stretch}
}
/* slide: the button row spans the whole eBay block (photo + text columns) so two buttons sit side by side on desktop */
.hs-eb>.ebp{grid-column:1/-1;margin-top:0;padding-top:var(--sp-3);border-top:1px solid var(--border);justify-content:center;gap:12px}
.hs-eb>.ebp .ebtn{min-width:220px}
@media (max-width:760px){.hs-eb>.ebp{padding-top:var(--sp-2)}.hs-eb>.ebp .ebtn{min-width:0}}
@media (max-width:760px){.hs-eb>.ebp .ebp-also{text-align:center}}
.ebn-b{margin-top:var(--sp-2);text-align:center}
/* 2026-10-01 11:00: buttons carry the prices; no separate price block on listing slides / strip */
.hs-body>.ebp{margin-top:var(--sp-5);flex-direction:column;align-items:stretch;gap:8px}
.hs-body>.ebp .ebtn{width:100%;min-width:0}
.ebp-n{margin:6px 0 0;font-size:var(--fs-12);color:var(--muted)}
.gp-b .ebp{margin-top:auto;padding-top:6px;gap:6px}.gp-b .ebp-n{font-size:11px;margin-top:4px}
.t-main~.ebp-n,.t-main~* .ebp-n{text-align:center}
.hs-attr~.ebp-n{text-align:center}
@media (max-width:760px){.hs-body>.ebp{margin-top:var(--sp-4)}.hs-body .ebp-n{text-align:center}}
@media (max-width:760px){.ebp .ebp-i{width:100%}}
@media (max-width:760px){.ebp{width:100%;align-self:stretch}}

/* ---------- 19. neutral data notes on card pages (2026-10-01) ---------- */
.dns{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--sp-2)}
.dnt{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:1px solid var(--border-strong);border-radius:999px;font-size:var(--fs-12);font-weight:550;color:var(--text-2);background:var(--surface)}

/* ---------- 20. Guides (2026-10-01): /guides/ hub + articles ---------- */
.guide{max-width:760px;margin:0 auto;padding:0 var(--sp-4) var(--sp-8)}
.guide-hub{max-width:1040px}
.g-hero{padding:var(--sp-6) 0 var(--sp-5);border-bottom:1px solid var(--border);margin-bottom:var(--sp-6)}
.g-kick{margin:0 0 var(--sp-2);font-size:var(--fs-12);font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.g-hero h1{margin:0;font-size:clamp(28px,4.2vw,40px);line-height:1.15;letter-spacing:-.02em;font-weight:700}
.g-dek{margin:var(--sp-3) 0 0;font-size:18px;line-height:1.55;color:var(--text-2)}
.g-meta{margin:var(--sp-3) 0 0;font-size:var(--fs-12);color:var(--muted)}
.guide>p,.guide li{font-size:17px;line-height:1.7}
.guide h2{margin:var(--sp-8) 0 var(--sp-3);font-size:24px;letter-spacing:-.01em}
.gkey{margin:0 0 var(--sp-6);padding:var(--sp-4) var(--sp-5);border:1px solid var(--border-strong);border-left:3px solid var(--text);border-radius:12px;background:var(--surface-2);font-size:16px;line-height:1.65}
.glabels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4);margin:var(--sp-4) 0 var(--sp-2)}
.glabel{margin:0}
.gl-in{padding:12px 14px;border:1.5px solid var(--text-2);border-radius:8px;background:var(--surface);font-size:12.5px;line-height:1.55;font-weight:650;letter-spacing:.03em;text-transform:uppercase;font-variant-numeric:tabular-nums}
.gl-3 mark{background:rgba(214,170,40,.28);color:inherit;padding:0 3px;border-radius:3px}
.glabel figcaption{margin-top:6px;font-size:var(--fs-12);color:var(--muted);line-height:1.45}
.g-steps,.g-list{padding-left:1.3em}.g-steps li,.g-list li{margin:var(--sp-2) 0}
.guide code{font-size:.86em;padding:1px 5px;border-radius:4px;background:var(--surface-2);border:1px solid var(--border)}
.g-next{font-size:15px!important;line-height:1.9!important}
.g-src{margin-top:var(--sp-8);padding-top:var(--sp-4);border-top:1px solid var(--border)}
.g-src h2{font-size:16px!important;margin-top:0!important}.g-src li{font-size:13.5px!important;line-height:1.6!important;color:var(--text-2)}
.g-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}
.g-card{display:flex;flex-direction:column;gap:8px;padding:var(--sp-5);border:1px solid var(--border-strong);border-radius:14px;background:var(--surface);color:inherit;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.g-card:hover{border-color:var(--text-2);box-shadow:0 8px 24px rgba(15,15,15,.07)}
.g-card h2{margin:0;font-size:20px;line-height:1.3}.g-card p{margin:0;color:var(--text-2);line-height:1.55}
.g-go{margin-top:auto;font-weight:650}
@media (max-width:760px){.glabels,.g-grid{grid-template-columns:1fr}.guide>p,.guide li{font-size:16px}.g-dek{font-size:16.5px}}
.guide>p.sm{font-size:var(--fs-12);line-height:1.5;color:var(--muted)}
@media (min-width:1100px){.guide .tw{width:1000px;margin-left:50%;transform:translateX(-50%)}}
/* ===== 21 · eBay search link + plate-slide eBay buttons (2026-10-01 PM, "eBay links for every card") =====
   .ebtn-sr = neutral secondary pill ("Search PSA 10 on eBay"): same grey family as .ebtn, outline + magnifier, never gold */
.ebs{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:var(--sp-3)}
.ebtn-sr{background:var(--surface);border-color:var(--border-strong);color:var(--text-2)!important;font-weight:500}
.ebtn-sr::before{content:"";width:14px;height:14px;flex:none;background:currentColor;opacity:.75;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10.5 3a7.5 7.5 0 0 1 5.96 12.05l4.5 4.5-1.41 1.41-4.5-4.5A7.5 7.5 0 1 1 10.5 3zm0 2a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10.5 3a7.5 7.5 0 0 1 5.96 12.05l4.5 4.5-1.41 1.41-4.5-4.5A7.5 7.5 0 1 1 10.5 3zm0 2a5.5 5.5 0 1 0 0 11 5.5 5.5 0 0 0 0-11z'/%3E%3C/svg%3E") center/contain no-repeat}
.ebtn-sr:hover{background:var(--surface-2);color:var(--text)!important}
.ebtn-sr.ebtn-sm::before{width:12px;height:12px}
.ebs .ebp-n{margin-top:2px;max-width:42ch}
.hs-body>.ebs{margin-top:var(--sp-5);align-items:stretch}
.hs-body>.ebs .ebtn{width:100%}
.hs-ebs{margin-top:var(--sp-4);display:flex;flex-direction:column;gap:6px}
.hs-ebs>.ebp{margin-top:0;flex-direction:column;align-items:stretch}
.hs-ebs>.ebp .ebtn{width:100%}
.cimg>.ebs{align-items:center;text-align:center}
.cimg>.ebs .ebp-n{text-align:center}
.cimg .ebp+.ebn-b+.ebs,.cimg .ebn-b+.ebs{margin-top:var(--sp-2)}
/* encyclopedia printings table: one small search pill per printing */
td .ebtn-sr{margin-top:6px}
.trkp .ebs{margin-top:var(--sp-2)}
@media (max-width:760px){.ebs{align-items:stretch}.ebs .ebtn{width:100%}.ebs .ebp-n{max-width:none;text-align:center}.hs-body>.ebs{margin-top:var(--sp-4)}td .ebtn-sr{width:auto;max-width:100%;white-space:normal;text-align:left;line-height:1.3;padding-top:6px;padding-bottom:6px}}
/* ===== 22 · chase layer "Live on eBay · PSA 10" panel on encyclopedia card pages (2026-10-02) ===== */
.chl-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-4);margin-top:var(--sp-3)}
.chl-i{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--border);border-radius:12px;background:var(--surface-2);min-width:0}
.chl-ph{display:block;border-radius:8px;overflow:hidden;background:var(--surface-3);aspect-ratio:3/4}
.chl-ph img{display:block;width:100%;height:100%;object-fit:contain}
.chl-i .hs-attr{margin:0}
.chl-b{display:flex;flex-direction:column;gap:2px;min-width:0}
.chl-b .ebp{margin-top:var(--sp-2);flex-direction:column;align-items:stretch;gap:6px}
.chl-b .ebp .ebtn{width:100%}
.chl .ebn-b{text-align:left;margin-top:var(--sp-3)}
@media (max-width:760px){.chl-g{grid-template-columns:1fr}.chl-i{max-width:420px;margin:0 auto;width:100%;text-align:center}.chl .ebn-b{text-align:center}}

/* =====================================================================================================================
   23 · Alt-style redesign (2026-10-02): flat sections, less text.
   Flat sections separated by hairlines + generous space (no boxes inside boxes), big section titles with a "view all"
   link on the right, one consistent photo-tile grid, muted secondary text, gold only for OPChase links, uppercase small nav.
   Overrides earlier sections; compliance items kept (photo credit, OPChase panel separate from the eBay block, freshness).
   ===================================================================================================================== */
:root{--maxw:1200px}
:root:not([data-theme="dark"]){--bg:#ffffff;--surface:#ffffff;--surface-2:#f6f6f4;--surface-3:#eeeeea;--border:#ebeae6;--border-strong:#d9d8d3;--img-bg:#f4f4f1;--zebra:transparent;--hover:#f7f7f5;--header-bg:rgba(255,255,255,.92);--band:#f7f7f5}
[data-theme="dark"]{--band:#101318;--zebra:transparent}
/* header: compact uppercase nav, Pro as the one filled pill */
.hw{min-height:60px}
.logo{font-size:20px;letter-spacing:-.035em}
.site-nav{gap:0}
.site-nav a{font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);padding:8px 12px;border-radius:0}
.site-nav a:hover{background:none;color:var(--text)}
.site-nav a[aria-current]{background:none;color:var(--text);box-shadow:inset 0 -2px 0 var(--text)}
.site-nav a.nav-pro{margin-left:8px;border-radius:var(--r-pill);background:var(--text);color:var(--bg);padding:7px 14px}
.site-nav a.nav-pro:hover{opacity:.88}
/* sections: flat, hairline divider, big titles */
.panel,section.tier,.toc,.sec{background:none;border:0;border-top:1px solid var(--border);border-radius:0;box-shadow:none;padding:var(--sp-10) 0 0;margin:var(--sp-10) 0 0}
.panel.cp{border-top:0;padding-top:var(--sp-4);margin-top:var(--sp-4)}
h1{font-weight:750;letter-spacing:-.035em}
.panel>h2,section.tier h2,.sec h2{font-size:30px;font-weight:750;letter-spacing:-.03em;line-height:1.15;margin:0 0 6px}
.panel>h2 .sm,.sec h2 .sm,section.tier h2 .sm{font-size:var(--fs-16);font-weight:500;color:var(--muted);letter-spacing:0;margin-left:6px}
.sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-5)}
.sec-h h2{margin:0}
.sec-sub{margin:4px 0 var(--sp-4);font-size:var(--fs-14);color:var(--muted);line-height:1.5;max-width:none!important}
.sec-h .sec-sub{margin-bottom:0}
.sec-more{flex:none;font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text)!important;white-space:nowrap;padding-bottom:4px}
.sec-more::after{content:" →";color:var(--accent-text)}
.sec-more:hover{text-decoration:none;color:var(--accent-text)!important}
.fine{font-size:var(--fs-12);line-height:1.55;color:var(--muted);margin:var(--sp-4) 0 0;max-width:110ch!important}
.fine a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:2px}
.fine-top{margin:0 0 var(--sp-3)}
.fine .ago{color:inherit}
.sec-band{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:var(--sp-10) 0 var(--sp-8);background:none;box-shadow:none;clip-path:none}
/* hero */
.hero2{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--sp-8);align-items:end;padding:var(--sp-12) 0 var(--sp-6)}
.hero2 h1{font-size:56px;line-height:1;margin:0 0 var(--sp-3)}
.kick{margin:0 0 var(--sp-3);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.hero2 .tag-line{font-size:20px;color:var(--text-2);margin:0 0 var(--sp-4)}
.upd{font-size:13px}
.upd::before{width:7px;height:7px}
a.h2k{display:grid;gap:2px;padding:var(--sp-5);border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--text)!important;text-decoration:none!important;transition:border-color .15s,box-shadow .15s}
a.h2k:hover{border-color:var(--border-strong);box-shadow:0 8px 24px rgba(15,15,15,.07)}
.h2k .l{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.h2k .v{font-size:44px;font-weight:750;letter-spacing:-.035em;line-height:1.1;font-variant-numeric:tabular-nums}
.h2k .d{font-size:var(--fs-14);font-weight:600;font-variant-numeric:tabular-nums}
.h2k .go{margin-top:var(--sp-2);font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent-text)}
.h2k .go::after{content:" →"}
.qlinks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden;margin:var(--sp-2) 0 var(--sp-10)}
.qlinks a{display:flex;flex-direction:column;gap:2px;padding:var(--sp-4) var(--sp-5);color:var(--text)!important;text-decoration:none!important;border-left:1px solid var(--border);transition:background .15s}
.qlinks a:first-child{border-left:0}
.qlinks a:hover{background:var(--hover)}
.qlinks b{font-size:var(--fs-16);font-weight:700;letter-spacing:-.01em}
.qlinks b::after{content:" →";color:var(--accent-text);font-weight:700}
.qlinks span{font-size:13px;color:var(--muted);line-height:1.4}
.qlinks a.ql-pro b{color:var(--accent-text)}
/* featured tiles (Alt-style card grid) */
.tile-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-5)}
.tile{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}
.tile-eb{display:flex;flex-direction:column;flex:1;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden;transition:border-color .15s,box-shadow .15s}
.tile-eb:hover{border-color:var(--border-strong);box-shadow:0 10px 28px rgba(15,15,15,.08)}
.t-tile,.ph.t-tile{width:100%;height:auto;aspect-ratio:1/1;border:0;border-radius:0;background:var(--img-bg)}
.t-tile img{object-fit:contain;padding:14px;background:transparent}
.tile-attr{margin:0;padding:6px 14px 0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile-b{display:flex;flex-direction:column;gap:2px;padding:6px 14px 14px;flex:1;min-width:0}
.tile-n{font-size:var(--fs-16);font-weight:700;color:var(--text)!important;line-height:1.3}
.tile-n span{color:var(--text-2);font-weight:500}
.tile-v{font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tile-b .ebp{margin-top:auto;padding-top:var(--sp-3);flex-direction:column;align-items:stretch;gap:6px}
.tile-b .ebp .ebtn{width:100%;height:36px;font-size:var(--fs-14)}
/* OPChase panel: neutral, quiet, always its own box under the eBay block */
.opp{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);padding:9px 14px}
.opp:hover{background:var(--surface-3);border-color:var(--border-strong)}
.opp .opxi{font-size:var(--fs-14);font-weight:650}
.opp-c{font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--accent-text)}
.tile-x .opp{flex-wrap:nowrap;gap:var(--sp-2)}
.tile-x .opp .opxi{font-size:13px}
.tile-x .opp-c{font-size:11.5px}
/* buttons: Buy Now = solid dark (primary), Bid = outline */
.ebtn{border-radius:10px}
.ebtn-bn{background:var(--text);border-color:var(--text);color:var(--bg)!important;font-weight:650}
.ebtn-bn:hover{background:var(--text-2);border-color:var(--text-2)}
.ebtn-au{background:var(--surface);border-color:var(--border-strong)}
.ebtn-sr{border-radius:10px}
/* tier galleries: flatter slides, no gold top rule, lighter shadows */
.car.tg{box-shadow:none;border-top:0;padding-top:var(--sp-6);margin-top:0}
.car.tg+.car.tg{border-top:1px solid var(--border);margin-top:var(--sp-8)}
.car.tg h2{font-size:22px;letter-spacing:-.02em}
.car-vp::before{background:linear-gradient(90deg,var(--bg) 0,transparent 100%)}
.car-vp::after{background:linear-gradient(270deg,var(--bg) 0,transparent 100%)}
.car-vp{margin-left:0;margin-right:0}
:root:not([data-theme="dark"]) .tg .hs-eb,:root:not([data-theme="dark"]) .hs-ob{box-shadow:0 1px 2px rgba(15,15,15,.04),0 12px 32px rgba(15,15,15,.06);border-color:var(--border)}
.tg .hs-name{font-size:28px;font-weight:750}
.hs-var{color:var(--text-2);font-weight:600}
.hs-set{margin-top:2px}
.car-pp{opacity:.8}
.tg-dot{width:8px;height:8px;margin:0 10px 0 0;box-shadow:none}
/* index KPIs: borderless stat row */
.sec .hero,.panel .hero{gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.sec .kpi,.panel .hero .kpi{background:var(--surface)!important;border:0;border-left:1px solid var(--border);border-radius:0;box-shadow:none}
.sec .kpi:first-child,.panel .hero .kpi:first-child{border-left:0}
.hero .kpi{box-shadow:none}
.hero{gap:0;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.hero .kpi{border:0;border-left:1px solid var(--border);border-radius:0}
.hero .kpi:first-child{border-left:0}
.sec h3 .sm{font-weight:400;margin-left:6px}
/* find: search + chips in one block */
.tools{padding:0;margin:0 0 var(--sp-4)}
.chipbar{display:flex;align-items:flex-start;gap:var(--sp-3)}
.chipbar .lab{flex:none;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:9px;min-width:80px}
.chipbar .chips{margin-top:0}
.chips button{height:30px;border-radius:8px;font-size:13px}
.chips button.on{background:var(--text);border-color:var(--text);color:var(--bg)}
.chips button.on .sm{color:var(--bg)}
/* tables: lighter */
.tw{border-color:var(--border);border-radius:12px}
thead th{background:var(--surface);border-bottom:1px solid var(--border-strong);font-size:11px;letter-spacing:.07em}
tbody tr:hover{background:var(--hover)}
.opx{background:var(--surface-2);border-left:1px solid var(--border)!important}
th.opx{color:var(--muted)}
.bnw h4,.auw h4{font-size:var(--fs-18);font-weight:700;margin:var(--sp-6) 0 var(--sp-3)}
.bnw h4 .sm,.auw h4 .sm{font-size:var(--fs-14)}
details.cl{margin-top:var(--sp-5)}
summary.btn{border-radius:10px;background:var(--surface);border-color:var(--border-strong);font-weight:600}
.note{background:var(--surface-2);border:0;border-radius:10px}
/* methodology / about: collapsible blocks */
details.about{margin-top:var(--sp-3)}
details.about>summary{cursor:pointer;font-size:var(--fs-14);font-weight:600;color:var(--text-2);list-style:none}
details.about>summary::-webkit-details-marker{display:none}
details.about>summary::before{content:"ⓘ ";color:var(--muted)}
details.about[open]>summary{margin-bottom:var(--sp-3)}
details.about p{font-size:var(--fs-14);color:var(--text-2);max-width:var(--measure)}
/* card page */
.cprice .l{letter-spacing:.08em}
.cprice .v{font-size:44px;font-weight:750;letter-spacing:-.035em}
.panel.cp .kpi.cprice{background:none!important;border:0;padding:0}
.kv{border-radius:12px}
.cmeta{font-size:13px}
.cimg .ebp{margin-top:var(--sp-3)}
.cimg .ebp .ebtn{min-width:200px}
/* encyclopedia */
.trkp{border-top:1px solid var(--border)!important}
a.trki{background:var(--surface);border-color:var(--border);border-radius:12px}
a.trki:hover{background:var(--hover);border-color:var(--border-strong)}
.chl-i{background:var(--surface);border-radius:14px}
.chl-ph{background:var(--img-bg)}
.chl-ph img{padding:10px}
/* footer */
.site-f{margin-top:var(--sp-16);background:var(--band)}
/* mobile */
@media (max-width:1099px){.tile-row{grid-template-columns:repeat(2,minmax(0,1fr))}.qlinks{grid-template-columns:repeat(2,minmax(0,1fr))}.qlinks a:nth-child(3){border-left:0}.qlinks a:nth-child(n+3){border-top:1px solid var(--border)}}
@media (max-width:760px){
  :root{--header-h:96px}
  .site-nav a{font-size:12px;padding:8px 10px}
  .panel,section.tier,.toc,.sec{padding-top:var(--sp-8);margin-top:var(--sp-8)}
  .panel.cp{padding-top:var(--sp-2);margin-top:var(--sp-2)}
  .panel>h2,section.tier h2,.sec h2{font-size:24px}
  .sec-h{flex-wrap:wrap;align-items:flex-start;gap:var(--sp-2)}
  .sec-band{padding:var(--sp-8) 0 var(--sp-6)}
  .hero2{grid-template-columns:1fr;gap:var(--sp-5);padding:var(--sp-8) 0 var(--sp-4)}
  .hero2 h1{font-size:40px}
  .hero2 .tag-line{font-size:17px}
  .h2k .v{font-size:36px}
  .qlinks{margin-bottom:var(--sp-8)}
  .qlinks a{padding:var(--sp-3) var(--sp-4)}
  .qlinks span{font-size:12px}
  .tile-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:var(--sp-3);margin:0 calc(-1 * var(--sp-4));padding:0 var(--sp-4) var(--sp-2);scrollbar-width:none;scroll-padding-left:var(--sp-4)}
  .tile-row::-webkit-scrollbar{display:none}
  .tile{flex:0 0 66vw;scroll-snap-align:start;text-align:left}
  .tile-b .ebp{width:100%}
  .chipbar{display:block}
  .chipbar .lab{display:block;padding:0 0 var(--sp-2)}
  .car.tg{margin-left:0;margin-right:0}
  .hero{grid-template-columns:1fr 1fr}
  .hero .kpi:nth-child(3){border-left:0}
  .hero .kpi:nth-child(n+3){border-top:1px solid var(--border)}
  .cprice .v{font-size:36px}
}
/* 23b · refinements after first preview */
.sec-band+.sec{border-top:0;margin-top:0}
.tile-attr{white-space:normal;line-height:1.35}
.tile-x .opp-c{display:none}
.tile-x .opp .opxi::after{content:"\00a0›";color:var(--accent-text);font-weight:700}
td.im .th,table.lst td.im .ph{width:64px;height:85px}
td.im{width:80px}
.chk-a{color:var(--muted);cursor:help}
td.opx .opxi{font-size:var(--fs-14);font-weight:600}
td.lk .rep{opacity:1}
.cimg>.ebp,.cimg>.ebs{max-width:360px;margin-left:auto;margin-right:auto}
.cimg>.ebp{flex-direction:column;align-items:stretch}
.cimg>.ebp .ebtn{width:100%;height:42px;font-size:var(--fs-16)}
.cimg>.ebs{align-items:stretch}.cimg>.ebs .ebtn{width:100%}
@media (max-width:760px){
  a.h2k{grid-template-columns:auto 1fr;align-items:baseline;column-gap:12px;padding:var(--sp-4)}
  .h2k .l,.h2k .go{grid-column:1/-1}
  .h2k .v{font-size:32px}
  .h2k .go{margin-top:2px}
  .hero2 .upd{font-size:12px}
}
/* bug fix 2026-10-02: the home tables hide their Character column; the /characters/ list uses the same data-l and lost its names */
table.stk td[data-l="Character"]{display:table-cell}
@media (max-width:760px){table.stk td[data-l="Character"]{display:block}}
.panel.slim{border-top:0;padding-top:var(--sp-2);margin-top:var(--sp-4)}

/* ===== 24 · v2 mobile shortening (2026-10-02 16:45): folded listing tables, capped slide height ===== */
details.tbl{margin:var(--sp-3) 0 0;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
details.tbl>summary{list-style:none}details.tbl>summary::-webkit-details-marker{display:none}
.tbs{display:flex;align-items:center;gap:var(--sp-3);min-height:52px;padding:var(--sp-2) var(--sp-4);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent}
.tbs:hover{background:var(--hover);border-radius:12px}
.tbs-t{font-size:var(--fs-16);font-weight:700}
.tbs-n{font-size:var(--fs-14);color:var(--muted)}
.tbs-o,.tbs-c{margin-left:auto;font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text)}
.tbs-o::after{content:" ▾"}.tbs-c::after{content:" ▴"}
.tbs-c{display:none}details[open]>.tbs .tbs-c{display:inline}details[open]>.tbs .tbs-o{display:none}
details.tbl[open]>.tbs{border-bottom:1px solid var(--border);border-radius:12px 12px 0 0}
details.tbl>.tw{border:0;border-radius:0 0 12px 12px}
details.tbl>.note{margin:var(--sp-3) var(--sp-4) var(--sp-4)}
details.tbl.hid{display:none}
section.tier details.cl{margin-top:var(--sp-3)}
@media (max-width:760px){
  details.tbl>.tw{padding:var(--sp-3) var(--sp-3) var(--sp-1)}
  .tbs{min-height:48px;padding:var(--sp-2) var(--sp-3)}
  .tbs-n{font-size:13px}
  /* slideshow: shorter slides (square photo capped, tighter text) */
  .car.tg .t-hero,.car.tg .ph.t-hero{aspect-ratio:1/1;max-height:min(300px,62vw);width:auto;margin:0 auto}
  .car.tg .t-hero img{object-fit:contain}
  .car.tg .hs-media .plate{aspect-ratio:auto;height:min(300px,62vw);max-width:min(240px,50vw);margin:0 auto}
  .car.tg .pl-wm{font-size:96px}.car.tg .pl-name{font-size:30px}.car.tg .pl-name.pl-long{font-size:24px}
  .car.tg .hs-eb,.car.tg .hs-ob{gap:var(--sp-2);padding:var(--sp-3)}
  .tg .hs-name{font-size:21px}
  .hs-var{font-size:var(--fs-14)!important}
  .hs-set{display:none}
  .hs-body>.ebp{margin-top:var(--sp-2)}
  .ebtn-lg{height:40px;font-size:var(--fs-14)}
  .car.tg+.car.tg{margin-top:var(--sp-5)}
  .car.tg{padding-top:var(--sp-4)}
  .hs-price{margin:var(--sp-2) 0}
  .car-arr{top:min(150px,31vw)}
  /* other mobile trims */
  .sec-band{padding:var(--sp-6) 0 var(--sp-5)}
  .panel,section.tier,.toc,.sec{padding-top:var(--sp-6);margin-top:var(--sp-6)}
  #index svg{max-height:180px}
  .fine{font-size:11.5px}
}

/* ===== 25 · index at the top (2026-10-03): OPChase 100 section right below the hero; stats 2x2 + chart side by side ===== */
.hero2{grid-template-columns:1fr;padding-bottom:var(--sp-4)}
.sec.idx-top{margin-top:var(--sp-4);padding-top:var(--sp-8)}
.idx-g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--sp-8);align-items:start}
.idx-k.hero{grid-template-columns:1fr 1fr;margin:0}
.idx-k .kpi:nth-child(3){border-left:0}
.idx-k .kpi:nth-child(n+3){border-top:1px solid var(--border)}
.idx-c h3{margin:0 0 var(--sp-3);font-size:var(--fs-16)}
.idx-c h3 .sm{display:block;margin:2px 0 0!important;font-size:12.5px}
.idx-c svg{max-width:100%}
.idx-top+.qlinks{margin-top:var(--sp-8)}
@media (max-width:900px){.idx-g{grid-template-columns:1fr;gap:var(--sp-5)}}
@media (max-width:760px){.sec.idx-top{margin-top:var(--sp-2);padding-top:var(--sp-6)}.idx-top+.qlinks{margin-top:var(--sp-6)}}
@media (max-width:760px){.idx-k .kpi .v.v2{font-size:20px;white-space:nowrap}}

/* 26 · Browse by tier = paged tile grid (2026-10-03): 3 tiles per page on desktop, 2 on tablet, 1 on mobile (swipe).
   Vertical tiles (photo on top, then name+ID, variant, set, eBay buttons, credit; OPChase panel separate below). No peeks, no fades, no autoplay. */
.car.tgp{overflow:visible}
.car.tgp .car-vp{margin:var(--sp-4) 0 0}
.car.tgp .car-vp::before,.car.tgp .car-vp::after{display:none}
.car.tgp .car-track{display:flex;gap:20px;padding:2px 0 var(--sp-2);scroll-snap-type:x mandatory;scroll-padding:0;overflow-x:auto;overflow-y:hidden}
.car.tgp .tgi{flex:0 0 calc((100% - 40px) / 3);min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;opacity:1;transform:none;text-align:left}
.car.tgp .car-ctl{position:static;align-items:center;gap:var(--sp-2);padding-top:0}
.car.tgp .car-arr{position:static;width:38px;height:38px;transform:none;box-shadow:none}
.car.tgp .car-arr:hover{transform:none}
.car.tgp .car-arr svg{width:18px;height:18px}
.car.tgp .car-arr[hidden]{display:none}
.car.tgp .car-count{min-width:72px;opacity:1;margin-right:var(--sp-1)}
.car.tgp .tile-eb{background:var(--surface)}
.car.tgp .tile-n{font-size:17px;margin:4px 0 2px}
.car.tgp .tile-n a{color:inherit;text-decoration:none}
.car.tgp .tile-n a:hover{text-decoration:underline}
.car.tgp .tile-s{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.car.tgp .tile-none{margin:var(--sp-3) 0 0;font-size:13px;font-weight:600;color:var(--text-2)}
.car.tgp .tile-b>.ebs,.car.tgp .tile-b>.ebtn-sr,.car.tgp .tile-b>a.ebtn{margin-top:var(--sp-2)}
.car.tgp .tile-b .ebp{margin-top:auto}
.car.tgp .tile-b .tile-none+.ebp{margin-top:var(--sp-2)}
.car.tgp .tile-x{margin-top:var(--sp-2)}
.car.tgp .tile-x .opp{display:flex;align-items:center;justify-content:space-between}
.car.tgp .tile-well{aspect-ratio:1/1;background:var(--img-bg);display:flex;align-items:center;justify-content:center;padding:14px}
.car.tgp .tile-well .plate{height:100%;width:auto;max-width:100%;aspect-ratio:3/4;margin:0}
.car.tgp .tile-well .pl-wm{font-size:72px}.car.tgp .tile-well .pl-name{font-size:22px}.car.tgp .tile-well .pl-name.pl-long{font-size:18px}
.car.tgp .tile-x .opp-c{display:inline;font-size:12px;white-space:nowrap}
.car.tgp .tile-x .opp .opxi::after{content:none}
@media (max-width:1099px){.car.tgp .tgi{flex-basis:calc((100% - 20px) / 2)}}
@media (max-width:760px){
  .car.tgp .car-track{gap:12px}
  .car.tgp .tgi{flex:0 0 100%}
  .car.tgp .car-h{flex-direction:row;align-items:flex-start}
  .car.tgp .car-ctl{position:static}
  .car.tgp .car-h h2{padding-right:0}
  .car.tgp .car-arr{width:34px;height:34px}
  .car.tgp .car-count{min-width:0}
  .car.tgp .t-tile,.car.tgp .ph.t-tile,.car.tgp .tile-well{aspect-ratio:5/4}
}
@media (max-width:760px){.car.tgp .car-track{align-items:flex-start}.car.tgp .tile-b .ebp{margin-top:var(--sp-3)}}

/* 27 · tier header plaque (2026-10-03): centered, tier-coloured frame; counter + arrows on their own row beneath */
.car.tg-grail{--tt:#8f6a07}.car.tg-premium{--tt:#4f5b6d}.car.tg-core{--tt:#87501c}
:root[data-theme="dark"] .car.tg-grail{--tt:#f0c24b}:root[data-theme="dark"] .car.tg-premium{--tt:#c7d0dc}:root[data-theme="dark"] .car.tg-core{--tt:#e0a46a}
.car.tgp .car-h.tgh{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center}
.tgh-plq{position:relative;min-width:min(420px,100%);padding:18px 40px 16px;border:1.5px solid var(--tc);border-radius:16px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--tc) 9%,var(--surface)) 0,var(--surface) 100%);
  box-shadow:0 1px 2px rgba(15,15,15,.04),0 6px 20px color-mix(in srgb,var(--tc) 14%,transparent)}
.tgh-plq::before,.tgh-plq::after{content:"";position:absolute;inset:4px;border:1px solid color-mix(in srgb,var(--tc) 35%,transparent);border-radius:12px;pointer-events:none}
.tgh-plq::after{display:none}
.car.tgp .tgh h2{margin:0;font-size:30px;font-weight:750;letter-spacing:-.02em;line-height:1.15;color:var(--tt);display:inline-flex;align-items:center;justify-content:center}
.car.tgp .tgh .tg-dot{width:10px;height:10px;margin:0 12px 0 0;background:var(--tc);box-shadow:0 0 0 4px color-mix(in srgb,var(--tc) 22%,transparent)}
.tgh-rng{margin:4px 0 0;font-size:17px;font-weight:650;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.car.tgp .tgh p.sm{margin:6px 0 0;font-size:13px;color:var(--muted)}
.car.tgp .tgh p.sm a{color:var(--tt);font-weight:600}
.car.tgp .tgh .car-ctl{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);position:static;padding:0}
.car.tgp .tgh .car-count{min-width:84px;text-align:center;margin:0;font-size:13px;font-weight:600;color:var(--text-2)}
.car.tgp .tgh .car-arr{width:40px;height:40px}
.car.tgp .tgh .car-arr:hover{border-color:var(--tc)}
.car.tg+.car.tg{margin-top:var(--sp-10, 56px)}
@media (max-width:760px){
  .tgh-plq{min-width:0;width:100%;padding:16px 18px 14px}
  .car.tgp .tgh h2{font-size:26px;padding-right:0}
  .tgh-rng{font-size:16px}
  .car.tgp .car-h.tgh{flex-direction:column;align-items:center}
  .car.tgp .tgh .car-arr{width:40px;height:40px}
  .car.tg+.car.tg{margin-top:var(--sp-8)}
}

/* 28 · whole tier block framed (2026-10-03): one tier-coloured frame around header + pager + cards; header plaque loses its own box */
.car.tg.tgp{border:1.5px solid var(--tc);border-radius:16px;padding:28px 28px 24px;margin:var(--sp-8) 0 0;
  background:linear-gradient(180deg,color-mix(in srgb,var(--tc) 8%,var(--surface)) 0,var(--surface) 220px);box-shadow:none;overflow:hidden}
.car.tg.tgp+.car.tg.tgp{margin-top:var(--sp-10);border-top:1.5px solid var(--tc)}
.car.tgp .tgh-plq{border:0;background:none;box-shadow:none;padding:0;min-width:0}
.car.tgp .tgh-plq::before,.car.tgp .tgh-plq::after{display:none}
.car.tgp .car-h.tgh{gap:var(--sp-4)}
.car.tgp .car-vp{margin-top:var(--sp-5)}
.car.tgp .tgh .car-arr{background:var(--surface)}
@media (max-width:1099px){.car.tg.tgp{padding:24px 20px 20px}}
@media (max-width:760px){
  .car.tg.tgp{padding:20px 14px 16px;margin:var(--sp-6) 0 0;border-left:1.5px solid var(--tc);border-right:1.5px solid var(--tc);border-radius:14px}
  .car.tg.tgp+.car.tg.tgp{margin-top:var(--sp-8)}
  .car.tgp .car-vp{margin-top:var(--sp-4)}
}
@media (max-width:760px){.car.tgp .car-track{transition:height .2s ease}}

/* 29 · tier lists merged into the tier frames (2026-10-03): Buy Now · Auctions · All cards toggles under the carousel */
.tl{margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid color-mix(in srgb,var(--tc) 30%,var(--border))}
.tl-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:6px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);max-width:760px;margin:0 auto}
.tl-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:58px;padding:8px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;font:inherit;text-align:center;transition:background .15s,border-color .15s,box-shadow .15s}
.tl-tab b{font-size:17px;font-weight:700;letter-spacing:-.01em}
.tl-tab span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tl-tab::after{content:"Show ▾";font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tt,var(--accent-text));margin-top:2px}
.tl-tab:hover{background:var(--surface)}
.tl-tab[aria-expanded="true"]{background:var(--surface);border-color:var(--tc);box-shadow:0 1px 2px rgba(15,15,15,.06),0 4px 14px color-mix(in srgb,var(--tc) 16%,transparent)}
.tl-tab[aria-expanded="true"]::after{content:"Hide ▴"}
.tl-tab:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.tl-tab.hid{display:none}
.tl-vis{text-align:center;margin:var(--sp-2) 0 0;min-height:0}
.tl-vis:has(.vis:empty){display:none}
.tlp{margin-top:var(--sp-5)}
.tlp.hid{display:none}
.lgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.lgrid:not(.all):not(.lflt):not(.car-track)>.lt:nth-child(n+7){display:none}
.lt .tile-n{font-size:16px;margin-top:4px}
.lt-ttl{font-size:12px;color:var(--muted);line-height:1.35;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lt .tile-b .ebp{margin-top:auto;padding-top:var(--sp-3)}
.lt-f{font-size:12px;color:var(--text-2);margin-top:6px}
.lt-s{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px;font-size:12px;min-height:20px}
.lt-s .rep{font-size:11.5px}
.tl-more{display:block;margin:var(--sp-5) auto 0;min-width:240px;height:44px;padding:0 22px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);font:inherit;font-size:15px;font-weight:650;cursor:pointer}
.tl-more:hover{border-color:var(--tc);background:var(--surface-2)}
.lgrid.lflt+.tl-more{display:none}
.tl-fine{text-align:center;margin:var(--sp-5) 0 0;font-size:12px;color:var(--muted)}
.tlp .tw{margin:0}
@media (max-width:1099px){.lgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){
  .tl{margin-top:var(--sp-5);padding-top:var(--sp-5)}
  .tl-tabs{gap:4px;padding:4px}
  .tl-tab{min-height:64px;padding:8px 4px}
  .tl-tab b{font-size:15px}
  .tl-tab span{font-size:11px;white-space:normal;line-height:1.25}
  .lgrid{gap:10px}
  .lt .tile-attr{padding:6px 8px 0;font-size:10.5px}
  .lt .tile-b{padding:6px 8px 10px}
  .lt .tile-n{font-size:14px}
  .lt .tile-v{font-size:12px;white-space:normal}
  .lt-ttl{font-size:11px}
  .lt .ebp .ebtn{height:auto;min-height:36px;white-space:normal;line-height:1.2;padding:6px 6px;font-size:13px}
  .lt-f,.lt-s{font-size:11px}
  .lt .t-tile img{padding:8px}
  .lt .tile-x .opp{padding:8px 8px;flex-wrap:wrap;gap:2px}
  .lt .tile-x .opp .opxi{font-size:12px}
  .lt .tile-x .opp-c{display:none}
  .tl-more{width:100%;min-width:0}
}
@media (max-width:760px){
  .car.tgp .lt .tile-x .opp{display:block;padding:8px}
  .car.tgp .lt .tile-x .opp-c{display:none}
  .car.tgp .lt .tile-x .opp-l,.car.tgp .lt .tile-x .opp-t{display:block;min-width:0}
  .car.tgp .lt .tile-x .opxi{white-space:normal;font-size:12px;line-height:1.3}
  .car.tgp .lt .tile-x .opp .opxi::after{content:"\00a0›";color:var(--accent-text);font-weight:700}
}
.lgrid>.lt{height:100%;align-self:stretch}
.lt>.tile-eb{flex:1 1 auto}
.lt .tile-x .opp-l>:not(.opp-t){display:none}   /* listing check status shows once, in the eBay block (.lt-s) */
.lt .ebp .ebtn{display:block;text-align:center}
@media (max-width:760px){.lt .ebp .ebtn{padding:8px 6px}}

/* §30 (2026-10-04) index update-schedule line, printing-history block on /card/ pages without an OPChase price */
.idx-sched{margin-top:2px;font-size:.84rem}
.idx-sched2{margin:0 0 var(--sp-3);font-size:.9rem;color:var(--text-2,inherit)}
.hist>p{max-width:78ch;line-height:1.6}
.hist .tw{margin-top:var(--sp-3)}
table.hist-t{font-size:.86rem}
table.hist-t td,table.hist-t th{white-space:nowrap;vertical-align:middle}
table.hist-t td[data-l="Product"]{white-space:normal;min-width:180px}
table.hist-t td[data-l="eBay"] .ebtn{margin:0}
@media (max-width:760px){table.hist-t{font-size:.8rem}table.hist-t td[data-l="Product"]{min-width:150px}}

/* §31 (2026-10-04) /pro/ page: feature grid + planned pricing (OPChase Pro, not launched) */
.pro-page h1 .pro-tag{font-size:var(--fs-12);vertical-align:middle}
.pro-fg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3);margin-top:var(--sp-3)}
.pro-f{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4);background:var(--surface)}
.pro-f h3{margin:0 0 4px;font-size:var(--fs-16)}
.pro-f p{margin:0}
.pro-plans{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin:var(--sp-3) 0}
.pro-plan{flex:1 1 180px;border:1px solid var(--accent-border);border-radius:var(--r-md);padding:var(--sp-4);background:var(--accent-bg)}
.pro-plan .l{font-size:var(--fs-12);text-transform:uppercase;letter-spacing:.04em;color:var(--text-2,inherit)}
.pro-plan .v{font-size:1.6rem;font-weight:700}
.pro-plan .v .sm{font-size:var(--fs-14,.9rem);font-weight:400;margin-left:2px}
@media (max-width:760px){.pro-fg{grid-template-columns:1fr}}
/* §32 (2026-10-04) free OPChase Index price alerts: /alerts/ form, card-page CTA, index-table link, Pro "free" note */
.al-page .tag-line{max-width:var(--measure)}
.al-f{max-width:560px}
.al-f fieldset{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:var(--sp-2)}
.al-f fieldset[disabled]{opacity:.62}
.al-lb{font-weight:600;font-size:var(--fs-14);margin-top:var(--sp-2)}
.al-f select,.al-f input[type=text],.al-f input[type=email]{font:inherit;font-size:16px;width:100%;max-width:100%;box-sizing:border-box;padding:9px 11px;border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text)}
.al-f select:focus,.al-f input:focus{outline:2px solid var(--focus);outline-offset:1px}
.al-thr{display:flex;align-items:center;gap:6px}.al-thr span{font-weight:600;color:var(--muted)}
.al-dir{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-4);font-size:var(--fs-14)}
.al-dir label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.al-cur{margin:0}
.al-go{align-self:flex-start;margin-top:var(--sp-2)}
.al-f fieldset[disabled] .al-go{cursor:not-allowed}
.al-msg{margin:0;font-size:var(--fs-14);min-height:1.2em}.al-msg.bad{color:var(--dn)}.al-msg.ok{color:var(--ok)}
.al-soon-n{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--text);border-radius:var(--r-md);padding:10px 12px;margin:0 0 var(--sp-3);font-size:var(--fs-14)}
.hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.al-cta{margin:var(--sp-3) 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.al-cta .sm{color:var(--muted)}
.al-l{font-size:var(--fs-12);white-space:nowrap}
.pro-tag.al-live{border-color:var(--ok-border);color:var(--ok);background:var(--ok-bg)}
.pro-free{margin:var(--sp-3) 0 0;font-size:var(--fs-14)}
/* §33 (2026-10-04 PM) Card Database search results (home "Find a card" + /sets/ "Search all printings"); text only */
.dbs{margin:var(--sp-3) 0 0;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-3) var(--sp-4)}
.dbs[hidden]{display:none}
.dbs-h{margin:0 0 var(--sp-2);font-size:var(--fs-14);color:var(--text-2)}
.dbs-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:0}
.dbs-r{display:flex;align-items:center;gap:var(--sp-2) var(--sp-3);padding:7px 0;border-top:1px solid var(--border);min-width:0}
.dbs-r:first-child{border-top:0}
.dbs-a{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;color:var(--text);text-decoration:none}
.dbs-a:hover .dbs-n{text-decoration:underline}
.dbs-id{font-variant-numeric:tabular-nums;white-space:nowrap}
.dbs-n{font-weight:500;overflow-wrap:anywhere}
.dbs-m{font-size:var(--fs-12);color:var(--muted);overflow-wrap:anywhere}
.dbs-ix{flex:0 0 auto;font-size:var(--fs-12);font-weight:600;white-space:nowrap;border:1px solid var(--accent-border);color:var(--accent-text);background:var(--accent-bg);border-radius:var(--r-pill);padding:2px 8px;text-decoration:none}
a.dbs-ix:hover{background:var(--accent-bg-2)}
.dbs-f{margin:var(--sp-3) 0 0}
@media (min-width:900px){.dbs-l{grid-template-columns:1fr 1fr;column-gap:var(--sp-6)}.dbs-r:nth-child(2){border-top:0}}
@media (max-width:520px){.dbs{padding:var(--sp-2) var(--sp-3)}.dbs-r{flex-wrap:wrap;gap:4px 8px}.dbs-ix{margin-left:0}}
/* §34 (2026-10-04 PM) merged "Find a card" (Card Database stats + unified search + chips) under the index; tier controls above the tier frames */
.find .db-k{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:var(--sp-4)}
.find .db-k a.kpi{color:var(--text);text-decoration:none;transition:background .15s var(--ease)}
.find .db-k a.kpi:hover{background:var(--hover)}
.find .tools #q{font-size:var(--fs-18);min-height:50px}
.find .chipbar{margin-top:var(--sp-4)}
.find-links{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin:var(--sp-4) 0 0}
#chipnote a{white-space:nowrap}
.qlinks.ql3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tier-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-3);margin:0 0 var(--sp-3)}
.tier-ctrl select{max-width:100%}
#tiernote:empty{display:none}
@media (max-width:760px){.find .db-k{grid-template-columns:repeat(2,minmax(0,1fr))}.qlinks.ql3{grid-template-columns:1fr}.qlinks.ql3 a{border-left:0;border-top:1px solid var(--border)}.qlinks.ql3 a:first-child{border-top:0}
 .tier-ctrl .flt{flex:1 1 100%}.tier-ctrl select{flex:1 1 100%}}
/* §35 (2026-10-04 PM) index panel labels: small info tooltip, chart "different series" tag + Level-start marker */
.kinfo{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--border-strong);color:var(--muted);font-size:10px;font-weight:700;font-style:italic;line-height:1;cursor:help;vertical-align:1px;margin-left:3px;text-transform:none;letter-spacing:0}
.kinfo:focus{outline:2px solid var(--focus);outline-offset:1px}
.idx-c h3 .pro-tag{margin-left:6px;vertical-align:2px}
.idx-c h3 .sm{display:block;margin-top:2px}
svg .mk line{stroke:var(--muted);stroke-dasharray:3 3;stroke-width:1}
svg .mk text{fill:var(--muted);font-size:10px}
/* §36 Level chart: dashed backcast, end label */
svg .ln.bc{stroke-dasharray:5 4;opacity:.55}
svg .bct,svg .endt{font-size:10px;fill:var(--muted)}
svg .endt{font-weight:700;fill:var(--text);font-size:12px}
svg circle.end{fill:var(--accent,#a8740d)}
/* §37 tier carousel autoplay pause/play (2026-10-04) */
.car.tgp .tgh .car-pp{width:32px;height:32px;opacity:.85}
.car.tgp .car-pp svg{width:13px;height:13px;fill:currentColor;stroke:none}
.car.tgp .car-pp[hidden]{display:none}
/* §38 listing tab carousels inside tier frames (2026-10-04): 3 / 2 / 1 per page, equal-height tiles */
.lcar-h{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);margin:0 0 var(--sp-3)}
.lcar .car-arr{position:static;width:36px;height:36px;transform:none;box-shadow:none}
.lcar .car-arr:hover{transform:none;border-color:var(--tc)}
.lcar .car-arr svg{width:17px;height:17px}
.lcar .car-arr[hidden]{display:none}
.lcar .car-pp{width:30px;height:30px;opacity:.85}
.lcar .car-pp svg{width:12px;height:12px;fill:currentColor;stroke:none}
.lcar .car-count{font-size:13px;color:var(--muted);min-width:72px;text-align:center;font-variant-numeric:tabular-nums}
.lcar .car-track.lgrid{display:flex;gap:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 0 var(--sp-2);align-items:stretch}
.lcar .car-track.lgrid::-webkit-scrollbar{display:none}
.lcar .lgrid>.lt{flex:0 0 calc((100% - 40px) / 3);min-width:0;scroll-snap-align:start;height:auto}
.lcar .lgrid>.lt:nth-child(n+7){display:flex}
.lcar .lgrid>.lt[style*="none"]{display:none!important}
@media (max-width:1099px){.lcar .lgrid>.lt{flex-basis:calc((100% - 20px) / 2)}}
@media (max-width:760px){.lcar .car-track.lgrid{gap:10px}.lcar .lgrid>.lt{flex-basis:100%}.lcar .car-track{transition:height .2s ease}}
/* §39 All cards carousel (default tab) + Table view link */
.tvw{margin-top:var(--sp-3);text-align:center}
.tvw>summary{display:inline-block;cursor:pointer;font-size:13px;color:var(--accent-text);list-style:none;padding:4px 8px}
.tvw>summary::-webkit-details-marker{display:none}
.tvw[open]>summary{margin-bottom:var(--sp-3)}
.tvw>.tw{text-align:left}
.lcar .lgrid>.tga .tile-n{font-size:16px;margin-top:4px}
/* §40 merged tier frame (2026-10-04 22:29): segmented tabs on top + ONE two-row carousel (2x3 desktop, 2x2 tablet, 1x2 mobile) */
.tgm .tl{margin-top:var(--sp-4);padding-top:0;border-top:0}
.tgm .tl-tabs{display:flex;max-width:520px;gap:4px;padding:4px;border-radius:12px}
.tgm .tl-tab{flex:1 1 0;flex-direction:row;gap:6px;min-height:0;padding:7px 10px;border-radius:9px}
.tgm .tl-tab::after{display:none}
.tgm .tl-tab b{font-size:14.5px}
.tgm .tl-tab span{font-size:12px}
.tgm .tlp{margin-top:var(--sp-4)}
.tgm .lcar{container-type:inline-size}
/* §47 desktop 2×2 (4 cards/page) 2026-10-06: was 2×3=6; tablet stays 2×2, mobile 1×1 */
.tgm .lcar .car-track.lgrid{--rows:2;display:grid;grid-template-columns:none;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:calc((100cqw - 20px) / 2);column-gap:20px;row-gap:16px}
.tgm .lcar .lgrid>.lt{flex:none;width:auto}
@media (max-width:1099px){.tgm .lcar .car-track.lgrid{grid-template-columns:none;grid-auto-columns:calc((100cqw - 20px) / 2)}}
@media (max-width:760px){.tgm .lcar .car-track.lgrid{--rows:1;grid-template-rows:auto;grid-template-columns:none;grid-auto-columns:100%;column-gap:10px;row-gap:0}
  .tgm .tl-tab{flex-direction:column;gap:0;padding:6px 4px}.tgm .tl-tab b{font-size:14px}.tgm .tl-tab span{font-size:11px}}
.tgm .tl-tab b{white-space:nowrap}
.tgm .tl-tab span{display:inline-block;min-width:22px;padding:1px 7px;border-radius:999px;background:var(--surface-3);color:var(--text-2);font-weight:650;font-variant-numeric:tabular-nums}
@media (max-width:760px){.tgm .tl-tab{flex-direction:row;gap:5px;padding:8px 4px}.tgm .tl-tab span{padding:1px 5px}}
/* §41 tier header on one line: "● Grail  $5,000+" (2026-10-04 23:05) */
.tgh-1 h2{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:10px;row-gap:2px;margin:0}
.tgh-1 h2 .tgh-rng{font-size:.55em;font-weight:600;color:var(--muted);letter-spacing:0;margin:0}
.tgh-1 h2 .tg-dot{align-self:center}
/* §42+§50 2026-10-06: tier carousel tiles match Featured listings visual language
   (vertical photo-forward card: square contain well, credit under photo, name/variant, stacked CTAs,
   separate Index strip). Keep desktop 2×2 / mobile 1 from §47. */
.tgm .tile-v{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgm .tile-v .tile-s{display:inline;font-size:inherit;color:inherit;white-space:nowrap}
.tgm .tile-n,.tgm .tile-n .cn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;min-width:0}
.tgm .car-h.tgh{padding-top:var(--sp-3);padding-bottom:0;margin:0}
.tgm .tl{margin-top:var(--sp-3)}
.tgm .tlp{margin-top:var(--sp-3)}
.tgm .lcar-h{margin-bottom:var(--sp-2)}
@media (min-width:1100px){
  .tgm .tl{position:relative}
  .tgm .tl-tabs{margin:0;max-width:480px}
  .tgm .tlp{margin-top:var(--sp-3)}
  .tgm .lcar-h{position:absolute;top:0;right:0;height:42px;margin:0}
}
/* Featured-matching card chrome for all .tgm .lt (Grail/Premium/Core/JP) */
.tgm .lt{
  display:flex;flex-direction:column;gap:var(--sp-2);min-width:0;height:100%;
  border:0;border-radius:0;background:transparent;overflow:visible;padding:0;align-self:stretch}
.tgm .lt>.tile-eb{
  display:flex;flex-direction:column;flex:1 1 auto;min-height:0;height:auto;
  gap:0;padding:0;border:1px solid var(--border);border-radius:14px;
  background:var(--surface);overflow:hidden;
  box-shadow:none;transition:border-color .15s,box-shadow .15s}
.tgm .lt>.tile-eb:hover{border-color:var(--border-strong);box-shadow:0 10px 28px rgba(15,15,15,.08)}
.tgm .lt .t-tile,.tgm .lt .tile-well,.tgm .lt .ph.t-tile{
  order:0;flex:none!important;display:block!important;
  width:100%!important;max-width:100%;height:auto!important;min-height:0;
  aspect-ratio:1/1;margin:0;padding:0;box-sizing:border-box;
  border:0;border-radius:0;background:var(--img-bg)!important;overflow:hidden}
.tgm .lt .t-tile img{
  display:block!important;width:100%!important;height:100%!important;
  max-width:100%;max-height:100%;object-fit:contain!important;object-position:center;
  padding:14px;margin:0;opacity:1!important;visibility:visible!important;background:transparent}
.tgm .lt .tile-well{display:flex!important;align-items:center;justify-content:center;padding:14px}
.tgm .lt .tile-well .plate{height:100%;width:auto;max-width:100%;max-height:100%;min-height:0;aspect-ratio:3/4;margin:0}
/* credit sits under photo (Featured order) — also covers attr still inside .tile-b on older markup */
.tgm .lt>.tile-eb>.tile-attr,.tgm .lt>.tile-eb>.hs-attr.tile-attr,
.tgm .lt .tile-b>.tile-attr,.tgm .lt .tile-b>.hs-attr.tile-attr{
  margin:0;padding:6px 14px 0;font-size:11px;font-weight:450;line-height:1.35;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.tgm .lt .tile-attr a{color:var(--muted)!important;text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:2px;font-weight:500}
.tgm .lt .tile-attr a:hover{color:var(--text-2)!important}
.tgm .lt .tile-b{
  order:0;flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px;
  padding:6px 14px 14px;justify-content:flex-start}
.tgm .lt .tile-n,.tgm .lt .tile-n.cn,.tgm .lt a.tile-n,.tgm .lt .tile-n a,.tgm .lt .tile-n a.cn,.tgm .lt a.cn.tile-n{
  display:block;margin:0;padding:0;font-size:var(--fs-16)!important;font-weight:700!important;
  letter-spacing:-.01em;line-height:1.3;color:var(--text)!important;text-decoration:none!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgm .lt .tile-n span,.tgm .lt .tile-n a span,.tgm .lt .tile-n .cn span{color:var(--text-2)!important;font-weight:500!important}
.tgm .lt .tile-n .jp-pill{display:inline-flex;vertical-align:middle;margin-left:6px;transform:translateY(-1px)}
.tgm .lt .tile-v{margin:0;font-size:13px;font-weight:500;line-height:1.35;color:var(--muted);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgm .lt .tile-v .tile-s{color:var(--muted);font-weight:500}
.tgm .lt .lt-ttl,.tgm .lt .lt-f,.tgm .lt .lt-s{display:none!important}
.tgm .lt .tile-none{margin:var(--sp-2) 0 0;font-size:13px;font-weight:600;color:var(--text-2)}
/* CTAs: Featured stack — margin-top auto pins to bottom of body when space remains */
.tgm .lt .ebp,.tgm .lt .ebs,
.tgm .lt .tile-b .ebp,.tgm.tgp .lt .tile-b .ebp,.car.tgp.tgm .tile-b .ebp{
  display:flex;flex-direction:column;align-items:stretch;gap:6px;
  margin-top:auto;padding-top:var(--sp-3);padding-left:0;padding-right:0;padding-bottom:0;width:100%}
.tgm .lt .ebp-i{flex:none;width:100%;min-width:0}
.tgm .lt .ebtn{
  height:36px;min-height:36px;width:100%;padding:0 14px;border-radius:10px;
  font-size:var(--fs-14);font-weight:650;letter-spacing:0;line-height:36px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;text-align:center}
.tgm .lt .ebtn-bn{background:var(--text);border-color:var(--text);color:var(--bg)!important;box-shadow:none}
.tgm .lt .ebtn-bn:hover{background:var(--text-2);border-color:var(--text-2)}
.tgm .lt a.ebtn:not(.ebtn-bn){background:var(--surface);border:1px solid var(--border-strong);color:var(--text)!important;font-weight:600}
.tgm .lt a.ebtn:not(.ebtn-bn):hover{background:var(--surface-2);border-color:var(--muted)}
.tgm .lt .ebp-also,.tgm .lt .ebp-n{display:none}
/* Index strip: Featured separate panel under eBay block */
.tgm .lt>.tile-x{margin:0;padding:0;border:0;background:transparent}
.tgm .lt>.tile-x .opp{
  display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);
  border:1px solid var(--border);border-radius:12px;background:var(--surface-2);
  padding:9px 14px;min-height:0}
.tgm .lt>.tile-x .opp:hover{background:var(--surface-3);border-color:var(--border-strong)}
.tgm .lt>.tile-x .opp-t{display:flex;flex-direction:column;gap:1px;min-width:0}
.tgm .lt>.tile-x .opxi{font-size:13px;font-weight:650;letter-spacing:-.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgm .lt>.tile-x .opp-c{flex:none;font-size:11.5px;font-weight:700;letter-spacing:.04em;color:var(--accent-text);white-space:nowrap}
.tgm .lt>.tile-x .opxd{display:none}
.tgm .lt>.tile-x .opp-out .opxi{font-weight:600;color:var(--text-2)}
@media (min-width:761px){
  .tgm .lcar .car-track.lgrid{row-gap:16px;column-gap:20px;grid-auto-columns:calc((100cqw - 20px) / 2)}
}
@media (min-width:761px) and (max-width:1099px){
  .tgm .lcar .car-track.lgrid{column-gap:14px;grid-auto-columns:calc((100cqw - 14px) / 2)}
}
@media (max-width:760px){
  /* mobile 1/page — same Featured vertical card; force photo visible */
  .tgm .lt{align-self:start;height:auto}
  .tgm .lt .t-tile,.tgm .lt .tile-well,.tgm .lt .ph.t-tile{aspect-ratio:1/1!important}
  .tgm .lt .t-tile img{padding:12px}
  .tgm .lt .tile-attr,.tgm .lt .hs-attr.tile-attr{padding:6px 12px 0;font-size:11px;white-space:normal}
  .tgm .lt .tile-b{padding:6px 12px 12px}
  .tgm .lt .tile-n,.tgm .lt .tile-n.cn,.tgm .lt a.tile-n,.tgm .lt .tile-n a,.tgm .lt a.cn.tile-n{font-size:var(--fs-16)!important}
  .tgm .lt .ebtn{height:36px;min-height:36px;line-height:36px;font-size:var(--fs-14);border-radius:10px}
  .tgm .lt>.tile-x .opp{padding:8px 12px;flex-wrap:wrap}
  .tgm .lt>.tile-x .opp-c{display:inline}
  /* beat older .car.tgp mobile 5/4 aspect on these tiles */
  .tgm.tgp .lt .t-tile,.tgm.tgp .lt .ph.t-tile,.tgm.tgp .lt .tile-well,
  .car.tgp.tgm .lt .t-tile,.car.tgp.tgm .lt .ph.t-tile,.car.tgp.tgm .lt .tile-well{aspect-ratio:1/1!important}
}

/* §44 Bandai official card-list CTA (2026-10-05): link only, no Bandai images */
.bd-row{margin:var(--sp-3) 0 var(--sp-2)}
.bd-link{gap:4px}
.dbs-bd{flex:none;font-size:var(--fs-12);font-weight:650;color:var(--accent-text);text-decoration:none;white-space:nowrap;padding:2px 0}
.dbs-bd:hover{text-decoration:underline;text-underline-offset:2px}
.kvt .bd-link{margin-left:8px;vertical-align:middle}

/* §44b Bandai version position hint */
.bd-hint{display:block;font-size:var(--fs-12);font-weight:550;color:var(--muted);line-height:1.35}

/* §45 Printing cards + prominent Bandai CTA (2026-10-05) — Notion/Stripe compact, mobile-first */
.plist{display:flex;flex-direction:column;gap:var(--sp-3)}
.pcard{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}
.pcard.trk{border-color:var(--accent-border);box-shadow:inset 3px 0 0 var(--accent)}
.pcard-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:0}
.pcard-n{flex:none;width:1.5rem;height:1.5rem;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.pcard-v{font-size:var(--fs-16);font-weight:700;letter-spacing:-.01em;color:var(--text)}
.pcard-id{color:var(--muted);font-size:var(--fs-12);margin-left:auto}
.pcard-prod{margin:0;font-size:var(--fs-13);color:var(--text-2);line-height:1.4}
.pcard-prod a{color:var(--text);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:2px}
.pcard-prod a:hover{color:var(--accent-text);text-decoration-color:currentColor}
.pcard-dot{color:var(--muted);margin:0 2px}
.pcard-row{display:flex;flex-direction:column;gap:4px}
.pcard-k{font-size:10px;font-weight:650;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.pcard-body{font-size:var(--fs-14);color:var(--text);line-height:1.45}
.pcard-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);padding-top:var(--sp-1);border-top:1px solid var(--border)}
.pcard-stat{min-width:0}
.pcard-sv{font-size:var(--fs-15);font-weight:650;color:var(--text);margin-top:2px;line-height:1.35}
.pcard-sv .insuf{font-weight:600;font-size:var(--fs-13)}
.pcard-sv .sm{font-weight:500;margin-top:2px}
.pcard-px{font-size:var(--fs-18);font-weight:750;letter-spacing:-.02em}
.pcard-ph{font-size:var(--fs-12);font-weight:600;color:var(--accent-text);text-decoration:none}
.pcard-ph:hover{text-decoration:underline;text-underline-offset:2px}
.pcard-acts{display:flex;flex-direction:column;gap:8px;padding-top:var(--sp-1);border-top:1px solid var(--border)}
.bd-cta{display:flex;flex-direction:column;gap:6px;width:100%}
.bd-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;padding:0 16px;border-radius:var(--r-pill);border:1.5px solid var(--accent-border);background:var(--accent-bg);color:var(--accent-text)!important;font-size:var(--fs-14);font-weight:700;text-decoration:none!important;letter-spacing:-.01em;transition:background .15s,border-color .15s,box-shadow .15s;box-shadow:0 0 0 0 transparent}
.bd-btn:hover{background:var(--accent-bg-2);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}
.bd-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.bd-ext{font-weight:600}
.pcard-ix{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.bd-cta .bd-hint{margin:0;text-align:center}
.pcard-ebay{width:100%;min-height:40px;justify-content:center;background:var(--text)!important;border-color:var(--text)!important;color:var(--bg)!important;font-weight:650;border-radius:var(--r-pill)}
.pcard-ebay:hover{background:var(--text-2)!important;border-color:var(--text-2)!important;color:var(--bg)!important}
.pcard-ebay::before{opacity:1;background:currentColor}
/* Desktop: side-by-side actions; hint beside button when space allows */
@media (min-width:761px){
  .pcard{padding:var(--sp-5)}
  .pcard-acts{flex-direction:row;flex-wrap:wrap;align-items:stretch}
  .bd-cta{flex:1 1 280px;flex-direction:row;align-items:center;gap:12px;width:auto;min-width:0}
  .bd-btn{width:auto;flex:1 1 auto;min-width:220px;padding:0 20px}
  .bd-cta .bd-hint{text-align:left;white-space:nowrap}
  .pcard-ebay{width:auto;flex:0 1 240px;min-width:180px}
  .plist{gap:var(--sp-4)}
}
@media (min-width:1100px){
  .pcard-stats{gap:var(--sp-5)}
}

/* §46 Not in Index gallery strip (2026-10-05 fix): same height as Index opp, neutral grey — never accent tint, never a floating name pill */
.opp-out,.tile-x .opp-out{background:var(--surface-2,#eef0f3)!important;border:1px solid var(--border,#c9ced6)!important;color:var(--text)!important}
.opp-out:hover,.tile-x .opp-out:hover{background:var(--surface-3,#e4e7ec)!important;border-color:var(--border-strong,#aeb4bf)!important}
.opp-out .opxi,.tile-x .opp-out .opxi{white-space:normal!important;font-size:12.5px!important;line-height:1.35;font-weight:650;color:var(--text)}
.opp-out .opp-c{color:var(--muted)!important}
.car.tgp .lt .tile-x .opp-out .opp-c{display:inline!important;font-size:11.5px}
.car.tgp .lt .tile-x .opp-out .opxi::after{content:none}
@media (max-width:760px){
  .car.tgp .lt .tile-x .opp-out{display:flex!important;flex-wrap:wrap;align-items:center}
  .car.tgp .lt .tile-x .opp-out .opxi{white-space:normal!important;font-size:12px!important;line-height:1.35}
  .car.tgp .lt .tile-x .opp-out .opp-c{display:inline!important;flex:1 0 100%;padding-top:6px;border-top:1px solid var(--border);text-align:center;font-size:11.5px}
}

/* §47 single post-Core listings disclaimer (2026-10-05) */
.tier-disc{margin:.5rem 0 0;padding:0 2px;font-size:11px;line-height:1.35;color:var(--muted);font-weight:500}
.tier-disc .ago{color:var(--muted)}


/* ---------- Japanese PSA 10 section (2026-10-05, display-only) ---------- */
.car.tg-jp{--tc:#6b8cae;--tt:#3d5a73}
:root:not([data-theme="dark"]) .car.tg-jp{--tc:#5a7a96}
:root[data-theme="dark"] .car.tg-jp{--tc:#8fb0cc;--tt:#a8c4dc}
.car.tg-jp .tgh-plq{border-color:color-mix(in srgb,var(--tc) 35%,var(--border))}
.tile-tag.jp-pill,.jp-pill{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.04em;vertical-align:middle;
  background:color-mix(in srgb,#6b8cae 18%,transparent);color:#3d5a73;border:1px solid color-mix(in srgb,#6b8cae 40%,transparent)}
:root[data-theme="dark"] .jp-pill{background:color-mix(in srgb,#8fb0cc 22%,transparent);color:#c5d8ea;border-color:color-mix(in srgb,#8fb0cc 45%,transparent)}
.plate.pt-jp .pl-tier{color:var(--tc)}
.plate.pt-jp .pl-bot span:first-child{letter-spacing:.02em}

/* §51 pivot 2026-10-07: PriceCharting reference panel (separate from the eBay block), auction ordering note */
.cmain .pcref{margin:var(--sp-3) 0 var(--sp-4);padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.cmain .pcref .v{font-size:20px}
.cmain .pcref .sm a,.pc-cite a,.pcard-pc a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.pcref-na{font-size:15px!important;color:var(--muted)}
.pc-cite{margin:0 0 var(--sp-2);color:var(--muted)}
.pcard-pc{margin-top:2px;color:var(--muted)}
.tl-sort{margin:0 0 8px;color:var(--muted)}
@media (max-width:760px){.ebtn.ebtn-au{padding-left:8px!important;padding-right:8px!important;font-size:13px!important;letter-spacing:-.01em;white-space:normal!important;height:auto!important;min-height:36px;line-height:1.2;text-align:center}}
/* 2026-10-07 affiliate-only pivot: the OPChase panel is a single link line ("Version guide & all listings ›"); keep it on one row on mobile */
@media (max-width:760px){.car.tgp .lt .tile-x .opp-out{flex-wrap:nowrap!important}.car.tgp .lt .tile-x .opp-out .opp-l{flex:1 1 auto}.car.tgp .lt .tile-x .opp-out .opp-c{flex:none!important;padding-top:0!important;border-top:0!important}}
.tile-row .ebtn.ebtn-au{white-space:normal!important;height:auto!important;min-height:40px;line-height:1.3;padding-top:6px!important;padding-bottom:6px!important;font-size:13px}

/* §52 2026-10-07 21:40: Grail / Premium / Core / JP carousels = ONE row like "Newly verified listings".
   Desktop >=1100: 4 tiles per page, same width as the Newly verified tiles (the tier frame bleeds out by its padding+border = 29px
   where the viewport has room, so its track equals the content column and the tiles line up with the Newly verified columns;
   1100-1270 px viewports bleed less, tiles slightly narrower). Tablet 761-1099: 2 per page in one row. Mobile: 1 per page (unchanged).
   Replaces the §47 2x2 grid (--rows:2). Autoplay/pager unchanged (opchase-gallery.js reads --rows). */
.tgm .lcar .car-track.lgrid{--rows:1;grid-template-rows:auto;row-gap:0}
@media (min-width:1100px){
  .panel.car.tgm{margin-left:calc(-1 * clamp(0px, (100vw - 1212px) / 2, 29px));margin-right:calc(-1 * clamp(0px, (100vw - 1212px) / 2, 29px))}
  .tgm .lcar .car-track.lgrid{column-gap:var(--sp-5);grid-auto-columns:calc((100cqw - 3 * var(--sp-5)) / 4)}
}
@media (min-width:761px) and (max-width:1099px){
  .tgm .lcar .car-track.lgrid{column-gap:var(--sp-5);grid-auto-columns:calc((100cqw - var(--sp-5)) / 2)}
}
/* §52b JP pill on the name line (smaller one-row tiles wrapped it onto its own line) */
.tgm .lt .tile-n:has(.jp-pill){display:flex!important;align-items:center;gap:6px}
.tgm .lt .tile-n:has(.jp-pill)>a.cn{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tgm .lt .tile-n>.jp-pill{flex:none;margin-left:0;transform:none}

/* §53 2026-10-07 22:30 home "Ending soon" + "Lowest Buy It Now" = one-row carousels (same tile as the tier lists), and tier lists
   hold only each card's lowest Buy It Now + soonest-ending auction (.lx tiles). */
.lcar .lgrid>.lx .tile-n{font-size:16px;margin-top:4px}
.hcar{position:relative}
.hcar .lcar-h{position:static!important;height:auto!important;justify-content:flex-end;margin:0 0 var(--sp-2)!important}
@media (max-width:760px){.hcar .lcar-h{justify-content:center}}
.tgm .lx .tile-n:has(.jp-pill){display:flex!important;align-items:center;gap:6px}
.lx .ebtn.ebtn-au{white-space:normal!important;height:auto!important;min-height:40px;line-height:1.3;padding-top:6px!important;padding-bottom:6px!important;font-size:13px}

/* §54 2026-10-09 week-1: "Paid links" label directly above every block of eBay links (FTC proximity) + stale-data notice (6 h guard) */
.paidl{font-size:var(--fs-14,14px);line-height:1.45;color:var(--text-2);margin:var(--sp-2,8px) 0;padding:6px 10px;border-left:3px solid var(--muted);background:color-mix(in srgb,var(--muted) 10%,transparent);border-radius:4px}
.paidl b{color:var(--text)}
.fw .paidl{margin:var(--sp-2,8px) 0 4px}
.stale-n{font-size:var(--fs-14,14px);color:var(--text);border:1px solid var(--muted);border-radius:6px;padding:8px 12px;margin:var(--sp-2,8px) 0}

/* UI-01 (2026-10-09): once the 6 h rule has removed every listing of a block and no eBay link is left in it, the block shows only its heading and the
   "hidden / last updated" note (the Paid links label, paging controls, tabs, counts and fine print belong to listings that are no longer there) */
.ebx-empty>*:not(h2):not(.sec-h):not(.car-h):not(.stale-n){display:none!important}
.stale-n a{color:var(--text);text-decoration:underline;text-underline-offset:3px;font-weight:600;white-space:nowrap}

/* UI-09 (2026-10-09): the eBay photo credit ("Photo: eBay listing by <seller> · View on eBay") is never cut with an ellipsis; the version line keeps up to 2 lines.
   wk7: everything else in the tile is tightened so the extra text lines do not make the tile taller (white well, 1:1 photo area, compact image/text spacing unchanged in look) */
.tile-attr,.tgm .lt>.tile-eb>.tile-attr,.tgm .lt>.tile-eb>.hs-attr.tile-attr,.tgm .lt .tile-b>.tile-attr,.tgm .lt .tile-b>.hs-attr.tile-attr,.tgm .lt .tile-attr,.tgm .lt .hs-attr.tile-attr{
  white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.22;padding-top:3px;padding-bottom:0}
.tile-attr a{white-space:nowrap}
.tile-v,.tgm .tile-v,.tgm .lt .tile-v{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:clip;line-height:1.24}
.tgm .tile-v .tile-s,.tgm .lt .tile-v .tile-s{white-space:normal}
.tgm .lt .tile-b{gap:1px;padding-top:4px;padding-bottom:10px}
.tgm .lt .tile-n,.tgm .lt a.tile-n{line-height:1.22}
.tgm .lt .tile-b .ebp,.tgm.tgp .lt .tile-b .ebp,.car.tgp.tgm .tile-b .ebp,.tgm .lt .ebp{padding-top:7px}
.tgm .lt .t-tile,.tgm .lt .tile-well,.tgm .lt .ph.t-tile{aspect-ratio:1/.97}   /* desktop: photo area 3% shorter; image padding below keeps the displayed photo the same size */
.tgm .lt .t-tile img{padding:11px}
.tgm .lt .tile-well{padding:11px}
@media (max-width:760px){.tgm .lt .t-tile img{padding:14px}.tgm .lt .tile-well{padding:14px}   /* mobile photo area stays 1:1 (existing !important rule) and the photo size is unchanged */
.tgm .lt .tile-b{padding-top:4px;padding-bottom:9px}.tgm .lt .tile-b .ebp,.tgm .lt .ebp{padding-top:6px}}

/* UI-10 (2026-10-09): pre-release badge */
.pill.pre{cursor:default;margin:0 0 var(--sp-3)}
