/* Poke Forecast Card DB — Frontend CSS */
:root {
    --pf-red:#CC0000; --pf-yellow:#FFCB05; --pf-navy:#1B2A4A;
    --pf-blue:#3B4CCA; --pf-white:#fff; --pf-off:#F4F5F7;
    --pf-gray:#E5E7EB; --pf-gray2:#9CA3AF; --pf-gray3:#374151;
    --pf-r:10px; --pf-shadow:0 4px 16px rgba(0,0,0,.1);
}
*,*::before,*::after{box-sizing:border-box}

/* ── Force full width — Astra sidebar override ─────────────────────────── */
#pfdb-wrap {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    overflow-x: hidden;
}

.pfdb-page{min-height:100vh;background:var(--pf-off)}
.pfdb-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;width:100%}
@media(max-width:640px){.pfdb-container{padding:1rem}}

/* Topbar */
.pfdb-topbar{background:var(--pf-navy);border-bottom:3px solid var(--pf-yellow);position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.pfdb-topbar-inner{max-width:1200px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:1rem}
.pfdb-topbar-brand{font-family:'Oswald',sans-serif;font-size:1.1rem;font-weight:700;color:var(--pf-yellow);text-decoration:none;white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}
.pfdb-topbar-home{color:rgba(255,255,255,.6);font-size:12px;white-space:nowrap;text-decoration:none}
.pfdb-topbar-home:hover{color:var(--pf-yellow)}
.pfdb-search-bar{display:flex;flex:1;max-width:600px}
.pfdb-search-input{flex:1;padding:8px 14px;border:2px solid rgba(255,255,255,.2);border-right:none;border-radius:var(--pf-r) 0 0 var(--pf-r);background:rgba(255,255,255,.1);color:#fff;font-size:14px;outline:none;transition:border-color .2s}
.pfdb-search-input::placeholder{color:rgba(255,255,255,.5)}
.pfdb-search-input:focus{border-color:var(--pf-yellow)}
.pfdb-search-btn{padding:8px 20px;background:var(--pf-red);color:var(--pf-yellow);border:none;border-radius:0 var(--pf-r) var(--pf-r) 0;font-family:'Oswald',sans-serif;font-weight:700;font-size:13px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;white-space:nowrap}
.pfdb-search-btn:hover{background:#990000}

/* Hero bar */
.pfdb-hero-bar{background:var(--pf-navy);padding:2.5rem 1.5rem;text-align:center;border-bottom:3px solid rgba(255,203,5,.3)}
.pfdb-hero-inner{max-width:700px;margin:0 auto}
.pfdb-hero-bar h1{font-family:'Oswald',sans-serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;color:var(--pf-yellow);text-transform:uppercase;margin-bottom:.5rem}
.pfdb-hero-bar p{color:rgba(255,255,255,.7);font-size:1rem;margin:0}
.pfdb-hero-sub{font-size:.9rem!important;color:rgba(255,255,255,.5)!important;margin-top:.5rem!important;max-width:560px;margin-left:auto!important;margin-right:auto!important}

/* Sets grid */
.pfdb-series-block{margin-bottom:2.5rem}
.pfdb-series-title{font-family:'Oswald',sans-serif;font-size:1.2rem;font-weight:700;text-transform:uppercase;color:var(--pf-navy);border-bottom:3px solid var(--pf-yellow);padding-bottom:7px;margin-bottom:1rem;display:flex;align-items:center;gap:10px}
.pfdb-series-count{font-size:.8rem;color:var(--pf-gray2);font-weight:400;font-family:sans-serif;text-transform:none;letter-spacing:0}
.pfdb-sets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
@media(max-width:640px){.pfdb-sets-grid{grid-template-columns:repeat(2,1fr);gap:8px}}
.pfdb-set-card{background:var(--pf-white);border:2px solid var(--pf-gray);border-radius:var(--pf-r);overflow:hidden;text-decoration:none;color:var(--pf-navy);transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column}
.pfdb-set-card:hover{transform:translateY(-3px);border-color:var(--pf-yellow);box-shadow:var(--pf-shadow)}
.pfdb-set-img-wrap{background:var(--pf-navy);padding:1rem;display:flex;align-items:center;justify-content:center;min-height:85px}
.pfdb-set-img-wrap img{max-width:100%;max-height:65px;object-fit:contain}
.pfdb-symbol-only{max-height:36px;opacity:.8}
.pfdb-set-placeholder{color:rgba(255,255,255,.4);font-family:'Oswald',sans-serif;font-size:1.4rem;font-weight:700}
.pfdb-set-info{padding:10px}
.pfdb-set-name{font-weight:700;font-size:.82rem;margin-bottom:3px;line-height:1.3}
.pfdb-set-meta{font-size:.72rem;color:var(--pf-gray2)}

/* Set header */
.pfdb-set-header{background:var(--pf-navy);padding:2rem 1.5rem;border-bottom:3px solid var(--pf-yellow)}
.pfdb-set-header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1.5rem;text-align:center}
.pfdb-set-header-logo{max-height:75px;max-width:190px;object-fit:contain}
.pfdb-set-series{font-size:.75rem;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}
.pfdb-set-header h1{font-family:'Oswald',sans-serif;font-size:clamp(1.3rem,4vw,1.9rem);font-weight:700;color:var(--pf-yellow);text-transform:uppercase;margin:0 0 5px}
.pfdb-set-header p{color:rgba(255,255,255,.65);font-size:.9rem}
@media (max-width: 600px) {
    .pfdb-set-header-inner{flex-direction:column;gap:.75rem}
}

/* Filters */
.pfdb-filters{background:var(--pf-white);border-bottom:1px solid var(--pf-gray);padding:10px 0}
.pfdb-filter-row{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pfdb-filters select{padding:6px 10px;border:2px solid var(--pf-gray);border-radius:var(--pf-r);font-size:13px;background:var(--pf-white);color:var(--pf-navy);cursor:pointer}
.pfdb-filters select:focus{outline:none;border-color:var(--pf-blue)}
.pfdb-filter-clear{font-size:13px;color:var(--pf-red);text-decoration:none;font-weight:600}
.pfdb-filter-count{font-size:12px;color:var(--pf-gray2);margin-left:auto}

/* Cards grid */
.pfdb-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:1.5rem}
@media(max-width:480px){.pfdb-cards-grid{grid-template-columns:repeat(3,1fr);gap:8px}}
.pfdb-card-tile{background:var(--pf-white);border:2px solid var(--pf-gray);border-radius:var(--pf-r);overflow:hidden;text-decoration:none;color:var(--pf-navy);transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column}
.pfdb-card-tile:hover{transform:translateY(-4px);border-color:var(--pf-yellow);box-shadow:var(--pf-shadow)}
.pfdb-card-img-wrap{background:var(--pf-off);aspect-ratio:3/4;overflow:hidden}
.pfdb-card-img-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.pfdb-card-tile:hover .pfdb-card-img-wrap img{transform:scale(1.04)}
.pfdb-no-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;font-family:'Oswald',sans-serif;background:linear-gradient(135deg,var(--pf-navy) 0%,#2A3D63 100%);color:rgba(255,203,5,0.5);letter-spacing:1px}
.pfdb-card-info{padding:8px 8px 10px}
.pfdb-card-name{font-size:12px;font-weight:700;line-height:1.3;margin-bottom:2px}
.pfdb-card-num{font-size:10px;color:var(--pf-gray2)}
.pfdb-card-rarity{display:inline-block;margin-top:3px;padding:1px 7px;background:var(--pf-off);border-radius:999px;font-size:10px;color:var(--pf-gray3);border:1px solid var(--pf-gray)}
.pfdb-card-price{margin-top:3px;font-size:12px;font-weight:700;color:var(--pf-navy)}

/* Pagination */
.pfdb-pagination{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-top:2rem}
.pfdb-pg-btn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border:2px solid var(--pf-gray);border-radius:var(--pf-r);font-size:13px;font-weight:700;color:var(--pf-navy);text-decoration:none;transition:all .2s}
.pfdb-pg-btn:hover{border-color:var(--pf-yellow);background:var(--pf-yellow)}
.pfdb-pg-active{background:var(--pf-red);border-color:var(--pf-red);color:var(--pf-yellow)}

/* Card detail */
.pfdb-breadcrumb{font-size:13px;color:var(--pf-gray2);margin-bottom:1.5rem}
.pfdb-breadcrumb a{color:var(--pf-blue);text-decoration:none}
.pfdb-breadcrumb a:hover{color:var(--pf-red)}
.pfdb-detail-layout{display:grid;grid-template-columns:270px 1fr;gap:2rem;align-items:start}
@media(max-width:768px){.pfdb-detail-layout{grid-template-columns:1fr}.pfdb-detail-img{max-width:320px;margin:0 auto;display:block}}
.pfdb-detail-img{width:100%;border-radius:var(--pf-r);box-shadow:var(--pf-shadow)}
.pfdb-no-img-lg{height:380px;font-size:2rem}
.pfdb-tcg-link{display:block;margin-top:12px;padding:10px;background:var(--pf-navy);color:var(--pf-yellow);text-align:center;text-decoration:none;border-radius:var(--pf-r);font-family:'Oswald',sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.5px}
.pfdb-tcg-link:hover{background:#0F1923}
.pfdb-detail-name{font-family:'Oswald',sans-serif;font-size:1.9rem;font-weight:700;color:var(--pf-navy);text-transform:uppercase;margin-bottom:8px;letter-spacing:-.3px}
.pfdb-detail-set-row{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--pf-gray3);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--pf-gray)}
.pfdb-detail-symbol{height:22px}
.pfdb-specs{width:100%;border-collapse:collapse;margin-bottom:1.5rem}
.pfdb-specs td{padding:7px 12px;font-size:14px;border-bottom:1px solid var(--pf-gray)}
.pfdb-specs td:first-child{font-weight:700;color:var(--pf-gray3);width:110px}
.pfdb-rarity-pill{display:inline-flex;padding:3px 10px;background:var(--pf-navy);color:var(--pf-yellow);border-radius:999px;font-size:12px;font-weight:700}
.pfdb-section{margin-bottom:1.5rem}
.pfdb-section h3{font-family:'Oswald',sans-serif;font-size:1rem;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-navy);margin-bottom:10px;padding-bottom:6px;border-bottom:2px solid var(--pf-yellow)}
.pfdb-attack,.pfdb-ability{padding:9px 0;border-bottom:1px solid var(--pf-gray)}
.pfdb-attack-row,.pfdb-ability-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.pfdb-costs{display:flex;gap:3px}
.pfdb-damage{margin-left:auto;font-weight:700;font-size:16px;color:var(--pf-red)}
.pfdb-attack-text{font-size:13px;color:var(--pf-gray3);line-height:1.5}
.pfdb-ability-type{padding:1px 8px;background:var(--pf-blue);color:#fff;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase}
.pfdb-wrc-row{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:1.5rem}
.pfdb-wrc h4{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-gray2);margin-bottom:6px}

