
:root{
  --bg:#090a0f;
  --panel:#11131b;
  --panel2:#171a24;
  --text:#f4f6fb;
  --muted:#9da5b4;
  --red:#ff304f;
  --red2:#c8102e;
  --ice:#dff8ff;
  --line:rgba(255,255,255,.09);
  --shadow:0 30px 80px rgba(0,0,0,.42);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:
    radial-gradient(circle at 80% 10%,rgba(255,48,79,.12),transparent 26rem),
    radial-gradient(circle at 20% 40%,rgba(68,148,255,.08),transparent 26rem),
    var(--bg);
  color:var(--text);
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
button,select{font:inherit}
.noise{
  position:fixed; inset:0; pointer-events:none; opacity:.12; z-index:999;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");
}
.site-header{
  position:sticky; top:0; z-index:50;
  height:74px; display:flex; align-items:center; justify-content:space-between;
  padding:0 clamp(20px,4vw,64px);
  background:rgba(9,10,15,.78);
  backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line);
}
.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:-.04em}
.brand img{width:34px;height:34px}
.brand span span{color:var(--red)}
nav{display:flex;gap:26px;color:var(--muted);font-weight:700;font-size:.95rem}
nav a:hover{color:var(--text)}
.btn{
  border:0; cursor:pointer; display:inline-flex; align-items:center; justify-content:center;
  gap:.45rem; padding:14px 20px; border-radius:14px;
  background:linear-gradient(135deg,var(--red),var(--red2));
  color:white; font-weight:900; letter-spacing:.01em;
  box-shadow:0 10px 30px rgba(255,48,79,.22);
  transition:.2s transform,.2s opacity,.2s box-shadow;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(255,48,79,.3)}
