/* Slabedd — estilos base (herdados do protótipo). */

:root{--bg:var(--bg-f4f6f9);--surface:var(--bg-ffffff);--text:var(--fg-111827);--muted:var(--fg-6b7280);--line:var(--bd-e5e7eb);--accent:#c1272d;--accent2:#e5383b;--good:var(--fg-11875d);--bad:var(--fg-c2414a);--shadow:0 12px 32px rgba(17,24,39,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}.hidden{display:none!important}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--bg-111827);color:var(--fg-ffffff);padding:23px 17px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;margin:0 7px 30px}.mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(145deg,var(--accent),var(--bg-fb6066));display:grid;place-items:center;font-weight:900}.brand span{display:block;color:var(--fg-9ca3af);font-size:12px;margin-top:3px}.nav{display:grid;gap:8px}.nav button{border:0;background:transparent;color:var(--fg-cbd5e1);text-align:left;padding:13px 14px;border-radius:12px;font-weight:700}.nav button.active,.nav button:hover{background:rgba(255,255,255,0.1);color:var(--fg-ffffff)}.plan{margin-top:auto;border:1px solid rgba(255,255,255,0.12);border-radius:16px;padding:15px;background:rgba(255,255,255,0.05)}.plan small,.plan strong{display:block}.plan small{color:var(--fg-9ca3af)}.plan strong{margin:4px 0 12px}.main{padding:0 32px 45px;min-width:0}.top{height:105px;display:flex;align-items:center;justify-content:space-between}.top h1{margin:0;font-size:27px}.top p{margin:6px 0 0;color:var(--muted)}.chip{background:var(--bg-ffffff);border-radius:15px;padding:10px 13px;box-shadow:0 4px 15px rgba(0,0,0,0.05);font-size:13px}.view{display:none}.view.active{display:block}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px}.stat,.panel,.toolbar,.group{background:var(--surface);border-radius:19px;box-shadow:0 6px 20px rgba(17,24,39,0.045);border:1px solid var(--bd-ae5e7eb80)}.stat{padding:19px}.stat span,.stat strong,.stat small{display:block}.stat span,.stat small{color:var(--muted)}.stat strong{font-size:27px;margin:9px 0 3px}.toolbar{padding:13px;display:flex;gap:11px;flex-wrap:wrap;margin-bottom:18px}.search{flex:1;min-width:260px;position:relative}.search input{width:100%;padding:13px 42px 13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--bg-f8fafc);outline:none}.search input:focus{border-color:var(--bd-f78e92);box-shadow:0 0 0 4px rgba(242,96,102,0.11)}.clear{position:absolute;right:10px;top:7px;border:0;background:transparent;font-size:22px;color:var(--muted)}select{border:1px solid var(--line);border-radius:12px;background:var(--bg-ffffff);padding:10px 12px}.btn{border:0;border-radius:12px;padding:11px 14px;font-weight:800;cursor:pointer}.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--fg-ffffff)}.secondary{background:var(--bg-eef2ff);color:var(--fg-c63c41)}.danger{background:var(--bg-fff1f2);color:var(--fg-be123c)}.filters{width:100%;display:flex;gap:7px;flex-wrap:wrap}.filter{font-size:11px;font-weight:800;background:var(--bg-ede9fe);color:var(--fg-b2252a);border-radius:999px;padding:6px 9px}.message{background:var(--bg-fff7ed);border:1px solid var(--bd-fed7aa);color:var(--fg-9a3412);border-radius:14px;padding:14px 16px;margin-bottom:17px}.groups{display:grid;gap:20px}.group{padding:17px}.grouphead{display:flex;justify-content:space-between;align-items:end;margin-bottom:13px}.grouphead h2{margin:0;font-size:20px}.grouphead span{color:var(--muted);font-size:12px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:13px}.card{border:1px solid var(--line);border-radius:16px;padding:9px;background:var(--bg-ffffff);transition:.18s;position:relative}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.art{aspect-ratio:2.5/3.5;border-radius:11px;padding:10px;color:var(--fg-ffffff);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.art:before{content:"";position:absolute;width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,0.13);right:-40px;top:-40px}.art:after{content:"";position:absolute;width:75px;height:75px;border:2px solid rgba(255,255,255,0.2);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.art b,.art small{position:relative;z-index:1}.art b{font-size:30px;letter-spacing:-.08em}.art small:last-child{text-align:right;font-weight:800}.lang{position:absolute;right:15px;top:15px;background:var(--bg-a11182780);color:var(--fg-ffffff);border-radius:7px;font-size:10px;font-weight:900;padding:4px 6px;z-index:2}.info{padding:10px 2px 2px}.info h3{font-size:14px;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info p{font-size:11px;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bottom{display:flex;justify-content:space-between;align-items:center;margin-top:9px}.price{font-weight:900}.qty{font-size:11px;background:var(--bg-f3f4f6);border-radius:7px;padding:4px 6px}.actions{display:flex;gap:7px;margin-top:8px}.actions button{flex:1;border:0;border-radius:9px;padding:7px;background:var(--bg-f3f4f6);font-size:11px;font-weight:800;cursor:pointer}.actions .add{background:var(--bg-ede9fe);color:var(--fg-b2252a)}.marketHero{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.hero{flex:1;background:linear-gradient(135deg,var(--bg-111827),var(--bg-7f3033));color:var(--fg-ffffff);padding:23px;border-radius:21px}.hero span,.hero strong,.hero small{display:block}.hero span{color:var(--fg-fdc8ca)}.hero strong{font-size:37px;margin:8px 0}.hero small{color:var(--fg-cbd5e1)}.periods{display:flex;background:var(--bg-ffffff);padding:5px;border-radius:14px}.periods button{border:0;background:transparent;border-radius:10px;padding:9px 11px;font-weight:800;color:var(--muted);cursor:pointer}.periods button.active{background:var(--bg-ede9fe);color:var(--fg-b2252a)}.marketgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.panel{padding:20px;margin-bottom:17px}.eyebrow{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-e93e45)}.panel h3{margin:3px 0 16px}.move{display:grid;grid-template-columns:1fr auto;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}.move:last-child{border:0}.move strong,.move small{display:block}.move small{font-size:11px;color:var(--muted);margin-top:3px}.delta{font-weight:900;text-align:right}.good{color:var(--good)}.bad{color:var(--bad)}.bars{height:230px;display:flex;align-items:end;gap:7px}.barcol{flex:1;height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center}.bar{width:100%;max-width:33px;min-height:7px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--bg-f26066),var(--bg-f86167))}.barcol span{font-size:9px;color:var(--muted);margin-top:6px}.locked{text-align:center;padding:70px 25px;background:var(--bg-ffffff);border-radius:23px;box-shadow:var(--shadow)}.locked h2{margin-bottom:8px}.locked p{max-width:550px;margin:0 auto 20px;color:var(--muted)}.profile{display:grid;grid-template-columns:310px 1fr;gap:17px}.avatar{width:80px;height:80px;border-radius:24px;margin:0 auto 12px;background:linear-gradient(135deg,var(--accent),var(--accent2));display:grid;place-items:center;color:var(--fg-ffffff);font-size:29px;font-weight:900}.profileCard{text-align:center}.row{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--line);font-size:13px}.row span{color:var(--muted)}.toggleline{display:flex;justify-content:space-between;align-items:center;padding:15px 0}.toggleline input{width:20px;height:20px}.muted{color:var(--muted)}.modal{position:fixed;inset:0;background:var(--bg-a0f172a68);backdrop-filter:blur(7px);display:grid;place-items:center;padding:18px;z-index:100}.modalbox{width:min(540px,100%);max-height:90vh;overflow:auto;background:var(--bg-ffffff);border-radius:23px;padding:26px;position:relative}.modalbox.large{width:min(980px,100%)}.close{position:absolute;right:13px;top:11px;border:0;background:var(--bg-f3f4f6);width:34px;height:34px;border-radius:10px;font-size:20px}.paywall{text-align:center}.features{display:grid;gap:8px;text-align:left;background:var(--bg-f8fafc);border-radius:14px;padding:15px;margin:17px 0}.detail{display:grid;grid-template-columns:160px 1fr;gap:19px}.detail .art{width:160px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-size:11px;font-weight:800;background:var(--bg-ede9fe);color:var(--fg-b2252a);padding:6px 8px;border-radius:8px}.prices{margin-top:18px;border-top:1px solid var(--line)}.pricerow{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.pricerow span{color:var(--muted)}.empty{text-align:center;color:var(--muted);padding:45px;background:var(--bg-ffffff);border-radius:18px}.mobile{display:none}

.premiumHero{background:linear-gradient(135deg,var(--bg-111827),var(--bg-922024));color:var(--fg-ffffff);border-radius:24px;padding:32px;display:grid;grid-template-columns:1.25fr .75fr;gap:28px;align-items:center;box-shadow:var(--shadow);margin-bottom:18px}.premiumHero h2{font-size:34px;line-height:1.08;margin:8px 0 12px}.premiumHero p{color:var(--fg-ddd6fe);max-width:650px}.priceBox{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.17);border-radius:20px;padding:23px;text-align:center}.priceBox strong{font-size:44px;letter-spacing:-.04em}.priceBox small{display:block;color:var(--fg-ddd6fe);margin:4px 0 16px}.premiumCompare{display:grid;grid-template-columns:1fr 1fr;gap:17px}.planPanel{position:relative}.planPanel.featured{border:2px solid var(--bd-f26066)}.popular{position:absolute;top:-11px;right:17px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--fg-ffffff);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900}.planPrice{font-size:30px;font-weight:900;margin:10px 0}.planFeatures{display:grid;gap:10px;margin:18px 0}.planFeatures span{display:flex;gap:9px;align-items:flex-start}.check{color:var(--good);font-weight:900}.minus{color:var(--fg-9ca3af)}.premiumStatus{background:var(--bg-ecfdf5);border:1px solid var(--bd-a7f3d0);color:var(--fg-065f46);border-radius:16px;padding:15px;margin-bottom:17px;display:flex;align-items:center;justify-content:space-between;gap:12px}.premiumStatus strong,.premiumStatus small{display:block}.premiumStatus small{margin-top:3px}.paymentForm{display:grid;gap:13px;text-align:left}.paymentForm label{font-size:12px;font-weight:800;color:var(--fg-374151)}.paymentForm input,.paymentForm select{width:100%;margin-top:6px;border:1px solid var(--line);border-radius:11px;padding:12px;background:var(--bg-f8fafc);outline:none}.paymentForm input:focus,.paymentForm select:focus{border-color:var(--bd-f78e92);box-shadow:0 0 0 4px rgba(242,96,102,0.11)}.paymentGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkoutSummary{display:flex;justify-content:space-between;align-items:center;background:var(--bg-f8fafc);border-radius:14px;padding:14px;margin:15px 0}.secureNote{font-size:11px;color:var(--muted);text-align:center;margin-top:10px}.successIcon{width:66px;height:66px;margin:0 auto 15px;border-radius:50%;background:var(--bg-d1fae5);color:var(--fg-047857);display:grid;place-items:center;font-size:30px;font-weight:900}.subActions{display:flex;gap:9px;flex-wrap:wrap}.pricingIntro{margin:21px 0 12px}.pricingIntro h3{margin:3px 0 5px}.pricingGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.billingCard{background:var(--bg-ffffff);border:1px solid var(--line);border-radius:18px;padding:18px;position:relative;box-shadow:0 5px 16px rgba(17,24,39,0.035);display:flex;flex-direction:column}.billingCard.featured{border:2px solid var(--bd-f26066);box-shadow:0 12px 30px rgba(248,97,103,0.14)}.billingCard.selected{outline:3px solid rgba(248,97,103,0.14);border-color:var(--bd-f26066)}.billingCard h3{margin:5px 0 2px}.billingPrice{font-size:28px;font-weight:900;letter-spacing:-.035em;margin:11px 0 2px}.perMonth{font-size:12px;color:var(--muted);min-height:18px}.saving{display:inline-block;align-self:flex-start;background:var(--bg-ecfdf5);color:var(--fg-047857);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;margin:11px 0}.billingCard .btn{width:100%;margin-top:auto}.billingNote{color:var(--muted);font-size:11px;margin:10px 0 0}.planChoiceSummary{display:flex;justify-content:space-between;align-items:center;gap:15px;background:var(--bg-f8fafc);border:1px solid var(--line);border-radius:14px;padding:13px 14px;margin:13px 0}.planChoiceSummary span,.planChoiceSummary strong{display:block}.planChoiceSummary small{display:block;color:var(--muted);margin-top:3px}.priceBox .annualEquivalent{margin-top:-10px;margin-bottom:16px}.priceBox strong{display:block}
@media(max-width:1000px){.stats{grid-template-columns:1fr 1fr}.marketgrid{grid-template-columns:1fr}.premiumHero{grid-template-columns:1fr}.premiumCompare{grid-template-columns:1fr}.pricingGrid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.app{display:block}.sidebar{position:fixed;left:-270px;width:250px;z-index:50;transition:.2s}.sidebar.open{left:0}.main{padding:0 15px 30px}.top{height:90px}.top p,.chip{display:none}.mobile{display:inline-block;border:0;background:var(--bg-ffffff);border-radius:11px;padding:8px 10px;margin-right:10px}.stats{gap:9px}.stat{padding:14px}.stat strong{font-size:22px}.profile{grid-template-columns:1fr}.marketHero{display:block}.periods{margin-top:10px;justify-content:center}.detail{grid-template-columns:1fr}.detail .art{margin:auto}.top>div:first-child{display:flex;align-items:center}}
@media(max-width:460px){.stats{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.card{padding:6px}.info h3{font-size:12px}.info p{font-size:10px}.price{font-size:12px}}
.imageArt{padding:0;background:var(--bg-0f172a);overflow:hidden}.imageArt img{width:100%;height:100%;object-fit:cover;display:block}.imageArt small{position:absolute;z-index:2;background:var(--bg-a11182780);padding:6px 8px;border-radius:8px;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.imageArt small:first-of-type{top:8px;left:8px}.imageArt .rarity{bottom:8px;right:8px;text-align:right}.bannerImage{background:linear-gradient(135deg,var(--bg-111827),var(--bg-7f3033));border-radius:24px;overflow:hidden;margin:0 0 18px;display:grid;grid-template-columns:1fr}.bannerImage img{width:100%;display:block}

.imageArt{
  padding:0;
  overflow:hidden;
  position:relative;
  isolation:isolate;
}
.imageArt:before{
  width:180px;
  height:180px;
  right:-50px;
  top:-45px;
  background:rgba(255,255,255,0.18);
  filter:blur(2px);
}
.imageArt:after{
  width:130px;
  height:130px;
  border:3px solid rgba(255,255,255,0.16);
}
.imageArt img{
  position:absolute;
  inset:42px 10px 25px;
  width:calc(100% - 20px);
  height:calc(100% - 67px);
  object-fit:contain;
  display:block;
  z-index:1;
  filter:drop-shadow(0 14px 13px rgba(0,0,0,0.32));
  transition:transform .22s ease;
}
.card:hover .imageArt img{transform:scale(1.055)}
.imageArt small{
  position:absolute;
  z-index:4;
  background:var(--bg-a11182782);
  backdrop-filter:blur(6px);
  padding:6px 8px;
  border-radius:8px;
  max-width:70%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.imageArt small:first-of-type{top:8px;left:8px}
.imageArt .rarity{bottom:8px;right:8px;text-align:right}
.imageFallback{
  position:absolute!important;
  z-index:0!important;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  font-size:56px!important;
  color:rgba(255,255,255,0.25);
}
.shinyArt{
  box-shadow:inset 0 0 30px rgba(255,255,255,0.15);
}
.shinyArt:before{
  background:radial-gradient(circle,var(--bg-affffff55),rgba(255,255,255,0) 65%);
}
.shinyBadge{
  position:absolute;
  z-index:5;
  left:8px;
  bottom:8px;
  background:linear-gradient(135deg,var(--bg-fef08a),var(--bg-faadb0),var(--bg-93c5fd));
  color:var(--fg-7f3033);
  padding:5px 7px;
  border-radius:7px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.06em;
}
.dbNotice{
  display:flex;
  align-items:center;
  gap:9px;
  background:var(--bg-ecfeff);
  color:var(--fg-155e75);
  border:1px solid var(--bd-a5f3fc);
  border-radius:13px;
  padding:11px 14px;
  margin:0 0 17px;
  font-size:12px;
}


.cardScan{
  padding:0!important;
  background:transparent!important;
  overflow:visible!important;
  aspect-ratio:600/825!important;
  border-radius:11px!important;
}
.cardScan:before,.cardScan:after{display:none!important}
.cardScan img{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block;
  z-index:2;
  border-radius:11px;
  filter:drop-shadow(0 9px 9px rgba(15,23,42,0.18))!important;
  transition:transform .2s ease;
}
.card:hover .cardScan img{transform:scale(1.025)}
.scanFallback{
  position:absolute!important;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--fg-ffffff)!important;
  background:linear-gradient(145deg,var(--bg-f86167),var(--bg-111827));
  border-radius:11px;
  font-size:42px!important;
  z-index:0!important;
}
.cardScan .shinyBadge{
  position:absolute;
  left:7px;
  bottom:7px;
  z-index:4;
  background:linear-gradient(135deg,var(--bg-fef08a),var(--bg-faadb0),var(--bg-93c5fd));
  color:var(--fg-7f3033);
  border:1px solid var(--bd-affffff65);
  border-radius:7px;
  padding:5px 7px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.07em;
  box-shadow:0 3px 10px rgba(15,23,42,0.25);
}
.realCardsHero{
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:24px;
  align-items:center;
  min-height:300px;
  overflow:hidden;
  margin:0 0 18px;
  padding:28px 30px;
  border-radius:24px;
  color:var(--fg-ffffff);
  background:radial-gradient(circle at 90% 10%,rgba(247,142,146,0.35),transparent 36%),
    linear-gradient(135deg,var(--bg-111827),var(--bg-7f3033));
  box-shadow:var(--shadow);
}
.realCardsCopy span{
  display:inline-block;
  font-size:10px;
  font-weight:950;
  letter-spacing:.11em;
  color:var(--fg-ddd6fe);
}
.realCardsCopy h2{
  margin:8px 0 12px;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-.035em;
}
.realCardsCopy p{margin:0;color:var(--fg-dbe4f1);line-height:1.55}
.heroCards{
  min-height:250px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 35px;
}
.heroCards img{
  width:155px;
  max-height:235px;
  object-fit:contain;
  border-radius:9px;
  box-shadow:0 16px 35px rgba(0,0,0,0.35);
}
.heroCards img:nth-child(1){transform:rotate(-9deg) translateX(24px)}
.heroCards img:nth-child(2){transform:translateY(-8px);z-index:2}
.heroCards img:nth-child(3){transform:rotate(9deg) translateX(-24px)}
@media(max-width:900px){
  .realCardsHero{grid-template-columns:1fr;padding:24px}
  .heroCards{min-height:210px}
  .heroCards img{width:130px;max-height:200px}
}
@media(max-width:500px){
  .realCardsCopy h2{font-size:27px}
  .heroCards{padding:0;min-height:180px}
  .heroCards img{width:105px;max-height:165px}
}


.collectionToolbar{align-items:center}
.collectionMode{
  display:flex;
  align-items:center;
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--bg-f8fafc);
}
.collectionMode button{
  border:0;
  background:transparent;
  color:var(--muted);
  border-radius:9px;
  padding:9px 12px;
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
}
.collectionMode button.active{
  background:var(--bg-ffffff);
  color:var(--fg-b2252a);
  box-shadow:0 3px 9px rgba(17,24,39,0.09);
}
.ownedOnly{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--bg-ffffff);
  color:var(--fg-374151);
  font-size:12px;
  font-weight:750;
  cursor:pointer;
}
.ownedOnly input{display:none}
.ownedCheck{
  width:20px;
  height:20px;
  border:2px solid var(--bd-fbb7b9);
  border-radius:6px;
  display:grid;
  place-items:center;
  background:var(--bg-ffffff);
}
.ownedOnly input:checked + .ownedCheck{
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  border-color:transparent;
}
.ownedOnly input:checked + .ownedCheck:after{
  content:"✓";
  color:var(--fg-ffffff);
  font-size:13px;
  font-weight:950;
}
.setOverviewHeader{
  display:flex;
  align-items:end;
  justify-content:space-between;
  margin-bottom:14px;
}
.setOverviewHeader h2{margin:4px 0 6px;font-size:24px}
.setOverviewHeader p{margin:0;color:var(--muted)}
.setTiles{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:16px;
}
.setTile{
  border:1px solid var(--line);
  background:var(--bg-ffffff);
  border-radius:20px;
  overflow:hidden;
  padding:0;
  text-align:left;
  color:var(--text);
  box-shadow:0 6px 20px rgba(17,24,39,0.05);
  transition:.2s ease;
}
.setTile:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(17,24,39,0.12);
}
.setTileVisual{
  height:180px;
  position:relative;
  overflow:hidden;
  background:radial-gradient(circle at 75% 20%,rgba(255,255,255,0.25),transparent 30%),
    linear-gradient(135deg,var(--bg-111827),var(--bg-922024));
}
.setTileVisual:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 50%,var(--bg-a0f172a50));
}
.setTileVisual img{
  width:145px;
  height:195px;
  object-fit:contain;
  display:block;
  margin:4px auto 0;
  transform:rotate(6deg);
  filter:drop-shadow(0 14px 18px rgba(0,0,0,0.35));
  position:relative;
  z-index:1;
}
.setLanguage{
  position:absolute;
  right:12px;
  top:12px;
  z-index:3;
  background:var(--bg-a11182782);
  color:var(--fg-ffffff);
  padding:5px 7px;
  border-radius:7px;
  font-size:10px;
  font-weight:950;
}
.setLanguage.large{
  position:static;
  min-width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  font-size:12px;
}
.setTileInfo{padding:17px}
.setTileInfo h3{margin:3px 0 8px;font-size:18px}
.setTileInfo p{margin:0 0 11px;color:var(--muted)}
.setTileInfo p strong{color:var(--text);font-size:18px}
.setTileInfo small{display:block;margin-top:8px;color:var(--muted)}
.setYear{
  color:var(--fg-e93e45);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.setProgress,.setDetailProgress{
  height:8px;
  border-radius:999px;
  background:var(--bg-ede9fe);
  overflow:hidden;
}
.setProgress span,.setDetailProgress span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--accent),var(--accent2));
  min-width:2px;
}
.setDetail{
  background:var(--bg-ffffff);
  border-radius:22px;
  padding:20px;
  box-shadow:0 6px 20px rgba(17,24,39,0.05);
}
.setDetailHead{margin-bottom:20px}
.backSets{
  border:0;
  background:var(--bg-f3f4f6);
  color:var(--fg-4b5563);
  padding:9px 11px;
  border-radius:10px;
  font-size:12px;
  font-weight:800;
  margin-bottom:16px;
}
.setDetailTitle{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:13px;
}
.setDetailTitle h2{margin:0 0 4px;font-size:26px}
.setDetailTitle p{margin:0;color:var(--muted)}
.setDetailHead>small{
  display:block;
  margin-top:7px;
  color:var(--muted);
}
.checklistGrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(135px,1fr));
  gap:12px;
}
.checkCard{
  border:1px solid var(--line);
  border-radius:15px;
  padding:8px;
  background:var(--bg-ffffff);
  position:relative;
  min-width:0;
}
.checkCard .cardScan{border-radius:10px!important}
.checkCardInfo{padding:8px 2px 5px}
.checkCardInfo strong,.checkCardInfo small{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.checkCardInfo strong{font-size:12px}
.checkCardInfo small{font-size:10px;color:var(--muted);margin-top:3px}
.checkCard>button{
  width:100%;
  border:0;
  border-radius:8px;
  padding:7px;
  background:var(--bg-f3f4f6);
  font-size:10px;
  font-weight:800;
}
.checkStatus{
  position:absolute;
  left:13px;
  top:13px;
  z-index:7;
  border-radius:7px;
  padding:5px 7px;
  font-size:9px;
  font-weight:950;
  color:var(--fg-ffffff);
  background:var(--bg-11875d);
  box-shadow:0 4px 10px rgba(0,0,0,0.2);
}
.unownedCard .checkStatus{background:var(--bg-6b7280)}
.unownedCard .cardScan img{
  filter:grayscale(1) opacity(.35)!important;
}
.unownedCard{
  background:var(--bg-f3f4f6);
  border-color:var(--bd-d1d5db);
}
.missingCard{
  padding:0;
  border-style:dashed;
  background:var(--bg-f3f4f6);
  min-height:215px;
}
.missingVisual{
  min-height:215px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  color:var(--fg-9ca3af);
  background:linear-gradient(135deg,var(--bg-affffff80),var(--bg-ae5e7eb70)),
    repeating-linear-gradient(45deg,var(--bg-e5e7eb),var(--bg-e5e7eb) 8px,var(--bg-f3f4f6) 8px,var(--bg-f3f4f6) 16px);
}
.missingNumber{font-size:11px;font-weight:900;margin-bottom:18px}
.missingIcon{
  width:56px;
  height:56px;
  border:2px solid var(--bd-cbd5e1);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:25px;
  font-weight:900;
  margin-bottom:14px;
}
.missingVisual small{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:760px){
  .collectionMode{width:100%}
  .collectionMode button{flex:1}
  .ownedOnly{width:100%;justify-content:center}
  .setTiles{grid-template-columns:1fr}
  .checklistGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .missingCard,.missingVisual{min-height:175px}
}
@media(max-width:470px){
  .checklistGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


.setLanguageSwitch{
  display:flex;
  gap:4px;
  padding:4px;
  background:var(--bg-111827);
  border-radius:13px;
}
.setLanguageSwitch button{
  border:0;
  border-radius:9px;
  padding:9px 13px;
  background:transparent;
  color:var(--fg-cbd5e1);
  font-size:12px;
  font-weight:850;
}
.setLanguageSwitch button.active{
  background:var(--bg-ffffff);
  color:var(--fg-b2252a);
}
.setLogoStage{
  position:absolute;
  inset:18px 20px 14px;
  display:grid;
  place-items:center;
}
.setLogoFallback{
  font-size:42px;
  font-weight:950;
  letter-spacing:-.08em;
  color:rgba(255,255,255,0.22);
}
.setLogoImage{
  position:absolute!important;
  inset:20px!important;
  width:calc(100% - 40px)!important;
  height:calc(100% - 40px)!important;
  margin:0!important;
  transform:none!important;
  object-fit:contain!important;
  filter:drop-shadow(0 10px 15px rgba(0,0,0,0.35))!important;
}
.setSymbolImage{
  position:absolute!important;
  left:10px!important;
  bottom:7px!important;
  width:38px!important;
  height:38px!important;
  margin:0!important;
  transform:none!important;
  object-fit:contain!important;
  filter:drop-shadow(0 4px 6px rgba(0,0,0,0.25))!important;
  z-index:3!important;
}
.catalogLoading{
  min-height:260px;
  display:flex;
  flex-direction:column;
  gap:14px;
  align-items:center;
  justify-content:center;
  color:var(--muted);
  background:var(--bg-ffffff);
  border-radius:20px;
  box-shadow:0 6px 20px rgba(17,24,39,0.045);
}
.loadingSpinner{
  width:40px;
  height:40px;
  border:4px solid var(--bd-ddd6fe);
  border-top-color:var(--bd-f86167);
  border-radius:50%;
  animation:setSpin .75s linear infinite;
}
@keyframes setSpin{to{transform:rotate(360deg)}}
.remoteCardArt{
  aspect-ratio:2.5/3.5;
  position:relative;
  overflow:hidden;
  border-radius:10px;
  background:linear-gradient(145deg,var(--bg-6b7280),var(--bg-111827));
}
.remoteCardArt img{
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.remoteCardFallback{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:rgba(255,255,255,0.45);
  font-size:25px;
  font-weight:950;
}
.unownedCard .remoteCardArt img{
  filter:grayscale(1) opacity(.30)!important;
}
.ownedCard .remoteCardArt img{
  filter:none!important;
}
.disabledCardButton{
  color:var(--fg-9ca3af)!important;
  cursor:default!important;
}
.setDetailIdentity{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:14px;
}
.detailSetLogo{
  position:relative;
  width:150px;
  height:74px;
  flex:0 0 150px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--bg-111827),var(--bg-922024));
  display:grid;
  place-items:center;
  overflow:hidden;
}
.detailSetLogo>span{
  color:rgba(255,255,255,0.28);
  font-size:28px;
  font-weight:950;
}
.detailSetLogo img{
  position:absolute;
  inset:10px;
  width:calc(100% - 20px);
  height:calc(100% - 20px);
  object-fit:contain;
}
.dynamicSetHead .setDetailTitle{margin:0}
@media(max-width:760px){
  .setLanguageSwitch{width:100%}
  .setLanguageSwitch button{flex:1}
  .setDetailIdentity{align-items:flex-start;flex-direction:column}
  .detailSetLogo{width:100%;flex-basis:90px}
}


.setSortSelect{
  min-width:205px;
  border:1px solid var(--bd-fbb7b9);
  background:var(--bg-ffffff);
  color:var(--fg-922024);
  font-weight:800;
}
.setSortSelect:focus{
  border-color:var(--bd-f26066);
  box-shadow:0 0 0 4px rgba(242,96,102,0.11);
}
@media(max-width:760px){
  .setSortSelect{width:100%}
}


.zoomableCard{
  cursor:zoom-in;
  outline:none;
}
.zoomableCard:focus-visible{
  box-shadow:0 0 0 4px rgba(248,97,103,0.28)!important;
}
.zoomBadge{
  position:absolute;
  right:7px;
  top:7px;
  z-index:8;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:var(--bg-a11182782);
  color:var(--fg-ffffff);
  font-size:19px;
  font-weight:900;
  backdrop-filter:blur(7px);
  opacity:0;
  transform:translateY(-3px);
  transition:.18s ease;
  pointer-events:none;
}
.zoomableCard:hover .zoomBadge,
.zoomableCard:focus-visible .zoomBadge{
  opacity:1;
  transform:none;
}
.zoomViewer{
  position:fixed;
  inset:0;
  z-index:500;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  background:var(--bg-a05081296);
  color:var(--fg-ffffff);
  overscroll-behavior:none;
}
.zoomViewerBar{
  min-height:70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 18px;
  border-bottom:1px solid rgba(255,255,255,0.13);
  background:var(--bg-a11182778);
  backdrop-filter:blur(14px);
}
.zoomViewerTitle{
  min-width:0;
}
.zoomViewerTitle strong,
.zoomViewerTitle span{
  display:block;
}
.zoomViewerTitle strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:min(52vw,650px);
  font-size:14px;
}
.zoomViewerTitle span{
  color:var(--fg-cbd5e1);
  font-size:12px;
  margin-top:3px;
}
.zoomViewerControls{
  display:flex;
  gap:7px;
  flex-shrink:0;
}
.zoomViewerControls button{
  min-width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,0.16);
  border-radius:11px;
  background:rgba(255,255,255,0.09);
  color:var(--fg-ffffff);
  font-weight:850;
}
.zoomViewerControls button:hover{
  background:rgba(255,255,255,0.17);
}
.zoomViewerControls .zoomClose{
  background:var(--bg-ffffff);
  color:var(--fg-111827);
  font-size:22px;
}
.zoomViewport{
  min-height:0;
  overflow:hidden;
  position:relative;
  display:grid;
  place-items:center;
  padding:24px;
  touch-action:none;
  cursor:zoom-in;
  user-select:none;
}
.zoomViewport.isZoomed{
  cursor:grab;
}
.zoomViewport.isZoomed:active{
  cursor:grabbing;
}
.zoomViewport img{
  display:block;
  max-width:min(88vw,760px);
  max-height:calc(100vh - 155px);
  object-fit:contain;
  border-radius:15px;
  transform-origin:center;
  will-change:transform;
  filter:drop-shadow(0 26px 40px rgba(0,0,0,0.55));
}
.zoomViewerHint{
  min-height:42px;
  display:flex;
  justify-content:center;
  gap:22px;
  align-items:center;
  padding:9px 18px;
  border-top:1px solid rgba(255,255,255,0.1);
  color:var(--fg-94a3b8);
  font-size:11px;
  background:var(--bg-a11182768);
}
body.zoomOpen{
  overflow:hidden;
}
@media(max-width:680px){
  .zoomViewerBar{
    align-items:flex-start;
    padding:10px;
  }
  .zoomViewerTitle strong{
    max-width:42vw;
    font-size:12px;
  }
  .zoomViewerControls{
    gap:4px;
  }
  .zoomViewerControls button{
    min-width:39px;
    height:39px;
    padding:0 8px;
  }
  .zoomViewport{
    padding:12px;
  }
  .zoomViewport img{
    max-width:94vw;
    max-height:calc(100vh - 140px);
    border-radius:11px;
  }
  .zoomViewerHint{
    min-height:34px;
    padding:7px 10px;
  }
  .zoomViewerHint span{
    display:none;
  }
  .zoomViewerHint:after{
    content:"Usa dois dedos ou os botões para ampliar";
  }
  .zoomBadge{
    opacity:1;
    transform:none;
    width:27px;
    height:27px;
    font-size:17px;
  }
}


