.rarity-rare{ --rar: var(--r-rare); }
.rarity-mythic{ --rar: var(--r-mythic); }
.rarity-legendary{ --rar: var(--r-legendary); }
.reveal.rarity-legendary, .reveal.rarity-unique, .reveal.rarity-mythic{ box-shadow: 0 0 0 2px color-mix(in srgb, var(--rar) 70%, transparent), 0 14px 40px -12px color-mix(in srgb, var(--rar) 60%, transparent); }
.reveal.rarity-legendary::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, transparent 30%, rgba(255,255,255,.55) 45%, transparent 60%); transform: translateX(-120%); animation: shine 1.6s ease .9s 1 both; pointer-events: none; }
.sheet-item.rarity-common, .sheet-item.rarity-uncommon, .sheet-item.rarity-rare, .sheet-item.rarity-mythic, .sheet-item.rarity-unique, .sheet-item.rarity-legendary{ border-left: 3px solid var(--rar); padding-left: 12px; }
.rarity-breakdown .rarity-rare span{ color: #6fa8ff; }
.rarity-breakdown .rarity-mythic span{ color: #c9a2ec; }
.rarity-breakdown .rarity-legendary span{ color: #f3cb4a; }
.tcg-kicker{ display: block; font: 700 11px/1.2 var(--font); letter-spacing: .16em; text-transform: uppercase; color: #c9a46a; }
.tcg-hero{ display: grid; grid-template-columns: minmax(200px, 300px) 1fr; gap: 22px; align-items: stretch; padding: 18px; border-radius: var(--radius); background: radial-gradient(120% 140% at 0% 0%, rgba(173,108,255,.14), transparent 55%), linear-gradient(160deg, #1c1830, var(--bg-2) 60%); border: 1px solid rgba(201,164,106,.25); margin-bottom: 16px; }
.tcg-hero-portrait{ position: relative; border-radius: 14px; overflow: hidden; aspect-ratio: 1; box-shadow: 0 18px 40px rgba(0,0,0,.45); }
.tcg-hero-portrait img{ width: 100%; height: 100%; object-fit: cover; }
.tcg-hero-portrait span{ position: absolute; left: 10px; bottom: 10px; padding: 4px 10px; border-radius: 99px; background: rgba(10,8,20,.75); font: 700 11px var(--font); letter-spacing: .14em; text-transform: uppercase; color: #f3cb4a; }
.tcg-hero-body{ display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.tcg-hero-body h1{ font: 800 clamp(26px,3.4vw,38px)/1.05 var(--font-cond); }
.tcg-gossip{ position: relative; padding: 16px 18px; }
.tcg-gossip span{ display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 6px; }
.tcg-gossip blockquote{ font: italic 17px/1.5 var(--font-serif, Georgia, serif); }
.tcg-gossip blockquote.is-changing{ animation: pt-pop .35s ease; }
.tcg-hero-actions{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
.tcg-shop{ display: grid; gap: 14px; }
.tcg-booster-card{ display: grid; grid-template-columns: 230px 1fr; gap: 22px; padding: 18px; border-radius: var(--radius); border: 1px solid var(--line); }
.tcg-booster-visual{ position: relative; display: grid; place-items: center; aspect-ratio: 3/4.2; border-radius: 12px; }
.tcg-booster-visual img{ max-width: 92%; max-height: 100%; object-fit: contain; filter: drop-shadow(0 18px 26px rgba(0,0,0,.55)); animation: tcg-float 4s ease-in-out infinite; }
.tcg-booster-fallback, .tcg-pack-fallback{ display: none; }
.tcg-booster-visual.no-art .tcg-booster-fallback, .tcg-pack.no-art .tcg-pack-fallback{ display: grid; place-content: center; text-align: center; width: 78%; height: 92%; border-radius: 10px; font: 800 26px var(--font-cond); letter-spacing: .1em; box-shadow: 0 18px 30px rgba(0,0,0,.5); }
.tcg-booster-fallback small{ display: block; font: 600 12px var(--font); letter-spacing: .04em; margin-top: 6px; }
.tcg-booster-info{ display: flex; flex-direction: column; gap: 10px; }
.tcg-booster-info h2{ font: 800 24px var(--font-cond); }
.tcg-booster-info > p{ color: var(--muted); line-height: 1.5; }
.tcg-price span{ display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }
.tcg-price strong{ font: 800 30px var(--font-cond); color: var(--paper); }
.tcg-buy{ align-self: flex-start; min-height: 48px; padding: 0 22px; font-size: 15px; }
.tcg-rates{ border-top: 1px dashed var(--line); padding-top: 10px; }
.tcg-rates summary{ cursor: pointer; font-weight: 700; color: var(--muted); }
.tcg-rates table{ width: 100%; border-collapse: collapse; margin: 10px 0 6px; font-size: 13.5px; }
.tcg-rates th{ text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); padding: 4px 6px; }
.tcg-rates td{ padding: 6px; border-top: 1px solid var(--line); }
.tcg-sym{ display: inline-block; width: 16px; color: #c9a46a; }
.tcg-stats{ display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
@media (max-width: 760px){.tcg-hero{ grid-template-columns: 1fr; }.tcg-hero-portrait{ max-width: 220px; }.tcg-booster-card{ grid-template-columns: 1fr; }.tcg-booster-visual{ max-width: 220px; margin: 0 auto; width: 100%; }.tcg-stats{ grid-template-columns: repeat(2,minmax(0,1fr)); }}
.tcg-open{ position: fixed; inset: 0; z-index: 500; display: none; place-items: center; overflow-y: auto; padding: calc(var(--safe-t,0px) + 16px) 16px calc(var(--safe-b,0px) + 16px); }
.tcg-open.is-open{ display: grid; animation: tcg-fade .3s ease; }
.tcg-open-bg{ position: fixed; inset: 0; background: radial-gradient(circle at 50% 40%, rgba(60,40,110,.85), rgba(4,4,10,.96) 70%); }
.tcg-open.is-god .tcg-open-bg{ background: radial-gradient(circle at 50% 40%, rgba(243,203,74,.55), rgba(60,30,4,.9) 45%, rgba(4,4,10,.97) 80%); }
.tcg-open.is-shaking{ animation: tcg-shake .6s cubic-bezier(.36,.07,.19,.97); }
.tcg-open.is-flash::after{ content: ""; position: fixed; inset: 0; background: radial-gradient(circle, rgba(255,230,160,.65), transparent 65%); animation: tcg-flash .6s ease forwards; pointer-events: none; }
.tcg-stage{ position: relative; z-index: 1; width: min(980px,100%); display: flex; flex-direction: column; align-items: center; gap: 18px; }
.tcg-pack{ position: relative; aspect-ratio: 3/4.2; display: grid; place-items: center; }
.tcg-pack img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 24px 40px rgba(0,0,0,.6)); }
.tcg-pack-top{ clip-path: inset(0 0 82% 0); transition: transform .7s cubic-bezier(.2,.8,.2,1), opacity .7s ease; }
.tcg-pack-body{ clip-path: inset(18% 0 0 0); }
.tcg-pack-glow{ position: absolute; inset: -30%; opacity: 0; transition: opacity .5s ease; }
.tcg-pack.is-shaking{ animation: tcg-shake .55s ease-in-out 2; }
.tcg-pack.is-torn .tcg-pack-top{ transform: translate(40px,-120px) rotate(18deg); opacity: 0; }
.tcg-pack.is-torn .tcg-pack-glow{ opacity: 1; }
.tcg-open.is-god .tcg-pack-glow{ opacity: .8; }
.tcg-god-banner{ font: 900 clamp(34px,8vw,64px)/1 var(--font-cond); letter-spacing: .12em; background: linear-gradient(90deg,#fff3b0,#f3cb4a,#fff,#f3cb4a); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 0 18px rgba(243,203,74,.8)); animation: pt-pop .5s ease; }
.tcg-instruction{ color: #e9e2f5; font-weight: 700; letter-spacing: .04em; text-align: center; }
.tcg-deal{ display: flex; justify-content: center; gap: clamp(10px,2.4vw,26px); flex-wrap: wrap; }
.tcg-deal-card{ --c: var(--tcg-commun); position: relative; width: clamp(150px,26vw,250px); aspect-ratio: 5/7; border: 0; padding: 0; background: none; cursor: pointer; perspective: 1200px; opacity: 0; transform: translateY(80px) scale(.6) rotate(-6deg); transition: opacity .45s ease calc(var(--i)*.14s), transform .55s cubic-bezier(.2,.9,.3,1.15) calc(var(--i)*.14s); }
.tcg-deal-card.is-dealt{ opacity: 1; transform: none; }
.tcg-deal-card.r-non-commun{ --c: var(--tcg-non-commun); }
.tcg-deal-card.r-rare{ --c: var(--tcg-rare); }
.tcg-deal-card.r-mythique{ --c: var(--tcg-mythique); }
.tcg-deal-card.r-legendaire{ --c: var(--tcg-legendaire); }
.tcg-deal-card.r-eternel{ --c: var(--tcg-eternel); }
.tcg-flip{ position: absolute; inset: 0; transform-style: preserve-3d; transition: transform .7s cubic-bezier(.3,.9,.3,1.05); }
.tcg-deal-card.is-revealed .tcg-flip{ transform: rotateY(180deg); }
.tcg-deal-card:not(.is-revealed):hover .tcg-flip{ transform: translateY(-6px) rotateZ(-1deg); }
.tcg-face{ position: absolute; inset: 0; border-radius: 12px; overflow: hidden; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.tcg-face img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.tcg-back.no-art::after{ content: "DIES NOX"; position: absolute; inset: 0; display: grid; place-items: center; font: 800 20px var(--font-cond); letter-spacing: .14em; }
.tcg-front{ transform: rotateY(180deg); background: #0e0b1d; }
.tcg-deal-card.is-revealed .tcg-front{ box-shadow: 0 0 0 2px var(--c), 0 0 26px 2px color-mix(in srgb, var(--c) 60%, transparent), 0 18px 34px rgba(0,0,0,.55); }
.tcg-deal-card.r-mythique.is-revealed .tcg-front{ box-shadow: 0 0 0 2px var(--c), 0 0 40px 6px rgba(173,108,255,.55); }
.tcg-deal-card.r-legendaire.is-revealed .tcg-front{ box-shadow: 0 0 0 3px var(--c), 0 0 60px 14px rgba(230,189,76,.6); animation: tcg-pulse 1.6s ease-in-out infinite; }
.tcg-deal-card.r-legendaire.v-eclipse.is-revealed .tcg-front{ box-shadow: 0 0 0 3px #f2d06e, 0 0 0 9px rgba(20,10,30,.9), 0 0 70px 18px rgba(242,208,110,.55); }
.tcg-deal-card.r-eternel.is-revealed .tcg-front{ box-shadow: 0 0 0 3px #fff, 0 0 70px 18px rgba(255,180,240,.55), 0 0 120px 30px rgba(150,220,255,.35); animation: tcg-pulse 1.4s ease-in-out infinite; }
.tcg-deal-card.r-legendaire.is-revealed .tcg-front::after, .tcg-deal-card.r-eternel.is-revealed .tcg-front::after, .tcg-deal-card.r-mythique.is-revealed .tcg-front::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, transparent 30%, rgba(255,255,255,.45) 45%, transparent 60%); background-size: 250% 100%; animation: tcg-shine 2.4s ease-in-out infinite; mix-blend-mode: screen; }
.tcg-deal-card.r-eternel.is-revealed .tcg-front::before{ content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(130deg, rgba(255,154,213,.35), rgba(154,215,255,.35), rgba(195,255,176,.35), rgba(255,229,154,.35)); mix-blend-mode: color-dodge; pointer-events: none; }
.tcg-badge{ position: absolute; z-index: 2; top: 8px; left: 50%; transform: translateX(-50%); padding: 3px 10px; border-radius: 99px; background: rgba(10,8,20,.82); font: 800 11px var(--font); letter-spacing: .1em; text-transform: uppercase; color: #d7cbe9; white-space: nowrap; }
.tcg-badge.is-new{ background: #f3cb4a; color: #1a1408; }
.tcg-caption{ position: absolute; left: 0; right: 0; bottom: -46px; text-align: center; opacity: 0; transition: opacity .4s ease .35s; }
.tcg-deal-card.is-revealed .tcg-caption{ opacity: 1; }
.tcg-caption b{ display: block; color: #fff; font-size: 14px; }
.tcg-caption small{ color: var(--c); font-weight: 700; font-size: 12px; }
.tcg-open-actions{ margin-top: 48px; display: flex; flex-direction: column; align-items: center; gap: 14px; width: 100%; }
.tcg-talyne-says{ display: flex; align-items: center; gap: 12px; max-width: 640px; padding: 12px 16px; border-radius: 14px; border: 1px solid rgba(201,164,106,.3); animation: pt-pop .35s ease; }
.tcg-talyne-says img{ width: 52px; height: 52px; border-radius: 50%; object-fit: cover; border: 2px solid #c9a46a; flex: none; }
.tcg-talyne-says p{ font: italic 15px/1.45 var(--font-serif, Georgia, serif); }
.tcg-open-buttons{ display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
@media (max-width: 600px){.tcg-caption b{ font-size: 12px; }.tcg-caption small{ font-size: 10.5px; }.tcg-badge{ font-size: 9px; padding: 2px 6px; }}
.tcg-preview{ position: fixed; inset: 0; z-index: 600; display: none; }
.tcg-preview.is-open{ display: grid; animation: tcg-fade .25s ease; }
.tcg-preview-bg{ position: fixed; inset: 0; background: rgba(4,4,10,.86); }
.tcg-preview-box{ position: relative; display: flex; gap: 26px; align-items: center; max-width: 920px; width: 100%; flex-wrap: wrap; justify-content: center; }
.tcg-preview-card{ --sx: 50%; --sy: 50%; width: min(360px, 78vw); aspect-ratio: 5/7; perspective: 1400px; touch-action: none; }
.tcg-preview-inner{ position: relative; width: 100%; height: 100%; transform-style: preserve-3d; transition: transform .25s ease-out; }
.tcg-preview-inner img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.tcg-pb{ transform: rotateY(180deg); }
.tcg-shine{ position: absolute; inset: 0; border-radius: 16px; pointer-events: none; background: radial-gradient(circle at var(--sx) var(--sy), rgba(255,255,255,.28), transparent 45%); mix-blend-mode: screen; backface-visibility: hidden; }
.tcg-preview-card.r-eternel .tcg-pf{ box-shadow: 0 0 0 3px #fff, 0 0 70px rgba(255,180,240,.5), 0 30px 60px rgba(0,0,0,.6); }
.tcg-preview-info{ flex: 1; min-width: 240px; max-width: 420px; display: grid; gap: 8px; }
.tcg-preview-info h3{ font: 800 28px var(--font-cond); }
.tcg-preview-info > p{ color: var(--muted); font-style: italic; }
.tcg-preview-actions{ flex-wrap: wrap; margin-top: 6px; }
.tcg-binder{ display: grid; gap: 14px; }
.tcg-binder-head{ display: grid; gap: 18px; align-items: center; padding: 16px; border-radius: var(--radius); border: 1px solid var(--line); }
.tcg-binder-cover{ position: relative; aspect-ratio: 3/4; border-radius: 10px 14px 14px 10px; border: 1px solid rgba(243,203,74,.35); display: flex; flex-direction: column; overflow: hidden; }
.tcg-binder-cover span{ font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: #d7cbe9; text-shadow: 0 1px 6px #000; }
.tcg-binder-cover strong{ font: 800 24px var(--font-cond); color: #f3cb4a; text-shadow: 0 2px 8px #000; }
.tcg-binder-stats{ display: grid; gap: 10px; }
.tcg-progress strong{ font: 800 34px var(--font-cond); }
.tcg-progress small{ font-size: 16px; color: var(--muted); }
.tcg-progress span{ display: block; color: var(--muted); font-size: 13px; }
.tcg-binder-facts{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.tcg-binder-tools{ display: flex; gap: 10px; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.tcg-binder-tools .search{ flex: 1; min-width: 200px; max-width: 360px; }
.tcg-book{ display: grid; grid-template-columns: 1fr 1fr; gap: 0; padding: 18px; border-radius: 16px; }
.tcg-book.is-single{ grid-template-columns: 1fr; max-width: 560px; margin: 0 auto; }
.tcg-page{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; padding: 14px; border-radius: 10px; }
.tcg-book:not(.is-single) .tcg-page:first-child{ margin-right: 10px; }
.tcg-book:not(.is-single) .tcg-page:last-child{ margin-left: 10px; }
.tcg-slot{ --c: var(--tcg-commun); position: relative; aspect-ratio: 5/7; overflow: hidden; padding: 0; cursor: pointer; transition: transform .15s ease, box-shadow .15s ease; }
.tcg-slot img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.tcg-slot:not(.is-locked):hover{ transform: translateY(-3px) scale(1.02); }
.tcg-slot.r-non-commun{ --c: var(--tcg-non-commun); }
.tcg-slot.r-rare{ --c: var(--tcg-rare); }
.tcg-slot.r-mythique{ --c: var(--tcg-mythique); }
.tcg-slot.r-legendaire{ --c: var(--tcg-legendaire); box-shadow: 0 0 0 1px rgba(230,189,76,.6); }
.tcg-slot.r-eternel{ --c: var(--tcg-eternel); box-shadow: 0 0 0 1px #fff, 0 0 14px rgba(255,180,240,.45); }
.tcg-slot.is-empty img{ filter: grayscale(1) brightness(.45); }
.tcg-slot.is-locked{ cursor: default; display: grid; place-items: center; }
.tcg-slot.is-locked img{ position: absolute; inset: 0; opacity: .55; }
.tcg-lock svg{ width: 26px; height: 26px; fill: none; stroke-width: 2; position: relative; }
.tcg-slot-num{ position: absolute; left: 6px; bottom: 6px; padding: 2px 6px; border-radius: 6px; font: 700 10.5px var(--font); }
.tcg-slot-count{ position: absolute; right: 6px; top: 6px; padding: 2px 7px; border-radius: 99px; background: #f3cb4a; color: #1a1408; font: 800 11px var(--font); }
.tcg-slot-none{ position: absolute; left: 0; right: 0; top: 42%; text-align: center; font: 700 10.5px var(--font); letter-spacing: .06em; text-transform: uppercase; color: #d7cbe9; }
.tcg-pager{ display: flex; align-items: center; justify-content: center; gap: 14px; }
.tcg-pager span{ font-weight: 700; color: var(--muted); }
.tcg-binder-modal .modal{ max-width: 1100px; }
@media (max-width: 760px){.tcg-binder-head{ grid-template-columns: 96px 1fr; }.tcg-binder-cover strong{ font-size: 16px; }.tcg-binder-facts{ grid-template-columns: 1fr 1fr; }.tcg-book{ padding: 10px; }.tcg-page{ gap: 8px; padding: 8px; }}
.tcg-lot-find{ --c: var(--tcg-commun); display: flex; align-items: center; gap: 14px; width: 100%; margin-top: 12px; padding: 12px; border-radius: 12px; color: var(--text); text-align: left; cursor: pointer; animation: pt-pop .4s ease; }
.tcg-lot-find.r-rare{ --c: var(--tcg-rare); }
.tcg-lot-find.r-mythique{ --c: var(--tcg-mythique); }
.tcg-lot-find.r-legendaire{ --c: var(--tcg-legendaire); }
.tcg-lot-find.r-eternel{ --c: #fff; }
.tcg-lot-find img{ width: 64px; aspect-ratio: 5/7; object-fit: cover; border-radius: 6px; }
.tcg-lot-find strong{ display: block; font-size: 16px; }
.tcg-lot-find small{ color: var(--muted); }
.tcg-book{ width: 100%; box-sizing: border-box; }
.tcg-book.is-single{ width: 100%; }
@media (max-width: 600px){.tcg-deal{ flex-wrap: nowrap; gap: 8px; }.tcg-deal-card{ width: calc((100vw - 56px) / 3); }.tcg-caption{ bottom: -40px; }.tcg-open-actions{ margin-top: 54px; }.tcg-slot-num{ font-size: 9px; padding: 1px 4px; left: 4px; bottom: 4px; }.tcg-lock svg{ width: 20px; height: 20px; }}
.tcg-binder, .tcg-binder-head, .tcg-binder-stats, .tcg-binder-tools{ min-width: 0; max-width: 100%; }
.tcg-binder-tools .segmented{ max-width: 100%; overflow-x: auto; flex-wrap: nowrap; }
@media (max-width: 600px){.tcg-binder-head{ grid-template-columns: 1fr; }.tcg-binder-cover{ aspect-ratio: 3/4; }.tcg-binder-tools .search{ max-width: none; width: 100%; }}
.tcg-pager span{ white-space: nowrap; }
@media (max-width: 600px){.tcg-pager{ gap: 8px; }.tcg-pager .ghost-btn{ padding: 0 12px; font-size: 13px; }}
.tcg-binder-cover{ background: radial-gradient(120% 90% at 30% 20%, rgba(255,255,255,.08), transparent 55%), repeating-linear-gradient(45deg, rgba(255,255,255,.018) 0 2px, transparent 2px 5px), linear-gradient(160deg, #3b2160, #1d1032 55%, #120a22); align-items: center; justify-content: center; text-align: center; gap: 2px; padding: 14px 10px 12px 22px; box-shadow: inset 0 0 0 3px rgba(18,10,34,.9), inset 0 0 0 4px rgba(243,203,74,.45), inset 14px 0 0 rgba(0,0,0,.35), 0 14px 30px rgba(0,0,0,.45); }
.tcg-binder-cover::after{ content: ""; position: absolute; inset: 9px 9px 9px 19px; border: 1px dashed rgba(243,203,74,.35); border-radius: 6px; pointer-events: none; }
.tcg-rings{ position: absolute; left: 4px; top: 0; bottom: 0; display: flex; flex-direction: column; justify-content: space-around; }
.tcg-rings i{ width: 12px; height: 12px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff4cf, #b8923d 55%, #5c4420); box-shadow: 0 1px 2px rgba(0,0,0,.6); }
.tcg-emblem{ width: 58%; max-width: 92px; fill: none; stroke: #f3cb4a; stroke-width: 2.2; filter: drop-shadow(0 0 6px rgba(243,203,74,.45)); margin-bottom: 6px; }
.tcg-emblem path{ fill: rgba(243,203,74,.18); }
.tcg-cover-label{ font-size: 10px !important; letter-spacing: .22em !important; text-transform: uppercase; color: #d7cbe9; }
.tcg-binder-cover strong{ font-size: 22px; letter-spacing: .06em; }
.tcg-binder-cover small{ font: 700 11px var(--font); color: #c9a2ec; }
@media (max-width: 600px){.tcg-binder-cover{ width: 120px; }.tcg-binder-cover strong{ font-size: 17px; }}
.tcg-gossip{ border-radius: 12px; background: var(--bg-3); border: 1px solid var(--line); margin-bottom: 12px; }
.tcg-gossip span{ color: var(--muted); }
.tcg-gossip blockquote{ color: var(--text); }
.tcg-booster-card{ background: var(--bg-2); }
.tcg-booster-visual{ background: none; }
.tcg-booster-visual.no-art .tcg-booster-fallback, .tcg-pack.no-art .tcg-pack-fallback{ background: var(--bg-3); border: 1px solid var(--line); color: var(--paper); }
.tcg-booster-fallback small{ color: var(--muted); }
.tcg-booster-card{ margin-bottom: 16px; }
.tcg-stats{ margin-top: 16px; }
.tcg-open-bg, .tcg-open.is-god .tcg-open-bg{ background: rgba(7,9,13,.95); }
.tcg-pack-glow{ background: radial-gradient(circle, rgba(255,255,255,.22), transparent 60%); }
.tcg-open.is-god .tcg-pack-glow{ background: radial-gradient(circle, rgba(255,226,140,.5), transparent 62%); }
.tcg-back{ background: var(--bg-3); border: 1px solid var(--line); }
.tcg-back.no-art::after{ color: var(--paper); }
.tcg-talyne-says{ background: var(--bg-2); border-color: var(--line); }
.tcg-talyne-says.is-big{ border-color: rgba(230,189,76,.6); box-shadow: none; }
.tcg-talyne-says p{ color: var(--text); }
.tcg-face, .tcg-front{ background: transparent; }
.tcg-face img, .tcg-slot img, .tcg-preview-inner img, .tcg-lot-find img{ object-fit: contain; }
.tcg-deal-card, .tcg-slot, .tcg-preview-card{ aspect-ratio: 0.7; }
.tcg-face{ box-shadow: none; }
.tcg-front img{ filter: drop-shadow(0 16px 26px rgba(0,0,0,.55)); }
.tcg-deal-card.is-revealed .tcg-front, .tcg-deal-card.r-mythique.is-revealed .tcg-front, .tcg-deal-card.r-legendaire.is-revealed .tcg-front, .tcg-deal-card.r-legendaire.v-eclipse.is-revealed .tcg-front, .tcg-deal-card.r-eternel.is-revealed .tcg-front{ box-shadow: none; }
.tcg-deal-card.r-rare.is-revealed .tcg-front img{ filter: drop-shadow(0 0 14px rgba(92,158,255,.55)); }
.tcg-deal-card.r-mythique.is-revealed .tcg-front img{ filter: drop-shadow(0 0 18px rgba(173,108,255,.6)); }
.tcg-deal-card.r-legendaire.is-revealed .tcg-front img{ filter: drop-shadow(0 0 26px rgba(230,189,76,.75)); }
.tcg-deal-card.r-eternel.is-revealed .tcg-front img{ filter: drop-shadow(0 0 22px rgba(255,190,240,.75)) drop-shadow(0 0 40px rgba(150,220,255,.5)); }
.tcg-deal-card.is-revealed .tcg-front::before, .tcg-deal-card.is-revealed .tcg-front::after{ display: none; }
.tcg-pb{ background: transparent; }
.tcg-preview-inner img{ box-shadow: none; filter: drop-shadow(0 26px 40px rgba(0,0,0,.6)); border-radius: 0; }
.tcg-preview-card.r-legendaire .tcg-pf, .tcg-preview-card.r-eternel .tcg-pf{ box-shadow: none; }
.tcg-preview-card.r-legendaire .tcg-pf{ filter: drop-shadow(0 0 22px rgba(230,189,76,.55)); }
.tcg-preview-card.r-eternel .tcg-pf{ filter: drop-shadow(0 0 24px rgba(255,190,240,.6)); }
.tcg-shine{ display: none; }
.tcg-binder-head{ grid-template-columns: 1fr; background: var(--bg-2); }
.tcg-book{ background: var(--bg-2); border: 1px solid var(--line); box-shadow: none; }
.tcg-page{ background: var(--bg-3); }
.tcg-slot{ background: transparent; border: 0; border-radius: 6px; }
.tcg-slot.is-locked{ background: var(--bg-2); border: 1px dashed var(--line); }
.tcg-slot.r-legendaire, .tcg-slot.r-eternel{ box-shadow: none; }
.tcg-slot:not(.is-locked):hover{ box-shadow: none; filter: drop-shadow(0 8px 16px rgba(0,0,0,.45)); }
.tcg-slot-num{ background: rgba(0,0,0,.65); color: var(--text); }
.tcg-slot-lock{ position: absolute; left: 6px; top: 6px; width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: rgba(0,0,0,.7); }
.tcg-slot-lock svg{ width: 13px; height: 13px; fill: none; stroke: var(--paper); stroke-width: 2.4; }
.tcg-lock svg{ stroke: var(--faint); }
.tcg-preview-actions .is-on{ border-color: var(--paper); color: var(--paper); }
.tcg-lot-find{ background: var(--bg-3); border: 1px solid var(--line); }
.tcg-lot-find img{ box-shadow: none; }
.tcg-deal-card > .tcg-badge{ top: -13px; z-index: 3; opacity: 0; transition: opacity .3s ease .35s; }
.tcg-deal-card.is-revealed > .tcg-badge{ opacity: 1; }
.tcg-deal{ padding-top: 16px; }
.tcg-gossip-row{ display: flex; align-items: center; gap: 14px; }
.tcg-gossip-row .tcg-gossip{ flex: 1; margin-bottom: 0; }
.tcg-talk{ flex: none; width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--line); background: var(--bg-3); color: var(--paper); cursor: pointer; transition: transform .15s ease, border-color .15s ease; }
.tcg-talk:hover{ border-color: rgba(232,221,194,.45); transform: translateY(-2px); }
.tcg-talk:active{ transform: scale(.94); }
.tcg-talk svg{ width: 28px; height: 28px; }
.tcg-talk path{ fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linejoin: round; }
.tcg-talk circle{ fill: currentColor; }
#viewRoot > .block + .tcg-booster-card{ margin-top: 18px; }
.tcg-booster-card + .block{ margin-top: 18px; }
.tcg-pack{ transform-origin: 50% 70%; transition: transform .35s cubic-bezier(.3,.8,.3,1); }
.tcg-pack img{ clip-path: none; }
.tcg-pack .tcg-pack-top, .tcg-pack .tcg-pack-body{ transition: none; }
.tcg-pack.is-grip{ transform: scale(1.05) rotate(-2.5deg); }
.tcg-pack.is-grip:not(.is-tearing){ animation: tcg-tension .42s ease-in-out infinite; }
.tcg-pack-top{ transform-origin: 2% var(--tear); }
.tcg-pack.is-tearing .tcg-pack-top{ animation: tcg-rip .64s steps(1,end) forwards, tcg-rip-smooth .64s cubic-bezier(.4,.1,.3,1) forwards; }
.tcg-tear-light{ position: absolute; left: 0; right: 0; top: calc(var(--tear) - 1.4%); height: 2.8%; background: linear-gradient(90deg, transparent, rgba(255,247,225,.95) 18%, #fff 50%, rgba(255,247,225,.95) 82%, transparent); filter: blur(2px); opacity: 0; transform-origin: 100% 50%; transform: scaleX(0); pointer-events: none; }
.tcg-pack.is-tearing .tcg-tear-light{ animation: tcg-light .64s cubic-bezier(.4,.1,.3,1) forwards; }
.tcg-open.is-god .tcg-tear-light{ background: linear-gradient(90deg, transparent, #ffe28a 20%, #fff7cf 50%, #ffe28a 80%, transparent); filter: blur(3px); }
.tcg-pack.is-ripped .tcg-pack-top{ animation: tcg-throw .55s cubic-bezier(.25,.6,.3,1) forwards; }
.tcg-pack.is-ripped{ transform: scale(1.02) rotate(-1deg); }
.tcg-pack.is-ripped .tcg-tear-light{ animation: tcg-light-open .7s ease forwards; }
.tcg-bit{ position: absolute; width: 9px; height: 6px; opacity: 0; clip-path: polygon(0 20%, 35% 0, 70% 30%, 100% 10%, 85% 80%, 40% 100%, 10% 75%); transform: translate(-50%,-50%) scale(var(--s)); pointer-events: none; }
.tcg-pack.is-ripped .tcg-bit{ animation: tcg-bit .8s cubic-bezier(.2,.7,.3,1) var(--d) forwards; }
.tcg-peek{ position: absolute; top: calc(var(--tear) + 1%); height: 34%; display: flex; justify-content: center; pointer-events: none; z-index: 0; }
.tcg-peek span{ position: absolute; aspect-ratio: .7; top: 0; transform: translateY(18%); transition: transform .55s cubic-bezier(.3,.9,.3,1.1) calc(var(--k) * 70ms); }
.tcg-peek span:nth-child(1){ transform: translate(-16%,18%) rotate(-5deg); }
.tcg-peek span:nth-child(3){ transform: translate(16%,18%) rotate(5deg); }
.tcg-peek img{ width: 100%; height: 100%; object-fit: contain; filter: brightness(.9); }
.tcg-pack .tcg-pack-body{ z-index: 1; }
.tcg-pack .tcg-pack-top{ z-index: 3; }
.tcg-tear-light{ z-index: 2; }
.tcg-bit{ z-index: 4; }
.tcg-pack.is-peeking .tcg-peek{ z-index: 0; }
@media (prefers-reduced-motion: reduce){.tcg-pack *, .tcg-pack{ animation-duration: .01s !important; transition-duration: .01s !important; }}
.tcg-pack .tcg-pack-top, .tcg-pack .tcg-pack-body{ clip-path: none !important; }
.tcg-pack.is-tearing .tcg-pack-top{ clip-path: var(--top-clip) !important; }
.tcg-pack.is-tearing .tcg-pack-body{ clip-path: var(--body-clip) !important; }
.tcg-pack:not(.is-tearing) .tcg-pack-body{ visibility: hidden; }
.tcg-pack.is-peeking .tcg-peek span:nth-child(2){ transform: translateY(-56%); }
.tcg-tear-light{ display: none !important; }
.tcg-pack-bodywrap, .tcg-pack-topwrap{ position: absolute; inset: 0; }
.tcg-pack-bodywrap{ z-index: 1; }
.tcg-pack-topwrap{ z-index: 3; }
.tcg-pack-bodywrap img, .tcg-pack-topwrap img{ position: absolute; inset: 0; width: 100%; height: 100%; }
.tcg-pack.is-tearing .tcg-pack-top, .tcg-pack.is-ripped .tcg-pack-top{ animation: none !important; transform: none !important; }
.tcg-pack-topwrap{ transform-origin: 2% var(--tear); }
.tcg-pack.is-tearing .tcg-pack-topwrap{ animation: tcg-rip-smooth .64s cubic-bezier(.4,.1,.3,1) forwards; }
.tcg-pack.is-tearing .tcg-pack-topwrap img{ filter: drop-shadow(0 6px 5px rgba(0,0,0,.45)); }
.tcg-pack.is-ripped .tcg-pack-topwrap{ animation: tcg-throw .55s cubic-bezier(.25,.6,.3,1) forwards; }
.tcg-pack:not(.is-tearing) .tcg-pack-bodywrap{ visibility: hidden; }
.tcg-fibers{ position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; opacity: 0; clip-path: inset(0 0 0 100%); }
.tcg-fibers polyline{ fill: none; vector-effect: non-scaling-stroke; stroke-linejoin: round; stroke-linecap: round; }
.tcg-fibers .f1{ stroke: #f2eee6; stroke-width: 3.2; stroke-dasharray: 7 1.5 3 1 11 2 4 1; }
.tcg-fibers .f2{ stroke: rgba(160,152,140,.75); stroke-width: 1.1; stroke-dasharray: 2 3 6 2 1 4; }
.tcg-pack.is-tearing .tcg-fibers{ opacity: 1; animation: tcg-fiber-run .64s cubic-bezier(.45,.05,.3,1) forwards; }
.tcg-pack.is-ripped .tcg-fibers.is-body{ clip-path: none; animation: none; opacity: 1; }
.tcg-pack.is-tearing .tcg-pack-bodywrap{ animation: tcg-counter .64s ease-out forwards; transform-origin: 50% 100%; }
.tcg-pack.is-ripped .tcg-pack-bodywrap{ transform: translate(0,1px) rotate(.2deg); transition: transform .4s ease; }
.tcg-bit{ background: #ece7dc; box-shadow: inset 0 0 0 1px rgba(150,140,125,.35); }
@media (prefers-reduced-motion: reduce){.tcg-fibers{ animation-duration: .01s !important; }}
.tcg-pack{ width: auto; height: min(52vh, 420px); max-width: 70vw; }
.tcg-pack-bodywrap, .tcg-pack-topwrap{ overflow: hidden; }
.tcg-pack-bodywrap img, .tcg-pack-topwrap img{ object-fit: fill; }
.tcg-fibers{ overflow: hidden; }
.tcg-fibers{ -webkit-mask-image: var(--pack-mask); mask-image: var(--pack-mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-mode: alpha; mask-mode: alpha; }
.tcg-bit{ display: none !important; }
.tcg-peek{ left: calc(var(--pk-l, 0%) + (var(--pk-r, 100%) - var(--pk-l, 0%)) * .12); right: calc(100% - var(--pk-r, 100%) + (var(--pk-r, 100%) - var(--pk-l, 0%)) * .12); }
.tcg-peek span{ width: 70%; }
.tcg-pack.is-peeking .tcg-peek span:nth-child(1){ transform: translate(-12%,-44%) rotate(-4deg); }
.tcg-pack.is-peeking .tcg-peek span:nth-child(3){ transform: translate(12%,-44%) rotate(4deg); }
.tcg-deal-card.r-unique{ --c: var(--tcg-unique); }
.tcg-deal-card.r-unique.is-revealed .tcg-front img{ filter: drop-shadow(0 0 20px rgba(240,163,90,.65)); }
.tcg-slot.r-unique{ --c: var(--tcg-unique); }
.tcg-preview-card.r-unique .tcg-pf{ filter: drop-shadow(0 0 20px rgba(240,163,90,.5)); }
.tcg-lot-find.r-unique{ --c: var(--tcg-unique); }
.tcg-slot.is-secret{ border-style: dashed; border-color: rgba(232,221,194,.35); }
.tcg-slot.is-secret .tcg-lock{ font: 800 28px var(--font-cond); color: var(--faint); }
@property --holo-x{ syntax: '<percentage>'; inherits: true; initial-value: 50%; }
@property --holo-y{ syntax: '<percentage>'; inherits: true; initial-value: 50%; }
@property --holo-angle{ syntax: '<angle>'; inherits: true; initial-value: 115deg; }
@property --holo-strength{ syntax: '<number>'; inherits: true; initial-value: .36; }
.tcg-holo-host{ --holo-x: 50%; --holo-y: 50%; --holo-angle: 115deg; --holo-strength: .36; isolation: isolate; }
.tcg-holo-host img{ position: relative; z-index: 1; }
.tcg-card-holo{ position: absolute; inset: 0; z-index: 2; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity .22s ease; mix-blend-mode: screen; -webkit-mask-image: var(--card-mask, linear-gradient(#000,#000)); mask-image: var(--card-mask, linear-gradient(#000,#000)); -webkit-mask-size: contain; mask-size: contain; -webkit-mask-position: center; mask-position: center; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; }
.tcg-holo-host:not(.is-back-visible).rarity-rare .tcg-card-holo, .tcg-holo-host:not(.is-back-visible).rarity-mythic .tcg-card-holo, .tcg-holo-host:not(.is-back-visible).rarity-legendary .tcg-card-holo, .tcg-holo-host:not(.is-back-visible).rarity-duo .tcg-card-holo, .tcg-holo-host:not(.is-back-visible).rarity-eclipse .tcg-card-holo{ opacity: calc(var(--holo-strength) * .72); }
.tcg-card-holo-spectrum{ background: radial-gradient(circle at var(--holo-x) var(--holo-y), rgba(255,255,255,.78) 0 3%, rgba(255,255,255,.2) 10%, transparent 31%), linear-gradient(var(--holo-angle), transparent 22%, rgba(255,255,255,.68) 43%, rgba(255,255,255,.16) 50%, transparent 68%); filter: saturate(1.25) contrast(1.08); }
.tcg-card-holo-glare{ background: radial-gradient(ellipse at var(--holo-x) var(--holo-y), rgba(255,255,255,.42), transparent 48%); mix-blend-mode: soft-light; }
.tcg-card-holo-stars{ background-image: radial-gradient(circle, rgba(255,255,255,.95) 0 1px, transparent 1.8px), radial-gradient(circle, rgba(255,255,255,.8) 0 1.2px, transparent 2px); background-size: 37px 41px, 61px 53px; background-position: calc(var(--holo-x) * .16) calc(var(--holo-y) * .12), calc(var(--holo-x) * -.1) calc(var(--holo-y) * .18); opacity: 0 !important; filter: drop-shadow(0 0 3px rgba(255,255,255,.7)); }
.tcg-holo-host.rarity-rare .tcg-card-holo-spectrum{ background: radial-gradient(circle at var(--holo-x) var(--holo-y), rgba(225,246,255,.7), transparent 29%), linear-gradient(var(--holo-angle), transparent 28%, rgba(105,190,255,.08) 35%, rgba(235,250,255,.72) 47%, rgba(88,155,255,.13) 58%, transparent 70%); }
.tcg-holo-host.rarity-rare:not(.is-back-visible) .tcg-card-holo{ opacity: calc(var(--holo-strength) * .52); }
.tcg-holo-host.rarity-mythic .tcg-card-holo-spectrum{ background: radial-gradient(circle at var(--holo-x) var(--holo-y), rgba(255,255,255,.82), rgba(193,120,255,.3) 13%, transparent 33%), linear-gradient(var(--holo-angle), transparent 14%, rgba(102,215,255,.2) 28%, rgba(196,90,255,.48) 41%, rgba(255,255,255,.72) 49%, rgba(91,130,255,.34) 58%, rgba(255,79,205,.2) 72%, transparent 85%); }
.tcg-holo-host.rarity-mythic:not(.is-back-visible) .tcg-card-holo-stars{ opacity: calc(var(--holo-strength) * .26) !important; }
.tcg-holo-host.rarity-legendary .tcg-card-holo-spectrum{ background: radial-gradient(circle at var(--holo-x) var(--holo-y), rgba(255,255,255,.95), rgba(255,212,91,.48) 14%, transparent 35%), linear-gradient(var(--holo-angle), transparent 11%, rgba(255,180,40,.2) 26%, rgba(255,240,173,.74) 45%, rgba(255,255,255,.9) 50%, rgba(255,187,45,.4) 61%, transparent 84%); }
.tcg-holo-host.rarity-legendary:not(.is-back-visible) .tcg-card-holo{ opacity: calc(var(--holo-strength) * .9); }
.tcg-holo-host.rarity-legendary:not(.is-back-visible) .tcg-card-holo-stars{ opacity: calc(var(--holo-strength) * .52) !important; }
.tcg-holo-host.rarity-duo:not(.is-back-visible) .tcg-card-holo{ opacity: calc(var(--holo-strength) * .88); }
.tcg-holo-host.rarity-duo:not(.is-back-visible) .tcg-card-holo-stars{ opacity: calc(var(--holo-strength) * .46) !important; }
.tcg-holo-host.rarity-eclipse:not(.is-back-visible) .tcg-card-holo{ opacity: calc(var(--holo-strength) * .94); }
.tcg-holo-host.rarity-eclipse:not(.is-back-visible) .tcg-card-holo-stars{ opacity: calc(var(--holo-strength) * .62) !important; }
.tcg-holo-host.is-back-visible .tcg-card-holo{ opacity: 0 !important; }
.tcg-holo-host.is-auto{ animation: tcg-holo-sweep 7s ease-in-out infinite alternate; animation-delay: var(--d, 0s); }
.tcg-deal-card:not(.is-revealed) .tcg-card-holo{ display: none; }
.tcg-pf-wrap{ position: absolute; inset: 0; backface-visibility: hidden; -webkit-backface-visibility: hidden; }
.tcg-pf-wrap img{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.tcg-slot.tcg-holo-host{ position: relative; }
@media (prefers-reduced-motion: reduce){.tcg-card-holo{ transition: none; }.tcg-holo-host.is-auto{ animation: none; }}
.tcg-page{ align-content: start; align-items: start; }
.tcg-gossip blockquote{ margin: 0; }
@media (max-width: 600px){.tcg-gossip-row{ position: relative; display: block; }.tcg-gossip-row .tcg-gossip{ padding: 14px 16px 16px; padding-right: 64px; }.tcg-gossip blockquote{ font-size: 15.5px; line-height: 1.5; }.tcg-talk{ position: absolute; right: 10px; top: 10px; width: 44px; height: 44px; }.tcg-talk svg{ width: 22px; height: 22px; }}
.tcg-preview{ overflow-y: auto; align-items: start; place-items: start center; padding: calc(var(--safe-t, 0px) + 20px) 16px calc(var(--safe-b, 0px) + 24px); }
.tcg-preview-box{ margin: auto 0; padding-top: 8px; }
.tcg-preview-x{ position: fixed; top: calc(var(--safe-t, 0px) + 14px); right: 14px; z-index: 3; width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--line); background: var(--bg-2); color: var(--text); font-size: 18px; cursor: pointer; }
.tcg-preview-actions{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.tcg-preview-actions .tcg-preview-close{ grid-column: 1 / -1; }
.tcg-preview-actions button{ min-height: 44px; white-space: nowrap; }
@media (max-width: 760px){.tcg-preview-box{ flex-direction: column; gap: 16px; }.tcg-preview-card{ width: min(300px, 72vw); }.tcg-preview-info{ min-width: 0; width: 100%; max-width: 420px; }.tcg-preview-info h3{ font-size: 24px; }}
.tcg-products{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.tcg-product{ display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 20px 18px; border-radius: var(--radius); background: var(--bg-2); border: 1px solid var(--line); }
.tcg-product .tcg-booster-visual{ margin-bottom: 6px; }
.tcg-product .tcg-booster-visual img{ animation: none; }
.tcg-product h2{ font: 800 22px var(--font-cond); }
.tcg-product p{ color: var(--muted); line-height: 1.5; font-size: 14px; max-width: 360px; }
.tcg-product .tcg-price strong{ font: 800 28px var(--font-cond); color: var(--paper); }
.tcg-product .tcg-buy{ align-self: center; min-width: 220px; margin-top: auto; }
.tcg-rates{ margin-top: 14px; padding: 12px 16px; border-radius: var(--radius); background: var(--bg-2); border: 1px solid var(--line); }
@media (max-width: 760px){.tcg-products{ grid-template-columns: 1fr; }.tcg-product .tcg-buy{ width: 100%; max-width: 320px; }}
button.tcg-gossip{ display: block; width: 100%; text-align: left; font: inherit; color: inherit; cursor: pointer; padding: 16px 18px; margin: 0; transition: border-color .15s ease, background .15s ease; }
button.tcg-gossip:hover{ border-color: rgba(232,221,194,.35); }
button.tcg-gossip:active{ transform: scale(.995); }
.tcg-talk, .tcg-gossip-row{ display: none; }
@media (max-width: 600px){button.tcg-gossip{ padding: 14px 16px; }}
.tcg-preview-actions{ display: none; }
.tcg-preview-tools{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 6px; }
.tcg-tool{ display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; border-radius: 10px; border: 1px solid var(--line); background: var(--bg-2); color: var(--text); font-weight: 700; font-size: 14px; cursor: pointer; }
.tcg-tool:hover{ border-color: rgba(232,221,194,.4); }
.tcg-tool svg{ width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.tcg-tool.is-on{ border-color: var(--paper); color: var(--paper); }
.tcg-sell-box{ margin-top: 4px; padding: 12px 14px; border-radius: 12px; background: var(--bg-2); border: 1px solid var(--line); display: grid; gap: 10px; }
.tcg-sell-head{ display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.tcg-sell-head span{ font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.tcg-sell-head strong{ font: 800 20px var(--font-cond); }
.tcg-sell-head small{ font: 600 12px var(--font); color: var(--muted); }
.tcg-sell-box .note{ margin: 0; }
.tcg-sell-actions{ display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
.tcg-sell-actions button{ min-height: 42px; }
.tcg-preview-info > .tcg-preview-close{ width: 100%; min-height: 46px; margin-top: 4px; }
.tcg-preview-x{ display: grid; place-items: center; padding: 0; line-height: 1; }
.tcg-preview-x svg{ width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; display: block; }
.tcg-display-count{ font: 800 13px var(--font); letter-spacing: .16em; text-transform: uppercase; color: var(--paper); }
.tcg-summary{ display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 12px; margin: 14px 0; }
.tcg-summary-card{ position: relative; display: flex; flex-direction: column; gap: 6px; padding: 0; border: 0; background: none; color: var(--text); cursor: pointer; text-align: center; }
.tcg-summary-card img{ width: 100%; aspect-ratio: .7; object-fit: contain; }
.tcg-summary-card .tcg-card-holo{ bottom: auto; height: calc(100% - 40px); }
.tcg-summary-card span{ font-weight: 700; font-size: 13px; }
.tcg-summary-card small{ display: block; color: var(--muted); font-weight: 600; font-size: 11.5px; }
.tcg-open > .tcg-display-count{ position: fixed; z-index: 2; top: calc(var(--safe-t, 0px) + 16px); left: 50%; transform: translateX(-50%); padding: 6px 14px; border-radius: 99px; background: var(--bg-2); border: 1px solid var(--line); }
.tcg-product .tcg-booster-visual{ display: block; position: relative; aspect-ratio: 743 / 1363; width: 100%; max-width: 170px; background: none; }
.tcg-product .tcg-booster-visual.is-wide{ aspect-ratio: 1309 / 833; max-width: 300px; }
.tcg-product .tcg-booster-visual img{ position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; object-fit: contain; filter: drop-shadow(0 16px 24px rgba(0,0,0,.5)); }
.tcg-products{ align-items: stretch; }
.tcg-product{ justify-content: flex-start; }
.tcg-product .tcg-booster-visual + h2{ margin-top: 6px; }
@media (max-width: 760px){.tcg-product .tcg-booster-visual{ max-width: 150px; }.tcg-product .tcg-booster-visual.is-wide{ max-width: 260px; }}
.tcg-product .tcg-booster-visual, .tcg-product .tcg-booster-visual.is-wide{ aspect-ratio: auto; height: 300px; width: 100%; max-width: 340px; }
@media (max-width: 760px){.tcg-product .tcg-booster-visual, .tcg-product .tcg-booster-visual.is-wide{ height: 230px; }}
.tcg-preview-card .tcg-pf-wrap, .tcg-preview-card .tcg-pb{ transition: opacity .08s linear; }
.tcg-preview-card.show-back .tcg-pf-wrap{ opacity: 0; visibility: hidden; }
.tcg-preview-card:not(.show-back) .tcg-pb{ opacity: 0; visibility: hidden; }
.tcg-preview-card .tcg-pf-wrap{ transform: translateZ(1px); }
.tcg-preview-card .tcg-pb{ transform: rotateY(180deg) translateZ(1px); }
.tcg-holo-host.rarity-eclipse .tcg-card-holo-spectrum{ background: linear-gradient(var(--holo-angle), transparent 16%, rgba(83,176,255,.22) 30%, rgba(255,107,216,.28) 39%, rgba(255,226,140,.7) 47%, rgba(255,255,255,.85) 50%, rgba(255,226,140,.55) 54%, rgba(116,84,255,.3) 63%, transparent 80%), linear-gradient(calc(var(--holo-angle) + 64deg), transparent 34%, rgba(255,215,109,.22) 48%, transparent 62%); }
.tcg-holo-host.rarity-duo .tcg-card-holo-spectrum{ background: linear-gradient(var(--holo-angle), transparent 12%, rgba(255,143,116,.22) 27%, rgba(255,225,145,.66) 44%, rgba(255,255,255,.86) 50%, rgba(255,225,145,.5) 55%, rgba(255,114,181,.26) 66%, transparent 86%), linear-gradient(calc(var(--holo-angle) - 58deg), transparent 36%, rgba(255,198,117,.2) 50%, transparent 64%); }
.tcg-holo-host.rarity-eclipse .tcg-card-holo-glare, .tcg-holo-host.rarity-duo .tcg-card-holo-glare{ background: linear-gradient(var(--holo-angle), transparent 35%, rgba(255,255,255,.28) 50%, transparent 65%); }
.tcg-free{ display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 18px; padding: 16px 18px; border-radius: var(--radius); background: var(--bg-2); border: 1px solid rgba(77,191,137,.55); box-shadow: 0 0 0 3px rgba(77,191,137,.12); }
.tcg-free strong{ display: block; font: 800 20px var(--font-cond); margin: 2px 0 4px; }
.tcg-free p{ color: var(--muted); font-style: italic; margin: 0; max-width: 60ch; }
@keyframes shine{ to { transform: translateX(120%); } }
@keyframes pt-pop{ from { opacity: 0; transform: translateY(8px) scale(.97); } }
@keyframes tcg-float{ 50% { transform: translateY(-6px) rotate(-1deg); } }
@keyframes tcg-fade{ from { opacity: 0; } }
@keyframes tcg-flash{ from { opacity: 1; } to { opacity: 0; } }
@keyframes tcg-shake{ 10%,90% { transform: translate(-2px,0); } 20%,80% { transform: translate(4px,1px); } 30%,50%,70% { transform: translate(-7px,-1px); } 40%,60% { transform: translate(7px,1px); } }
@keyframes tcg-shine{ from { background-position: 150% 0; } to { background-position: -100% 0; } }
@keyframes tcg-pulse{ 50% { filter: brightness(1.12); } }
@keyframes tcg-tension{ 50% { transform: scale(1.055) rotate(-1.8deg) translateX(1px); } }
@keyframes tcg-rip-smooth{ 0% { transform: rotate(0); } 30% { transform: rotate(-4deg) translate(1px,-2px); } 34% { transform: rotate(-3.2deg) translate(1px,-1px); } 62% { transform: rotate(-10deg) translate(3px,-6px); } 66% { transform: rotate(-9deg) translate(3px,-5px); } 100% { transform: rotate(-17deg) translate(6px,-12px); } }
@keyframes tcg-rip{ 0% { filter: drop-shadow(0 24px 40px rgba(0,0,0,.6)); } 100% { filter: drop-shadow(0 18px 18px rgba(0,0,0,.55)) brightness(1.04); } }
@keyframes tcg-light{ 0% { opacity: 0; transform: scaleX(0); } 20% { opacity: .9; } 100% { opacity: 1; transform: scaleX(1); } }
@keyframes tcg-throw{ from { transform: rotate(-17deg) translate(6px,-12px); opacity: 1; } to { transform: translate(190px,-170px) rotate(48deg) scale(.92); opacity: 0; } }
@keyframes tcg-light-open{ from { opacity: 1; transform: scaleX(1); } to { opacity: .55; transform: scaleX(1) scaleY(2.6); filter: blur(10px); } }
@keyframes tcg-bit{ 0% { opacity: 1; transform: translate(-50%,-50%) scale(var(--s)); } 100% { opacity: 0; transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy) + 60px)) rotate(var(--r)) scale(var(--s)); } }
@keyframes tcg-fiber-run{ 0% { clip-path: inset(0 0 0 100%); } 30% { clip-path: inset(0 0 0 68%); } 34% { clip-path: inset(0 0 0 64%); } 62% { clip-path: inset(0 0 0 30%); } 66% { clip-path: inset(0 0 0 26%); } 100% { clip-path: inset(0 0 0 0); } }
@keyframes tcg-counter{ 0% { transform: none; } 30% { transform: translate(-2px,2px) rotate(.6deg); } 36% { transform: translate(-1px,1px) rotate(.3deg); } 62% { transform: translate(-3px,3px) rotate(.9deg); } 68% { transform: translate(-1px,1px) rotate(.4deg); } 100% { transform: translate(0,1px) rotate(.2deg); } }
@keyframes tcg-holo-sweep{ 0% { --holo-x: 18%; --holo-y: 24%; --holo-angle: 98deg; --holo-strength: .42; } 50% { --holo-x: 58%; --holo-y: 46%; --holo-angle: 118deg; --holo-strength: .62; } 100% { --holo-x: 86%; --holo-y: 78%; --holo-angle: 136deg; --holo-strength: .48; } }