/* Cartes collector — Effet Reveal Premium Sorare / Ultimate Team */
.pc-carte{position:relative;width:200px;aspect-ratio:2/3;padding:4px;border-radius:18px;overflow:hidden;
  display:flex;flex-direction:column;background:linear-gradient(135deg,#94a3b8,#475569,#334155,#94a3b8);
  background-size:300% 300%;box-shadow:0 12px 35px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.1);
  animation:pc-shimmer 8s ease infinite 1s;transition:transform .15s ease-out,box-shadow .15s ease-out;
  transform-style:preserve-3d;perspective:1000px}
.pc-carte.rare{background-image:linear-gradient(135deg,#60a5fa,#3b82f6,#1d4ed8,#60a5fa);animation-duration:5s;
  box-shadow:0 12px 35px rgba(37,99,235,.4),0 0 25px rgba(96,165,250,.3),0 0 0 1px rgba(147,197,253,.4)}
.pc-carte.epic{background-image:linear-gradient(135deg,#c084fc,#a855f7,#7c3aed,#c084fc);animation-duration:4s;
  box-shadow:0 14px 40px rgba(147,51,234,.5),0 0 35px rgba(192,132,252,.4),0 0 0 1px rgba(216,180,254,.5)}
.pc-carte.legendary{background-image:linear-gradient(135deg,#fde047,#f59e0b,#ea580c,#fde047);animation-duration:3s;
  box-shadow:0 16px 48px rgba(234,88,12,.6),0 0 45px rgba(250,204,21,.5),0 0 0 1.5px rgba(253,224,71,.7)}
.pc-carte.mythic{background-image:linear-gradient(135deg,#f0abfc,#e11d48,#7c3aed,#22d3ee,#f0abfc);animation-duration:2.5s;
  box-shadow:0 18px 55px rgba(225,29,72,.7),0 0 55px rgba(168,85,247,.6),0 0 0 2px rgba(244,114,182,.8)}

/* Reflet holographique dynamique (style carte Sorare Super Rare) */
.pc-carte::before{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;
  background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.15) 40%,rgba(255,255,255,.5) 50%,rgba(255,255,255,.15) 60%,transparent 80%);
  background-size:250% 250%;background-position:var(--holo-x, 100%) var(--holo-y, 100%);
  mix-blend-mode:screen;opacity:.65;transition:opacity .3s}
.pc-carte.rare::before{opacity:.9;background:linear-gradient(115deg,transparent 15%,rgba(96,165,250,.3) 35%,rgba(255,255,255,.7) 50%,rgba(96,165,250,.3) 65%,transparent 85%)}
.pc-carte.epic::before{opacity:1;background:linear-gradient(115deg,transparent 10%,rgba(216,180,254,.4) 30%,rgba(255,255,255,.85) 50%,rgba(168,85,247,.4) 70%,transparent 90%)}
.pc-carte.legendary::before,.pc-carte.mythic::before{opacity:.85;background:linear-gradient(115deg,transparent 15%,rgba(253,224,71,.35) 35%,rgba(255,255,255,.7) 50%,rgba(249,115,22,.35) 65%,transparent 85%)}

.pc-inner{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;border-radius:15px;overflow:hidden;
  background:linear-gradient(165deg,#13182e 0%,#080b1a 100%)}
.pc-poste{position:absolute;inset:0;z-index:1;opacity:.45;pointer-events:none}
.pc-poste.Goalkeeper{background:linear-gradient(180deg,rgba(245,158,11,.65),transparent 75%)}
.pc-poste.Defender{background:linear-gradient(180deg,rgba(59,130,246,.65),transparent 75%)}
.pc-poste.Midfielder{background:linear-gradient(180deg,rgba(16,185,129,.65),transparent 75%)}
.pc-poste.Attacker{background:linear-gradient(180deg,rgba(239,68,68,.65),transparent 75%)}
.pc-inner img{position:relative;z-index:2;width:100%;height:62%;object-fit:cover;object-position:top center;background:#080b1a}
.pc-nom{position:relative;z-index:2;color:#fff;font:800 1.05rem/1.1 'Hanken Grotesk',sans-serif;padding:10px 12px 2px;text-shadow:0 2px 8px rgba(0,0,0,.85);letter-spacing:-.01em}
.pc-carte.legendary .pc-nom,.pc-carte.mythic .pc-nom{color:#fde047;text-shadow:0 0 10px rgba(250,204,21,.5),0 2px 6px #000}
.pc-club{position:relative;z-index:2;color:rgba(255,255,255,.85);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:2px 12px 8px}
.pc-poste-nom{position:relative;z-index:2;margin-top:auto;padding:6px 12px 10px;font-size:.68rem;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.1)}
.pc-poste-nom.Goalkeeper{color:#fbbf24}.pc-poste-nom.Defender{color:#60a5fa}
.pc-poste-nom.Midfielder{color:#34d399}.pc-poste-nom.Attacker{color:#f87171}
.pc-carte.mini .pc-poste-nom{font-size:.54rem;padding:4px 8px 7px}
.pc-badge{display:inline-block;padding:5px 16px;border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.pc-badge.common{background:#64748b}.pc-badge.rare{background:#2563eb;box-shadow:0 0 16px rgba(37,99,235,.6)}
.pc-badge.epic{background:#9333ea;box-shadow:0 0 20px rgba(147,51,234,.7)}
.pc-badge.legendary{background:#d97706;box-shadow:0 0 24px rgba(217,119,6,.8)}
.pc-badge.mythic{background:linear-gradient(90deg,#e11d48,#7c3aed);box-shadow:0 0 28px rgba(225,29,72,.9)}
.pc-carte.mini{width:100%;border-radius:12px}.pc-carte.mini .pc-nom{font-size:.8rem;padding:6px 8px 1px}.pc-carte.mini .pc-club{font-size:.56rem;padding:1px 8px 6px}

/* Le bandeau de notification de paquet */
.pc-bandeau{display:flex;align-items:center;gap:14px;margin:0 0 16px;padding:14px 16px;border:var(--bd);border-radius:14px;
  background:radial-gradient(ellipse at top left,#1a224a 0%,#090d24 100%);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.4);cursor:pointer;font:inherit;width:100%;text-align:left;position:relative;overflow:hidden}
.pc-bandeau::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);transform:translateX(-100%);animation:pc-glint 3.5s infinite}
/* ── Icône du paquet (remplace l'emoji cadeau) ── */
.pc-bandeau .pc-cadeau{width:34px;height:34px;flex:none;object-fit:contain;
  filter:drop-shadow(1px 1px 0 var(--ink));animation:pc-tremble 2.4s ease-in-out infinite}
.pc-bandeau .pc-cadeau:hover{animation:pc-secoue .5s ease}
.ic-inline{width:20px;height:20px;vertical-align:-4px;margin-right:4px;object-fit:contain}
.pc-bandeau strong{font-family:Anton,sans-serif;letter-spacing:.5px;font-size:1.05rem}

/* ═══════════ L'ARÈNE DE DÉVOILEMENT SORARE ═══════════ */
.pc-scene{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:20px;background:#050713;color:#fff;text-align:center;opacity:0;transition:opacity .35s;overflow:hidden;user-select:none}
.pc-scene.visible{opacity:1}

/* Halo et rayons lumineux en fond */
.pc-arena-fx{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.pc-arena-halo{position:absolute;top:50%;left:50%;width:750px;height:750px;transform:translate(-50%,-50%);
  border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.25) 0%,rgba(147,51,234,.15) 45%,transparent 70%);
  filter:blur(30px);animation:pc-pulse-halo 3s ease-in-out infinite alternate}
.pc-arena-rays{position:absolute;top:50%;left:50%;width:900px;height:900px;transform:translate(-50%,-50%);
  background:conic-gradient(from 0deg at 50% 50%,transparent 0deg,rgba(255,255,255,.05) 20deg,transparent 40deg,rgba(255,255,255,.07) 80deg,transparent 100deg,rgba(255,255,255,.05) 140deg,transparent 160deg,rgba(255,255,255,.08) 200deg,transparent 220deg,rgba(255,255,255,.05) 260deg,transparent 280deg,rgba(255,255,255,.07) 320deg,transparent 340deg);
  animation:pc-rotate-rays 25s linear infinite}

/* ─── LE BOOSTER PHYSIQUE SCELLÉ ─── */
.pc-pack-wrap{position:relative;z-index:2;cursor:pointer;perspective:1000px;display:flex;flex-direction:column;align-items:center}
.pc-pack{position:relative;width:210px;height:310px;border-radius:18px;overflow:hidden;
  background:linear-gradient(145deg,#2563eb,#1e3a8a,#0f172a);
  box-shadow:0 20px 50px rgba(0,0,0,.8),0 0 30px rgba(37,99,235,.4),inset 0 0 0 1px rgba(255,255,255,.3);
  transform-style:preserve-3d;animation:pc-float-pack 3.5s ease-in-out infinite;transition:transform .2s ease-out}
.pc-pack:hover{transform:scale(1.05) rotateZ(-1deg)}
.pc-pack::before{content:'';position:absolute;inset:0;
  background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.2) 40%,rgba(255,255,255,.6) 50%,rgba(255,255,255,.2) 60%,transparent 80%);
  background-size:200% 200%;animation:pc-foil 3s infinite}
.pc-pack-crimp{position:absolute;left:0;right:0;height:18px;background:repeating-linear-gradient(90deg,#1e293b,#1e293b 4px,#334155 4px,#334155 8px);opacity:.8;z-index:3}
.pc-pack-crimp.top{top:0;border-bottom:1px solid rgba(255,255,255,.2)}
.pc-pack-crimp.bottom{bottom:0;border-top:1px solid rgba(255,255,255,.2)}
.pc-pack-badge{position:absolute;top:28px;left:50%;transform:translateX(-50%);
  background:#f59e0b;color:#000;font:800 .7rem/1 'Hanken Grotesk',sans-serif;padding:5px 12px;border-radius:99px;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 4px 10px rgba(0,0,0,.5);z-index:3}
.pc-pack-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;z-index:2}
.pc-pack-logo{font-size:3.2rem;margin-bottom:10px;filter:drop-shadow(0 6px 12px rgba(0,0,0,.6))}
.pc-pack-title{font:800 1.25rem/1.1 Anton,sans-serif;letter-spacing:1px;color:#fff;text-shadow:0 3px 8px #000;text-transform:uppercase}
.pc-pack-sub{font-size:.78rem;font-weight:700;color:#93c5fd;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
.pc-pack-hint{margin-top:22px;font-size:.9rem;font-weight:700;letter-spacing:.05em;color:#fde047;text-shadow:0 2px 8px rgba(0,0,0,.8);animation:pc-pulse-tap 1.4s infinite alternate}

/* Animation d'explosion / déchirement du booster */
.pc-pack.ripping{animation:pc-pack-burst .7s cubic-bezier(.16,1,.3,1) forwards}

/* ─── PHASE SUSPENSE / WALKOUT (pour les cartes Rares et Stars) ─── */
.pc-walkout{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:14px;animation:pc-fade-in .4s ease}
.pc-walkout-step{display:flex;align-items:center;gap:12px;padding:8px 18px;background:rgba(255,255,255,.08);border-radius:99px;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px);animation:pc-slam .4s cubic-bezier(.16,1,.3,1) both}
.pc-walkout-label{font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#93c5fd}
.pc-walkout-val{font:800 1.15rem Anton,sans-serif;letter-spacing:.5px;color:#fff}
.pc-walkout-silhouette{width:160px;height:210px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,rgba(255,255,255,.02) 60%,transparent 70%);border-radius:18px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 25px rgba(59,130,246,.5));animation:pc-pulse-glow 1.2s infinite alternate}

/* ─── CARTE RÉVÉLÉE ─── */
.pc-reveal-wrap{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:14px}
.pc-scene .pc-carte{width:min(64vw,225px);animation:pc-pop .65s cubic-bezier(.34,1.56,.64,1) both,pc-shimmer 6s ease infinite 1s}
.pc-scene .pc-carte.walkout-pop{animation:pc-slam-zoom .6s cubic-bezier(.16,1,.3,1) both,pc-shimmer 5s ease infinite .8s}
.pc-scene .pc-carte.retournee{animation:pc-retourne 1.1s cubic-bezier(.34,1.3,.64,1) both,pc-shimmer 3s ease infinite 1.2s}
.pc-raison{max-width:34ch;font-weight:700;font-size:.92rem;opacity:.95;text-shadow:0 2px 4px #000;margin-top:2px}
.pc-suite{font-size:.82rem;font-weight:600;opacity:.7;color:#94a3b8}
.pc-fin a,.pc-fin button{margin-top:10px}

/* Flash blanc lors du reveal */
.pc-flash{position:absolute;inset:0;background:#fff;z-index:1002;pointer-events:none;opacity:0;transition:opacity .5s ease-out}
.pc-flash.active{opacity:.85;transition:none}

/* Confettis & étincelles */
.pc-confettis{position:fixed;inset:0;pointer-events:none;z-index:1001;overflow:hidden}
.pc-confetti{position:absolute;top:-14px;width:10px;height:16px;border-radius:2px;animation:pc-chute 3.2s ease-out forwards}

/* Filtres collection */
.pc-filtres{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.pc-filtres button{font:inherit;font-size:.78rem;padding:5px 10px;border:var(--bd);border-radius:99px;background:var(--chalk);cursor:pointer}
.pc-filtres button[aria-pressed="true"]{background:#0a0e27;color:#fff}

/* ═══════════ KEYFRAMES ═══════════ */
@keyframes pc-shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes pc-float-pack{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes pc-foil{0%{background-position:150% 150%}100%{background-position:-50% -50%}}
@keyframes pc-pulse-tap{from{transform:scale(1);opacity:.85}to{transform:scale(1.08);opacity:1}}
@keyframes pc-pack-burst{
  0%{transform:scale(1)}
  40%{transform:scale(1.2) rotate(-3deg);filter:brightness(1.8)}
  100%{transform:scale(1.6) translateY(-40px);opacity:0;filter:brightness(3)}
}
@keyframes pc-slam{from{transform:scale(1.4) translateY(-20px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}
@keyframes pc-slam-zoom{0%{transform:scale(.2);opacity:0}60%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}
@keyframes pc-pulse-halo{from{transform:translate(-50%,-50%) scale(.8);opacity:.3}to{transform:translate(-50%,-50%) scale(1.15);opacity:.6}}
@keyframes pc-rotate-rays{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes pc-pulse-glow{from{opacity:.4;transform:scale(.95)}to{opacity:.85;transform:scale(1.05)}}
@keyframes pc-pop{from{transform:scale(.3) rotate(-15deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}
@keyframes pc-retourne{0%{transform:perspective(900px) rotateY(180deg) scale(.6);opacity:0}40%{opacity:1}100%{transform:perspective(900px) rotateY(0) scale(1);opacity:1}}
@keyframes pc-tremble{0%,82%,100%{transform:rotate(0)}86%{transform:rotate(-12deg)}90%{transform:rotate(10deg)}94%{transform:rotate(-6deg)}}
@keyframes pc-glint{0%,100%{transform:translateX(-100%)}30%,60%{transform:translateX(100%)}}
@keyframes pc-chute{to{transform:translateY(105vh) rotate(540deg);opacity:.2}}

@media (prefers-reduced-motion:reduce){
  .pc-carte,.pc-carte::before,.pc-bandeau .pc-cadeau,.pc-scene .pc-carte,.pc-pack,.pc-arena-rays,.pc-arena-halo{animation:none}
  .pc-scene{transition:none}
}


/* ── EFFETS AU SURVOL DES CARTES (Collection & Dévoilement) ── */
.pc-carte {
  cursor: pointer;
  transition: transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease, filter .2s ease;
}
.pc-carte:hover {
  transform: translateY(-8px) scale(1.05) rotate(0.5deg);
  z-index: 10;
}
.pc-carte.common:hover {
  box-shadow: 0 16px 30px rgba(0,0,0,.45), 0 0 20px rgba(148,163,184,.5);
}
.pc-carte.rare:hover {
  box-shadow: 0 18px 35px rgba(29,78,216,.5), 0 0 30px rgba(96,165,250,.7), 0 0 0 2px #60a5fa;
  filter: brightness(1.08);
}
.pc-carte.epic:hover {
  box-shadow: 0 20px 40px rgba(124,58,237,.6), 0 0 35px rgba(192,132,252,.8), 0 0 0 2px #c084fc;
  filter: brightness(1.1);
}
.pc-carte.legendary:hover {
  box-shadow: 0 22px 45px rgba(234,88,12,.7), 0 0 45px rgba(250,204,21,.9), 0 0 0 2.5px #fde047;
  filter: brightness(1.12);
}
.pc-carte.mythic:hover {
  box-shadow: 0 24px 50px rgba(225,29,72,.8), 0 0 50px rgba(244,114,182,1), 0 0 0 3px #f472b6;
  filter: brightness(1.15);
}

/* Brillance dynamique au hover */
.pc-carte::after {
  content: '';
  position: absolute;
  inset: -100%;
  background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,.35) 50%, transparent 60%);
  transform: translateX(-100%);
  transition: transform .6s ease;
  pointer-events: none;
  z-index: 5;
}
.pc-carte:hover::after {
  transform: translateX(100%);
}