.topActions{display:flex;align-items:center;gap:10px}
.uiLanguagePicker{
  display:flex;
  align-items:center;
  gap:7px;
  padding:6px 8px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--bg-ffffff);
  box-shadow:0 4px 15px rgba(0,0,0,0.04);
}
.uiLanguagePicker select{
  border:0;
  padding:4px 24px 4px 2px;
  background:transparent;
  font-size:12px;
  font-weight:750;
}
.setEnglishName{
  min-height:18px;
  margin:-3px 0 8px;
  color:var(--fg-d52c33);
  font-size:11px;
  line-height:1.3;
  font-weight:750;
}
.japaneseSetStage{
  justify-items:start;
  padding-left:15px;
}
.japaneseSetStage .setLogoImage{
  inset:25px 105px 25px 18px!important;
  width:calc(100% - 123px)!important;
  height:calc(100% - 50px)!important;
  z-index:3;
}
.setCardPreview{
  position:absolute!important;
  right:-4px!important;
  bottom:-28px!important;
  width:118px!important;
  height:166px!important;
  object-fit:contain!important;
  transform:rotate(8deg)!important;
  z-index:2!important;
  filter:drop-shadow(0 13px 16px rgba(0,0,0,0.38))!important;
}
.dynamicSetHead .setEnglishName{margin:4px 0 6px}
@media(max-width:780px){
  .topActions{gap:5px}
  .uiLanguagePicker span{display:none}
  .uiLanguagePicker select{max-width:130px}
}
@media(max-width:520px){
  .uiLanguagePicker select{max-width:105px;font-size:11px}
  .chip{display:none}
}