/* Bilingual JP/EN side-by-side layout for Japanese cards */
.pfdb-bilingual{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:14px 0;border-bottom:1px solid var(--pf-gray)}
.pfdb-bilingual.pfdb-attack,.pfdb-bilingual.pfdb-ability{padding:14px 0}
.pfdb-bi-col{position:relative;padding:10px 12px 10px 12px;background:#fafafa;border-radius:6px;border:1px solid #ececec;min-width:0}
.pfdb-bi-col p{margin:6px 0 0;font-size:13px;color:var(--pf-gray3);line-height:1.55;word-wrap:break-word}
.pfdb-bi-col strong.pfdb-attack-name{display:block;margin-top:4px;color:var(--pf-navy);font-size:15px}
.pfdb-bi-flag{position:absolute;top:8px;right:8px;font-size:9px;font-weight:700;letter-spacing:.5px;padding:2px 6px;background:var(--pf-navy);color:#fff;border-radius:3px}
.pfdb-bi-jp .pfdb-bi-flag{background:#bf2026}
.pfdb-bilingual .pfdb-attack-header{grid-column:1/-1;display:flex;align-items:center;gap:8px;margin-bottom:6px}
.pfdb-bilingual .pfdb-attack-header .pfdb-damage{margin-left:auto}
@media (max-width:680px){.pfdb-bilingual{grid-template-columns:1fr}}
.pfdb-energy{display:inline-flex;width:22px;height:22px;border-radius:50%;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff}
.pfdb-e-fire,.pfdb-e-r{background:#E6433E}
.pfdb-e-water,.pfdb-e-w{background:#3B9ED9}
.pfdb-e-grass,.pfdb-e-g{background:#5CA935}
.pfdb-e-lightning,.pfdb-e-l{background:#F5C518;color:#333}
.pfdb-e-psychic,.pfdb-e-p{background:#A45688}
.pfdb-e-fighting,.pfdb-e-f{background:#C86B3D}
.pfdb-e-darkness,.pfdb-e-d{background:#3B3F50}
.pfdb-e-metal,.pfdb-e-m{background:#8B8DA3}
.pfdb-e-fairy{background:#EC8FE6}
.pfdb-e-dragon{background:#8B7333}
.pfdb-e-colorless,.pfdb-e-c{background:#C8C8C8;color:#333}
.pfdb-predict-cta{margin-top:1.5rem}
.pfdb-predict-btn{display:inline-flex;align-items:center;padding:12px 20px;background:var(--pf-red);color:var(--pf-yellow);font-family:'Oswald',sans-serif;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.8px;border-radius:var(--pf-r);text-decoration:none;transition:all .2s}
.pfdb-predict-btn:hover{background:#990000;transform:translateY(-2px);box-shadow:0 6px 16px rgba(204,0,0,.3)}

/* Search */
.pfdb-search-h1{font-family:'Oswald',sans-serif;font-size:1.7rem;font-weight:700;color:var(--pf-navy);text-transform:uppercase;margin-bottom:1.5rem;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pfdb-search-count{font-size:1rem;font-weight:400;color:var(--pf-gray2)}
.pfdb-empty{text-align:center;padding:4rem 1rem;color:var(--pf-gray3)}
.pfdb-empty h2{font-family:'Oswald',sans-serif;font-size:1.5rem;margin-bottom:.5rem}
.pfdb-empty a{color:var(--pf-blue);font-weight:600}

/* Autocomplete dropdown */
.pfdb-ac-drop{position:absolute;top:calc(100% + 2px);left:0;right:0;background:#fff;border:2px solid var(--pf-gray);border-radius:var(--pf-r);box-shadow:var(--pf-shadow);z-index:9999;max-height:340px;overflow-y:auto}
.pfdb-ac-row{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--pf-gray);transition:background .1s}
.pfdb-ac-row:last-child{border-bottom:none}
.pfdb-ac-row:hover,.pfdb-ac-active{background:var(--pf-off)}
.pfdb-ac-thumb{width:38px;height:53px;object-fit:cover;border-radius:4px;background:var(--pf-off);flex-shrink:0}
.pfdb-ac-no-thumb{width:38px;height:53px;background:linear-gradient(135deg,var(--pf-navy) 0%,#2A3D63 100%);border-radius:4px;flex-shrink:0}
.pfdb-ac-text{display:flex;flex-direction:column;gap:2px;min-width:0}
.pfdb-ac-name{font-weight:700;font-size:13px;color:var(--pf-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pfdb-ac-meta{font-size:11px;color:var(--pf-gray2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ── Inline Predictor ─────────────────────────────────────────────────────── */
.pfdb-inline-predictor {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 3px solid var(--pf-yellow);
}

.pfdb-inline-predictor-title {
    font-family: 'Oswald', sans-serif;
    font-size: 1.4rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--pf-navy);
    letter-spacing: 0.5px;
    margin-bottom: 1.25rem;
}

/* Make predictor full width in this context */
.pfdb-inline-predictor [data-pf-tool] {
    max-width: 100% !important;
}

/* ── Hide predictor header when embedded on card pages ───────────────────── */
.pfdb-inline-predictor .pf-header {
    display: none !important;
}

.pfdb-inline-predictor .pf-body {
    border-top: none !important;
    border-radius: var(--pf-r) !important;
}

/* ── Set Overview (AI Content) ──────────────────────────────────────────── */
.pfdb-set-overview {
    background: var(--pf-white);
    border: 2px solid var(--pf-gray);
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.pfdb-set-overview-text {
    font-size: 15px;
    line-height: 1.7;
    color: var(--pf-gray-700);
    margin-bottom: 1.25rem;
}

.pfdb-set-metrics {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1rem;
}

.pfdb-set-metric {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 160px;
}

.pfdb-set-metric-label {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--pf-gray-500);
    font-family: var(--pf-font-display);
}

.pfdb-set-metric-badge {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    font-family: var(--pf-font-display);
    text-transform: uppercase;
    letter-spacing: .3px;
    width: fit-content;
}

.pfdb-set-metric-reason {
    font-size: 12px;
    color: var(--pf-gray-500);
    line-height: 1.4;
    max-width: 280px;
}

.pfdb-set-targets {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.pfdb-set-target-tag {
    padding: 3px 10px;
    background: var(--pf-blue-light);
    color: var(--pf-blue);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
}

.pfdb-set-overview-disclaimer {
    font-size: 10px;
    color: var(--pf-gray-500);
    margin: 0;
    padding-top: 1rem;
    border-top: 1px solid var(--pf-gray-100);
}

/* ── Homepage Widget Areas ──────────────────────────────────────────────── */
.pfdb-widget-area {
    background: var(--pf-off-white);
    padding: 2rem 0;
    border-bottom: 1px solid var(--pf-gray);
}

.pfdb-widget-above {
    border-top: 1px solid var(--pf-gray);
}

.pfdb-widget-below {
    border-top: 2px solid var(--pf-yellow);
}

.pfdb-widget {
    margin-bottom: 2rem;
}

.pfdb-widget:last-child {
    margin-bottom: 0;
}

.pfdb-widget-title {
    font-family: var(--pf-font-display);
    font-size: 1.3rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--pf-navy);
    margin-bottom: 1rem;
    padding-bottom: 8px;
    border-bottom: 3px solid var(--pf-yellow);
    display: inline-block;
}

/* ── Card Scan Button ────────────────────────────────────────────────────── */
.pfdb-scan-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    cursor: pointer;
    transition: opacity 0.2s;
    padding: 0 10px;
}
.pfdb-scan-btn img {
    opacity: 0.8;
    transition: opacity 0.2s;
    display: block;
}
.pfdb-scan-btn:hover {
    background: rgba(255,203,5,0.08);
}
.pfdb-scan-btn:hover img {
    opacity: 1;
}

/* ── Scan Overlay ────────────────────────────────────────────────────────── */
.pfdb-scan-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: rgba(0,0,0,0.82);
    align-items: center;
    justify-content: center;
    padding: 1rem;
}
.pfdb-scan-overlay.pfdb-scan-active {
    display: flex;
}

.pfdb-scan-modal {
    background: #1b2a4a;
    border: 1px solid rgba(255,203,5,0.25);
    border-radius: 6px;
    width: 100%;
    max-width: 360px;
    padding: 1.5rem;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pfdb-scan-close {
    position: absolute;
    top: 10px;
    right: 12px;
    background: none;
    border: none;
    color: rgba(255,255,255,0.5);
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
    padding: 4px 6px;
    transition: color 0.2s;
}
.pfdb-scan-close:hover { color: #fff; }

.pfdb-scan-preview-wrap {
    border-radius: 6px;
    overflow: hidden;
    background: rgba(0,0,0,0.3);
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}
#pfdb-scan-preview {
    width: 100%;
    max-height: 280px;
    object-fit: contain;
    display: none;
    border-radius: 6px;
}

/* ── Crop stage ──────────────────────────────────────────────────────────── */
.pfdb-scan-crop {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.pfdb-scan-crop-instr {
    color: rgba(255,255,255,0.85);
    font-size: 0.9rem;
    text-align: center;
    line-height: 1.4;
}
.pfdb-scan-crop-stage {
    position: relative;
    width: 100%;
    aspect-ratio: 5/7; /* match Pokemon card ratio so the visible area fits the frame nicely */
    background: #000;
    border-radius: 6px;
    overflow: hidden;
    user-select: none;
    -webkit-user-select: none;
    touch-action: none; /* we handle pinch/pan ourselves */
}
#pfdb-scan-crop-canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
}
.pfdb-scan-crop-frame {
    position: absolute;
    inset: 0;
    pointer-events: none; /* hit testing happens on the canvas behind */
    border: 0;
}
/* Card-shaped crop guide. Outer dark mask + inner clear rectangle with bright border. */
.pfdb-scan-crop-frame::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.55);
    /* Cut a card-aspect rectangle out of the dark overlay. The hole is 5:7
       and centered. We position via percentage so it scales with the stage. */
    -webkit-mask:
        linear-gradient(#000 0 0) content-box,
        linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
            mask-composite: exclude;
    padding: 6% 14%; /* tighter side mask, looser top/bottom -> 5:7 hole */
}
.pfdb-scan-crop-frame::after {
    content: '';
    position: absolute;
    top: 6%;
    bottom: 6%;
    left: 14%;
    right: 14%;
    border: 2px solid #FFCB05;
    border-radius: 8px;
    box-shadow: 0 0 0 1px rgba(0,0,0,0.5) inset;
    pointer-events: none;
}
.pfdb-scan-crop-actions {
    display: flex;
    gap: 0.5rem;
}
.pfdb-scan-crop-cancel,
.pfdb-scan-crop-go {
    flex: 1;
    padding: 0.7rem 1rem;
    border-radius: 4px;
    font-size: 0.95rem;
    font-weight: 700;
    cursor: pointer;
    border: 0;
    transition: opacity 0.15s, background 0.15s;
}
.pfdb-scan-crop-cancel {
    background: rgba(255,255,255,0.1);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.25);
}
.pfdb-scan-crop-cancel:hover { background: rgba(255,255,255,0.2); }
.pfdb-scan-crop-go {
    background: #FFCB05;
    color: #1b2a4a;
}
.pfdb-scan-crop-go:hover { opacity: 0.9; }
.pfdb-scan-crop-go:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.pfdb-scan-status {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: rgba(255,255,255,0.8);
    font-size: 0.95rem;
}

.pfdb-scan-spinner {
    width: 20px;
    height: 20px;
    border: 2px solid rgba(255,203,5,0.3);
    border-top-color: #FFCB05;
    border-radius: 50%;
    animation: pfdb-spin 0.7s linear infinite;
    flex-shrink: 0;
}
@keyframes pfdb-spin {
    to { transform: rotate(360deg); }
}

.pfdb-scan-result {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.pfdb-scan-result p {
    color: #fff;
    font-weight: 600;
    font-size: 1rem;
    margin: 0;
}
.pfdb-scan-go-btn {
    display: inline-block;
    background: #CC0000;
    color: #FFCB05 !important;
    padding: 0.6rem 1.2rem;
    border-radius: 6px;
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none !important;
    text-align: center;
    transition: background 0.2s;
}
.pfdb-scan-go-btn:hover { background: #a80000; }

.pfdb-scan-error {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}
.pfdb-scan-error p {
    color: #ff9999;
    font-size: 0.9rem;
    margin: 0;
}
.pfdb-scan-retry-btn {
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.2);
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: background 0.2s;
    width: fit-content;
}
.pfdb-scan-retry-btn:hover { background: rgba(255,255,255,0.2); }

/* ── Grading Population ──────────────────────────────────────────────────── */
.pfdb-population-section { margin-top: 2rem; }

/* Unified section heading style — matches .pfdb-section h3 (navy text with
   gold underline) used by Prices / Attacks / Price History. The graded
   sections previously used a different gold-caps style that didn't match
   anything else on the page; this brings them into the same family. */
.pfdb-section-title{
    font-family:'Oswald',sans-serif;
    font-size:1rem;
    text-transform:uppercase;
    letter-spacing:.5px;
    color:var(--pf-navy);
    margin-bottom:10px;
    padding-bottom:6px;
    border-bottom:2px solid var(--pf-yellow);
}

/* Lightened population block. Was a dark navy panel with white text,
   which clashed with every other section on the page. Now uses the same
   white-card + navy-text language as the graded prices section below it. */
.pfdb-pop-inner {
    background:#fff;
    border:1px solid #e2e2e2;
    border-radius:8px;
    padding:1.25rem;
}

.pfdb-pop-summary {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .75rem;
    margin-bottom: 1.25rem;
}
@media(max-width:600px){ .pfdb-pop-summary { grid-template-columns: repeat(2,1fr); } }

.pfdb-pop-stat {
    background:#fafafa;
    border:1px solid #e8e8e8;
    border-radius:6px;
    padding:.75rem;
    text-align:center;
    display:flex;
    flex-direction:column;
    gap:.25rem;
}
.pfdb-pop-stat-val{
    font-family:'Oswald',sans-serif;
    font-size:1.4rem;
    color:var(--pf-navy);
    font-weight:700;
}
.pfdb-pop-stat-val.pfdb-gem{color:#a47c00}
.pfdb-pop-stat-label{
    font-size:.7rem;
    color:#888;
    text-transform:uppercase;
    letter-spacing:.5px;
}

.pfdb-pop-graders {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: .75rem;
}

.pfdb-pop-grader {
    background:#fafafa;
    border:1px solid #e8e8e8;
    border-radius:6px;
    padding:.85rem;
    display:flex;
    flex-direction:column;
    gap:.5rem;
}

.pfdb-pop-grader-header { display: flex; align-items: center; justify-content: space-between; }
.pfdb-pop-grader-name {
    font-family: 'Oswald', sans-serif;
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: .5px;
    padding: 2px 8px;
    border-radius: 4px;
}
.pfdb-grader-psa     { background: #d00; color: #fff; }
.pfdb-grader-beckett { background: #1a3a6b; color: #fff; }
.pfdb-grader-bgs     { background: #1a3a6b; color: #fff; }
.pfdb-grader-cgc     { background: #ff6b00; color: #fff; }
.pfdb-grader-sgc     { background: #444; color: #fff; }

.pfdb-pop-grader-total{font-size:.75rem;color:#888}

.pfdb-pop-gem-bar-wrap{height:4px;background:#eee;border-radius:2px;overflow:hidden}
.pfdb-pop-gem-bar{height:100%;background:var(--pf-yellow,#FFCB05);border-radius:2px;transition:width .5s ease}

.pfdb-pop-grader-stats{display:flex;flex-wrap:wrap;gap:.35rem}
.pfdb-pop-grade{
    font-size:.75rem;
    color:#555;
    background:#fff;
    border:1px solid #e2e2e2;
    padding:2px 8px;
    border-radius:3px;
}
.pfdb-pop-grade.pfdb-gem{
    color:#a47c00;
    background:#fff8e0;
    border-color:#f0d68a;
    font-weight:600;
}

.pfdb-pop-gem-rate{
    font-size:.72rem;
    padding:2px 8px;
    border-radius:3px;
    background:#f1f1f1;
    color:#666;
}
.pfdb-pop-gem-rate.pfdb-gem-high{background:#fff4d6;color:#7a5b00}
.pfdb-pop-gem-rate.pfdb-gem-mid{background:#fff4d6;color:#a47c00}

.pfdb-pop-updated{
    font-size:.72rem;
    color:#888;
    margin-top:.85rem;
    line-height:1.5;
}
.pfdb-pop-coverage{
    display:block;
    margin-top:.2rem;
    color:#999;
    font-size:.7rem;
    font-style:italic;
}

/* ── Language Switcher ───────────────────────────────────────────────────── */
.pfdb-lang-switcher {
    display: flex;
    gap: 2px;
    margin-left: 8px;
    flex-shrink: 0;
}
.pfdb-lang-btn {
    font-family: 'Oswald', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .5px;
    padding: 4px 10px;
    border-radius: 4px;
    color: rgba(255,255,255,0.5);
    text-decoration: none;
    border: 1px solid rgba(255,255,255,0.15);
    transition: all 0.2s;
    line-height: 1;
    display: flex;
    align-items: center;
}
.pfdb-lang-btn:hover {
    color: #fff;
    border-color: rgba(255,255,255,0.4);
}
.pfdb-lang-btn.pfdb-lang-active {
    background: var(--pf-yellow, #FFCB05);
    color: var(--pf-navy, #1B2A4A);
    border-color: var(--pf-yellow, #FFCB05);
}

/* ── Japanese banner ────────────────────────────────────────────────────── */
.pfdb-lang-banner {
    background: rgba(255,203,5,0.08);
    border: 1px solid rgba(255,203,5,0.2);
    border-radius: 6px;
    padding: 8px 14px;
    font-size: 13px;
    color: rgba(255,255,255,0.7);
    margin-bottom: 1.5rem;
}
.pfdb-lang-flag { margin-right: 6px; }

/* ── Price section ─────────────────────────────────────────────────────── */
.pfdb-price-section{margin-top:2.5rem}
.pfdb-price-section h3{display:flex;align-items:baseline;gap:10px}
.pfdb-price-sync-date{font-family:inherit;font-size:11px;font-weight:400;text-transform:none;letter-spacing:0;color:var(--pf-gray3);opacity:.7}
.pfdb-price-printing{margin-bottom:1rem}
.pfdb-price-printing-name{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--pf-gray3);margin-bottom:4px}
.pfdb-price-table{width:100%;border-collapse:collapse}
.pfdb-price-table td{padding:5px 10px;font-size:14px;border-bottom:1px solid var(--pf-gray)}
.pfdb-price-table td:first-child{color:var(--pf-gray3);width:160px}
.pfdb-price-table td:last-child{text-align:right}
.pfdb-price-nm td{color:var(--pf-navy)}
.pfdb-price-nm td:first-child{font-weight:700;color:var(--pf-navy)}

/* ── Other Printings / Variants section ────────────────────────────────── */
.pfdb-variants-section { margin-top: 2rem; }
.pfdb-variants-intro {
    color: var(--pf-gray3);
    font-size: 14px;
    margin: 0 0 1.25rem 0;
}
.pfdb-variants-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
}
.pfdb-variant-card {
    display: flex;
    gap: 12px;
    padding: 10px;
    background: #fff;
    border: 1px solid var(--pf-gray, #e5e7eb);
    border-radius: 8px;
    text-decoration: none;
    color: inherit;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.pfdb-variant-card:hover {
    border-color: var(--pf-yellow, #d4a820);
    box-shadow: 0 2px 8px rgba(28, 35, 64, 0.08);
    transform: translateY(-1px);
}
.pfdb-variant-img-wrap {
    flex: 0 0 64px;
    width: 64px;
    height: 88px;
    border-radius: 4px;
    overflow: hidden;
    background: var(--pf-gray, #f3f4f6);
}
.pfdb-variant-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.pfdb-variant-noimg {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--pf-gray3, #6b7280);
    font-weight: 700;
    font-size: 18px;
    background: var(--pf-gray, #f3f4f6);
}
.pfdb-variant-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 2px 0;
}
.pfdb-variant-badge {
    display: inline-block;
    align-self: flex-start;
    background: var(--pf-navy, #1c2340);
    color: #fff;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 6px;
    line-height: 1.3;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pfdb-variant-set {
    font-size: 12px;
    color: var(--pf-gray3, #6b7280);
    margin-bottom: 6px;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pfdb-variant-price {
    font-weight: 700;
    color: var(--pf-navy, #1c2340);
    font-size: 16px;
}

/* Variant type accents — different colors per category for quick scan */
.pfdb-variant-card.pfdb-variant-type-master-ball .pfdb-variant-badge {
    background: linear-gradient(135deg, #8b5cf6 0%, #6d28d9 100%);
}
.pfdb-variant-card.pfdb-variant-type-poke-ball .pfdb-variant-badge {
    background: linear-gradient(135deg, #ef4444 0%, #b91c1c 100%);
}
.pfdb-variant-card.pfdb-variant-type-prize-pack .pfdb-variant-badge {
    background: #d4a820;
    color: #1c2340;
}
.pfdb-variant-card.pfdb-variant-type-regional-championship .pfdb-variant-badge {
    background: #059669;
}
.pfdb-variant-card[class*="pfdb-variant-type-stamped-"] .pfdb-variant-badge {
    background: #b45309;
}
.pfdb-variant-card[class*="pfdb-variant-type-worlds-"] .pfdb-variant-badge {
    background: #1e40af;
}
.pfdb-variant-card.pfdb-variant-type-cosmo-holo .pfdb-variant-badge {
    background: linear-gradient(135deg, #06b6d4 0%, #0e7490 100%);
}
.pfdb-variant-card.pfdb-variant-type-holiday-calendar .pfdb-variant-badge {
    background: linear-gradient(135deg, #dc2626 0%, #16a34a 100%);
}
.pfdb-variant-card.pfdb-variant-type-jumbo .pfdb-variant-badge {
    background: #7c2d12;
}

@media (max-width: 600px) {
    .pfdb-variants-grid {
        grid-template-columns: 1fr;
    }
}

/* ── Variant tag in card detail H1 ─────────────────────────────────────── */
.pfdb-detail-variant-tag {
    display: inline-block;
    background: var(--pf-navy, #1c2340);
    color: #fff;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 0.55em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    vertical-align: middle;
    margin-left: 8px;
    line-height: 1.3;
}

/* ── Variant count badge inline next to card name on grid tiles ───────── */
.pfdb-card-name-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}
.pfdb-card-name-row .pfdb-card-name {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.pfdb-card-variants-badge {
    flex: 0 0 auto;
    background: var(--pf-navy, #1c2340);
    color: var(--pf-yellow, #d4a820);
    font-size: 11px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 10px;
    line-height: 1.3;
    pointer-events: none;
}



/* ── Auto-generated FAQ section ───────────────────────────────────────── */
.pfdb-faq-section {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 24px 28px;
    margin: 32px 0;
}
.pfdb-faq-title {
    color: #1c2340;
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid #d4a820;
}
.pfdb-faq-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.pfdb-faq-item {
    border: 1px solid #ececec;
    border-radius: 6px;
    background: #fafafa;
    transition: background-color 0.15s ease;
}
.pfdb-faq-item[open] {
    background: #fff;
    border-color: #d4a820;
}
.pfdb-faq-q {
    padding: 12px 16px;
    cursor: pointer;
    font-weight: 600;
    color: #1c2340;
    font-size: 15px;
    list-style: none;
    position: relative;
    user-select: none;
}
.pfdb-faq-q::-webkit-details-marker { display: none; }
.pfdb-faq-q::after {
    content: '+';
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 22px;
    color: #d4a820;
    font-weight: 400;
    line-height: 1;
}
.pfdb-faq-item[open] .pfdb-faq-q::after {
    content: '−';
}
.pfdb-faq-a {
    padding: 0 16px 14px;
    color: #444;
    font-size: 14px;
    line-height: 1.55;
}
@media (max-width: 600px) {
    .pfdb-faq-section { padding: 18px 16px; }
    .pfdb-faq-title { font-size: 20px; }
    .pfdb-faq-q { font-size: 14px; }
    .pfdb-faq-a { font-size: 13px; }
}

/* ── Mobile: hide "Card Database" label, give search box the recovered space ── */
@media (max-width: 600px) {
    .pfdb-topbar-brand { display: none; }
    .pfdb-topbar-inner { padding: .6rem .75rem; gap: .5rem; }
    .pfdb-search-bar { max-width: none; min-width: 0; }
    .pfdb-search-input { font-size: 13px; padding: 8px 10px; }
    .pfdb-search-btn { padding: 8px 12px; font-size: 12px; }
}

/* ── Set Value panel (Master Set total) ──────────────────────────────────── */
.pfdb-set-value-panel{
    max-width:520px;
    margin:1.5rem auto;
    padding:0 1rem;
}
.pfdb-set-value-card{
    background:#fff;
    border:2px solid #d4a820;
    border-radius:8px;
    padding:1.25rem 1.5rem;
    text-align:center;
}
.pfdb-set-value-label{
    font-family:'Oswald',sans-serif;
    font-size:.85rem;
    text-transform:uppercase;
    letter-spacing:.6px;
    color:#a47c00;
    font-weight:700;
    margin-bottom:.35rem;
}
.pfdb-set-value-amount{
    font-family:'Oswald',sans-serif;
    font-size:2rem;
    font-weight:700;
    color:#1c2340;
    line-height:1.1;
    margin-bottom:.4rem;
}
.pfdb-set-value-meta{
    font-size:.82rem;
    color:#666;
}
.pfdb-set-value-note{
    text-align:center;
    font-size:.78rem;
    color:#888;
    margin-top:.6rem;
    line-height:1.5;
}

/* Filter & Sort control groups: each has a label heading and its dropdowns.
   Groups align to the top of the row so when one group wraps to a taller
   height than the other (e.g. Filter has two dropdowns that stack on
   tablet width), the other group's label still aligns visually with the
   first group's label at the top. */
.pfdb-control-group{
    display:inline-flex;
    align-items:flex-start;
    gap:.5rem;
    flex-wrap:wrap;
    align-self:flex-start;
}
/* Add horizontal breathing room between the Filter group and the Sort
   group so they read as distinct sections rather than blending together. */
.pfdb-control-group + .pfdb-control-group{
    margin-left:1.5rem;
}
/* Labels for each control group */
.pfdb-control-label{
    font-size:.85rem;
    font-weight:700;
    color:#1c2340;
    text-transform:uppercase;
    letter-spacing:.4px;
    white-space:nowrap;
}

@media (max-width:560px){
    .pfdb-set-value-amount{font-size:1.65rem}
    /* On mobile, label sits ABOVE its group of controls so each subgroup
       has a clear heading. Controls below stretch to fill the row. */
    .pfdb-control-group{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:.4rem;
        width:100%;
    }
    .pfdb-control-label{
        font-size:.78rem;
    }
    .pfdb-control-group select{width:100%}
}

/* ── Graded Prices section (eBay sales) ──────────────────────────────────── */
.pfdb-graded-prices-section{margin-top:2.5rem;padding-bottom:1.5rem}
.pfdb-graded-intro{color:#666;font-size:.88rem;margin:0 0 1rem;max-width:720px;line-height:1.5}
.pfdb-graded-intro-meta{color:#999;font-size:.82rem}
.pfdb-graded-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr));
    gap:.45rem;
    margin-bottom:1rem;
    align-items:start;
}
.pfdb-graded-card{
    background:#fff;
    border:1.5px solid #e2e2e2;
    border-radius:5px;
    padding:.5rem .55rem .45rem;
    text-align:center;
    transition:border-color .15s, box-shadow .15s, transform .1s;
    position:relative;
}
/* Confidence-tinted borders: gold for HIGH (strongest signal), gray for
   MEDIUM, default for LOW. */
.pfdb-graded-card.pfdb-graded-conf-high{border-color:#d4a820}
.pfdb-graded-card.pfdb-graded-conf-medium{border-color:#a0a8b8}
.pfdb-graded-card.pfdb-graded-conf-low{border-color:#e2e2e2;opacity:.85}

/* Whole tile is clickable on expandable variants. Subtle hover lift gives
   the visual affordance previously carried by a corner chevron. */
.pfdb-graded-card-expandable{cursor:pointer}
.pfdb-graded-card-expandable:hover{transform:translateY(-1px);box-shadow:0 2px 5px rgba(0,0,0,.05)}
.pfdb-graded-card-expandable[open]{
    box-shadow:0 2px 6px rgba(0,0,0,.06);
    cursor:default;
}
.pfdb-graded-card-expandable[open]:hover{transform:none}
.pfdb-graded-card-summary{list-style:none;text-align:center;cursor:pointer}
.pfdb-graded-card-summary::-webkit-details-marker{display:none}

.pfdb-graded-grade-label{
    font-family:'Oswald',sans-serif;
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.4px;
    color:#1c2340;
    font-weight:700;
    margin-bottom:.15rem;
    line-height:1;
}
.pfdb-graded-price{
    font-family:'Oswald',sans-serif;
    font-size:1.05rem;
    font-weight:700;
    color:#1c2340;
    line-height:1.05;
    margin-bottom:.2rem;
}
.pfdb-graded-trend{
    font-size:.7rem;
    font-weight:600;
    margin-left:.1rem;
    vertical-align:middle;
}
.pfdb-trend-up{color:#2c8a3a}
.pfdb-trend-down{color:#b03030}

/* Meta line: sales count + tiny confidence dot, inline. Replaces the
   previous stacked "991 sales / HIGH confidence" layout. */
.pfdb-graded-meta{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.35rem;
    font-size:.7rem;
    color:#666;
    line-height:1;
}
.pfdb-graded-count{font-variant-numeric:tabular-nums}
.pfdb-graded-conf-dot{
    display:inline-block;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#ccc;
    flex-shrink:0;
}
.pfdb-graded-conf-dot-high{background:#2c8a3a}
.pfdb-graded-conf-dot-medium{background:#d4a820}
.pfdb-graded-conf-dot-low{background:#c0c0c0}

/* Inline sales list inside an expanded tile. */
.pfdb-graded-card-sales{
    list-style:none;
    margin:.5rem 0 0;
    padding:.45rem 0 0;
    border-top:1px dashed #e2e2e2;
    text-align:left;
    font-size:.78rem;
}
.pfdb-graded-card-sale{
    display:flex;
    justify-content:space-between;
    align-items:baseline;
    padding:.15rem 0;
    color:#555;
}
.pfdb-graded-card-sale-price{
    font-family:'Oswald',sans-serif;
    font-weight:700;
    color:#1c2340;
}
.pfdb-graded-card-sale-link{
    color:#1c2340;
    text-decoration:underline;
    text-decoration-color:#d4a820;
    text-underline-offset:2px;
}
.pfdb-graded-card-sale-link:hover{color:#d4a820}
.pfdb-graded-card-sale-date{font-size:.75rem;color:#888}
.pfdb-graded-card-sale-more{
    margin-top:.3rem;
    padding-top:.3rem;
    border-top:1px dashed #f0f0f0;
    font-size:.7rem;
    color:#999;
    font-style:italic;
    text-align:center;
}

.pfdb-graded-updated{
    margin-top:.85rem;
    color:#888;
    font-size:.75rem;
    text-align:right;
}
@media (max-width:560px){
    .pfdb-graded-grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:.4rem}
    .pfdb-graded-price{font-size:.95rem}
    .pfdb-graded-card{padding:.45rem .4rem .4rem}
}