.btn:active{transform:translateY(0)}
.btn-small{padding:10px 14px;border-radius:12px;font-size:.9rem}
.btn-ghost{background:transparent;border:1px solid var(--line);box-shadow:none}
.btn-danger{background:transparent;border:1px solid rgba(255,48,79,.45);box-shadow:none;color:#ff7890}
.hero{
  min-height:calc(100vh - 74px);
  display:grid; grid-template-columns:1.15fr .85fr;
  gap:4rem; align-items:center;
  padding:clamp(54px,7vw,110px) clamp(20px,6vw,96px);
  max-width:1500px; margin:0 auto;
}
.eyebrow{
  font-size:.78rem; letter-spacing:.18em; font-weight:900; color:#ff758d; margin-bottom:14px;
}
.hero h1,.section h2{
  margin:0; letter-spacing:-.055em; line-height:.94;
}
.hero h1{font-size:clamp(4rem,8vw,8.5rem);max-width:900px}
.hero h1 span{
  color:transparent;
  -webkit-text-stroke:1.5px rgba(255,255,255,.85);
}
.hero p{max-width:670px;color:var(--muted);font-size:1.15rem;line-height:1.7;margin:28px 0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.hero-stats{display:flex;gap:38px;margin-top:42px}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats strong{font-size:1.5rem}
.hero-stats span{font-size:.82rem;color:var(--muted);margin-top:3px}
.hero-card-wrap{display:flex;justify-content:center;perspective:1200px}
.big-card{width:min(360px,74vw);aspect-ratio:2.5/3.5}
.card-back{
  position:relative;overflow:hidden;border-radius:24px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.08),transparent 30%),
    linear-gradient(145deg,#151722 0%,#090a0f 70%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:var(--shadow),0 0 0 10px rgba(255,255,255,.025);
  transform:rotateY(-11deg) rotateX(6deg) rotateZ(3deg);
  animation:float 5s ease-in-out infinite;
}
.card-grid{
  position:absolute;inset:0;opacity:.12;
  background-image:linear-gradient(rgba(255,255,255,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.1) 1px,transparent 1px);
  background-size:24px 24px;
}
.logo-mark{
  position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);
  width:130px;height:130px;border-radius:50%;
  display:grid;place-items:center;
  border:7px solid var(--red);font-size:3.5rem;font-weight:1000;letter-spacing:-.08em;
  box-shadow:0 0 70px rgba(255,48,79,.28);
}
.card-back-title{position:absolute;bottom:18%;width:100%;text-align:center;font-weight:1000;letter-spacing:.12em}
.card-back-sub{position:absolute;bottom:12%;width:100%;text-align:center;font-size:.65rem;color:var(--muted);letter-spacing:.22em}
@keyframes float{50%{transform:rotateY(-4deg) rotateX(3deg) rotateZ(-2deg) translateY(-16px)}}
.section{max-width:1300px;margin:0 auto;padding:92px clamp(20px,4vw,52px)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}
.section h2{font-size:clamp(2.5rem,5vw,5rem)}
.text-link{color:#ff758d;font-weight:800}
.live-panel{
  display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;
  padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(135deg,var(--panel),#0d0f16);
}
.live-panel h3{margin:0 0 4px;font-size:1.45rem}
.live-panel p{margin:0;color:var(--muted)}
.live-dot{width:14px;height:14px;border-radius:50%;background:#ff304f;box-shadow:0 0 0 8px rgba(255,48,79,.12);animation:pulse 1.6s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 16px rgba(255,48,79,0)}}
.game-section{max-width:1450px}
.game-controls{display:flex;align-items:center;gap:10px}
.game-controls label{font-weight:800;color:var(--muted);font-size:.9rem}
select{
  color:var(--text);background:var(--panel);border:1px solid var(--line);
  padding:11px 14px;border-radius:12px;outline:none;
}
.game-shell{
  display:grid;grid-template-columns:360px 1fr;gap:28px;
  padding:28px;border-radius:26px;background:linear-gradient(145deg,#11131b,#0d0f15);
  border:1px solid var(--line);min-height:610px;
}
.pack-zone{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  border-right:1px solid var(--line);padding-right:28px;
}
.pack{
  width:245px;height:365px;position:relative;overflow:hidden;
  border-radius:15px 15px 24px 24px;cursor:pointer;
  background:
    radial-gradient(circle at 50% 42%,rgba(255,255,255,.18),transparent 10rem),
    linear-gradient(145deg,#222739 0%,#10131d 42%,#c8102e 145%);
  border:2px solid rgba(255,255,255,.22);
  box-shadow:0 35px 70px rgba(0,0,0,.5),0 0 40px rgba(255,48,79,.12);
  transition:.2s;
}
.pack:hover{transform:translateY(-5px) rotate(-1deg)}
.pack.opening{animation:shake .08s 16 alternate}
@keyframes shake{to{transform:translateX(6px) rotate(1deg)}}
.pack-top{height:28px;background:repeating-linear-gradient(90deg,#e8e8e8 0 8px,#c9c9c9 8px 16px);border-bottom:2px solid rgba(0,0,0,.45)}
.pack-shine{position:absolute;inset:28px 0 0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.2) 45%,transparent 60%);transform:translateX(-100%);animation:shine 3s infinite}
@keyframes shine{60%,100%{transform:translateX(120%)}}
.pack-logo{position:absolute;top:84px;left:50%;transform:translateX(-50%);font-size:3.6rem;font-weight:1000;letter-spacing:-.1em}
.pack-title{position:absolute;top:166px;width:100%;text-align:center;font-size:1.35rem;font-weight:1000;letter-spacing:.08em}
.pack-sport{position:absolute;top:205px;width:100%;text-align:center;color:#ff93a6;font-weight:900;font-size:.8rem;letter-spacing:.2em}
.pack-footer{position:absolute;bottom:34px;width:100%;text-align:center;color:rgba(255,255,255,.7);font-weight:800;font-size:.72rem;letter-spacing:.16em}
.btn-pack{width:245px;margin-top:20px}
.tiny-note{text-align:center;font-size:.72rem;color:var(--muted);max-width:270px;line-height:1.5}
.reveal-zone{min-width:0;display:flex;align-items:center;justify-content:center}
.reveal-placeholder{text-align:center;color:var(--muted)}
.reveal-placeholder .spark{font-size:4rem;color:#ff526f}
.reveal-placeholder h3{color:var(--text);font-size:1.5rem;margin:8px 0}
.cards-grid{
  width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-content:center;
}
.pull-card{
  position:relative;aspect-ratio:2.5/3.5;border-radius:18px;padding:16px;overflow:hidden;
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 20px 40px rgba(0,0,0,.35);
  transform:translateY(30px) scale(.92);opacity:0;
  animation:reveal .52s cubic-bezier(.2,.9,.2,1) forwards;
}
@keyframes reveal{to{transform:translateY(0) scale(1);opacity:1}}
.pull-card::before{
  content:"";position:absolute;inset:-60% -20%;
  background:linear-gradient(110deg,transparent 38%,rgba(255,255,255,.3) 50%,transparent 62%);
  transform:translateX(-55%) rotate(8deg);
}
.pull-card.holo::before,.pull-card.auto::before,.pull-card.oneofone::before{animation:foil 2.4s infinite}
@keyframes foil{to{transform:translateX(75%) rotate(8deg)}}
.r-common{background:linear-gradient(145deg,#242834,#151820)}
.r-uncommon{background:linear-gradient(145deg,#18352b,#0f1d18)}
.r-rare{background:linear-gradient(145deg,#18304f,#0f1927)}
.r-holo{background:linear-gradient(145deg,#37234c,#182a46)}
.r-auto{background:linear-gradient(145deg,#5a4214,#271d0e)}
.r-oneofone{background:linear-gradient(145deg,#5b1414,#171010);box-shadow:0 0 45px rgba(255,48,79,.4),0 20px 40px rgba(0,0,0,.35)}
.card-sport{font-size:.65rem;font-weight:900;letter-spacing:.18em;color:rgba(255,255,255,.62)}
.card-player{font-size:clamp(.9rem,1.7vw,1.3rem);font-weight:1000;letter-spacing:-.03em;margin-top:10px;line-height:1.05}
.card-team{font-size:.73rem;color:rgba(255,255,255,.6);margin-top:4px}
.card-emoji{font-size:3.2rem;text-align:center;margin:18px 0 12px;filter:drop-shadow(0 10px 15px rgba(0,0,0,.3))}
.card-bottom{position:absolute;bottom:14px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:end}
.rarity{font-weight:1000;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}
.serial{font-size:.66rem;color:rgba(255,255,255,.68)}
.collection-stats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px
}
.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px}
.stat-card strong{display:block;font-size:1.9rem}
.stat-card span{font-size:.78rem;color:var(--muted)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.filter{
  border:1px solid var(--line);background:transparent;color:var(--muted);
  padding:9px 12px;border-radius:999px;cursor:pointer;font-weight:800;font-size:.82rem
}
.filter.active{background:#fff;color:#0b0c10;border-color:#fff}
.collection-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.collection-grid .pull-card{opacity:1;transform:none;animation:none}
.empty-collection{grid-column:1/-1;text-align:center;color:var(--muted);padding:50px;border:1px dashed var(--line);border-radius:18px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.about-copy{color:var(--muted);font-size:1.05rem;line-height:1.8}
.safety-box{
  padding-top:34px;padding-bottom:34px;
  background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:20px;margin-bottom:70px
}
.safety-box h3{margin:0 0 10px}
.safety-box p{margin:0;color:var(--muted);line-height:1.6;max-width:950px}
footer{
  border-top:1px solid var(--line);padding:28px clamp(20px,4vw,64px);
  display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.85rem
}
.footer-brand{color:var(--text)}
.toast{
  position:fixed;left:50%;bottom:28px;transform:translate(-50%,25px);
  background:#fff;color:#0b0c10;padding:12px 18px;border-radius:999px;
  font-weight:900;opacity:0;pointer-events:none;transition:.3s;z-index:1000;
  box-shadow:0 10px 40px rgba(0,0,0,.35)
}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media (max-width:1000px){
  nav{display:none}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-card-wrap{padding:30px 0 20px}
  .big-card{width:280px}
  .game-shell{grid-template-columns:1fr}
  .pack-zone{border-right:0;border-bottom:1px solid var(--line);padding:12px 0 30px}
  .cards-grid{grid-template-columns:repeat(3,1fr)}
  .collection-grid{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:680px){
  .site-header .btn-small{display:none}
  .hero{padding-top:55px}
  .hero h1{font-size:clamp(3.2rem,18vw,5.5rem)}
  .hero-stats{gap:22px}
  .section{padding-top:66px;padding-bottom:66px}
  .section-heading{align-items:flex-start;flex-direction:column}
  .live-panel{grid-template-columns:auto 1fr}
  .live-panel .btn{grid-column:1/-1}
  .cards-grid{grid-template-columns:repeat(2,1fr)}
  .collection-grid{grid-template-columns:repeat(2,1fr)}
  .collection-stats{grid-template-columns:repeat(2,1fr)}
  .two-col{grid-template-columns:1fr;gap:18px}
  footer{flex-direction:column;gap:14px;text-align:center}
}