.setTileVisual{
  background:radial-gradient(circle at 78% 20%,rgba(255,255,255,0.19),transparent 31%),
    linear-gradient(135deg,var(--bg-0f172a),var(--bg-922024))!important;
}
.setLogoStage{
  inset:0!important;
  padding:16px;
  overflow:hidden;
}
.setCoverBackdrop{
  position:absolute;
  inset:0;
  opacity:.52;
  background:radial-gradient(circle at 68% 28%,rgba(251,183,185,0.38),transparent 28%),
    repeating-linear-gradient(135deg,rgba(255,255,255,0.035) 0 12px,transparent 12px 24px);
}
.setCoverBall{
  position:absolute;
  right:-34px;
  top:-33px;
  width:155px;
  height:155px;
  border:16px solid rgba(255,255,255,0.08);
  border-radius:50%;
}
.setCoverBall:before{
  content:"";
  position:absolute;
  left:-16px;
  right:-16px;
  top:52px;
  height:16px;
  background:rgba(255,255,255,0.08);
}
.setCoverBall:after{
  content:"";
  position:absolute;
  left:42px;
  top:36px;
  width:39px;
  height:39px;
  border:10px solid rgba(255,255,255,0.08);
  background:var(--bg-7f3033);
  border-radius:50%;
}
.setLogoFallback{
  position:absolute;
  left:18px;
  bottom:20px;
  max-width:58%;
  font-size:34px!important;
  line-height:.88;
  text-align:left;
  z-index:1;
}
.setCardPreview{
  display:none;
  position:absolute!important;
  right:12px!important;
  bottom:-27px!important;
  width:116px!important;
  height:164px!important;
  object-fit:contain!important;
  transform:rotate(7deg)!important;
  z-index:2!important;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,0.42))!important;
}
.setCardPreview.loaded{display:block}
.setLogoImage{
  position:absolute!important;
  left:16px!important;
  right:auto!important;
  top:25px!important;
  bottom:auto!important;
  width:calc(100% - 138px)!important;
  height:92px!important;
  margin:0!important;
  transform:none!important;
  object-fit:contain!important;
  object-position:left center!important;
  filter:drop-shadow(0 9px 12px rgba(0,0,0,0.38))!important;
  z-index:4!important;
}
.setSymbolImage{
  left:17px!important;
  bottom:13px!important;
  width:34px!important;
  height:34px!important;
}
.japaneseSetStage .setLogoImage{
  inset:auto!important;
  left:16px!important;
  top:25px!important;
  width:calc(100% - 138px)!important;
  height:92px!important;
}
.setImageSource{
  position:absolute;
  right:12px;
  bottom:9px;
  z-index:5;
  font-size:8px;
  font-weight:900;
  color:var(--fg-affffff66);
  letter-spacing:.07em;
}
.addCardModal{max-width:1040px!important}
.addTabs{
  display:flex;
  gap:5px;
  padding:5px;
  margin:14px 0 18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--bg-f3f4f6);
}
.addTabs button{
  flex:1;
  border:0;
  border-radius:10px;
  padding:11px 14px;
  background:transparent;
  color:var(--muted);
  font-weight:850;
}
.addTabs button.active{
  background:var(--bg-ffffff);
  color:var(--fg-b2252a);
  box-shadow:0 4px 12px rgba(17,24,39,0.08);
}
.scannerIntro{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:16px;
  border:1px solid var(--bd-ddd6fe);
  border-radius:17px;
  background:var(--bg-f5f3ff);
}
.scannerIntro h3{margin:0 0 5px}
.scannerIntro p{margin:0;color:var(--muted);line-height:1.5}
.scannerIcon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:var(--fg-ffffff);
  font-size:24px;
}
.scanOptions{
  display:grid;
  grid-template-columns:minmax(165px,.45fr) minmax(260px,1fr);
  gap:13px;
  align-items:stretch;
  margin:14px 0;
}
.scanOptions>label:first-child{
  display:flex;
  flex-direction:column;
  gap:7px;
  font-size:12px;
  font-weight:800;
}
.scanOptions select{
  width:100%;
  padding:12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--bg-ffffff);
}
.cameraButton{
  display:flex;
  align-items:center;
  gap:12px;
  border:1px dashed var(--bd-f26066);
  border-radius:14px;
  padding:12px 15px;
  color:var(--fg-b2252a);
  background:var(--bg-faf5ff);
  cursor:pointer;
}
.cameraButton>span{font-size:25px}
.cameraButton strong,.cameraButton small{display:block}
.cameraButton small{color:var(--muted);font-weight:500;margin-top:2px}
.scanPreview{
  position:relative;
  min-height:350px;
  max-height:540px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(45deg,var(--bg-f3f4f6) 25%,transparent 25%),
    linear-gradient(-45deg,var(--bg-f3f4f6) 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,var(--bg-f3f4f6) 75%),
    linear-gradient(-45deg,transparent 75%,var(--bg-f3f4f6) 75%);
  background-size:24px 24px;
  background-position:0 0,0 12px,12px -12px,-12px 0;
}
.scanPreview img{
  display:none;
  width:100%;
  height:100%;
  max-height:540px;
  object-fit:contain;
  background:var(--bg-111827);
}
.scanPreview.hasImage img{display:block}
.scanPreview.hasImage .scanPlaceholder{display:none}
.scanPlaceholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  color:var(--fg-6b7280);
  text-align:center;
}
.scanPlaceholder>span{font-size:42px}
.scanPlaceholder small{font-size:11px}
.identifyButton{
  width:100%;
  margin-top:13px;
  min-height:47px;
}
.scanProgress{
  margin-top:15px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--bg-ffffff);
}
.scanProgressHead{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
  font-size:12px;
}
.scanProgressTrack{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:var(--bg-ede9fe);
}
.scanProgressTrack span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--accent),var(--accent2));
  transition:width .2s ease;
}
.scanMessage{
  margin-top:14px;
  padding:13px 15px;
  border:1px solid var(--bd-fde68a);
  border-radius:13px;
  background:var(--bg-fffbeb);
  color:var(--fg-92400e);
  line-height:1.45;
}
.detectedText{
  margin-top:13px;
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:12px;
}
.detectedText summary{cursor:pointer;font-weight:800}
.detectedText pre{
  max-height:180px;
  overflow:auto;
  white-space:pre-wrap;
  font-size:11px;
  color:var(--muted);
}
.scanResults{margin-top:20px}
.scanResultsHead{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.scanResultsHead h3{margin:3px 0 0}
.scanResultGrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(175px,1fr));
  gap:13px;
}
.scanCandidate{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--bg-ffffff);
}
.scanCandidateImage{
  aspect-ratio:2.5/3.5;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--bg-e5e7eb),var(--bg-f9fafb));
}
.scanCandidateImage img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.scanCandidateInfo{padding:12px}
.scanCandidateInfo h4{
  margin:0 0 5px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.scanCandidateInfo p{
  min-height:32px;
  margin:0 0 9px;
  color:var(--muted);
  font-size:11px;
}
.scanCandidate .btn{width:100%}
.confidenceBadge{
  position:absolute;
  z-index:4;
  right:8px;
  top:8px;
  padding:5px 7px;
  border-radius:8px;
  color:var(--fg-ffffff);
  background:var(--bg-a11182786);
  font-size:10px;
  font-weight:900;
}
.scanAdded{
  padding:20px;
  border:1px solid var(--bd-a7f3d0);
  border-radius:16px;
  background:var(--bg-ecfdf5);
  color:var(--fg-065f46);
  text-align:center;
}
@media(max-width:760px){
  .scanOptions{grid-template-columns:1fr}
  .scanPreview{min-height:300px}
  .scanResultsHead{align-items:stretch;flex-direction:column}
  .scanResultsHead .btn{width:100%}
}


/* v1.3 — collection tiles */
.setTile{
  border:1px solid var(--bd-e2e8f0)!important;
  background:var(--bg-ffffff)!important;
}
.setTileVisual{
  height:164px!important;
  position:relative!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:var(--bg-ffffff)!important;
  border-bottom:1px solid var(--bd-e2e8f0)!important;
}
.setLogoStage,
.japaneseSetStage{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  justify-items:center!important;
  padding:22px 30px!important;
  overflow:hidden!important;
  background:var(--bg-ffffff)!important;
}
.setCoverBackdrop,
.setCoverBall,
.setImageSource,
.setSymbolImage{
  display:none!important;
}
.setLogoImage,
.japaneseSetStage .setLogoImage{
  position:static!important;
  inset:auto!important;
  display:block;
  width:min(100%,230px)!important;
  max-width:230px!important;
  height:105px!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
  z-index:3!important;
}
.setLogoFallback{
  position:static!important;
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  max-width:230px!important;
  min-height:92px!important;
  margin:auto!important;
  color:var(--fg-cbd5e1)!important;
  font-size:30px!important;
  line-height:1!important;
  text-align:center!important;
  letter-spacing:-.035em!important;
  z-index:1!important;
}
.setLogoStage.hasLogo .setLogoFallback{
  display:none!important;
}
.setCardPreview{
  display:none!important;
}
.setLogoStage.logoUnavailable .setCardPreview.loaded{
  position:static!important;
  display:block!important;
  width:86px!important;
  height:122px!important;
  margin:auto!important;
  object-fit:contain!important;
  transform:none!important;
  filter:none!important;
  z-index:2!important;
}
.setLogoStage.logoUnavailable.previewLoaded .setLogoFallback{
  display:none!important;
}
.setLanguage{
  right:10px!important;
  top:10px!important;
  background:var(--bg-ffffff)!important;
  color:var(--fg-475569)!important;
  border:1px solid var(--bd-e2e8f0)!important;
  box-shadow:none!important;
}
.close{
  z-index:50!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.collectionEmptyState strong{
  display:block;
  color:var(--text);
  font-size:17px;
}
.collectionEmptyState p{
  margin:7px 0 14px;
}


/* v1.3.1 — clean set covers, no gradient */
.setTileVisual{
  background:var(--bg-ffffff)!important;
}
.setTileVisual:after{
  content:none!important;
  display:none!important;
  background:none!important;
}
.setLogoStage,
.japaneseSetStage{
  z-index:3!important;
  background:var(--bg-ffffff)!important;
}
.setCardPreview,
.setLogoStage.logoUnavailable .setCardPreview.loaded{
  display:none!important;
}
.setLogoFallback{
  color:var(--fg-d4dbe6)!important;
}


/* v1.4 — information architecture */
#collectionView .stats{display:none!important}
#collectionView .collectionMode,
#collectionView #sort,
#collectionView #filters,
#collectionView #message{display:none!important}
#collectionView .setLanguageSwitch,
#collectionView .setSortSelect{display:flex!important}
#collectionView .setSortSelect{display:block!important}
#collectionView .ownedOnly.hidden{display:none!important}
#collectionView .ownedOnly:not(.hidden){display:flex!important}
.setsOnlyToolbar{align-items:center}
.ownedCollectionToolbar{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;align-items:center}
#catalogView .stats{margin-bottom:18px}
#catalogView #catalogGrid{margin-top:18px}
.collectionPageIntro{margin-bottom:14px}
.collectionPageIntro h2{margin:0 0 5px;font-size:23px}
.collectionPageIntro p{margin:0;color:var(--muted)}
@media(max-width:900px){
  .ownedCollectionToolbar{grid-template-columns:1fr 160px}
  .ownedCollectionToolbar #addCard{grid-column:1/-1;width:100%}
}
@media(max-width:620px){
  .ownedCollectionToolbar{grid-template-columns:1fr}
  .ownedCollectionToolbar #lang{width:100%}
}


/* v1.5.3 — reliable photograph, recognition and save flow */
.scanOptionsReliable{
  grid-template-columns:minmax(145px,.42fr) repeat(2,minmax(205px,1fr))!important;
}
.primaryCamera{
  color:var(--fg-ffffff)!important;
  border:1px solid var(--bd-b2252a)!important;
  background:var(--bg-f86167)!important;
}
.primaryCamera small{color:var(--fg-ede9fe)!important}
.galleryButton{
  color:var(--fg-b2252a)!important;
  border:1px solid var(--bd-fbb7b9)!important;
  background:var(--bg-faf5ff)!important;
}
.galleryButton small{color:var(--fg-e93e45)!important}
.scanAssist{
  margin-top:15px;
  padding:16px;
  border:1px solid var(--bd-ddd6fe);
  border-radius:16px;
  background:var(--bg-faf5ff);
}
.scanAssist h3{margin:4px 0 6px}
.scanAssist p{margin:0;color:var(--muted);line-height:1.45}
.scanAssistSearch{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  margin-top:12px;
}
.scanAssistSearch input{
  min-width:0;
  padding:12px 13px;
  border:1px solid var(--bd-fbb7b9);
  border-radius:11px;
  background:var(--bg-ffffff);
}
.scanCandidate.exactMatch{
  border-color:var(--bd-f26066);
  box-shadow:0 0 0 2px rgba(242,96,102,0.12);
}
.scanCandidate .saveScanCard{
  width:100%;
}
.scanSaveConfirmation{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  margin-top:16px;
  padding:15px;
  border:1px solid var(--bd-a7f3d0);
  border-radius:15px;
  background:var(--bg-ecfdf5);
  color:var(--fg-065f46);
}
.scanSaveIcon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:var(--bg-d1fae5);
  font-size:20px;
  font-weight:950;
}
.scanSaveConfirmation strong,
.scanSaveConfirmation small{display:block}
.scanSaveConfirmation small{margin-top:3px}
.scanMessage.success{
  color:var(--fg-065f46);
  border-color:var(--bd-a7f3d0);
  background:var(--bg-ecfdf5);
}
.scanMessage.error{
  color:var(--fg-991b1b);
  border-color:var(--bd-fecaca);
  background:var(--bg-fef2f2);
}
@media(max-width:820px){
  .scanOptionsReliable{grid-template-columns:1fr!important}
  .scanAssistSearch{grid-template-columns:1fr}
  .scanSaveConfirmation{grid-template-columns:auto 1fr}
  .scanSaveConfirmation .btn{grid-column:1/-1;width:100%}
}


/* v1.6 — Wishlist */
.wishlistTop{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:17px;
}
.wishlistIntro h2{
  margin:4px 0 6px;
  font-size:25px;
}
.wishlistIntro p{
  margin:0;
  color:var(--muted);
  line-height:1.5;
}
.wishlistStats{
  margin-bottom:17px;
}
.wishlistToolbar{
  grid-template-columns:minmax(260px,1fr) 180px 210px;
  margin-bottom:14px;
}
.wishlistNotice{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
  padding:11px 14px;
  border:1px solid var(--bd-ddd6fe);
  border-radius:13px;
  background:var(--bg-faf5ff);
  color:var(--fg-b2252a);
  font-size:12px;
}
.wishlistNotice>span{
  font-size:19px;
}
.wishlistNotice p{
  margin:0;
}
.wishlistGrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:16px;
}
.wishlistCard{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--bg-ffffff);
  box-shadow:0 6px 20px rgba(17,24,39,0.05);
}
.wishlistCardArt{
  position:relative;
  min-height:285px;
  display:grid;
  place-items:center;
  padding:13px;
  background:var(--bg-f8fafc);
  border-bottom:1px solid var(--line);
}
.wishlistCardArt img{
  width:100%;
  height:270px;
  object-fit:contain;
}
.wishlistCardFallback{
  color:var(--fg-94a3b8);
  font-size:38px;
  font-weight:950;
}
.wishlistCardBody{
  padding:14px;
}
.wishlistCardBody h3{
  margin:0 0 5px;
  font-size:16px;
}
.wishlistCardBody>p{
  min-height:32px;
  margin:0 0 12px;
  color:var(--muted);
  font-size:11px;
}
.wishlistPriceRow{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.wishlistPriceRow span,
.wishlistPriceRow small{
  display:block;
}
.wishlistPriceRow span{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.wishlistPriceRow strong{
  display:block;
  margin-top:2px;
  font-size:21px;
}
.wishlistPriceRow small{
  color:var(--muted);
  font-size:10px;
  text-align:right;
}
.wishlistPricePending{
  color:var(--fg-92400e)!important;
}
.wishlistQuantity{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  margin-bottom:11px;
  padding:8px 9px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--bg-f8fafc);
}
.wishlistQuantity>span{
  color:var(--muted);
  font-size:10px;
  font-weight:800;
}
.wishlistQuantityControls{
  display:flex;
  align-items:center;
  gap:7px;
}
.wishlistQuantityControls button{
  width:27px;
  height:27px;
  border:1px solid var(--bd-fcb6b9);
  border-radius:8px;
  background:var(--bg-ffffff);
  color:var(--fg-d52c33);
  font-weight:950;
}
.wishlistQuantityControls strong{
  min-width:22px;
  text-align:center;
}
.wishlistActions{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
}
.wishlistActions .moveWish{
  grid-column:1/-1;
  width:100%;
}
.wishlistActions button{
  border:1px solid var(--line);
  border-radius:10px;
  padding:9px 10px;
  background:var(--bg-ffffff);
  color:var(--fg-374151);
  font-weight:800;
}
.wishlistActions .moveWish{
  border-color:var(--bd-f86167);
  background:var(--bg-f86167);
  color:var(--fg-ffffff);
}
.wishlistActions .removeWish{
  color:var(--fg-b91c1c);
}
.wishlistHeart{
  position:absolute;
  z-index:8;
  left:10px;
  top:10px;
  width:35px;
  height:35px;
  display:grid;
  place-items:center;
  border:1px solid var(--bd-e2e8f0);
  border-radius:50%;
  background:var(--bg-affffff94);
  color:var(--fg-94a3b8);
  box-shadow:0 5px 14px rgba(15,23,42,0.13);
  font-size:18px;
  cursor:pointer;
  transition:.18s ease;
}
.wishlistHeart:hover{
  transform:scale(1.06);
  color:var(--fg-e93e45);
}
.wishlistHeart.active{
  border-color:var(--bd-fbb7b9);
  background:var(--bg-f5f3ff);
  color:var(--fg-e93e45);
}
.checkCard .wishlistHeart{
  left:8px;
  top:8px;
}
.card>.wishlistHeart{
  left:8px;
  top:8px;
}
.wishlistEmpty{
  grid-column:1/-1;
  padding:54px 20px;
  border:1px dashed var(--bd-fbb7b9);
  border-radius:18px;
  background:var(--bg-faf5ff);
  text-align:center;
}
.wishlistEmpty .emptyHeart{
  display:block;
  margin-bottom:8px;
  color:var(--fg-f26066);
  font-size:38px;
}
.wishlistEmpty h3{
  margin:0 0 7px;
}
.wishlistEmpty p{
  margin:0 0 16px;
  color:var(--muted);
}
.wishlistDetailButton{
  margin-top:12px;
  width:100%;
}
@media(max-width:900px){
  .wishlistToolbar{
    grid-template-columns:1fr 170px;
  }
  .wishlistToolbar #wishlistSort{
    grid-column:1/-1;
  }
}
@media(max-width:650px){
  .wishlistTop{
    align-items:stretch;
    flex-direction:column;
  }
  .wishlistTop .btn{
    width:100%;
  }
  .wishlistToolbar{
    grid-template-columns:1fr;
  }
  .wishlistToolbar #wishlistSort{
    grid-column:auto;
  }
  .wishlistGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .wishlistCardArt{
    min-height:210px;
    padding:7px;
  }
  .wishlistCardArt img{
    height:205px;
  }
  .wishlistCardBody{
    padding:10px;
  }
  .wishlistActions{
    grid-template-columns:1fr;
  }
}
@media(max-width:430px){
  .wishlistGrid{
    grid-template-columns:1fr;
  }
  .wishlistCardArt{
    min-height:285px;
  }
  .wishlistCardArt img{
    height:275px;
  }
}


