*{box-sizing:border-box}
:root{--gold:#d6aa4d;--gold-light:#f5d783;--ink:#100c08;--panel:#21170f;--cream:#f3e5c5}
[hidden]{display:none!important}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% 0,#4b3521 0,#1a120c 48%,#080706 100%);color:var(--cream);font-family:Georgia,"Times New Roman",serif}
body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(0,0,0,.08),rgba(0,0,0,.45)),repeating-linear-gradient(90deg,transparent 0 3px,rgba(255,255,255,.008) 3px 4px);z-index:-1}
.site-header{background:rgba(7,6,5,.96);border-bottom:1px solid #8d6529;padding:12px 4%;display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:50}.brand img{width:145px;height:auto;display:block}.site-header nav{display:flex;flex-wrap:wrap;gap:10px 18px}.site-header nav a{color:#e8d6aa;text-decoration:none;font-weight:700}.site-header nav a:hover,.site-header nav a.active{color:#ffd77b}
.pack-app{min-height:calc(100vh - 150px)}.stage{max-width:1400px;margin:0 auto;padding:34px 24px 54px}.panel{background:linear-gradient(145deg,rgba(48,35,23,.98),rgba(18,13,9,.98));border:1px solid #a97b31;box-shadow:0 18px 42px rgba(0,0,0,.52);border-radius:14px}
.intro-stage{display:grid;grid-template-columns:minmax(360px,1.2fr) minmax(320px,.8fr);gap:38px;align-items:center;min-height:710px}.intro-art img{width:100%;display:block;filter:drop-shadow(0 22px 28px #000);border-radius:10px}.intro-copy{padding:42px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:#ddb65e;font-size:.78rem;margin:0 0 10px}.intro-copy h1,.booster-copy h1,.reveal-heading h1{font-size:clamp(2rem,5vw,4rem);line-height:1.02;margin:0 0 18px}.lead{font-size:1.15rem;line-height:1.6;color:#dfcfad}.contents{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}.contents span{padding:15px 10px;text-align:center;border:1px solid #715022;background:#130e0a;border-radius:8px}.contents strong{display:block;font-size:1.7rem;color:#f1c967}
.primary-button,.secondary-button{border:1px solid #e0b957;border-radius:7px;padding:12px 20px;font:700 1rem Georgia,serif;cursor:pointer;transition:.2s}.primary-button{background:linear-gradient(#e2b954,#8d5d16);color:#170f05;box-shadow:0 5px 0 #58380d}.primary-button:hover{transform:translateY(-1px);filter:brightness(1.1)}.secondary-button{background:#21180f;color:#f4d890}.secondary-button:hover{background:#332316}
.booster-stage{min-height:760px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden}.booster-copy{position:relative;z-index:2}.booster-copy p{font-size:1.1rem}.booster-button{position:relative;width:min(330px,72vw);margin-top:22px;border:0;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 28px 24px rgba(0,0,0,.75));animation:packFloat 2.5s ease-in-out infinite}.booster-button:hover{animation:packShake .5s ease-in-out infinite}.booster-button img{display:block;width:100%;border-radius:14px}.click-hint{position:absolute;left:50%;bottom:-34px;transform:translateX(-50%);color:#f4d890;font-weight:bold;white-space:nowrap}.foil-tear{position:absolute;left:0;right:0;top:12%;height:4px;z-index:3;opacity:0;background:linear-gradient(90deg,transparent,#fff 12%,#d6aa4d 50%,#fff 88%,transparent);filter:drop-shadow(0 0 6px #fff)}.booster-button.opening{animation:packOpen .95s ease forwards}.booster-button.opening .foil-tear{animation:tearFlash .65s ease forwards}.booster-button.opening .click-hint{opacity:0}@keyframes packFloat{50%{transform:translateY(-12px) rotate(-1deg)}}@keyframes packShake{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes packOpen{0%{transform:scale(1)}35%{transform:scale(1.05) rotate(-3deg)}60%{transform:scale(1.05) rotate(3deg)}100%{transform:translateY(-60px) scale(.82);opacity:0}}@keyframes tearFlash{20%{opacity:1;transform:scaleX(.3)}70%{opacity:1;transform:scaleX(1.1)}100%{opacity:0;transform:scaleX(1.25)}}
.reveal-stage{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}.preview-panel{padding:18px;position:sticky;top:105px}.preview-panel h2{margin:0 0 16px}.preview-frame{aspect-ratio:5/7;background:#090705;border:2px solid #785623;border-radius:10px;display:grid;place-items:center;overflow:hidden}.preview-frame img{display:block;width:100%;height:100%;object-fit:contain}.preview-name{text-align:center;font-weight:bold;line-height:1.35}.rarity-label{text-align:center;font-weight:bold;color:#d9b762}.reveal-panel{padding:26px;min-height:660px}.reveal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.reveal-heading h1{font-size:clamp(1.7rem,3vw,2.8rem)}.instruction{color:#ccb995;margin:0 0 22px}.card-grid{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:18px;align-items:start}.pack-card{display:block;position:relative;width:100%;aspect-ratio:5/7;border:0;background:none;padding:0;perspective:1200px;cursor:pointer;opacity:0;transform:translateY(90px) scale(.84);animation:cardRise .58s cubic-bezier(.2,.8,.2,1) forwards}.pack-card:nth-child(1){animation-delay:.03s}.pack-card:nth-child(2){animation-delay:.08s}.pack-card:nth-child(3){animation-delay:.13s}.pack-card:nth-child(4){animation-delay:.18s}.pack-card:nth-child(5){animation-delay:.23s}.pack-card:nth-child(6){animation-delay:.28s}.pack-card:nth-child(7){animation-delay:.33s}.pack-card:nth-child(8){animation-delay:.38s}.pack-card:nth-child(9){animation-delay:.43s}.pack-card:nth-child(10){animation-delay:.48s}.pack-card:nth-child(11){animation-delay:.58s}.pack-card:nth-child(12){animation-delay:.68s}@keyframes cardRise{to{opacity:1;transform:translateY(0) scale(1)}}.card-inner{display:block;position:absolute;inset:0;transition:transform .72s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}.pack-card.revealed .card-inner{transform:rotateY(180deg)}.card-face{display:block;position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:9px;overflow:hidden;border:2px solid #8f6b2e;box-shadow:0 10px 20px rgba(0,0,0,.55)}.card-back{background:#070604 url("card-back.png") center/cover no-repeat}.card-back::before,.card-back::after{content:none}.premium-card .card-back::before{box-shadow:inset 0 0 0 4px #50360f,inset 0 0 30px #000,0 0 16px rgba(223,178,68,.35)}.card-front{transform:rotateY(180deg);background:#080604}.card-front img{display:block;width:100%;height:100%;object-fit:contain}.pack-card:hover:not(.revealed){transform:translateY(-5px)}.pack-card[data-rarity="Super Rare"].revealed .card-face{border-color:#ffe08a;box-shadow:0 0 12px #fff4bd,0 0 30px #e6a928,0 10px 22px #000}.pack-card[data-rarity="Ultra Rare"].revealed .card-face{border-color:#ff7468;box-shadow:0 0 14px #ffb0a8,0 0 34px #d71920,0 10px 22px #000}.pack-card[data-rarity="Secret Rare"].revealed .card-face{border-color:#fff3a0;animation:secretGlow 1.6s linear infinite}.pack-card[data-rarity="Super Rare"].revealed .card-front::after,
.pack-card[data-rarity="Ultra Rare"].revealed .card-front::after,
.pack-card[data-rarity="Secret Rare"].revealed .card-front::after{content:"";position:absolute;inset:-45%;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.18) 43%,rgba(255,248,174,.95) 49%,rgba(255,255,255,.9) 52%,rgba(122,232,255,.45) 57%,transparent 66%);transform:translateX(-75%) rotate(8deg);mix-blend-mode:screen;animation:secretShine 1.85s ease-in-out infinite}.pack-card[data-rarity="Secret Rare"].revealed::before,.pack-card[data-rarity="Secret Rare"].revealed::after{content:"✦";position:absolute;z-index:8;pointer-events:none;color:#fff7a8;text-shadow:0 0 7px #fff,0 0 14px #ffd84d;font-size:1.25rem;animation:secretSparkle 1.15s ease-in-out infinite}.pack-card[data-rarity="Secret Rare"].revealed::before{left:-8%;top:5%}.pack-card[data-rarity="Secret Rare"].revealed::after{right:-8%;bottom:7%;animation-delay:.52s}.pack-card[data-rarity="Super Rare"].revealed .card-front::after{animation-duration:2.8s;opacity:.55}.pack-card[data-rarity="Ultra Rare"].revealed .card-front::after{animation-duration:2.2s;opacity:.8}.pack-card[data-rarity="Secret Rare"].revealed .card-front::after{animation-duration:1.85s;opacity:1}.pack-card.big-hit.revealed{opacity:1;transform:translateY(0) scale(1)}.pack-card.big-hit.revealed .card-front{animation:hitGlowPulse .55s ease}@keyframes hitGlowPulse{50%{filter:brightness(1.18)}}@keyframes secretGlow{0%{box-shadow:0 0 16px #fff4a6,0 0 38px #ff3d77,0 0 62px rgba(255,61,119,.45),0 10px 22px #000}25%{box-shadow:0 0 16px #fff4a6,0 0 38px #ffcf3d,0 0 62px rgba(255,207,61,.45),0 10px 22px #000}50%{box-shadow:0 0 16px #fff4a6,0 0 38px #4dffd2,0 0 62px rgba(77,255,210,.45),0 10px 22px #000}75%{box-shadow:0 0 16px #fff4a6,0 0 38px #7d6cff,0 0 62px rgba(125,108,255,.45),0 10px 22px #000}100%{box-shadow:0 0 16px #fff4a6,0 0 38px #ff3d77,0 0 62px rgba(255,61,119,.45),0 10px 22px #000}}@keyframes secretShine{0%,18%{transform:translateX(-78%) rotate(8deg);opacity:0}30%{opacity:1}62%,100%{transform:translateX(78%) rotate(8deg);opacity:0}}@keyframes secretSparkle{0%,100%{transform:scale(.55) rotate(0);opacity:.25}50%{transform:scale(1.4) rotate(90deg);opacity:1}}.pack-actions{text-align:center;margin-top:30px}
footer{text-align:center;padding:24px;border-top:1px solid #5f4521;color:#bfae8d}
@media(max-width:1050px){.intro-stage{grid-template-columns:1fr;min-height:auto}.intro-art{max-width:780px;margin:auto}.reveal-stage{grid-template-columns:1fr}.preview-panel{position:static;display:grid;grid-template-columns:170px 1fr;gap:16px;align-items:center}.preview-panel h2{grid-column:1/-1}.card-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:680px){.site-header{align-items:flex-start;flex-direction:column}.stage{padding-left:12px;padding-right:12px}.intro-copy{padding:25px}.contents{grid-template-columns:1fr}.reveal-panel{padding:16px}.reveal-heading{flex-direction:column}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.preview-panel{display:block}.preview-frame{max-width:280px;margin:auto}.booster-stage{min-height:650px}}

.booster-button.loading{pointer-events:none;filter:drop-shadow(0 28px 24px rgba(0,0,0,.75)) grayscale(.15)}
.booster-button.loading .click-hint::after{content:" Loading cards…"}
.card-front.image-error::after{content:"Image unavailable";position:absolute;inset:0;display:grid;place-items:center;padding:12px;text-align:center;color:#f4d890;background:#130e0a;font-weight:bold}

.asset-box {
  margin: 1.25rem 0;
  padding: 1rem;
  border: 1px solid rgba(209, 171, 89, .55);
  border-radius: 12px;
  background: rgba(8, 12, 18, .62);
}
.asset-box p { margin: .25rem 0 0; opacity: .86; }
.asset-actions { display: flex; gap: .65rem; flex-wrap: wrap; margin-top: .8rem; }
.text-button { border: 0; background: transparent; color: #e4c57d; text-decoration: underline; cursor: pointer; }
.asset-progress { margin-top: .85rem; display: grid; grid-template-columns: 1fr auto; gap: .65rem; align-items: center; }
.asset-progress-bar { height: 12px; overflow: hidden; border-radius: 999px; background: #111923; border: 1px solid #354150; }
.asset-progress-bar span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, #8d6425, #efd58f); transition: width .18s ease; }
.asset-errors { margin-top: .8rem; color: #ffc3c3; }
.asset-errors pre { white-space: pre-wrap; max-height: 11rem; overflow: auto; font-size: .78rem; }
.asset-ready { color: #9ce9a8; }
.asset-warning { color: #ffd487; }
.card-front.loading::after { content: "Loading…"; position: absolute; inset: 0; display: grid; place-items: center; background: rgba(8,12,18,.88); color: #e8d39c; font-size: .78rem; }

/* First-visit asset download gate */
.asset-gate {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(5, 4, 3, 0.92);
  backdrop-filter: blur(8px);
}
.asset-gate[hidden] { display: none; }
.asset-gate-card { width: min(620px, 100%); text-align: center; }
.asset-gate-card .asset-progress { margin: 20px 0; }
.asset-gate-card .primary-button { min-width: 220px; }
.asset-note { margin-top: 16px; opacity: .75; font-size: .9rem; }
body.asset-locked { overflow: hidden; }

/* Booster box opening */
.opening-choices{display:flex;gap:12px;flex-wrap:wrap;align-items:stretch}.opening-choices button{flex:1;min-width:210px}.opening-choices button span{display:block;font-size:.76rem;font-weight:400;opacity:.82;margin-top:3px}.economy-note{margin:14px 0 0;color:#bda982;font-size:.88rem;line-height:1.45}.box-progress{width:min(420px,80vw);margin:18px auto 0;text-align:left}.box-progress-track{height:11px;margin-top:7px;border:1px solid #856126;border-radius:999px;overflow:hidden;background:#120d08}.box-progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#8c5f18,#f1cf72);transition:width .3s ease}.box-pack-label{margin:2px 0 0;color:#e4c57d;font-weight:bold}.box-summary-stage{max-width:1500px}.box-summary-panel{padding:32px}.box-summary-panel>h1{font-size:clamp(2.4rem,5vw,4.5rem);margin:0 0 10px}.box-rarity-stats{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr));gap:12px;margin:28px 0}.box-rarity-stat{padding:16px 10px;text-align:center;border:1px solid #775522;border-radius:10px;background:#130e0a}.box-rarity-stat strong{display:block;font-size:2rem;color:#f0cb73}.box-rarity-stat span{font-size:.85rem}.box-rarity-stat[data-rarity="Super Rare"]{box-shadow:inset 0 0 18px rgba(230,169,40,.34)}.box-rarity-stat[data-rarity="Ultra Rare"]{box-shadow:inset 0 0 18px rgba(215,25,32,.36)}.box-rarity-stat[data-rarity="Secret Rare"]{box-shadow:inset 0 0 18px rgba(255,61,119,.28),inset 0 0 30px rgba(77,255,210,.16)}.box-summary-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:24px 0 15px}.box-summary-heading h2{margin:0 0 5px;font-size:1.8rem}.box-summary-heading p{margin:0;color:#cbb791}.box-premium-grid,.box-all-pulls{display:grid;grid-template-columns:repeat(8,minmax(105px,1fr));gap:15px}.box-all-pulls{margin-top:28px;padding-top:24px;border-top:1px solid #6f4f20;grid-template-columns:repeat(12,minmax(72px,1fr))}.summary-card{border:1px solid #926b2b;border-radius:9px;background:#100c08;color:#ead9b4;padding:7px;cursor:pointer;transition:.2s;min-width:0}.summary-card:hover,.summary-card:focus{transform:translateY(-5px);border-color:#e5bd58}.summary-image-wrap{display:block;aspect-ratio:5/7;overflow:hidden;border-radius:6px;background:#080604}.summary-image-wrap img{width:100%;height:100%;object-fit:contain;display:block}.summary-card-name{display:block;font-size:.75rem;line-height:1.25;margin-top:7px;overflow:hidden}.summary-card-rarity{display:block;font-size:.72rem;color:#d9b762;margin-top:4px}.summary-card[data-rarity="Super Rare"]{box-shadow:0 0 15px rgba(230,169,40,.5)}.summary-card[data-rarity="Ultra Rare"]{box-shadow:0 0 17px rgba(215,25,32,.55)}.summary-card[data-rarity="Secret Rare"]{animation:summarySecretGlow 1.7s linear infinite}@keyframes summarySecretGlow{0%{box-shadow:0 0 18px rgba(255,61,119,.7)}33%{box-shadow:0 0 18px rgba(255,207,61,.7)}66%{box-shadow:0 0 18px rgba(77,255,210,.7)}100%{box-shadow:0 0 18px rgba(125,108,255,.7)}}.summary-card.compact{padding:3px}.summary-card.compact .summary-card-name,.summary-card.compact .summary-card-rarity{display:none}.box-summary-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:32px}
@media(max-width:1100px){.box-rarity-stats{grid-template-columns:repeat(3,1fr)}.box-premium-grid{grid-template-columns:repeat(5,1fr)}.box-all-pulls{grid-template-columns:repeat(8,1fr)}}
@media(max-width:680px){.opening-choices{flex-direction:column}.box-summary-panel{padding:18px}.box-rarity-stats{grid-template-columns:repeat(2,1fr)}.box-premium-grid{grid-template-columns:repeat(3,1fr);gap:9px}.box-all-pulls{grid-template-columns:repeat(4,1fr);gap:7px}.box-summary-heading{align-items:flex-start;flex-direction:column}}

/* Booster box pack-selection screen */
.box-packs-stage{min-height:760px;display:flex;align-items:center;justify-content:center}
.box-packs-panel{width:min(1180px,100%);padding:36px;text-align:center}
.box-packs-panel h1{font-size:clamp(2.4rem,5vw,4.5rem);margin:0 0 8px}
.box-packs-counter{margin:18px auto 10px;font-size:1.15rem;color:#e9d6ac}
.box-packs-counter strong{font-size:2rem;color:#f4cc68}
.box-packs-track{width:min(520px,90%);height:10px;margin:0 auto 28px;background:#110c08;border:1px solid #775526;border-radius:999px;overflow:hidden}
.box-packs-track span{display:block;height:100%;width:100%;background:linear-gradient(90deg,#8d5d16,#f0c65e);transition:width .35s ease}
.box-pack-grid{display:grid;grid-template-columns:repeat(8,minmax(70px,1fr));gap:18px;align-items:end}
.box-pack-choice{position:relative;border:0;background:transparent;padding:0;cursor:pointer;transition:transform .18s ease,filter .18s ease;filter:drop-shadow(0 10px 8px rgba(0,0,0,.65))}
.box-pack-choice:hover,.box-pack-choice:focus-visible{transform:translateY(-10px) scale(1.06);filter:drop-shadow(0 16px 12px rgba(0,0,0,.75)) brightness(1.08);outline:none}
.box-pack-choice img{display:block;width:100%;height:auto}
.box-pack-choice span{position:absolute;right:4px;bottom:3px;min-width:25px;padding:3px 5px;border-radius:999px;background:rgba(12,8,5,.88);border:1px solid #c9973d;color:#f8d87d;font-weight:700;font-size:.72rem}
.best-pull-section{margin:28px 0;padding:24px;border:1px solid #8d6529;border-radius:12px;background:radial-gradient(circle at 50% 20%,rgba(214,170,77,.2),rgba(13,9,6,.9) 60%);text-align:center}
.best-pull-card{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,220px));justify-content:center;gap:15px}
.best-pull-card .summary-card{width:100%}
@media(max-width:980px){.box-pack-grid{grid-template-columns:repeat(6,minmax(60px,1fr))}}
@media(max-width:680px){.box-packs-panel{padding:24px 14px}.box-pack-grid{grid-template-columns:repeat(4,minmax(58px,1fr));gap:12px}}

.player-wallet{position:fixed;top:12px;right:18px;z-index:20;display:flex;gap:.55rem;align-items:center;padding:.55rem .85rem;border:1px solid #b99143;border-radius:999px;background:rgba(18,12,8,.94);box-shadow:0 5px 20px #0008;color:#e9cf8b}.player-wallet span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.player-wallet strong{font-size:1.05rem;color:#ffd66b}.collection-result{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem 1.5rem;margin:1rem 0;padding:.8rem 1rem;border:1px solid #8e6b35;border-radius:8px;background:#17100bd9;color:#e9d7ae}.collection-result strong{color:#ffd66b}.economy-stat{border-color:#b99143!important}.economy-stat strong{color:#ffd66b!important}@media(max-width:720px){.player-wallet{position:static;width:max-content;margin:.75rem auto 0}}

.economy-note.economy-error{color:#ffb1b1;font-weight:800}.opening-choices button span{display:block;font-size:.76em;opacity:.9;margin-top:3px}.opening-choices button:disabled{opacity:.45;cursor:not-allowed}

.stage-wallet{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:16px 0;padding:12px 15px;border:1px solid #8b682e;border-radius:10px;background:#120d08;color:#d8c39a}.stage-wallet span{text-transform:uppercase;letter-spacing:.1em;font-size:.76rem}.stage-wallet strong{font-size:1.3rem;color:#ffd66b}.stage-wallet.compact{margin:0;min-width:190px}.reveal-purchase-bar{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin:22px 0 0;padding-top:18px;border-top:1px solid #4f3b21}.reveal-purchase-bar p{margin:0;color:#cdbb96}.reveal-purchase-bar p strong{color:#ffd66b}.pack-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}.summary-purchase-bar{margin-top:30px}.pack-actions button:disabled,.box-summary-actions button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:680px){.reveal-purchase-bar{align-items:stretch}.stage-wallet.compact{width:100%;box-sizing:border-box}.pack-actions>*{width:100%}}

/* Open all booster packs */
.box-packs-actions{display:flex;justify-content:center;margin-top:30px}
.box-packs-actions .primary-button{min-width:min(320px,100%)}
.open-all-overlay{margin-top:28px;padding:26px 18px;border:1px solid #9c7330;border-radius:14px;background:radial-gradient(circle at 50% 35%,rgba(217,166,64,.2),rgba(12,8,5,.96) 70%);box-shadow:inset 0 0 38px rgba(211,159,53,.12)}
.open-all-overlay h2{margin:4px 0 18px;font-size:clamp(1.35rem,3vw,2.1rem)}
.open-all-animation{display:grid;grid-template-columns:repeat(6,minmax(48px,92px));justify-content:center;gap:12px;min-height:150px;align-items:center;margin:8px auto 20px}
.open-all-pack{position:relative;filter:drop-shadow(0 12px 10px rgba(0,0,0,.7));transform:translateY(0) rotate(-2deg);animation:openAllFloat 1.1s ease-in-out infinite alternate;animation-delay:var(--pack-delay)}
.open-all-pack:nth-child(even){transform:rotate(2deg)}
.open-all-pack img{display:block;width:100%;height:auto}
.open-all-animation.is-opening .open-all-pack{animation:openAllShake .32s ease-in-out infinite}
.open-all-pack.bursting{animation:openAllBurst .48s ease-out}
.open-all-burst{position:absolute;inset:30% 20%;border-radius:50%;opacity:0;pointer-events:none;background:radial-gradient(circle,#fff 0,#ffd86c 22%,rgba(255,103,33,.7) 46%,transparent 72%)}
.open-all-pack.bursting .open-all-burst{animation:openAllFlash .48s ease-out}
.open-all-progress{width:min(620px,92%);height:13px;margin:0 auto 10px;border:1px solid #916c2b;border-radius:999px;overflow:hidden;background:#0c0805}
.open-all-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#8c5514,#f3ca63,#fff0ad);box-shadow:0 0 14px rgba(255,203,86,.65);transition:width .12s linear}
#openAllProgressText{margin:0;color:#e7cf9c;font-weight:700}
@keyframes openAllFloat{to{transform:translateY(-9px) rotate(2deg)}}
@keyframes openAllShake{0%,100%{transform:translate(-2px,0) rotate(-3deg)}50%{transform:translate(3px,-4px) rotate(3deg)}}
@keyframes openAllBurst{0%{transform:scale(1);opacity:1}45%{transform:scale(1.18) rotate(5deg);opacity:1}100%{transform:scale(.72) translateY(-28px);opacity:.3}}
@keyframes openAllFlash{0%{opacity:0;transform:scale(.3)}35%{opacity:1;transform:scale(1.9)}100%{opacity:0;transform:scale(3)}}
@media(max-width:680px){.open-all-animation{grid-template-columns:repeat(4,minmax(42px,68px));gap:9px;min-height:130px}.box-packs-actions .primary-button{width:100%}}
@media(prefers-reduced-motion:reduce){.open-all-pack,.open-all-animation.is-opening .open-all-pack,.open-all-pack.bursting{animation:none}.open-all-progress span{transition:none}}

/* Mobile pack-opening header: hide the logo text and size the banner to the links only. */
@media (max-width: 680px) {
  .site-header {
    padding: 7px 10px;
    gap: 0;
    align-items: center;
    flex-direction: row;
  }

  .site-header .brand {
    display: none;
  }

  .site-header nav {
    width: 100%;
    justify-content: center;
    gap: 4px 12px;
    line-height: 1.15;
  }

  .site-header nav a {
    font-size: 0.78rem;
    padding: 3px 0;
  }
}

@media(max-width:680px){.best-pull-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.best-pull-card .summary-card{max-width:none}}

/* Larger revealed cards on phones and narrow portrait screens. */
@media (max-width: 900px) {
  .reveal-stage {
    grid-template-columns: 1fr;
  }

  .reveal-panel {
    padding: 14px;
  }

  .card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .preview-panel {
    display: block;
  }

  .preview-frame {
    width: min(72vw, 330px);
    max-width: none;
    margin: 0 auto;
  }
}

@media (max-width: 430px) {
  .stage {
    padding-left: 8px;
    padding-right: 8px;
  }

  .reveal-panel {
    padding: 10px;
  }

  .card-grid {
    gap: 10px;
  }
}


.card-zoom-open{overflow:hidden}
.card-zoom-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;touch-action:pan-y}
.card-zoom-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86)}
.card-zoom-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;padding:18px 48px 42px}
.card-zoom-content img{display:block;max-width:min(86vw,520px);max-height:86vh;border-radius:12px;box-shadow:0 20px 50px rgba(0,0,0,.8);user-select:none;-webkit-user-drag:none}
.card-zoom-close{position:absolute;top:-2px;right:28px;width:42px;height:42px;border:none;border-radius:50%;background:#222;color:#fff;font-size:22px;cursor:pointer;z-index:3}
.card-zoom-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:58px;border:1px solid rgba(255,255,255,.3);border-radius:10px;background:rgba(20,20,20,.78);color:#fff;font-size:38px;line-height:1;cursor:pointer;z-index:3}
.card-zoom-previous{left:0}
.card-zoom-next{right:0}
.card-zoom-counter{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-weight:700;white-space:nowrap}
@media (max-width:680px){.card-zoom-content{padding:16px 16px 44px}.card-zoom-content img{max-width:92vw;max-height:82vh}.card-zoom-close{top:-8px;right:6px}.card-zoom-nav{top:auto;bottom:0;transform:none;width:48px;height:40px;font-size:32px}.card-zoom-previous{left:14px}.card-zoom-next{right:14px}.card-zoom-counter{bottom:6px}}

.card-zoom-hint{text-align:center;margin:16px 0 2px;color:#e7cf98;font-weight:700;letter-spacing:.02em}


/* Mobile reveal screen: keep normal mobile sizing and only compact the cards. */
@media (max-width: 900px) {
  .reveal-stage .card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  .reveal-stage .reveal-panel {
    padding: 10px;
  }

  .reveal-stage .card-face {
    border-width: 1px;
  }
}

@media (max-width: 430px) {
  .reveal-stage .card-grid {
    gap: 5px !important;
  }
}

/* Prevent taps on pack-opening controls from being interpreted as double-tap zoom. */
.booster-button,
.pack-card,
#revealAllButton,
#openAllPacksButton,
#openNextPackButton,
#returnToPacksButton {
  touch-action: manipulation;
}



/* First-time pull marker. It remains hidden until the pack card is revealed. */
.card-front,
.summary-image-wrap { position: relative; }

.new-card-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 12;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 22px;
  padding: 0 7px;
  border: 1px solid #ffe49a;
  border-radius: 999px;
  background: linear-gradient(180deg, #1d3156 0%, #0b172c 100%);
  box-shadow: 0 0 0 2px rgba(8, 12, 20, .72), 0 0 12px rgba(255, 213, 91, .85);
  color: #ffe187;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .06em;
  text-shadow: 0 1px 2px #000;
  pointer-events: none;
  transform-origin: 85% 15%;
  animation: newCardWiggle 3.6s ease-in-out infinite;
}

.pack-card:not(.revealed) .new-card-badge { visibility: hidden; }
.summary-new-card-badge { top: 5px; right: 5px; }
.summary-card.compact .new-card-badge { min-width: 31px; height: 18px; padding: 0 4px; font-size: 8px; }

@keyframes newCardWiggle {
  0%, 76%, 100% { transform: rotate(0deg) scale(1); }
  80% { transform: rotate(7deg) scale(1.08); }
  84% { transform: rotate(-6deg) scale(1.08); }
  88% { transform: rotate(4deg) scale(1.04); }
  92% { transform: rotate(-2deg) scale(1.02); }
  96% { transform: rotate(0deg) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
  .new-card-badge { animation: none; }
}
