/* ══════════════════════════════════════════════════════════════════════════
   carta-perfil.css
   Estilos de la carta de jugador embebida en /jugador/<steam_id>.
   Todo está scoped bajo .carta-section para no pisar el CSS de Gran DT.
   ══════════════════════════════════════════════════════════════════════════ */

/* Fuentes extra que la carta necesita */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700&family=Barlow:wght@400;500&display=swap');

/* ── Variables ─────────────────────────────────────────────────────────── */
.carta-section {
  --bronze:      #cd7f32;
  --silver:      #c0c8d8;
  --gold:        #e8c84a;
  --gold2:       #f5a800;
  --elite-shine: #e8e0c8;
  --card-w:      260px;
  --card-h:      450px;

  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px 0 8px;
  gap: 10px;
}

/* ── Wrapper ───────────────────────────────────────────────────────────── */
.carta-section .card {
  width: var(--card-w);
  height: var(--card-h);
  position: relative;
  cursor: pointer;
  perspective: 1000px;
  flex-shrink: 0;
  animation: carta-fadeUp .5s ease both;
}
@keyframes carta-fadeUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* glow — usando box-shadow en lugar de filter:drop-shadow para no romper
   el contexto 3D en Safari/iOS (filter aplana preserve-3d) */
.carta-section .card.bronze { box-shadow: 0 0 10px rgba(180,100,30,.4); }
.carta-section .card.silver { box-shadow: 0 0 14px rgba(192,200,216,.4); }
.carta-section .card.gold   { box-shadow: 0 0 18px rgba(232,200,74,.5); }
.carta-section .card.gold2  { box-shadow: 0 0 22px rgba(245,168,0,.65); }
.carta-section .card.elite  { box-shadow: 0 0 30px rgba(232,224,200,.6); }

/* ── Flip ──────────────────────────────────────────────────────────────── */
.carta-section .card-inner {
  width: 100%; height: 100%;
  position: relative;
  transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
  transition: transform .55s cubic-bezier(.4,0,.2,1);
  border-radius: 16px;
}
.carta-section .card:hover .card-inner,
.carta-section .card.flipped .card-inner { transform: rotateY(180deg); }