.navSoon{float:right;margin-top:1px;padding:3px 6px;border-radius:999px;background:rgba(242,96,102,0.22);color:var(--fg-ddd6fe);font-size:8px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.shopHero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:28px;align-items:center;overflow:hidden;padding:34px;border:1px solid var(--bd-ddd6fe);border-radius:24px;background:var(--bg-faf9ff)}
.shopHeroCopy{position:relative;z-index:3}.shopBadge{display:inline-block;margin-bottom:13px;padding:6px 9px;border-radius:999px;background:var(--bg-ede9fe);color:var(--fg-d52c33);font-size:10px;font-weight:950;letter-spacing:.08em}
.shopHero h2{max-width:620px;margin:5px 0 10px;font-size:34px;line-height:1.08}.shopHero p{max-width:650px;margin:0;color:var(--muted);font-size:15px;line-height:1.6}
.shopHeroActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:21px}.shopHeroNote{display:block;margin-top:11px;color:var(--fg-e93e45)}
.shopHeroVisual{position:relative;min-height:270px;display:grid;place-items:center}.shopVaultMark{position:relative;z-index:4;width:120px;height:120px;display:grid;place-items:center;border:11px solid var(--bd-ede9fe);border-radius:50%;background:var(--bg-ffffff);color:var(--fg-d52c33);box-shadow:0 18px 45px rgba(146,32,36,0.13);font-size:28px;font-weight:950;letter-spacing:-.04em}
.shopFloatingCard{position:absolute;width:96px;height:134px;border:7px solid var(--bd-ffffff);border-radius:13px;box-shadow:0 20px 36px rgba(17,24,39,0.14)}.shopFloatingCard:before{content:"";position:absolute;inset:15px;border:2px solid var(--bd-affffff65);border-radius:50%}
.cardOne{left:12%;top:17%;transform:rotate(-13deg);background:var(--bg-f86167)}.cardTwo{right:11%;top:10%;transform:rotate(12deg);background:var(--bg-f26066)}.cardThree{right:20%;bottom:0;transform:rotate(24deg);background:var(--bg-f78e92)}
.shopSectionHead{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:27px 0 14px}.shopSectionHead h3{margin:4px 0 0;font-size:22px}
.shopCategoryGrid,.shopProductGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.shopCategory{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--bg-ffffff)}.shopCategoryIcon{width:40px;height:40px;display:grid;place-items:center;margin-bottom:14px;border-radius:12px;background:var(--bg-f5f3ff);color:var(--fg-e93e45);font-size:21px;font-weight:950}.shopCategory h4{margin:0 0 7px;font-size:16px}.shopCategory p{min-height:67px;margin:0 0 13px;color:var(--muted);font-size:12px;line-height:1.45}.shopCategoryStatus{display:inline-block;padding:5px 7px;border-radius:8px;background:var(--bg-f1f5f9);color:var(--fg-64748b);font-size:9px;font-weight:900;text-transform:uppercase}
.shopProductsHeading{margin-top:30px}.shopInactiveLabel{padding:6px 9px;border:1px solid var(--bd-e2e8f0);border-radius:999px;background:var(--bg-f8fafc);color:var(--fg-64748b);font-size:10px;font-weight:850}
.shopProduct{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--bg-ffffff);box-shadow:0 5px 18px rgba(17,24,39,0.045)}.shopProductImage{height:180px;display:grid;place-items:center;border-bottom:1px solid var(--line);background:var(--bg-f8fafc)}.shopProductImage span{padding:10px 14px;border:2px solid currentColor;border-radius:11px;font-size:13px;font-weight:950;letter-spacing:.08em}
.shopProductSingles{color:var(--fg-d52c33)}.shopProductSealed{color:var(--fg-c63c41)}.shopProductBinder{color:var(--fg-0f766e)}.shopProductMerch{color:var(--fg-be123c)}.shopProductBody{padding:15px}.shopProductType{color:var(--fg-e93e45);font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.shopProductBody h4{margin:5px 0 7px;font-size:16px}.shopProductBody p{min-height:51px;margin:0 0 14px;color:var(--muted);font-size:11px;line-height:1.45}.shopProductFooter{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.shopProductFooter strong{font-size:11px}.shopProductFooter button{padding:7px 9px;border:1px solid var(--bd-e2e8f0);border-radius:8px;background:var(--bg-f8fafc);color:var(--fg-94a3b8);font-size:9px;font-weight:850}
.shopFutureFlow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:15px;align-items:center;margin-top:28px;padding:21px;border:1px solid var(--bd-ddd6fe);border-radius:19px;background:var(--bg-faf5ff)}.shopFutureIcon{width:50px;height:50px;display:grid;place-items:center;border-radius:15px;background:var(--bg-ede9fe);color:var(--fg-e93e45);font-size:24px}.shopFutureFlow h3{margin:4px 0 5px}.shopFutureFlow p{margin:0;color:var(--muted);line-height:1.5}
.shopNotifySaved{border-color:var(--bd-86efac)!important;background:var(--bg-ecfdf5)!important;color:var(--fg-047857)!important}
@media(max-width:1050px){.shopCategoryGrid,.shopProductGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shopHero{grid-template-columns:1fr;padding:24px}.shopHeroVisual{min-height:230px}.shopHero h2{font-size:28px}}
@media(max-width:560px){.shopCategoryGrid,.shopProductGrid{grid-template-columns:1fr}.shopHeroActions{display:grid}.shopHeroActions .btn{width:100%}.shopSectionHead{align-items:flex-start;flex-direction:column}}


/* v1.8 — graded cards */
.collectionTypeSwitch{
  display:inline-flex;
  gap:4px;
  padding:4px;
  margin:0 0 16px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--bg-f8fafc);
}
.collectionTypeSwitch button{
  border:0;
  border-radius:9px;
  padding:9px 16px;
  background:transparent;
  color:var(--muted);
  font-weight:850;
}
.collectionTypeSwitch button.active{
  background:var(--bg-ffffff);
  color:var(--fg-b2252a);
  box-shadow:0 3px 10px rgba(15,23,42,0.08);
}
.gradedSummary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:16px;
}
.gradedSummary article{
  padding:15px;
  border:1px solid var(--bd-ddd6fe);
  border-radius:15px;
  background:var(--bg-faf5ff);
}
.gradedSummary span,
.gradedSummary strong{
  display:block;
}
.gradedSummary span{
  color:var(--fg-e93e45);
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.gradedSummary strong{
  margin-top:5px;
  font-size:21px;
}
.gradedCard{
  position:relative;
  overflow:hidden;
  border:1px solid var(--bd-cbd5e1);
  border-radius:18px;
  background:var(--bg-f8fafc);
  box-shadow:0 8px 24px rgba(15,23,42,0.08);
}
.gradedSlab{
  margin:12px 12px 0;
  padding:8px;
  border:2px solid var(--bd-dbe3ec);
  border-radius:14px;
  background:var(--bg-affffff76);
  box-shadow:inset 0 0 0 3px rgba(255,255,255,0.8);
}
.gradedLabel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
  min-height:52px;
  margin-bottom:8px;
  padding:8px 10px;
  border:1px solid var(--bd-dbe3ec);
  border-radius:9px;
  background:var(--bg-ffffff);
}
.gradedLabelText strong,
.gradedLabelText small{
  display:block;
}
.gradedLabelText strong{
  font-size:12px;
}
.gradedLabelText small{
  margin-top:2px;
  color:var(--muted);
  font-size:9px;
}
.gradedScore{
  min-width:45px;
  text-align:center;
  color:var(--fg-111827);
  font-size:25px;
  font-weight:950;
}
.gradedCardImage{
  height:285px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid var(--bd-dbe3ec);
  border-radius:10px;
  background:var(--bg-ffffff);
}
.gradedCardImage img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.gradedCardBody{
  padding:14px;
}
.gradedCardBody h3{
  margin:0 0 5px;
  font-size:16px;
}
.gradedCardBody p{
  margin:0 0 11px;
  color:var(--muted);
  font-size:11px;
}
.gradedValueRow{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:11px;
}
.gradedValueRow span,
.gradedValueRow small{
  display:block;
}
.gradedValueRow span{
  color:var(--muted);
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}
.gradedValueRow strong{
  display:block;
  margin-top:3px;
  font-size:20px;
}
.gradedGain{
  color:var(--fg-047857)!important;
}
.gradedLoss{
  color:var(--fg-b91c1c)!important;
}
.gradedCardActions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.gradedCardActions button{
  border:1px solid var(--line);
  border-radius:10px;
  padding:9px;
  background:var(--bg-ffffff);
  color:var(--fg-374151);
  font-weight:800;
}
.gradedCardActions .editGraded{
  border-color:var(--bd-fbb7b9);
  color:var(--fg-d52c33);
}
.markGradedButton{
  width:100%;
  margin-top:9px;
}
.gradedModalBox{
  max-width:720px!important;
}
.gradedModalIntro{
  margin:-5px 0 17px;
  color:var(--muted);
}
.gradedFormGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.gradedFormGrid label,
.gradedNotesLabel{
  display:flex;
  flex-direction:column;
  gap:7px;
  color:var(--fg-475569);
  font-size:11px;
  font-weight:850;
}
.gradedFormGrid input,
.gradedFormGrid select,
.gradedNotesLabel textarea{
  width:100%;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--bg-ffffff);
  color:var(--text);
}
.gradedNotesLabel{
  margin-top:12px;
}
.gradedNotesLabel textarea{
  min-height:90px;
  resize:vertical;
}
.gradedModalActions{
  display:flex;
  justify-content:flex-end;
  gap:9px;
  margin-top:16px;
}
.gradedEmpty{
  grid-column:1/-1;
  padding:50px 20px;
  border:1px dashed var(--bd-fbb7b9);
  border-radius:18px;
  background:var(--bg-faf5ff);
  text-align:center;
}
.gradedEmpty span{
  display:block;
  margin-bottom:8px;
  color:var(--fg-e93e45);
  font-size:38px;
}
.gradedEmpty h3{
  margin:0 0 7px;
}
.gradedEmpty p{
  margin:0;
  color:var(--muted);
}
@media(max-width:760px){
  .gradedSummary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .gradedFormGrid{
    grid-template-columns:1fr;
  }
}
@media(max-width:430px){
  .collectionTypeSwitch{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    width:100%;
  }
}


/* v1.8.1 — My Collection filter layout fix */
.myCollectionFiltersRow{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  margin-bottom:16px;
}
.myCollectionFiltersRow .toolbar{
  min-width:0;
  margin:0!important;
}
.myCollectionFiltersRow .collectionTypeSwitch{
  margin:0!important;
  flex:0 0 auto;
  white-space:nowrap;
}
.myCollectionFiltersRow .toolbar .search{
  min-width:0;
}
.myCollectionFiltersRow .toolbar select{
  min-width:175px;
}
.collectionTypeSwitch{
  position:relative;
  z-index:1;
}
.collectionTypeSwitch button{
  min-width:72px;
  white-space:nowrap;
}
@media(max-width:980px){
  .myCollectionFiltersRow{
    grid-template-columns:1fr;
  }
  .myCollectionFiltersRow .collectionTypeSwitch{
    justify-self:start;
  }
}
@media(max-width:650px){
  .myCollectionFiltersRow{
    gap:10px;
  }
  .myCollectionFiltersRow .toolbar{
    grid-template-columns:1fr!important;
  }
  .myCollectionFiltersRow .toolbar select{
    width:100%;
    min-width:0;
  }
  .myCollectionFiltersRow .collectionTypeSwitch{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
  }
  .collectionTypeSwitch button{
    min-width:0;
    padding:9px 10px;
  }
}