.carta-section .card-front,
.carta-section .card-back {
  position: absolute;
  inset: 0;
  border-radius: 16px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* ── FRONT ─────────────────────────────────────────────────────────────── */
.carta-section .card-front {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}
/* Nada del frente se comprime: si algo no entra, se ajusta --card-h, no se tapa el nombre */
.carta-section .card-front > * { flex-shrink: 0; }

/* Fondos por rareza */
.carta-section .card.bronze .card-front { background: linear-gradient(160deg, #140e08 0%, #241808 40%, #140e08 100%); border: 1px solid #8b5a2050; }
.carta-section .card.silver .card-front { background: linear-gradient(160deg, #111520 0%, #1c2035 40%, #111520 100%); border: 1px solid #8899bb50; }
.carta-section .card.gold   .card-front { background: linear-gradient(160deg, #18160a 0%, #28240e 40%, #18160a 100%); border: 1px solid #c8b04050; }
.carta-section .card.gold2  .card-front { background: linear-gradient(160deg, #1a1200 0%, #2e2000 40%, #1a1000 100%); border: 1px solid #f5a80060; }
.carta-section .card.elite  .card-front {
  background: linear-gradient(160deg, #080a0c 0%, #10130f 35%, #0c0e08 70%, #080a0c 100%);
  border: 1px solid #c8c0a050;
}

/* Shimmer overlay */
.carta-section .card-front::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent 40%, rgba(255,255,255,.03) 50%, transparent 60%);
  pointer-events: none;
}

/* La carta élite (la negra) tenía dos animaciones: un brillo diagonal que
   iba y volvía dentro del mismo ciclo (dos destellos cada 3s) y un borde
   que latía cada 4s. Se leían como un parpadeo y no se podían "afinar":
   se sacaron. El acabado premium ahora es fijo. */
.carta-section .card.elite .card-front::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 16px;
  background: linear-gradient(135deg, transparent 38%, rgba(232,224,200,.05) 50%, transparent 62%);
  pointer-events: none;
}
.carta-section .card.elite .card-front,
.carta-section .card.elite .card-back { border-color: #c8c0a055; }

/* ── Top band ──────────────────────────────────────────────────────────── */
.carta-section .card-top {
  width: 100%;
  padding: 12px 14px 8px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  z-index: 1;
}
.carta-section .ovr-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1;
}
.carta-section .ovr-num {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2.6rem;
  line-height: 1;
}
.carta-section .card.bronze .ovr-num { color: var(--bronze); }
.carta-section .card.silver .ovr-num { color: var(--silver); }
.carta-section .card.gold   .ovr-num { color: var(--gold); }
.carta-section .card.gold2  .ovr-num { color: var(--gold2); }
.carta-section .card.elite  .ovr-num { color: var(--elite-shine); text-shadow: 0 0 12px rgba(232,224,200,.6); }

.carta-section .ovr-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .6rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: #666e88;
  margin-top: 1px;
}

/* OVR viejo: el jugador no jugó la temporada anterior -> número apagado + temporada */
.carta-section .card.viejo .ovr-num { opacity: .6; }
.carta-section .card.viejo .ovr-label {
  color: #e0a040;
  letter-spacing: .06em;
  font-size: .5rem;
  white-space: nowrap;
}

/* Posición badge (scoped para no pisar el .pos-badge de Gran DT) */
.carta-section .c-pos-badge {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.3rem;
  letter-spacing: .08em;
  padding: 2px 8px;
  border-radius: 6px;
  border: 1px solid currentColor;
}
.carta-section .card.bronze .c-pos-badge { color: var(--bronze); border-color: #9a5a20; }
.carta-section .card.silver .c-pos-badge { color: var(--silver); border-color: #7788aa; }
.carta-section .card.gold   .c-pos-badge { color: var(--gold);   border-color: #b09030; }
.carta-section .card.gold2  .c-pos-badge { color: var(--gold2);  border-color: #c88000; }
.carta-section .card.elite  .c-pos-badge { color: var(--elite-shine); border-color: #a09878; }

/* ── Avatar (foto o iniciales) ─────────────────────────────────────────── */
.carta-section .avatar-wrap {
  width: 90px; height: 90px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 2.4rem;
  letter-spacing: .05em;
  position: relative;
  margin-top: 2px;
  overflow: hidden;
}
.carta-section .avatar-wrap img {
  width: 100%; height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.carta-section .card.bronze .avatar-wrap { background: radial-gradient(circle at 35% 35%, #3a2010, #140e08); border: 2px solid #9a6030;        color: var(--bronze); }
.carta-section .card.silver .avatar-wrap { background: radial-gradient(circle at 35% 35%, #2a3050, #111520); border: 2px solid #667799;        color: var(--silver); }
.carta-section .card.gold   .avatar-wrap { background: radial-gradient(circle at 35% 35%, #38320a, #18160a); border: 2px solid var(--gold);    color: var(--gold); }
.carta-section .card.gold2  .avatar-wrap { background: radial-gradient(circle at 35% 35%, #4a3000, #1a1200); border: 2px solid var(--gold2);   color: var(--gold2); }
.carta-section .card.elite  .avatar-wrap { background: radial-gradient(circle at 35% 35%, #1c1c18, #080a0c); border: 2px solid var(--elite-shine); color: var(--elite-shine); box-shadow: 0 0 8px rgba(232,224,200,.25); }

/* ── Nombre ────────────────────────────────────────────────────────────── */
.carta-section .c-player-name {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.25rem;
  letter-spacing: .1em;
  text-align: center;
  margin-top: 8px;
  padding: 0 10px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
}
.carta-section .card.bronze .c-player-name { color: #f0d8b0; }
.carta-section .card.silver .c-player-name { color: #d8dded; }
.carta-section .card.gold   .c-player-name { color: #fdf5d0; }
.carta-section .card.gold2  .c-player-name { color: #fff4cc; }
.carta-section .card.elite  .c-player-name { color: #f0ece0; text-shadow: 0 0 8px rgba(232,224,200,.3); }

/* ── Rarity label ──────────────────────────────────────────────────────── */
.carta-section .c-rarity-label {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .6rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  margin-top: 2px;
}
.carta-section .card.bronze .c-rarity-label { color: #9a6030; }
.carta-section .card.silver .c-rarity-label { color: #7788aa; }
.carta-section .card.gold   .c-rarity-label { color: #b09030; }
.carta-section .card.gold2  .c-rarity-label { color: #c88000; }
.carta-section .card.elite  .c-rarity-label { color: #a09878; letter-spacing: .35em; }

/* ── Divider ───────────────────────────────────────────────────────────── */
.carta-section .c-divider {
  width: 80%; height: 1px;
  margin: 8px auto 6px;
  opacity: .25;
}
.carta-section .card.bronze .c-divider { background: linear-gradient(90deg, transparent, var(--bronze), transparent); }
.carta-section .card.silver .c-divider { background: linear-gradient(90deg, transparent, var(--silver), transparent); }
.carta-section .card.gold   .c-divider { background: linear-gradient(90deg, transparent, var(--gold), transparent); }
.carta-section .card.gold2  .c-divider { background: linear-gradient(90deg, transparent, var(--gold2), transparent); }
.carta-section .card.elite  .c-divider { background: linear-gradient(90deg, transparent, var(--elite-shine), transparent); opacity: .4; }

/* ── Stats row ─────────────────────────────────────────────────────────── */
.carta-section .c-stats-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  width: 90%;
  gap: 4px;
  padding: 0 4px;
}
.carta-section .c-stat-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
}
.carta-section .c-stat-val {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.4rem;
  line-height: 1;
}
.carta-section .card.bronze .c-stat-val { color: #f0c890; }
.carta-section .card.silver .c-stat-val { color: #d0d8ed; }
.carta-section .card.gold   .c-stat-val { color: #fdf0a0; }
.carta-section .card.gold2  .c-stat-val { color: #ffe880; }
.carta-section .card.elite  .c-stat-val { color: #f0ece0; text-shadow: 0 0 6px rgba(232,224,200,.4); }

.carta-section .c-stat-key {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .55rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #505870;
}

/* ── Radar de categorías (frente) ──────────────────────────────────────── */
.carta-section .c-radar {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 2px;
}
.carta-section .c-radar-svg { max-width: 100%; height: auto; }

/* ── Tags ──────────────────────────────────────────────────────────────── */
.carta-section .c-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  justify-content: center;
  padding: 4px 10px 0;
  min-height: 28px;
}
.carta-section .c-tag {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .55rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 4px;
  border: 1px solid;
}
.carta-section .card.bronze .c-tag { color: #aa7040; border-color: #aa704044; background: #aa704015; }
.carta-section .card.silver .c-tag { color: #8899bb; border-color: #8899bb44; background: #8899bb15; }
.carta-section .card.gold   .c-tag { color: #b09030; border-color: #b0903044; background: #b0903015; }
.carta-section .card.gold2  .c-tag { color: #c88000; border-color: #c8800044; background: #c8800015; }
.carta-section .card.elite  .c-tag { color: #a09878; border-color: #a0987844; background: #a0987815; }
.carta-section .c-tag[data-cat="Disciplina"]    { color: #cc4444 !important; border-color: #cc444455 !important; background: #cc444415 !important; }
.carta-section .c-tag[data-cat="Arquero"]       { color: #44aacc !important; border-color: #44aacc55 !important; background: #44aacc15 !important; }
.carta-section .c-tag[data-cat="Combo"]         { color: #aa66ff !important; border-color: #aa66ff55 !important; background: #aa66ff15 !important; }
.carta-section .c-tag[data-cat="Participación"] { color: #44cc88 !important; border-color: #44cc8855 !important; background: #44cc8815 !important; }
.carta-section .c-tag[data-cat="Especial"]      { color: #f0c040 !important; border-color: #f0c04055 !important; background: #f0c04015 !important; }

/* ── Bottom strip ──────────────────────────────────────────────────────── */
.carta-section .c-bottom-strip {
  margin-top: auto;
  width: 100%;
  padding: 6px 14px 10px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-top: 1px solid rgba(255,255,255,.05);
}
.carta-section .c-mini-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
}
.carta-section .c-mini-val {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .85rem;
  line-height: 1;
  color: #9098b0;
}
.carta-section .c-mini-key {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .5rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #404860;
}

/* ── Veterano: chapita bajo el puesto ──────────────────────────────────
   Antes era una estrella suelta arriba a la derecha y tapaba el primer
   cuadrito (ATQ). Ahora va en la columna del OVR, donde sobra lugar. */
.carta-section .c-vet {
  margin-top: 4px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .55rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1;
  padding: 2px 5px;
  border-radius: 4px;
  white-space: nowrap;
  color: var(--gold);
  border: .5px solid rgba(232,200,74,.45);
  background: rgba(232,200,74,.08);
}

/* ── Vet star (ya no se usa; queda por si algo viejo la pinta) ──────── */
.carta-section .vet-star {
  position: absolute;
  top: 10px; right: 10px;
  font-size: .75rem;
  color: var(--gold);
  opacity: .8;
  z-index: 10;
}

/* ── Front extras (bestbox, bpill, globrow, stars) ─────────────────────── */
.carta-section .c-bestbox {
  display: flex;
  flex-direction: column;
  gap: 3px;
  align-items: flex-end;
}
.carta-section .c-bpill {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .6rem;
  font-weight: 700;
  letter-spacing: .06em;
  padding: 2px 6px;
  border-radius: 4px;
  white-space: nowrap;
}
.carta-section .card.bronze .c-bpill { background: rgba(205,127,50,.13); color: var(--bronze); border: .5px solid rgba(205,127,50,.3); }
.carta-section .card.silver .c-bpill { background: rgba(192,200,216,.09); color: var(--silver); border: .5px solid rgba(192,200,216,.25); }
.carta-section .card.gold   .c-bpill { background: rgba(232,200,74,.11); color: var(--gold);   border: .5px solid rgba(232,200,74,.28); }
.carta-section .card.gold2  .c-bpill { background: rgba(245,168,0,.12);  color: var(--gold2);  border: .5px solid rgba(245,168,0,.3); }
.carta-section .card.elite  .c-bpill { background: rgba(232,224,200,.09); color: var(--elite-shine); border: .5px solid rgba(232,224,200,.22); }

.carta-section .c-stars {
  font-size: .75rem;
  letter-spacing: .05em;
  text-align: center;
  margin: 2px 0 0;
}
.carta-section .card.bronze .c-stars { color: var(--bronze); }
.carta-section .card.silver .c-stars { color: var(--silver); }
.carta-section .card.gold   .c-stars { color: var(--gold); }
.carta-section .card.gold2  .c-stars { color: var(--gold2); }
.carta-section .card.elite  .c-stars { color: var(--elite-shine); }

.carta-section .c-globrow {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px;
  padding: 2px 8px 3px;
  min-height: 22px;
  position: relative;
  z-index: 3;
}
.carta-section .c-glbl {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .06em;
  padding: 2px 7px;
  border-radius: 5px;
  background: rgba(168,85,247,.2);
  color: #e9d5ff;
  border: .5px solid rgba(168,85,247,.45);
}
.carta-section .c-no-glbl {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .55rem;
  font-style: italic;
  color: rgba(255,255,255,.2);
}

/* ── BACK ──────────────────────────────────────────────────────────────── */
.carta-section .card-back {
  transform: rotateY(180deg);
  display: flex;
  flex-direction: column;
  padding: 12px 12px 10px;
  overflow: hidden;
}
.carta-section .card.bronze .card-back { background: linear-gradient(160deg, #180f05 0%, #241808 100%); border: 1px solid #8b5a2050; }
.carta-section .card.silver .card-back { background: linear-gradient(160deg, #131825 0%, #1c2540 100%); border: 1px solid #8899bb50; }
.carta-section .card.gold   .card-back { background: linear-gradient(160deg, #181608 0%, #242010 100%); border: 1px solid #c8b04050; }
.carta-section .card.gold2  .card-back { background: linear-gradient(160deg, #1a1200 0%, #2a1e00 100%); border: 1px solid #f5a80055; }
.carta-section .card.elite  .card-back { background: linear-gradient(160deg, #080a08 0%, #0e100c 50%, #080a08 100%); border: 1px solid #c8c0a050; }

.carta-section .c-back-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .8rem;
  letter-spacing: .25em;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 8px;
  color: #505870;
}

/* ── Categories area (dorso) ──────────────────────────────────────────── */
.carta-section .c-catsarea {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
}
.carta-section .c-crow {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.carta-section .c-cheader {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 4px;
}
.carta-section .c-cleft {
  display: flex;
  align-items: center;
  gap: 5px;
  flex: 1;
  min-width: 0;
}
.carta-section .c-cname {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
/* Ícono de la categoría: toma el color de la fila, así cada rareza lo
   tiñe sola y no hace falta una regla por rareza. */
.carta-section .c-cat-ico { width: 9px; height: 9px; flex-shrink: 0; opacity: .85; }
.carta-section .card.bronze .c-cname { color: rgba(205,127,50,.7); }
.carta-section .card.silver .c-cname { color: rgba(192,200,216,.7); }
.carta-section .card.gold   .c-cname { color: rgba(232,200,74,.7); }
.carta-section .card.gold2  .c-cname { color: rgba(245,168,0,.7); }
.carta-section .card.elite  .c-cname { color: rgba(232,224,200,.65); }

.carta-section .c-cval {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .95rem;
  min-width: 22px;
  text-align: right;
  flex-shrink: 0;
}
.carta-section .card.bronze .c-cval { color: var(--bronze); }
.carta-section .card.silver .c-cval { color: var(--silver); }
.carta-section .card.gold   .c-cval { color: var(--gold); }
.carta-section .card.gold2  .c-cval { color: var(--gold2); }
.carta-section .card.elite  .c-cval { color: var(--elite-shine); }

.carta-section .c-cbarbg {
  height: 4px;
  border-radius: 2px;
  overflow: hidden;
  background: rgba(255,255,255,.06);
}
.carta-section .c-cbarfill {
  height: 100%;
  width: 0%;
  border-radius: 2px;
  transition: width .8s cubic-bezier(.4,0,.2,1);
}

/* Inline tag badge sobre la barra */
.carta-section .c-clbl {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .52rem;
  font-weight: 700;
  letter-spacing: .04em;
  padding: 1px 5px;
  border-radius: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 88px;
}
.carta-section .card.bronze .c-clbl { background: rgba(205,127,50,.15); color: var(--bronze); border: .5px solid rgba(205,127,50,.3); }
.carta-section .card.silver .c-clbl { background: rgba(192,200,216,.1); color: var(--silver);  border: .5px solid rgba(192,200,216,.25); }
.carta-section .card.gold   .c-clbl { background: rgba(232,200,74,.12); color: var(--gold);    border: .5px solid rgba(232,200,74,.28); }
.carta-section .card.gold2  .c-clbl { background: rgba(245,168,0,.12);  color: var(--gold2);   border: .5px solid rgba(245,168,0,.28); }
.carta-section .card.elite  .c-clbl { background: rgba(232,224,200,.1); color: var(--elite-shine); border: .5px solid rgba(232,224,200,.22); }

/* ── Back footer ───────────────────────────────────────────────────────── */
.carta-section .c-back-footer {
  border-top: 1px solid rgba(255,255,255,.06);
  padding-top: 7px;
  margin-top: 6px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px 4px;
}
.carta-section .c-bf-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.carta-section .c-bf-val {
  font-family: 'Bebas Neue', sans-serif;
  font-size: .85rem;
  line-height: 1;
  color: #8090b0;
}
.carta-section .c-bf-key {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .48rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #404060;
}

/* ── Hint debajo de la carta ───────────────────────────────────────────── */
.carta-hint {
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .7rem;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #40485a;
}

/* ══════════════════════════════════════════════════════════════════════════
   CARTAS ESPECIALES (solo visual; no cambian precio ni puntaje)
   .card.esp.esp-if  -> IF / Equipo de la Semana: negra con dorado
   .card.esp.esp-mvp -> Jugador de la Semana: fondo oro oscuro, borde de oro
   Se escribe ".esp.esp" (la misma clase dos veces) a proposito: suma
   especificidad para ganarle a las reglas por rareza (.card.gold, .card.elite)
   sin usar !important.
   ══════════════════════════════════════════════════════════════════════════ */
.carta-section .card.esp-if {
  --esp-acc:   #e9c46a;
  --esp-acc2:  #b38a2e;
  --esp-bg:    linear-gradient(160deg, #050505 0%, #15120a 42%, #080706 70%, #050505 100%);
  --esp-glow:  rgba(233,196,106,.45);
}
.carta-section .card.esp-mvp {
  --esp-acc:   #ffd35a;
  --esp-acc2:  #d99a12;
  --esp-bg:    radial-gradient(120% 70% at 50% 18%, #3a2805 0%, #1c1303 55%, #0c0802 100%);
  --esp-glow:  rgba(255,200,60,.65);
}

/* El brillo sigue el borde redondeado (si no, asoman esquinas cuadradas) */
.carta-section .card.esp.esp { box-shadow: 0 0 26px var(--esp-glow); border-radius: 16px; }

/* Frente y dorso: fondo, textura fina en diagonal y borde de oro */
.carta-section .card.esp.esp .card-front,
.carta-section .card.esp.esp .card-back {
  background:
    repeating-linear-gradient(135deg, rgba(233,196,106,.035) 0 1px, transparent 1px 9px),
    var(--esp-bg);
  border: 1.5px solid var(--esp-acc2);
}
/* Jugador de la Semana: el borde es un degrade de oro, no un color plano */
.carta-section .card.esp-mvp.esp .card-front,
.carta-section .card.esp-mvp.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(135deg, rgba(255,211,90,.05) 0 1px, transparent 1px 9px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #fff1b8, #d99a12 30%, #fff1b8 50%, #a8740a 75%, #ffe38a) border-box;
}
/* Marco interior fino, como las cartas de EA */
.carta-section .card.esp.esp .card-front::after {
  content: '';
  position: absolute;
  inset: 6px;
  border-radius: 11px;
  border: 1px solid rgba(233,196,106,.22);
  background: none;
  pointer-events: none;
}

.carta-section .card.esp.esp .ovr-num {
  background: linear-gradient(180deg, #fff6d6 0%, var(--esp-acc) 55%, var(--esp-acc2) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: none;
  opacity: 1;
}
.carta-section .card.esp.esp .ovr-label {
  background: var(--esp-acc);
  color: #140f02;
  font-weight: 700;
  letter-spacing: .14em;
  padding: 1px 6px 0;
  border-radius: 4px;
  margin-top: 2px;
}
.carta-section .card.esp.esp .c-pos-badge { color: var(--esp-acc); border-color: var(--esp-acc2); }
.carta-section .card.esp.esp .avatar-wrap {
  background: radial-gradient(circle at 35% 35%, #2e2408, #0a0803);
  border: 2px solid var(--esp-acc);
  color: var(--esp-acc);
  box-shadow: 0 0 10px var(--esp-glow);
}
.carta-section .card.esp.esp .c-player-name { color: #fff8e6; text-shadow: 0 0 8px rgba(233,196,106,.25); }
.carta-section .card.esp.esp .c-divider {
  background: linear-gradient(90deg, transparent, var(--esp-acc), transparent);
  opacity: .5;
}
.carta-section .card.esp.esp .c-bpill {
  background: rgba(233,196,106,.1); color: var(--esp-acc); border: .5px solid rgba(233,196,106,.35);
}
.carta-section .card.esp.esp .c-bottom-strip { border-top-color: rgba(233,196,106,.14); }
.carta-section .card.esp.esp .c-mini-val { color: #d9c28a; }
.carta-section .card.esp.esp .c-mini-key { color: #7d6a3c; }

/* Jugador del Mes (POTM): violeta, para no confundirse con la IF (negra y
   dorada) ni con la del Jugador de la Semana (oro). */
.carta-section .card.esp-potm {
  --esp-acc:   #c9a4ff;
  --esp-acc2:  #8b5cf6;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #34145c 0%, #170a2b 55%, #08040f 100%);
  --esp-glow:  rgba(167,120,255,.55);
}
.carta-section .card.esp-potm.esp .card-front,
.carta-section .card.esp-potm.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(135deg, rgba(201,164,255,.05) 0 1px, transparent 1px 9px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #f0e4ff, #8b5cf6 30%, #67e8f9 55%, #8b5cf6 78%, #f0e4ff) border-box;
}
.carta-section .card.esp-potm.esp .card-front::after { border-color: rgba(201,164,255,.25); }
.carta-section .card.esp-potm.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #d9c4ff 50%, #9f7aea 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-potm.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #2c1450, #0b0514); }
.carta-section .card.esp-potm.esp .c-player-name { text-shadow: 0 0 8px rgba(201,164,255,.35); }
.carta-section .card.esp-potm.esp .c-bpill { background: rgba(201,164,255,.1); border-color: rgba(201,164,255,.35); }
.carta-section .card.esp-potm.esp .c-bottom-strip,
.carta-section .card.esp-potm.esp .c-back-footer { border-top-color: rgba(201,164,255,.16); }
.carta-section .card.esp-potm.esp .c-mini-val,
.carta-section .card.esp-potm.esp .c-bf-val { color: #d9c4ff; }
.carta-section .card.esp-potm.esp .c-mini-key,
.carta-section .card.esp-potm.esp .c-bf-key { color: #7a64a8; }
.carta-section .card.esp-potm.esp .c-cname { color: rgba(201,164,255,.8); }
.carta-section .card.esp-potm.esp .c-cval  { color: #e6dbff; }
.carta-section .card.esp-potm.esp .c-clbl  { background: rgba(201,164,255,.12); border-color: rgba(201,164,255,.3); }
.carta-section .card.esp-potm .c-esp-banda { background: var(--esp-acc); border-color: var(--esp-acc); }
.carta-section .card.esp-potm .c-esp-tit   { color: #1a0b2e; }
.carta-section .card.esp-potm .c-esp-fecha { color: rgba(26,11,46,.65); }

/* Banda que reemplaza a las estrellas: que carta es y de que fecha */
.carta-section .c-esp-banda {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 3px auto 0;
  padding: 2px 9px;
  border-radius: 99px;
  border: .5px solid rgba(233,196,106,.4);
  background: rgba(233,196,106,.08);
  font-family: 'Barlow Condensed', sans-serif;
  font-size: .58rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  white-space: nowrap;
  max-width: calc(100% - 20px);
  overflow: hidden;
}
.carta-section .c-esp-tit   { color: var(--esp-acc); font-weight: 700; }
.carta-section .c-esp-fecha { color: rgba(255,248,230,.55); }
.carta-section .card.esp-mvp .c-esp-banda { background: var(--esp-acc); border-color: var(--esp-acc); }
.carta-section .card.esp-mvp .c-esp-tit   { color: #1a1202; }
.carta-section .card.esp-mvp .c-esp-fecha { color: rgba(26,18,2,.65); }

/* Dorso */
.carta-section .card.esp.esp .c-back-title { color: var(--esp-acc); letter-spacing: .14em; }
/* Barlow y no Bebas: Bebas dibuja el "+" casi como un "-" y "+3" se leía "-3" */
.carta-section .c-esp-dorso {
  display: block; margin-top: 2px;
  font-family: 'Barlow Condensed', sans-serif; font-weight: 600;
  color: rgba(255,248,230,.55); font-size: .78em; letter-spacing: .08em;
}
.carta-section .card.esp.esp .c-cname { color: rgba(233,196,106,.75); }
.carta-section .card.esp.esp .c-cval  { color: #f3dca0; }
.carta-section .card.esp.esp .c-clbl  { background: rgba(233,196,106,.12); color: var(--esp-acc); border: .5px solid rgba(233,196,106,.3); }
.carta-section .card.esp.esp .c-back-footer { border-top-color: rgba(233,196,106,.14); }
.carta-section .card.esp.esp .c-bf-val { color: #d9c28a; }
.carta-section .card.esp.esp .c-bf-key { color: #7d6a3c; }

/* Equipo de la Temporada (TOTS): azul, como en el FIFA. La Mención: azul
   grisáceo, un escalón abajo. */
.carta-section .card.esp-tots {
  --esp-acc:   #5ec8ff;
  --esp-acc2:  #1f7bd6;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #0e3561 0%, #07182e 55%, #020811 100%);
  --esp-glow:  rgba(70,170,255,.6);
}
.carta-section .card.esp-mencion {
  --esp-acc:   #a8c4dc;
  --esp-acc2:  #5f7f9c;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #22303f 0%, #111a24 55%, #05080c 100%);
  --esp-glow:  rgba(150,190,225,.4);
}
.carta-section .card.esp-tots.esp .card-front,
.carta-section .card.esp-tots.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(135deg, rgba(94,200,255,.05) 0 1px, transparent 1px 9px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #e6f7ff, #1f7bd6 30%, #7ee0ff 55%, #1f7bd6 78%, #e6f7ff) border-box;
}
.carta-section .card.esp-mencion.esp .card-front,
.carta-section .card.esp-mencion.esp .card-back {
  border: 1.5px solid transparent;
  background:
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #eef5fb, #5f7f9c 40%, #c8dcec 60%, #5f7f9c) border-box;
}
.carta-section .card.esp-tots.esp .card-front::after { border-color: rgba(94,200,255,.25); }
.carta-section .card.esp-mencion.esp .card-front::after { border-color: rgba(168,196,220,.22); }
.carta-section .card.esp-tots.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #bfeaff 50%, #3aa6f0 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-mencion.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #d9e6f2 50%, #8aa6c0 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-tots.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #0f3a66, #03101f); }
.carta-section .card.esp-mencion.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #2a3a4c, #080d13); }
.carta-section .card.esp-tots.esp .c-player-name { color: #f0faff; text-shadow: 0 0 8px rgba(94,200,255,.35); }
.carta-section .card.esp-mencion.esp .c-player-name { color: #f3f8fc; text-shadow: 0 0 8px rgba(168,196,220,.25); }
.carta-section .card.esp-tots.esp .c-bpill { background: rgba(94,200,255,.1); border-color: rgba(94,200,255,.35); }
.carta-section .card.esp-mencion.esp .c-bpill { background: rgba(168,196,220,.1); border-color: rgba(168,196,220,.3); }
.carta-section .card.esp-tots.esp .c-bottom-strip,
.carta-section .card.esp-tots.esp .c-back-footer { border-top-color: rgba(94,200,255,.16); }
.carta-section .card.esp-mencion.esp .c-bottom-strip,
.carta-section .card.esp-mencion.esp .c-back-footer { border-top-color: rgba(168,196,220,.14); }
.carta-section .card.esp-tots.esp .c-mini-val,
.carta-section .card.esp-tots.esp .c-bf-val { color: #bfeaff; }
.carta-section .card.esp-tots.esp .c-mini-key,
.carta-section .card.esp-tots.esp .c-bf-key { color: #4f7fa6; }
.carta-section .card.esp-mencion.esp .c-mini-val,
.carta-section .card.esp-mencion.esp .c-bf-val { color: #d0dde9; }
.carta-section .card.esp-mencion.esp .c-mini-key,
.carta-section .card.esp-mencion.esp .c-bf-key { color: #6b8196; }
.carta-section .card.esp-tots.esp .c-cname { color: rgba(94,200,255,.8); }
.carta-section .card.esp-tots.esp .c-cval  { color: #e0f5ff; }
.carta-section .card.esp-tots.esp .c-clbl  { background: rgba(94,200,255,.12); border-color: rgba(94,200,255,.3); }
.carta-section .card.esp-mencion.esp .c-cname { color: rgba(168,196,220,.8); }
.carta-section .card.esp-mencion.esp .c-cval  { color: #eef5fb; }
.carta-section .card.esp-mencion.esp .c-clbl  { background: rgba(168,196,220,.12); border-color: rgba(168,196,220,.3); }
.carta-section .card.esp-tots .c-esp-banda,
.carta-section .card.esp-mencion .c-esp-banda { background: var(--esp-acc); border-color: var(--esp-acc); }
.carta-section .card.esp-tots .c-esp-tit   { color: #04182c; }
.carta-section .card.esp-tots .c-esp-fecha { color: rgba(4,24,44,.65); }
.carta-section .card.esp-mencion .c-esp-tit   { color: #0c1620; }
.carta-section .card.esp-mencion .c-esp-fecha { color: rgba(12,22,32,.65); }

/* Dorso del POTM (antes lo pisaban las reglas doradas de arriba) */
.carta-section .card.esp-potm.esp .c-cname { color: rgba(201,164,255,.8); }
.carta-section .card.esp-potm.esp .c-cval  { color: #e6dbff; }
.carta-section .card.esp-potm.esp .c-clbl  { background: rgba(201,164,255,.12); color: #c9a4ff; border-color: rgba(201,164,255,.3); }
.carta-section .card.esp-potm.esp .c-back-footer { border-top-color: rgba(201,164,255,.16); }
.carta-section .card.esp-potm.esp .c-bf-val { color: #d9c4ff; }
.carta-section .card.esp-potm.esp .c-bf-key { color: #7a64a8; }

/* Promesa de la Temporada: verde esmeralda */
.carta-section .card.esp-promesa {
  --esp-acc:   #34d399;
  --esp-acc2:  #059669;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #065c45 0%, #03261c 55%, #010d09 100%);
  --esp-glow:  rgba(52,211,153,.5);
}
.carta-section .card.esp-promesa.esp .card-front,
.carta-section .card.esp-promesa.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(135deg, rgba(52,211,153,.05) 0 1px, transparent 1px 9px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #d1fae5, #059669 30%, #a7f3d0 55%, #059669 78%, #d1fae5) border-box;
}
.carta-section .card.esp-promesa.esp .card-front::after { border-color: rgba(52,211,153,.25); }
.carta-section .card.esp-promesa.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #bbf7d0 50%, #10b981 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-promesa.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #07513c, #01130d); }
.carta-section .card.esp-promesa.esp .c-player-name { color: #effff8; text-shadow: 0 0 8px rgba(52,211,153,.35); }
.carta-section .card.esp-promesa.esp .c-bpill { background: rgba(52,211,153,.1); border-color: rgba(52,211,153,.35); }
.carta-section .card.esp-promesa.esp .c-bottom-strip,
.carta-section .card.esp-promesa.esp .c-back-footer { border-top-color: rgba(52,211,153,.16); }
.carta-section .card.esp-promesa.esp .c-mini-val,
.carta-section .card.esp-promesa.esp .c-bf-val { color: #a7f3d0; }
.carta-section .card.esp-promesa.esp .c-mini-key,
.carta-section .card.esp-promesa.esp .c-bf-key { color: #3f8f72; }
.carta-section .card.esp-promesa.esp .c-cname { color: rgba(52,211,153,.8); }
.carta-section .card.esp-promesa.esp .c-cval  { color: #dcfce7; }
.carta-section .card.esp-promesa.esp .c-clbl  { background: rgba(52,211,153,.12); border-color: rgba(52,211,153,.3); }
.carta-section .card.esp-promesa .c-esp-banda { background: var(--esp-acc); border-color: var(--esp-acc); }
.carta-section .card.esp-promesa .c-esp-tit   { color: #022c1e; }
.carta-section .card.esp-promesa .c-esp-fecha { color: rgba(2,44,30,.65); }

/* Jugador a Seguir (OTW): fucsia */
.carta-section .card.esp-otw {
  --esp-acc:   #ff4fa3;
  --esp-acc2:  #c2185b;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #5c0f35 0%, #2a0619 55%, #0f0209 100%);
  --esp-glow:  rgba(255,79,163,.5);
}
.carta-section .card.esp-otw.esp .card-front,
.carta-section .card.esp-otw.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(45deg, rgba(255,79,163,.06) 0 1px, transparent 1px 9px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #ffe0ef, #c2185b 30%, #ffb3d6 55%, #c2185b 78%, #ffe0ef) border-box;
}
.carta-section .card.esp-otw.esp .card-front::after { border-color: rgba(255,79,163,.25); }
.carta-section .card.esp-otw.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #ffc4e1 50%, #ff4fa3 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-otw.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #6d1440, #14020b); }
.carta-section .card.esp-otw.esp .c-player-name { color: #fff2f8; text-shadow: 0 0 8px rgba(255,79,163,.4); }
.carta-section .card.esp-otw.esp .c-bpill { background: rgba(255,79,163,.1); border-color: rgba(255,79,163,.35); }
.carta-section .card.esp-otw.esp .c-bottom-strip,
.carta-section .card.esp-otw.esp .c-back-footer { border-top-color: rgba(255,79,163,.16); }
.carta-section .card.esp-otw.esp .c-mini-val,
.carta-section .card.esp-otw.esp .c-bf-val { color: #ffb3d6; }
.carta-section .card.esp-otw.esp .c-mini-key,
.carta-section .card.esp-otw.esp .c-bf-key { color: #a34e7a; }
.carta-section .card.esp-otw.esp .c-cname { color: rgba(255,79,163,.8); }
.carta-section .card.esp-otw.esp .c-cval  { color: #ffe0ef; }
.carta-section .card.esp-otw.esp .c-clbl  { background: rgba(255,79,163,.12); border-color: rgba(255,79,163,.3); }
.carta-section .card.esp-otw .c-esp-banda { background: var(--esp-acc); border-color: var(--esp-acc); }
.carta-section .card.esp-otw .c-esp-tit   { color: #3a0620; }
.carta-section .card.esp-otw .c-esp-fecha { color: rgba(58,6,32,.7); }

/* Flashback: turquesa con sepia, "de otra época" (líneas de película vieja) */
.carta-section .card.esp-flashback {
  --esp-acc:   #4fd1c5;
  --esp-acc2:  #b08a55;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #0f4a44 0%, #0a2622 55%, #050f0d 100%);
  --esp-glow:  rgba(79,209,197,.45);
}
.carta-section .card.esp-flashback.esp .card-front,
.carta-section .card.esp-flashback.esp .card-back {
  border: 2px solid transparent;
  background:
    repeating-linear-gradient(0deg, rgba(217,185,138,.05) 0 1px, transparent 1px 4px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #f3e3c3, #4fd1c5 28%, #b08a55 52%, #2c9d92 76%, #f3e3c3) border-box;
}
.carta-section .card.esp-flashback.esp .card-front::after { border-color: rgba(217,185,138,.28); }
.carta-section .card.esp-flashback.esp .ovr-num {
  background: linear-gradient(180deg, #fffaf0 0%, #e8d3ad 48%, #4fd1c5 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-flashback.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #3d5a4c, #0b1512); }
.carta-section .card.esp-flashback.esp .avatar-wrap img { filter: sepia(.55) saturate(.85) contrast(1.05); }
.carta-section .card.esp-flashback.esp .c-player-name { color: #fbf4e6; text-shadow: 0 0 8px rgba(79,209,197,.4); }
.carta-section .card.esp-flashback.esp .c-bpill { background: rgba(79,209,197,.1); border-color: rgba(79,209,197,.35); }
.carta-section .card.esp-flashback.esp .c-bottom-strip,
.carta-section .card.esp-flashback.esp .c-back-footer { border-top-color: rgba(217,185,138,.18); }
.carta-section .card.esp-flashback.esp .c-mini-val,
.carta-section .card.esp-flashback.esp .c-bf-val { color: #e8d3ad; }
.carta-section .card.esp-flashback.esp .c-mini-key,
.carta-section .card.esp-flashback.esp .c-bf-key { color: #7fa89f; }
.carta-section .card.esp-flashback.esp .c-cname { color: rgba(79,209,197,.85); }
.carta-section .card.esp-flashback.esp .c-cval  { color: #fbf4e6; }
.carta-section .card.esp-flashback.esp .c-clbl  { background: rgba(79,209,197,.12); border-color: rgba(79,209,197,.3); }
.carta-section .card.esp-flashback .c-esp-banda { background: linear-gradient(90deg, #4fd1c5, #d9b98a); border-color: #4fd1c5; }
.carta-section .card.esp-flashback .c-esp-tit   { color: #062420; }
.carta-section .card.esp-flashback .c-esp-fecha { color: rgba(6,36,32,.72); }

/* Icon: marfil. Base plateado, Mid con dorado, Prime blanco y oro brillante */
.carta-section .card.esp-icon {
  --esp-acc:   #e9dfc8;
  --esp-acc2:  #9d9480;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #3a372f 0%, #1c1a16 55%, #0b0a09 100%);
  --esp-glow:  rgba(233,223,200,.35);
  --ic-marco:  linear-gradient(135deg, #f7f3ea, #9d9480 30%, #e9e3d6 55%, #8a8373 78%, #f7f3ea);
  --ic-num:    linear-gradient(180deg, #ffffff 0%, #ece6d8 55%, #b9b09c 100%);
  --ic-banda:  linear-gradient(90deg, #efe9dc, #c9c0ac);
}
.carta-section .card.esp-icon.esp-icon-mid {
  --esp-acc:   #f0d99a;
  --esp-acc2:  #b98f3e;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #4a3c1e 0%, #221b0e 55%, #0d0a05 100%);
  --esp-glow:  rgba(240,217,154,.42);
  --ic-marco:  linear-gradient(135deg, #fff6df, #c9a55a 28%, #f5e7c3 52%, #a8822f 78%, #fff6df);
  --ic-num:    linear-gradient(180deg, #fffdf6 0%, #f3e2b4 50%, #d4ad5a 100%);
  --ic-banda:  linear-gradient(90deg, #fbf1d6, #e0bf6e);
}
.carta-section .card.esp-icon.esp-icon-prime {
  --esp-acc:   #ffd86b;
  --esp-acc2:  #fff4d0;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #5c4715 0%, #2a1f08 55%, #0f0b03 100%);
  --esp-glow:  rgba(255,216,107,.6);
  --ic-marco:  linear-gradient(135deg, #ffffff, #ffd86b 22%, #fff8e1 45%, #e8b534 68%, #ffffff 88%, #ffd86b);
  --ic-num:    linear-gradient(180deg, #ffffff 0%, #fff1c4 45%, #ffcb45 100%);
  --ic-banda:  linear-gradient(90deg, #fffaf0, #ffd86b 60%, #fff3cc);
}
.carta-section .card.esp-icon.esp .card-front,
.carta-section .card.esp-icon.esp .card-back {
  border: 2px solid transparent;
  background:
    radial-gradient(90% 50% at 50% 0%, rgba(255,255,255,.08), transparent 70%) padding-box,
    var(--esp-bg) padding-box,
    var(--ic-marco) border-box;
}
.carta-section .card.esp-icon.esp-icon-prime.esp .card-front { box-shadow: 0 0 34px rgba(255,216,107,.35); }
.carta-section .card.esp-icon.esp .card-front::after { border-color: rgba(255,248,225,.22); }
.carta-section .card.esp-icon.esp .ovr-num { background: var(--ic-num); -webkit-background-clip: text; background-clip: text; }
.carta-section .card.esp-icon.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #5a5241, #121009); }
.carta-section .card.esp-icon.esp .c-player-name { color: #fffaf0; text-shadow: 0 0 10px var(--esp-glow); }
.carta-section .card.esp-icon.esp .c-bpill { background: rgba(255,248,225,.07); border-color: rgba(255,248,225,.3); }
.carta-section .card.esp-icon.esp .c-bottom-strip,
.carta-section .card.esp-icon.esp .c-back-footer { border-top-color: rgba(255,248,225,.16); }
.carta-section .card.esp-icon.esp .c-mini-val,
.carta-section .card.esp-icon.esp .c-bf-val { color: var(--esp-acc); }
.carta-section .card.esp-icon.esp .c-mini-key,
.carta-section .card.esp-icon.esp .c-bf-key { color: #a39a86; }
.carta-section .card.esp-icon.esp .c-cname { color: var(--esp-acc); }
.carta-section .card.esp-icon.esp .c-cval  { color: #fffaf0; }
.carta-section .card.esp-icon.esp .c-clbl  { background: rgba(255,248,225,.08); border-color: rgba(255,248,225,.26); }
.carta-section .card.esp-icon .c-esp-banda { background: var(--ic-banda); border-color: var(--esp-acc); }
.carta-section .card.esp-icon .c-esp-tit   { color: #231a06; }
.carta-section .card.esp-icon .c-esp-fecha { color: rgba(35,26,6,.72); }

/* Equipo del Año (TOTY): azul marino profundo con oro */
.carta-section .card.esp-toty {
  --esp-acc:   #f5c542;
  --esp-acc2:  #1d4ed8;
  --esp-bg:    radial-gradient(120% 70% at 50% 16%, #17307a 0%, #0a1740 55%, #030818 100%);
  --esp-glow:  rgba(245,197,66,.5);
}
.carta-section .card.esp-toty.esp .card-front,
.carta-section .card.esp-toty.esp .card-back {
  border: 2px solid transparent;
  background:
    radial-gradient(60% 35% at 50% 0%, rgba(245,197,66,.16), transparent 70%) padding-box,
    repeating-linear-gradient(135deg, rgba(245,197,66,.05) 0 1px, transparent 1px 10px) padding-box,
    var(--esp-bg) padding-box,
    linear-gradient(135deg, #fff1c1, #f5c542 25%, #1d4ed8 50%, #f5c542 75%, #fff1c1) border-box;
}
.carta-section .card.esp-toty.esp .card-front { box-shadow: 0 0 30px rgba(245,197,66,.3), 0 0 60px rgba(29,78,216,.25); }
.carta-section .card.esp-toty.esp .card-front::after { border-color: rgba(245,197,66,.28); }
.carta-section .card.esp-toty.esp .ovr-num {
  background: linear-gradient(180deg, #ffffff 0%, #ffe8a3 50%, #f5c542 100%);
  -webkit-background-clip: text; background-clip: text;
}
.carta-section .card.esp-toty.esp .avatar-wrap { background: radial-gradient(circle at 35% 35%, #1e3a8a, #030818); }
.carta-section .card.esp-toty.esp .c-player-name { color: #fff8e1; text-shadow: 0 0 10px rgba(245,197,66,.45); }
.carta-section .card.esp-toty.esp .c-bpill { background: rgba(245,197,66,.1); border-color: rgba(245,197,66,.38); }
.carta-section .card.esp-toty.esp .c-bottom-strip,
.carta-section .card.esp-toty.esp .c-back-footer { border-top-color: rgba(245,197,66,.18); }
.carta-section .card.esp-toty.esp .c-mini-val,
.carta-section .card.esp-toty.esp .c-bf-val { color: #ffe08a; }
.carta-section .card.esp-toty.esp .c-mini-key,
.carta-section .card.esp-toty.esp .c-bf-key { color: #7d8fc4; }
.carta-section .card.esp-toty.esp .c-cname { color: rgba(245,197,66,.85); }
.carta-section .card.esp-toty.esp .c-cval  { color: #fff8e1; }
.carta-section .card.esp-toty.esp .c-clbl  { background: rgba(245,197,66,.1); border-color: rgba(245,197,66,.3); }
.carta-section .card.esp-toty .c-esp-banda { background: linear-gradient(90deg, #f5c542, #ffe8a3 50%, #f5c542); border-color: #f5c542; }
.carta-section .card.esp-toty .c-esp-tit   { color: #0a1740; }
.carta-section .card.esp-toty .c-esp-fecha { color: rgba(10,23,64,.72); }