/* v1.8.2 — definitive My Collection filter layout */
.myCollectionFiltersRow{
  display:contents!important;
}
.myCollectionTypeRow{
  display:flex;
  align-items:center;
  margin:0 0 10px;
}
.myCollectionTypeRow .collectionTypeSwitch{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%;
  margin:0!important;
}
.myCollectionSearchRow{
  display:block;
  margin-bottom:16px;
}
.myCollectionSearchRow .toolbar{
  display:grid!important;
  grid-template-columns:minmax(260px,560px) 180px!important;
  justify-content:start!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
}
.myCollectionSearchRow .toolbar .search{
  width:100%!important;
  min-width:0!important;
}
.myCollectionSearchRow .toolbar select{
  width:180px!important;
  min-width:180px!important;
  max-width:180px!important;
}
.myCollectionSearchRow .toolbar > *:not(.search):not(select){
  display:none!important;
}
.collectionTypeSwitch{
  overflow:hidden!important;
}
.collectionTypeSwitch button{
  min-width:76px!important;
}
@media(max-width:900px){
  .myCollectionSearchRow .toolbar{
    grid-template-columns:minmax(220px,1fr) 170px!important;
  }
  .myCollectionSearchRow .toolbar select{
    width:170px!important;
    min-width:170px!important;
    max-width:170px!important;
  }
}
@media(max-width:620px){
  .myCollectionTypeRow .collectionTypeSwitch{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
  }
  .myCollectionSearchRow .toolbar{
    grid-template-columns:1fr!important;
  }
  .myCollectionSearchRow .toolbar select{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* v1.8.3 — single-line My Collection controls */
.myCollectionTypeRow,
.myCollectionSearchRow,
.myCollectionFiltersRow{
  display:none!important;
}
.myCollectionControls{
  display:grid;
  grid-template-columns:auto minmax(240px,1fr) 180px auto;
  gap:10px;
  align-items:center;
  width:100%;
  margin:0 0 16px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--bg-ffffff);
  box-shadow:0 6px 20px rgba(17,24,39,0.04);
}
.myCollectionControls .collectionTypeSwitch{
  display:inline-flex!important;
  width:auto!important;
  margin:0!important;
  padding:4px!important;
  flex-wrap:nowrap!important;
  white-space:nowrap;
}
.myCollectionControls .collectionTypeSwitch button{
  min-width:72px!important;
  padding:9px 13px!important;
  white-space:nowrap!important;
}
.myCollectionSearch{
  min-width:0!important;
  width:100%!important;
}
.myCollectionSearch input{
  width:100%!important;
  min-width:0!important;
}
.myCollectionLanguage{
  width:180px!important;
  min-width:180px!important;
  max-width:180px!important;
}
.myCollectionAdd{
  min-width:150px;
  white-space:nowrap;
}
@media(max-width:1050px){
  .myCollectionControls{
    grid-template-columns:auto minmax(180px,1fr) 165px auto;
  }
  .myCollectionLanguage{
    width:165px!important;
    min-width:165px!important;
    max-width:165px!important;
  }
  .myCollectionControls .collectionTypeSwitch button{
    min-width:65px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
}
@media(max-width:820px){
  .myCollectionControls{
    grid-template-columns:auto minmax(160px,1fr) 155px;
  }
  .myCollectionAdd{
    grid-column:1/-1;
    width:100%;
  }
  .myCollectionLanguage{
    width:155px!important;
    min-width:155px!important;
    max-width:155px!important;
  }
}
@media(max-width:620px){
  .myCollectionControls{
    grid-template-columns:1fr;
  }
  .myCollectionControls .collectionTypeSwitch{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%!important;
  }
  .myCollectionLanguage,
  .myCollectionAdd{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}


/* v1.9 — Market inside My Collection */
.embeddedMarketSection{
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid var(--line);
}
.embeddedMarketHeader{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.embeddedMarketHeader h2{
  margin:4px 0 5px;
  font-size:24px;
}
.embeddedMarketHeader p{
  margin:0;
  color:var(--muted);
}
.embeddedMarketBody.collapsed{
  display:none;
}

/* Desktop: the new navigation remains invisible. */
.mobileBottomNav{
  display:none;
}

/* v1.9 — Mobile bottom navigation */
@media(max-width:760px){
  .sidebar{
    display:none!important;
  }
  .mobile{
    display:none!important;
  }
  .main{
    padding:0 13px calc(112px + env(safe-area-inset-bottom))!important;
  }
  .top{
    height:78px!important;
  }
  .top h1{
    font-size:24px;
  }
  .top>div:first-child{
    min-width:0;
  }
  .topActions{
    gap:5px;
  }
  .uiLanguagePicker{
    max-width:148px;
  }
  .uiLanguagePicker select{
    max-width:115px;
  }

  .mobileBottomNav{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:1100;
    display:block;
    height:76px;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    border-top:1px solid var(--bd-e2e8f0);
    background:var(--bg-affffff97);
    box-shadow:0 -10px 30px rgba(15,23,42,0.12);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
  }
  .mobileNavCluster{
    position:absolute;
    top:7px;
    bottom:7px;
    display:flex;
    align-items:center;
  }
  .mobileNavLeft{
    left:6px;
    width:calc(50% - 47px);
    justify-content:space-around;
  }
  .mobileNavRight{
    right:4px;
    width:calc(50% - 47px);
    justify-content:space-around;
  }
  .mobileBottomNav button{
    border:0;
    background:transparent;
    color:var(--fg-64748b);
    font:inherit;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .mobileNavCluster button{
    min-width:48px;
    height:58px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    padding:2px 3px;
    border-radius:12px;
  }
  .mobileBottomNav svg{
    width:22px;
    height:22px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.9;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  .mobileBottomNav span{
    max-width:58px;
    overflow:hidden;
    color:inherit;
    font-size:9px;
    font-weight:800;
    line-height:1.05;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .mobileNavCluster button.active{
    color:var(--fg-d52c33);
    background:var(--bg-f5f3ff);
  }
  .mobilePremiumAction{
    color:var(--fg-b7791f)!important;
  }
  .mobilePremiumAction svg{
    fill:var(--fg-f5c451);
    stroke:var(--bd-9a6700);
  }
  .mobilePremiumAction.active{
    color:var(--fg-8a5a00)!important;
    background:var(--bg-fff8df)!important;
  }
  .mobileCameraAction{
    position:absolute;
    left:50%;
    top:-24px;
    width:70px;
    height:70px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    padding:0;
    border:6px solid var(--bd-f3f4f6)!important;
    border-radius:50%;
    background:var(--bg-f86167)!important;
    color:var(--fg-ffffff)!important;
    box-shadow:0 10px 24px rgba(248,97,103,0.38);
    transform:translateX(-50%);
  }
  .mobileCameraAction svg{
    width:27px;
    height:27px;
    stroke-width:2;
  }
  .mobileCameraAction span{
    max-width:none;
    color:var(--fg-ffffff);
    font-size:8px;
  }
  .mobileCameraAction:active{
    transform:translateX(-50%) scale(.96);
  }

  .embeddedMarketHeader{
    align-items:stretch;
    flex-direction:column;
  }
  .embeddedMarketHeader .btn{
    width:100%;
  }
  .embeddedMarketSection{
    margin-top:22px;
    padding-top:19px;
  }
}

@media(max-width:390px){
  .mobileNavCluster button{
    min-width:42px;
  }
  .mobileBottomNav span{
    font-size:8px;
  }
  .mobileNavLeft{
    left:2px;
    width:calc(50% - 44px);
  }
  .mobileNavRight{
    right:1px;
    width:calc(50% - 44px);
  }
}


/* v1.9.1 — uniform mobile navigation without camera */
@media(max-width:760px){
  .mobileBottomNav{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    align-items:center!important;
    gap:0!important;
    height:74px!important;
    padding:6px 6px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .mobileNavCluster,
  .mobileCameraAction{
    display:none!important;
  }
  .mobileBottomNav>button{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    height:58px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    padding:3px 2px!important;
    border:0!important;
    border-radius:12px!important;
    background:transparent!important;
    color:var(--fg-64748b)!important;
    box-shadow:none!important;
    transform:none!important;
  }
  .mobileBottomNav>button.active{
    color:var(--fg-d52c33)!important;
    background:var(--bg-f5f3ff)!important;
  }
  .mobileBottomNav>button svg{
    width:22px!important;
    height:22px!important;
  }
  .mobileBottomNav>button span{
    max-width:100%!important;
    font-size:9px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .mobileBottomNav .mobilePremiumAction{
    color:var(--fg-b7791f)!important;
  }
  .mobileBottomNav .mobilePremiumAction svg{
    fill:var(--fg-f5c451)!important;
    stroke:var(--bd-9a6700)!important;
  }
  .mobileBottomNav .mobilePremiumAction.active{
    color:var(--fg-8a5a00)!important;
    background:var(--bg-fff8df)!important;
  }
  .main{
    padding-bottom:calc(104px + env(safe-area-inset-bottom))!important;
  }
}
@media(max-width:390px){
  .mobileBottomNav>button span{
    font-size:8px!important;
  }
}


/* v1.10 — automatic catalogue refresh */
#catalogRefresh{
  display:none!important;
}

/* v1.10 — greeting */
.topTitleBlock{
  display:inline-block;
  min-width:0;
}
.appGreeting{
  margin-bottom:2px;
  color:var(--fg-d52c33);
  font-size:12px;
  font-weight:850;
  letter-spacing:.01em;
}

/* v1.10 — collection year filter */
.setYearSelect{
  min-width:150px;
  border:1px solid var(--bd-fbb7b9);
  background:var(--bg-ffffff);
  color:var(--fg-922024);
  font-weight:800;
}
.setYearSelect:focus{
  border-color:var(--bd-f26066);
  box-shadow:0 0 0 4px rgba(242,96,102,0.11);
}

/* v1.10 — optional collection summary */
.collectionSummaryControl{
  display:flex;
  justify-content:flex-end;
  margin:0 0 10px;
}
.collectionSummaryControl .btn{
  padding:9px 13px;
}
.collectionSummaryStats{
  margin-bottom:15px;
}

/* v1.10 — profile contact data */
.profileContactCard h3{
  margin:5px 0 14px;
}
.profileFields{
  display:grid;
  gap:11px;
}
.profileFields label{
  display:flex;
  flex-direction:column;
  gap:6px;
  color:var(--fg-475569);
  font-size:11px;
  font-weight:850;
}
.profileFields input{
  width:100%;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--bg-ffffff);
  color:var(--text);
}
.profileFields input:focus{
  outline:0;
  border-color:var(--bd-f26066);
  box-shadow:0 0 0 4px rgba(242,96,102,0.1);
}
.profileSaveButton{
  width:100%;
  margin-top:13px;
}
.profileSaveStatus{
  display:block;
  margin-top:8px;
  color:var(--fg-047857);
  font-size:11px;
  font-weight:800;
  text-align:center;
}

@media(max-width:760px){
  .appGreeting{
    font-size:11px;
  }
  .top h1{
    margin-top:0;
  }
  .setYearSelect{
    width:100%;
  }
  .collectionSummaryControl{
    justify-content:stretch;
  }
  .collectionSummaryControl .btn{
    width:100%;
  }

  /* Larger, evenly spaced bottom icons */
  .mobileBottomNav{
    height:82px!important;
    padding-top:6px!important;
  }
  .mobileBottomNav>button{
    height:66px!important;
  }
  .mobileBottomNav>button svg{
    width:28px!important;
    height:28px!important;
    stroke-width:2!important;
  }
  .mobileBottomNav>button span{
    font-size:10px!important;
  }
  .main{
    padding-bottom:calc(114px + env(safe-area-inset-bottom))!important;
  }
}

@media(max-width:390px){
  .mobileBottomNav>button svg{
    width:26px!important;
    height:26px!important;
  }
  .mobileBottomNav>button span{
    font-size:9px!important;
  }
}


/* v1.10.1 — no manual update controls */
#catalogRefresh,
#refreshCatalog,
#catalogRefreshStatus,
.catalogRefresh{
  display:none!important;
}

/* v1.10.2 — complete collection year range */
.setYearSelect{
  min-width:145px!important;
}


/* v1.10.6 — year metadata progress */
.catalogLoading #yearMetadataProgress{
  display:block;
  margin-top:7px;
  color:var(--fg-64748b);
  font-size:11px;
  font-weight:700;
}



/* ===== v1.11 — immersive camera scanner ===== */
.cameraScannerPane{padding:0!important}
.cameraScannerPane .scannerIntro,.cameraScannerPane .scanOptions{display:none!important}
.cameraExperience{position:relative;background:radial-gradient(circle at top,#4b55631a,#0f172acc 65%),linear-gradient(180deg,var(--bg-202531) 0%,var(--bg-111827) 100%);border-radius:28px;color:var(--fg-ffffff);padding:18px 18px 22px;min-height:calc(100vh - 220px);display:flex;flex-direction:column;gap:18px;overflow:hidden}
.cameraExperience:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0.06),rgba(0,0,0,0.12));pointer-events:none}
.cameraTopBar,.cameraCenterStage,.cameraBottomSheet,.scanProgress,.scanMessage,.detectedText,.scanAssist,.scanResults,.scanSaveConfirmation{position:relative;z-index:1}
.cameraTopBar{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:14px}
.cameraIconButton{width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,0.22);background:rgba(255,255,255,0.1);color:var(--fg-ffffff);font-size:24px;display:grid;place-items:center;cursor:pointer}
.cameraPricePill{justify-self:center;padding:9px 16px;border-radius:999px;background:rgba(255,255,255,0.12);backdrop-filter:blur(10px);font-weight:800;font-size:14px;white-space:nowrap}
.cameraCenterStage{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:280px}
.cameraPreviewFrame{position:relative;width:min(100%,360px);aspect-ratio:63/88;border-radius:26px;border:1px solid rgba(255,255,255,0.18);background:rgba(255,255,255,0.06);backdrop-filter:blur(8px);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0!important;box-shadow:0 18px 60px rgba(0,0,0,0.28)}
.cameraPreviewFrame.hasImage{background:rgba(255,255,255,0.08)}
.cameraPreviewFrame:before{content:"";position:absolute;inset:14px;border-radius:22px;border:2px solid rgba(255,255,255,0.38);pointer-events:none}
.cameraPreviewFrame:after{content:"";position:absolute;left:14px;right:14px;top:50%;height:1px;background:rgba(255,255,255,0.24);pointer-events:none}
.cameraPreviewFrame img{width:100%!important;height:100%!important;object-fit:cover;border-radius:24px;display:none}
.cameraPreviewFrame.hasImage img{display:block}
.cameraFrameButton{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);border:0;background:var(--bg-a11182778);color:var(--fg-ffffff);padding:10px 14px;border-radius:999px;font-weight:800;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,0.22)}
.cameraStageHint{font-size:13px;color:var(--fg-affffff84);text-align:center;max-width:430px}
.cameraBottomSheet{margin-top:auto;background:var(--bg-a11182755);border:1px solid rgba(255,255,255,0.12);border-radius:24px;padding:15px;backdrop-filter:blur(18px);box-shadow:0 20px 45px rgba(0,0,0,0.22)}
.cameraResultCard{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:12px;padding:10px 10px 14px}
.cameraResultThumb{width:56px;height:78px;border-radius:13px;overflow:hidden;background:rgba(255,255,255,0.08);display:grid;place-items:center;border:1px solid rgba(255,255,255,0.14)}
.cameraResultThumb img{width:100%;height:100%;object-fit:cover}
.cameraResultThumbFallback{font-size:13px;font-weight:900;letter-spacing:.14em;color:var(--fg-affffff78)}
.cameraResultText strong,.cameraResultText small,.cameraResultText .cameraResultValue{display:block}
.cameraResultText strong{font-size:18px;line-height:1.15}
.cameraResultText small{margin-top:2px;color:var(--fg-affffff72)}
.cameraResultValue{margin-top:6px;font-weight:800;color:var(--fg-f8fafc)}
.cameraResultState{width:18px;height:18px;border-radius:999px;border:2px solid var(--bd-affffff65);justify-self:end}
.cameraResultState.ready{background:var(--bg-22c55e);border-color:var(--bd-86efac);box-shadow:0 0 0 5px rgba(34,197,94,0.12)}
.cameraUtilityRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:end}
.cameraField{display:grid;gap:6px;min-width:0}
.cameraField label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-affffff64);font-weight:800}
.cameraField select{width:100%;background:rgba(255,255,255,0.1);color:var(--fg-ffffff);border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:11px 12px}
.cameraField option{color:var(--fg-111827);background:var(--bg-ffffff)}
.cameraMiniButton{border:0;background:rgba(255,255,255,0.1);color:var(--fg-ffffff);border-radius:14px;padding:12px 14px;font-weight:800;cursor:pointer;white-space:nowrap}
.cameraActionRow{display:grid;grid-template-columns:1fr 1.5fr;gap:12px;margin-top:12px}
.cameraActionGhost{border:0;background:rgba(255,255,255,0.1);color:var(--fg-ffffff);border-radius:16px;padding:14px 16px;font-weight:800;cursor:pointer}
.cameraPrimaryAction{display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;border-radius:16px;padding:14px 16px;background:linear-gradient(135deg,var(--bg-f26066),var(--bg-f86167));color:var(--fg-ffffff);font-weight:900;cursor:pointer;box-shadow:0 16px 28px rgba(248,97,103,0.34)}
.cameraPrimaryAction strong{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,0.16);font-size:22px;line-height:1}
.cameraPrimaryAction[disabled]{opacity:.58;cursor:not-allowed}
.cameraPrimaryAction.captureMode{background:linear-gradient(135deg,var(--bg-e93e45),var(--bg-b2252a))}
.cameraPrimaryAction.identifyMode{background:linear-gradient(135deg,var(--bg-0ea5e9),var(--bg-2563eb))}
.cameraPrimaryAction.saveMode{background:linear-gradient(135deg,var(--bg-22c55e),var(--bg-16a34a))}
.cameraPrimaryAction.doneMode{background:linear-gradient(135deg,var(--bg-f59e0b),var(--bg-ea580c))}
.cameraExperience .scanProgress,.cameraExperience .scanMessage,.cameraExperience .detectedText,.cameraExperience .scanAssist,.cameraExperience .scanResults,.cameraExperience .scanSaveConfirmation{margin-top:0;background:var(--bg-affffff97);color:var(--fg-111827);border-radius:20px;border:1px solid var(--bd-ae2e8f090);padding:15px}
.cameraExperience .scanMessage.success{background:var(--bg-ecfdf5);border-color:var(--bd-86efac);color:var(--fg-166534)}
.cameraExperience .scanMessage.error{background:var(--bg-fef2f2);border-color:var(--bd-fca5a5);color:var(--fg-991b1b)}
.cameraExperience .detectedText summary{cursor:pointer;font-weight:800}
.cameraExperience .scanResultsHead{margin-bottom:12px}
.cameraExperience .scanCandidate{border-radius:16px}
.cameraExperience .scanSaveConfirmation{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}
@media (max-width: 900px){.addCardModal{padding:14px!important}.cameraExperience{min-height:calc(100vh - 150px);padding:14px;border-radius:24px}.cameraTopBar{grid-template-columns:40px 1fr 40px}.cameraPreviewFrame{width:min(100%,320px)}.cameraBottomSheet{padding:14px}.cameraUtilityRow{grid-template-columns:1fr 1fr}.cameraMiniButton{grid-column:1/-1}.cameraActionRow{grid-template-columns:1fr}.cameraExperience .scanSaveConfirmation{grid-template-columns:auto 1fr}.cameraExperience .scanSaveConfirmation .btn{grid-column:1/-1;width:100%}}


/* ===== v1.12 — Deck Builder ===== */
.myCollectionControls.deckMode{
  grid-template-columns:auto auto;
  justify-content:space-between;
}
.myCollectionControls.deckMode .myCollectionSearch,
.myCollectionControls.deckMode .myCollectionLanguage{
  display:none!important;
}
.myCollectionControls.deckMode .collectionTypeSwitch{
  overflow-x:auto!important;
  max-width:100%;
}
.deckBuilderShell{
  grid-column:1/-1;
  display:grid;
  gap:18px;
}
.deckBuilderHero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:23px;
  border:1px solid var(--bd-ddd6fe);
  border-radius:22px;
  background:var(--bg-faf9ff);
}
.deckBuilderHero h2{
  margin:5px 0 7px;
  font-size:25px;
}
.deckBuilderHero p{
  max-width:730px;
  margin:0;
  color:var(--muted);
  line-height:1.55;
}
.deckRuleBadge{
  min-width:128px;
  padding:18px;
  border-radius:19px;
  background:var(--bg-ffffff);
  color:var(--fg-b2252a);
  box-shadow:0 8px 24px rgba(146,32,36,0.1);
  text-align:center;
}
.deckRuleBadge strong,
.deckRuleBadge span{
  display:block;
}
.deckRuleBadge strong{
  font-size:38px;
  line-height:1;
}
.deckRuleBadge span{
  margin-top:5px;
  font-size:11px;
  font-weight:850;
  text-transform:uppercase;
}
.deckBuilderStats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.deckBuilderStats article{
  padding:15px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--bg-ffffff);
}
.deckBuilderStats span,
.deckBuilderStats strong{
  display:block;
}
.deckBuilderStats span{
  color:var(--muted);
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
}
.deckBuilderStats strong{
  margin-top:5px;
  font-size:21px;
}
.deckProgress{
  overflow:hidden;
  height:10px;
  border-radius:999px;
  background:var(--bg-e5e7eb);
}
.deckProgress span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--bg-f26066),var(--bg-f86167));
}
.deckSection{
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--bg-ffffff);
}
.deckSectionHead{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  margin-bottom:13px;
}
.deckSectionHead h3{
  margin:3px 0 0;
}
.deckSectionHead span{
  color:var(--muted);
  font-size:12px;
}
.deckSlotGrid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(108px,1fr));
  gap:10px;
}
.deckSlot{
  position:relative;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--bg-f8fafc);
}
.deckSlotFace{
  position:relative;
  aspect-ratio:2.5/3.5;
  overflow:hidden;
  background:var(--bg-ede9fe);
}
.deckSlotFace img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.deckSlot.missing .deckSlotFace{
  filter:grayscale(1);
  opacity:.42;
}
.deckSlot.owned{
  border-color:var(--bd-f78e92);
  box-shadow:0 6px 18px rgba(248,97,103,0.12);
}
.deckSlotStatus{
  position:absolute;
  top:7px;
  right:7px;
  z-index:2;
  padding:4px 6px;
  border-radius:999px;
  background:var(--bg-a0f172a78);
  color:var(--fg-ffffff);
  font-size:8px;
  font-weight:900;
}
.deckSlot.owned .deckSlotStatus{
  background:var(--bg-047857);
}
.deckGenericCard{
  width:100%;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:10px;
  text-align:center;
}
.deckGenericCard strong{
  font-size:12px;
}
.deckGenericCard span{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:2px solid currentColor;
  border-radius:50%;
  font-size:20px;
  font-weight:950;
}
.deckGenericCard.trainer{
  color:var(--fg-c63c41);
  background:var(--bg-eef2ff);
}
.deckGenericCard.energy{
  color:var(--fg-b45309);
  background:var(--bg-fff7ed);
}
.deckSlotInfo{
  padding:9px;
}
.deckSlotInfo strong,
.deckSlotInfo small{
  display:block;
}
.deckSlotInfo strong{
  overflow:hidden;
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.deckSlotInfo small{
  margin-top:3px;
  color:var(--muted);
  font-size:9px;
}
.deckLegend{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:var(--muted);
  font-size:11px;
}
.deckLegend span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.deckLegend i{
  width:12px;
  height:12px;
  border-radius:4px;
  border:1px solid var(--bd-cbd5e1);
}
.deckLegend .legendOwned{
  background:var(--bg-f26066);
}
.deckLegend .legendMissing{
  background:var(--bg-e5e7eb);
}

/* ===== v1.12 — real integrated live camera ===== */
.addCardModal.cameraMode{
  width:min(560px,100%)!important;
  max-height:96vh!important;
  padding:0!important;
  overflow:hidden!important;
  background:var(--bg-111827)!important;
}
.addCardModal.cameraMode>h2,
.addCardModal.cameraMode>.addTabs{
  display:none!important;
}
.liveCameraVideo{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:none;
  background:var(--bg-020617);
}
.cameraPreviewFrame.liveActive .liveCameraVideo{
  display:block;
}
.cameraPreviewFrame.liveActive #scanPlaceholder,
.cameraPreviewFrame.liveActive #scanPreview,
.cameraPreviewFrame.liveActive #cameraFrameCapture{
  display:none!important;
}
.liveCameraMask{
  position:absolute;
  inset:13px;
  z-index:3;
  overflow:hidden;
  border-radius:21px;
  box-shadow:0 0 0 999px rgba(2,6,23,0.34);
  pointer-events:none;
}
.maskCorner{
  position:absolute;
  width:38px;
  height:38px;
  border-color:var(--bd-ffffff);
  border-style:solid;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,0.45));
}
.cornerTL{left:0;top:0;border-width:4px 0 0 4px;border-radius:15px 0 0}
.cornerTR{right:0;top:0;border-width:4px 4px 0 0;border-radius:0 15px 0 0}
.cornerBL{left:0;bottom:0;border-width:0 0 4px 4px;border-radius:0 0 0 15px}
.cornerBR{right:0;bottom:0;border-width:0 4px 4px 0;border-radius:0 0 15px}
.maskScanLine{
  position:absolute;
  left:7%;
  right:7%;
  top:10%;
  height:2px;
  border-radius:999px;
  background:var(--bg-af78e9295);
  box-shadow:0 0 12px rgba(247,142,146,0.75);
  opacity:0;
}
.cameraPreviewFrame.liveActive .maskScanLine{
  opacity:1;
  animation:cameraScanLine 2.2s ease-in-out infinite;
}
@keyframes cameraScanLine{
  0%,100%{top:10%;opacity:.4}
  50%{top:88%;opacity:1}
}
.liveCaptureButton{
  position:absolute;
  left:50%;
  bottom:18px;
  z-index:6;
  width:64px;
  height:64px;
  padding:6px;
  border:3px solid var(--bd-affffff95);
  border-radius:50%;
  background:rgba(15,23,42,0.3);
  transform:translateX(-50%);
  cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,0.32);
}
.liveCaptureButton span{
  display:block;
  width:100%;
  height:100%;
  border-radius:50%;
  background:var(--bg-ffffff);
}
.cameraLiveStatus{
  position:absolute;
  top:18px;
  left:50%;
  z-index:7;
  transform:translateX(-50%);
  padding:6px 9px;
  border-radius:999px;
  background:var(--bg-a0f172a68);
  color:var(--fg-ffffff);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.cameraPreviewFrame.liveActive:after{
  display:none!important;
}
.cameraPreviewFrame.liveActive:before{
  display:none!important;
}
@media(max-width:760px){
  .addCardModal.cameraMode{
    width:100vw!important;
    height:100dvh!important;
    max-height:none!important;
    border-radius:0!important;
  }
  .addCardModal.cameraMode .cameraExperience{
    min-height:100dvh!important;
    border-radius:0!important;
    padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;
  }
  .deckBuilderHero{
    grid-template-columns:1fr;
  }
  .deckRuleBadge{
    justify-self:start;
  }
  .deckBuilderStats{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .deckSlotGrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .myCollectionControls.deckMode{
    grid-template-columns:1fr;
  }
}
@media(max-width:410px){
  .deckSlotGrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* ===== v1.12.2 — camera is an integrated mobile-only feature ===== */
.mobileOnlyTag{
  display:inline-flex;
  align-items:center;
  margin-left:5px;
  padding:2px 5px;
  border-radius:999px;
  background:var(--bg-ede9fe);
  color:var(--fg-d52c33);
  font-size:8px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  vertical-align:middle;
}
.mobileCameraOnlyNotice{
  display:none;
  margin:10px 0 0;
  padding:13px 14px;
  border:1px solid var(--bd-cbd5e1);
  border-radius:15px;
  background:var(--bg-f8fafc);
  color:var(--fg-475569);
  font-size:12px;
  line-height:1.5;
}
.desktopCameraDevice .mobileCameraOnlyNotice{display:block}
.desktopCameraDevice .cameraCenterStage,
.desktopCameraDevice .cameraBottomSheet{
  opacity:.48;
  pointer-events:none;
}
.desktopCameraDevice .cameraExperience{
  min-height:560px;
}
.mobileCameraDevice .mobileOnlyTag{display:none}
.mobileCameraDevice .cameraPreviewFrame{
  min-height:0;
}
@media(max-width:760px){
  .mobileCameraOnlyNotice{display:none!important}
}


/* ===== v1.12.3 — definitive integrated-camera behaviour ===== */
.integratedCameraNotice{
  position:absolute;
  inset:0;
  z-index:8;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px;
  border-radius:23px;
  background:var(--bg-a02061782);
  color:var(--fg-ffffff);
  text-align:center;
  backdrop-filter:blur(8px);
}
.integratedCameraNotice.hidden{
  display:none!important;
}
.integratedCameraNotice strong{
  font-size:17px;
}
.integratedCameraNotice p{
  max-width:290px;
  margin:0;
  color:var(--fg-affffff76);
  font-size:12px;
  line-height:1.5;
}
.integratedCameraNotice button{
  margin-top:5px;
  border:1px solid rgba(255,255,255,0.22);
  border-radius:999px;
  background:rgba(255,255,255,0.12);
  color:var(--fg-ffffff);
  padding:10px 14px;
  font-weight:850;
  cursor:pointer;
}
.cameraPreviewFrame.cameraUnavailable .liveCameraMask{
  box-shadow:0 0 0 999px rgba(2,6,23,0.16);
}
.cameraPreviewFrame.cameraUnavailable #cameraFrameCapture{
  display:none!important;
}
.deckSlotFace img{
  display:block;
}
.deckSlot.missing .deckSlotFace img{
  filter:grayscale(1) contrast(.9);
  opacity:.43;
}
.deckSlot.owned .deckSlotFace img{
  filter:none;
  opacity:1;
}


/* ===== v1.12.4 — camera implementation boundary ===== */
.cameraImplementationNotice{
  margin:0 0 12px;
  padding:12px 14px;
  border:1px solid rgba(251,183,185,0.28);
  border-radius:16px;
  background:rgba(146,32,36,0.2);
  color:var(--fg-affffff88);
  font-size:12px;
  line-height:1.45;
}
.cameraImplementationNotice strong{
  color:var(--fg-ffffff);
}


/* ===== v1.13 Smart Search / Sealed / Import-Export / Bulk ===== */
.collectionUtilityActions{display:flex;gap:8px;flex-wrap:wrap}
.smartSearchPanel{margin:-7px 0 18px;padding:15px 16px;background:var(--bg-ffffff);border:1px solid var(--bd-ddd6fe);border-radius:18px;box-shadow:0 5px 18px rgba(146,32,36,0.05)}
.smartSearchHead{display:flex;align-items:center;justify-content:space-between;gap:12px}
.smartSearchHead strong{display:block;margin-top:3px;font-size:13px}
.smartPremiumPill{padding:5px 8px;border-radius:999px;background:var(--bg-ede9fe);color:var(--fg-d52c33);font-size:9px;font-weight:900;text-transform:uppercase}
.smartSearchExamples{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.smartSearchExamples button{border:1px solid var(--bd-e5e7eb);background:var(--bg-f8fafc);border-radius:999px;padding:7px 9px;color:var(--fg-475569);font-size:10px;font-weight:800;cursor:pointer}
.smartSearchExamples button:hover{border-color:var(--bd-fbb7b9);background:var(--bg-faf5ff);color:var(--fg-d52c33)}
.smartInterpretation{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--bd-eeeeee)}
.smartInterpretation span{padding:5px 7px;border-radius:8px;background:var(--bg-f3e8ff);color:var(--fg-a52429);font-size:10px;font-weight:850}
.smartMissing{opacity:.78}
.smartMissing .art img{filter:grayscale(1)!important;opacity:.46!important}
.smartMissing .qty{background:var(--bg-f3f4f6);color:var(--fg-64748b)}
.smartMissingFlag{background:var(--bg-e5e7eb)!important;color:var(--fg-475569)!important}

.sealedSummary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}
.sealedSummary article{padding:14px 15px;border:1px solid var(--line);border-radius:16px;background:var(--bg-ffffff)}
.sealedSummary span,.sealedSummary strong{display:block}
.sealedSummary span{font-size:10px;font-weight:850;color:var(--muted);text-transform:uppercase}
.sealedSummary strong{font-size:20px;margin-top:5px}
.sealedGrid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}
.sealedCard{overflow:hidden;border:1px solid var(--line);border-radius:19px;background:var(--bg-ffffff);box-shadow:0 5px 16px rgba(15,23,42,0.04)}
.sealedVisual{height:180px;display:grid;place-items:center;padding:22px;position:relative;overflow:hidden;background:linear-gradient(145deg,var(--bg-f8fafc),var(--bg-ede9fe))}
.sealedBox{width:130px;height:112px;border:3px solid var(--bd-922024);border-radius:10px;background:var(--bg-ffffff);box-shadow:9px 12px 0 rgba(146,32,36,0.1),0 15px 26px rgba(15,23,42,0.14);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:perspective(300px) rotateY(-7deg);position:relative}
.sealedBox:before{content:"SEALED";position:absolute;top:7px;right:7px;padding:4px 6px;border-radius:999px;background:var(--bg-047857);color:var(--fg-ffffff);font-size:8px;font-weight:950}
.sealedBox b{font-size:11px;color:var(--fg-922024);max-width:100px}
.sealedBox small{font-size:8px;color:var(--fg-64748b);margin-top:5px}
.sealedBody{padding:14px}
.sealedBody h3{font-size:14px;margin:4px 0}
.sealedBody p{font-size:11px;color:var(--muted);margin:0}
.sealedMeta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.sealedMeta div{background:var(--bg-f8fafc);border-radius:10px;padding:9px}
.sealedMeta span,.sealedMeta strong{display:block}
.sealedMeta span{font-size:9px;color:var(--muted)}
.sealedMeta strong{font-size:12px;margin-top:2px}
.sealedFooter{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sealedFooter .sealedDelta{font-size:11px;font-weight:900}
.sealedFooter button{border:0;background:var(--bg-ede9fe);color:var(--fg-b2252a);border-radius:9px;padding:7px 10px;font-size:10px;font-weight:850;cursor:pointer}
.sealedForm{display:grid;gap:13px}
.sealedForm label{font-size:11px;font-weight:800;color:var(--fg-374151)}
.sealedForm input,.sealedForm select,.sealedForm textarea{width:100%;margin-top:5px;border:1px solid var(--line);border-radius:11px;padding:11px;background:var(--bg-f8fafc)}
.sealedFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.modalActionRow{display:flex;gap:9px;margin-top:4px}

.bulkActionBar{position:sticky;top:12px;z-index:20;margin-bottom:14px;padding:10px 12px;border-radius:16px;background:var(--bg-111827);color:var(--fg-ffffff);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 10px 28px rgba(15,23,42,0.22)}
.bulkActionCount{display:flex;align-items:baseline;gap:5px;white-space:nowrap}
.bulkActionCount strong{font-size:20px}
.bulkActionCount span{font-size:10px;color:var(--fg-cbd5e1)}
.bulkActionButtons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.bulkActionButtons button{border:1px solid rgba(255,255,255,0.14);background:rgba(255,255,255,0.08);color:var(--fg-ffffff);padding:7px 9px;border-radius:9px;font-size:9px;font-weight:850;cursor:pointer}
.bulkActionButtons .dangerBulk{background:var(--bg-7f1d1d);border-color:var(--bd-991b1b)}
.card.bulkSelectable{cursor:pointer}
.card.bulkSelected{outline:3px solid rgba(233,62,69,0.32);border-color:var(--bd-f26066)}
.bulkCheck{position:absolute;left:14px;top:14px;z-index:10;width:24px;height:24px;border-radius:8px;border:2px solid var(--bd-ffffff);background:var(--bg-a0f172a74);color:var(--fg-ffffff);display:grid;place-items:center;font-size:13px;font-weight:950;box-shadow:0 2px 8px rgba(0,0,0,0.22)}
.card.bulkSelected .bulkCheck{background:var(--bg-e93e45)}

.importDropZone{min-height:210px;border:2px dashed var(--bd-fbb7b9);border-radius:18px;background:var(--bg-faf5ff);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;text-align:center}
.importDropZone.dragging{background:var(--bg-ede9fe);border-color:var(--bd-e93e45)}
.importDropZone span,.importDropZone small{color:var(--muted)}
.importStatus{margin-top:13px;padding:12px;border-radius:12px;background:var(--bg-ecfdf5);color:var(--fg-065f46);font-size:12px}
.importStatus.error{background:var(--bg-fff1f2);color:var(--fg-9f1239)}
.exportOptions,.exportFormat{display:grid;gap:10px;padding:15px;border:1px solid var(--line);border-radius:14px;margin:12px 0}
.exportOptions label,.exportFormat label{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:750}
.exportNote{font-size:10px;margin-top:10px}

@media(max-width:760px){
  .collectionUtilityActions{width:100%;order:4}
  .collectionUtilityActions .btn{flex:1}
  .sealedSummary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sealedFormGrid{grid-template-columns:1fr}
  .bulkActionBar{align-items:flex-start;flex-direction:column}
  .bulkActionButtons{justify-content:flex-start}
  .smartSearchExamples{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}
  .smartSearchExamples button{white-space:nowrap}
}


/* ===== v1.13.3 — definitive set/card imagery ===== */
.setTileVisual{
  height:180px!important;
  background:var(--bg-ffffff)!important;
  border-bottom:1px solid var(--bd-e2e8f0)!important;
}
.setTileVisual:after{display:none!important;content:none!important}
.setLogoStage,
.japaneseSetStage{
  position:absolute!important;
  inset:0!important;
  padding:20px 24px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr!important;
  place-items:center!important;
  overflow:hidden!important;
  background:var(--bg-ffffff)!important;
}
.setLogoStage>*,
.japaneseSetStage>*{
  grid-column:1!important;
  grid-row:1!important;
}
.setCoverBackdrop,.setCoverBall,.setImageSource,.setSymbolImage{
  display:none!important;
}
.setLogoImage,
.japaneseSetStage .setLogoImage{
  position:static!important;
  display:block;
  width:min(100%,250px)!important;
  max-width:250px!important;
  height:118px!important;
  max-height:118px!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
  z-index:4!important;
}
.setLogoFallback{
  position:static!important;
  width:100%!important;
  max-width:245px!important;
  min-height:110px!important;
  margin:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  color:var(--fg-94a3b8)!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-align:center!important;
  z-index:1!important;
}
.setLogoFallback b{
  color:var(--fg-334155);
  font-size:16px;
  font-weight:900;
}
.setLogoFallback small{
  color:var(--fg-94a3b8);
  font-size:10px;
  font-weight:700;
}
.setCardPreview{
  position:static!important;
  display:none!important;
  width:92px!important;
  height:128px!important;
  margin:auto!important;
  object-fit:contain!important;
  transform:none!important;
  filter:none!important;
  z-index:2!important;
}
.setLogoStage.previewOnly .setCardPreview.loaded{
  display:block!important;
}
.setLogoStage.previewOnly.previewLoaded .setLogoFallback{
  display:none!important;
}
.setLogoStage.hasRealLogo .setLogoFallback{
  display:none!important;
}
.remoteCardArt{
  background:var(--bg-f8fafc)!important;
  border:1px solid var(--bd-e2e8f0)!important;
}
.remoteCardFallback{
  padding:14px!important;
  background:var(--bg-f8fafc)!important;
  color:var(--fg-94a3b8)!important;
  font-size:11px!important;
  line-height:1.3!important;
  text-align:center!important;
}
.remoteCardFallback b{
  display:block;
  color:var(--fg-475569);
  font-size:14px;
  margin-bottom:4px;
}
.unownedCard .remoteCardArt img{
  filter:grayscale(1)!important;
  opacity:.38!important;
}
.ownedCard .remoteCardArt img{
  filter:none!important;
  opacity:1!important;
}
.deckSlotFace.imagePending{
  display:grid;
  place-items:center;
  padding:10px;
  background:var(--bg-f8fafc)!important;
  color:var(--fg-94a3b8);
  text-align:center;
  font-size:10px;
  font-weight:800;
}


/* ===== v1.13.4 — persistent set assets + Japanese imagery ===== */
.setLogoStage.v134LogoStage{
  position:absolute!important;
  inset:0!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:1fr!important;
  place-items:center!important;
  padding:20px 24px!important;
  background:var(--bg-ffffff)!important;
  overflow:hidden!important;
}
.setLogoStage.v134LogoStage>*{
  grid-column:1!important;
  grid-row:1!important;
}
.setLogoStage.v134LogoStage .setLogoImage{
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:min(100%,255px)!important;
  max-width:255px!important;
  height:122px!important;
  max-height:122px!important;
  margin:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
  z-index:4!important;
  image-rendering:auto;
}
.setLogoStage.v134LogoStage.jpSetVisual .setLogoImage{
  width:min(100%,230px)!important;
  max-width:230px!important;
  height:112px!important;
}
.setLogoStage.v134LogoStage .setCardPreview{
  position:static!important;
  display:none!important;
  width:82px!important;
  height:114px!important;
  margin:auto!important;
  object-fit:contain!important;
  transform:none!important;
  z-index:2!important;
}
.setLogoStage.v134LogoStage.previewOnly .setCardPreview.loaded{
  display:block!important;
}
.setLogoStage.v134LogoStage.previewOnly.previewLoaded .setLogoFallback,
.setLogoStage.v134LogoStage.logoLoaded .setLogoFallback{
  display:none!important;
}
.setLogoStage.v134LogoStage .setLogoFallback{
  position:static!important;
  width:100%!important;
  max-width:240px!important;
  min-height:100px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  padding:12px!important;
  color:var(--fg-64748b)!important;
  font-size:12px!important;
  letter-spacing:0!important;
  text-align:center!important;
  z-index:1!important;
}
.setLogoStage.v134LogoStage .setLogoFallback b{
  display:block;
  color:var(--fg-334155);
  font-size:15px;
  line-height:1.2;
  font-weight:900;
}
.setLogoStage.v134LogoStage .setLogoFallback small{
  color:var(--fg-94a3b8);
  font-size:9px;
  font-weight:750;
}
.setLogoStage.v134LogoStage .setCoverBackdrop,
.setLogoStage.v134LogoStage .setCoverBall,
.setLogoStage.v134LogoStage .setSymbolImage,
.setLogoStage.v134LogoStage .setImageSource{
  display:none!important;
}
.remoteCardFallback.v134Fallback{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:4px!important;
  min-height:170px!important;
  padding:15px!important;
  color:var(--fg-94a3b8)!important;
  background:var(--bg-f8fafc)!important;
  font-size:10px!important;
  text-align:center!important;
}
.remoteCardFallback.v134Fallback b{
  color:var(--fg-475569);
  font-size:15px;
}
