/* Perfiles y vitrinas (r17, Piero 05/11): carta del jugador, vitrina con piezas de oro y plata, insignias, línea de tiempo y vitrina del club.
   Estilo «Marcador»: noche + violeta + rojo, oro #f5c542, Big Shoulders para los números. Una columna a 390, dos a 1280. */
:root { --pv-oro: #f5c542; --pv-oro-claro: #ffe9a3; --pv-plata: #c9d1dc; --pv-plata-osc: #6f7b8c; }

/* ---------- Contenedor de arriba ---------- */
.mc-perfil-hero { display: grid; grid-template-columns: minmax(300px, 380px) 1fr; gap: 20px; align-items: start; margin: 0 0 20px; }
.mc-hero-lado { min-width: 0; display: grid; gap: 16px; }
.mc-hero-lado .mc-trofeos { margin: 0; }
.perfil-header-grid.mc-sin-ficha-vieja { grid-template-columns: 1fr !important; }
.perfil-header-grid.mc-sin-ficha-vieja > .dossier-player-card-wrap { display: none !important; }
@media (max-width: 860px) { .mc-perfil-hero { grid-template-columns: 1fr; } }

/* ---------- Carta ---------- */
.mc-carta-jugador { display: grid; gap: 12px; }
.mc-cj-carta { position: relative; overflow: hidden; isolation: isolate; border-radius: 20px; padding: 16px 16px 14px; color: var(--texto, #f4f3ff);
  background: linear-gradient(160deg, #2a1f6e 0%, #14123a 46%, #0b0a24 100%); border: 1px solid var(--linea-fuerte, #463f9a);
  box-shadow: 0 0 0 1px rgba(245,197,66,.25) inset, 0 18px 40px rgba(0,0,0,.45); display: grid; gap: 10px; }
.mc-cj-carta::before { content: ""; position: absolute; inset: -20% -40% auto auto; width: 70%; height: 140%; transform: rotate(18deg);
  background: linear-gradient(180deg, rgba(255,45,85,.28), rgba(139,92,246,.10)); z-index: -1; }
.mc-cj-carta::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--rojo, #ff2d55), var(--violeta, #8b5cf6), var(--pv-oro)); }
.mc-cj-brillo { position: absolute; inset: 0; z-index: -1; background: repeating-linear-gradient(115deg, rgba(255,255,255,.035) 0 2px, transparent 2px 14px); }
.mc-cj-cab { display: flex; justify-content: space-between; align-items: flex-start; }
.mc-cj-nota { display: grid; justify-items: center; min-width: 74px; padding: 6px 10px 4px; border-radius: 14px; background: rgba(11,10,36,.6); border: 2px solid var(--pv-oro); }
.mc-cj-nota b { font: 800 44px/0.95 var(--f-display); color: var(--pv-oro); letter-spacing: .01em; }
.mc-cj-nota span { font: 700 11px/1.4 var(--f-datos); letter-spacing: .14em; text-transform: uppercase; color: var(--pv-oro-claro); }
.mc-cj-marca { font: 800 13px/1 var(--f-display); letter-spacing: .3em; color: var(--violeta-texto, #b49dff); padding: 6px 10px; border: 1px solid var(--linea-fuerte, #463f9a); border-radius: 999px; background: rgba(11,10,36,.5); }
.mc-cj-media { display: grid; place-items: center; height: 150px; }
.mc-cj-foto { width: 140px; height: 140px; object-fit: cover; border-radius: 50%; border: 3px solid var(--pv-oro); box-shadow: 0 0 0 6px rgba(245,197,66,.12); }
.mc-cj-monograma { width: 132px; height: 132px; border-radius: 50%; display: grid; place-items: center; font: 800 58px/1 var(--f-display); color: var(--texto, #fff);
  background: radial-gradient(circle at 30% 25%, #8b5cf6, #3a1f9e 60%, #1d1a4f); border: 3px solid var(--pv-oro); box-shadow: 0 0 0 6px rgba(245,197,66,.12), 0 10px 30px rgba(139,92,246,.35); }
.mc-cj-nombre { text-align: center; display: grid; gap: 8px; justify-items: center; }
.mc-cj-nombre h2 { margin: 0; font: 800 32px/1 var(--f-display); letter-spacing: .02em; text-transform: uppercase; overflow-wrap: anywhere; color: #fff; }
.mc-cj-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.mc-cj-chip { display: inline-flex; align-items: center; gap: 5px; min-height: 26px; padding: 2px 10px; border-radius: 999px; font: 700 13px/1 var(--f-datos); letter-spacing: .04em;
  background: rgba(139,92,246,.18); border: 1px solid rgba(180,157,255,.45); color: #e9e3ff; }
.mc-cj-pos { background: var(--pv-oro); border-color: var(--pv-oro); color: #1a1300; }
.mc-cj-bandera { font-family: "Ticopa Flags", sans-serif; font-size: 15px; }
.mc-cj-club { text-align: center; display: grid; gap: 2px; }
.mc-cj-club span { font: 700 16px/1.2 var(--f-datos); color: var(--texto, #fff); text-transform: uppercase; letter-spacing: .04em; }
.mc-cj-club small { font: 500 13px/1.3 var(--f-texto); color: var(--suave, #b9b6dd); }
.mc-cj-nums { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; border-top: 1px solid rgba(245,197,66,.35); padding-top: 10px; }
.mc-cj-num { display: grid; justify-items: center; padding: 6px 2px; border-radius: 10px; background: rgba(11,10,36,.55); }
.mc-cj-num b { font: 800 30px/1 var(--f-display); color: #fff; }
.mc-cj-num span { font: 700 11px/1.5 var(--f-datos); letter-spacing: .14em; text-transform: uppercase; color: var(--suave, #b9b6dd); }
.mc-cj-num-mvp b { color: var(--rojo-texto, #ff5c7a); }
.mc-cj-cmp { border: 1px solid var(--linea, #2f2b70); border-radius: 14px; background: var(--sup-1, #14123a); padding: 12px; display: grid; gap: 10px; margin: 0; }
.mc-cj-cmp h3 { margin: 0; font: 700 13px/1.2 var(--f-datos); letter-spacing: .08em; text-transform: uppercase; color: var(--violeta-texto, #b49dff); }
.mc-cj-cmp-fila { display: grid; gap: 4px; }
.mc-cj-cmp-cab { display: flex; align-items: baseline; gap: 8px; }
.mc-cj-cmp-cab span { flex: 1; font: 600 14px/1.2 var(--f-texto); color: var(--texto, #fff); }
.mc-cj-cmp-cab b { font: 800 20px/1 var(--f-display); color: #fff; }
.mc-cj-cmp-cab small { font: 600 12px/1 var(--f-datos); color: var(--suave, #b9b6dd); }
.mc-cj-cmp-barra { position: relative; height: 8px; border-radius: 99px; background: var(--sup-3, #262263); }
.mc-cj-cmp-yo { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 99px; background: linear-gradient(90deg, var(--violeta, #8b5cf6), var(--pv-oro)); }
.mc-cj-abajo .mc-cj-cmp-yo { background: linear-gradient(90deg, #5b4bb0, #8f87c9); }
.mc-cj-cmp-liga { position: absolute; top: -4px; bottom: -4px; width: 3px; margin-left: -1px; border-radius: 2px; background: #fff; box-shadow: 0 0 0 2px rgba(11,10,36,.8); }
.mc-cj-cmp-pct { font: 600 12px/1.2 var(--f-texto); color: var(--ok, #20e89b); }
.mc-cj-abajo .mc-cj-cmp-pct { color: var(--suave, #b9b6dd); }
.mc-cj-carrera { margin: 0; text-align: center; font: 600 13px/1.3 var(--f-datos); color: var(--suave, #b9b6dd); letter-spacing: .03em; }
.mc-cj-fuente { border-radius: 10px; background: rgba(255,255,255,.03); padding: 0 12px; }
.mc-cj-fuente summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; font: 600 14px/1.2 var(--f-texto); color: var(--violeta-texto, #b49dff); }
.mc-cj-fuente summary:focus-visible { outline: 2px solid var(--pv-oro); outline-offset: 2px; border-radius: 6px; }
.mc-cj-fuente p { margin: 0 0 12px; font: 500 13px/1.45 var(--f-texto); color: var(--suave, #b9b6dd); }

/* ---------- Piezas SVG ---------- */
.mc-pz { width: 56px; height: 56px; display: block; filter: drop-shadow(0 4px 10px rgba(0,0,0,.45)); }

/* ---------- Vitrina del jugador (60) ---------- */
.mc-vitrina-pro { border: 1px solid var(--linea, #2f2b70); border-radius: 18px; padding: 14px; background:
  radial-gradient(120% 80% at 50% 0%, rgba(245,197,66,.10), transparent 60%), linear-gradient(180deg, var(--sup-1, #14123a), var(--noche, #0b0a24)); }
.mc-vitrina-pro .mc-t-sec { margin-top: 0; }
.mc-vt-cuentas { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.mc-vt-cuenta { display: grid; justify-items: center; padding: 8px 4px; border-radius: 12px; background: var(--sup-2, #1d1a4f); border: 1px solid var(--linea, #2f2b70); }
.mc-vt-cuenta b { font: 800 30px/1 var(--f-display); color: #fff; }
.mc-vt-cuenta span { font: 700 11px/1.5 var(--f-datos); letter-spacing: .14em; text-transform: uppercase; color: var(--suave, #b9b6dd); }
.mc-vt-c-oro b { color: var(--pv-oro); } .mc-vt-c-oro { border-color: rgba(245,197,66,.5); }
.mc-vt-c-plata b { color: var(--pv-plata); }
.mc-vt-c-totw b { color: var(--violeta-texto, #b49dff); }
.mc-vt-c-mvp b { color: var(--rojo-texto, #ff5c7a); }
.mc-vt-cuerpo { display: grid; gap: 14px; margin-top: 14px; }
.mc-vt-estante { list-style: none; margin: 0; padding: 0 0 14px; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; position: relative; }
.mc-vt-estante::after { content: ""; position: absolute; left: 0; right: 0; bottom: 4px; height: 6px; border-radius: 3px; background: linear-gradient(90deg, transparent, rgba(245,197,66,.45), transparent); }
.mc-vt-pieza { display: grid; justify-items: center; text-align: center; gap: 3px; padding: 12px 8px 10px; border-radius: 14px; min-width: 0;
  background: linear-gradient(180deg, rgba(245,197,66,.12), rgba(11,10,36,.4)); border: 1px solid rgba(245,197,66,.45); }
.mc-vt-plata { background: linear-gradient(180deg, rgba(201,209,220,.12), rgba(11,10,36,.4)); border-color: rgba(201,209,220,.45); }
.mc-vt-pedestal { width: 72px; height: 72px; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,.10), transparent 70%); }
.mc-vt-pedestal .mc-pz { width: 60px; height: 60px; }
.mc-vt-puesto { font: 700 11px/1.3 var(--f-datos); letter-spacing: .14em; text-transform: uppercase; color: var(--pv-oro); }
.mc-vt-plata .mc-vt-puesto { color: var(--pv-plata); }
.mc-vt-nombre { font: 700 15px/1.2 var(--f-texto); color: #fff; overflow-wrap: anywhere; }
.mc-vt-pieza small { font: 500 12px/1.3 var(--f-texto); color: var(--suave, #b9b6dd); overflow-wrap: anywhere; }
.mc-vt-pieza .mc-vt-club { color: var(--texto, #fff); font-weight: 600; }
.mc-vt-sub { margin: 0 0 8px; font: 700 13px/1.2 var(--f-datos); letter-spacing: .08em; text-transform: uppercase; color: var(--violeta-texto, #b49dff); }
.mc-vt-insignias { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px; }
.mc-vt-ins { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 12px; background: var(--sup-2, #1d1a4f); border: 1px solid var(--linea, #2f2b70); min-width: 0; }
.mc-vt-ins-ico { position: relative; flex: none; width: 46px; height: 46px; }
.mc-vt-ins-ico .mc-pz { width: 46px; height: 46px; }
.mc-vt-ins-n { position: absolute; right: -6px; bottom: -4px; min-width: 24px; padding: 1px 5px; border-radius: 99px; background: #fff; color: #14031a; font: 800 12px/1.3 var(--f-datos); text-align: center; }
.mc-vt-ins-txt { display: grid; gap: 2px; min-width: 0; }
.mc-vt-ins-txt b { font: 700 15px/1.2 var(--f-texto); color: #fff; overflow-wrap: anywhere; }
.mc-vt-ins-txt small { font: 500 12px/1.3 var(--f-texto); color: var(--suave, #b9b6dd); overflow-wrap: anywhere; }
.mc-vt-vacio { margin-top: 14px; display: grid; justify-items: center; text-align: center; gap: 6px; padding: 20px 12px; border-radius: 14px; border: 1px dashed var(--linea-fuerte, #463f9a); }
.mc-vt-vacio .mc-pz { width: 72px; height: 72px; opacity: .35; filter: grayscale(.6); }
.mc-vt-vacio b { font: 700 16px/1.3 var(--f-texto); color: #fff; }
.mc-vt-vacio p { margin: 0; max-width: 40ch; font: 500 14px/1.45 var(--f-texto); color: var(--suave, #b9b6dd); }
@media (max-width: 480px) { .mc-vt-estante { grid-template-columns: 1fr 1fr; } .mc-vt-insignias { grid-template-columns: 1fr; } .mc-vt-cuenta b { font-size: 26px; } }

/* ---------- Línea de tiempo ---------- */
.mc-linea-tiempo { margin: 0 0 20px; }
.mc-lt-lista { list-style: none; margin: 0; padding: 0 0 0 4px; display: grid; gap: 12px; position: relative; }
.mc-lt-lista::before { content: ""; position: absolute; left: 13px; top: 8px; bottom: 8px; width: 2px; background: linear-gradient(180deg, var(--violeta, #8b5cf6), var(--linea, #2f2b70)); }
.mc-lt-nodo { position: relative; display: grid; grid-template-columns: 22px 1fr; gap: 12px; }
.mc-lt-punto { width: 20px; height: 20px; margin-top: 12px; border-radius: 50%; background: var(--noche, #0b0a24); border: 3px solid var(--violeta, #8b5cf6); z-index: 1; }
.mc-lt-con-oro .mc-lt-punto { border-color: var(--pv-oro); background: var(--pv-oro); box-shadow: 0 0 0 4px rgba(245,197,66,.2); }
.mc-lt-con-plata .mc-lt-punto { border-color: var(--pv-plata); background: var(--pv-plata); }
.mc-lt-caja { min-width: 0; padding: 10px 12px; border-radius: 12px; background: var(--sup-1, #14123a); border: 1px solid var(--linea, #2f2b70); display: grid; gap: 4px; }
.mc-lt-con-oro .mc-lt-caja { border-color: rgba(245,197,66,.45); }
.mc-lt-cab { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.mc-lt-cab strong { font: 700 16px/1.2 var(--f-datos); color: #fff; overflow-wrap: anywhere; }
.mc-lt-temp { font: 800 13px/1 var(--f-datos); padding: 4px 8px; border-radius: 6px; background: var(--violeta-boton, #7344f0); color: #fff; letter-spacing: .04em; }
.mc-lt-nuevo { font: 700 11px/1 var(--f-datos); letter-spacing: .08em; text-transform: uppercase; padding: 4px 8px; border-radius: 99px; border: 1px solid var(--rojo-texto, #ff5c7a); color: var(--rojo-texto, #ff5c7a); }
.mc-lt-club { font: 600 14px/1.3 var(--f-texto); color: var(--texto, #fff); }
.mc-lt-nums { font: 600 13px/1.3 var(--f-datos); color: var(--suave, #b9b6dd); letter-spacing: .02em; }
.mc-lt-logros { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.mc-lt-logro { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px 3px 4px; border-radius: 99px; background: rgba(245,197,66,.12); color: var(--pv-oro-claro); font: 700 13px/1.2 var(--f-texto); }
.mc-lt-logro .mc-pz { width: 26px; height: 26px; filter: none; }
.mc-lt-logro-plata { background: rgba(201,209,220,.12); color: #e7ecf2; }
.mc-lt-logro-premio { background: rgba(139,92,246,.16); color: #e2d6ff; }

/* ---------- Vitrina del club (63) ---------- */
#club-vitrina-titulos:has(> .mc-vcl) { display: block !important; }
.mc-vcl { display: grid; gap: 16px; width: 100%; }
.mc-vcl-cuentas { display: flex; flex-wrap: wrap; gap: 10px; }
.mc-vcl-cuenta { display: flex; align-items: center; gap: 10px; padding: 8px 14px 8px 8px; border-radius: 14px; background: var(--sup-2, #1d1a4f); border: 1px solid rgba(245,197,66,.45); }
.mc-vcl-cuenta .mc-pz { width: 44px; height: 44px; }
.mc-vcl-cuenta b { font: 800 34px/1 var(--f-display); color: var(--pv-oro); }
.mc-vcl-cuenta span { font: 700 12px/1.2 var(--f-datos); letter-spacing: .12em; text-transform: uppercase; color: var(--suave, #b9b6dd); }
.mc-vcl-plata { border-color: rgba(201,209,220,.45); } .mc-vcl-plata b { color: var(--pv-plata); }
.mc-vcl-titulo { margin: 0 0 8px; font: 700 13px/1.2 var(--f-datos); letter-spacing: .1em; text-transform: uppercase; color: var(--pv-oro); }
.mc-vcl-estante-plata .mc-vcl-titulo { color: var(--pv-plata); }
.mc-vcl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; }
.mc-vcl .mc-vc-tarjeta { margin: 0; border-color: rgba(245,197,66,.4); background: linear-gradient(180deg, rgba(245,197,66,.08), rgba(11,10,36,.35)); min-height: 44px; }
.mc-vcl .mc-vc-plata { border-color: rgba(201,209,220,.4); background: linear-gradient(180deg, rgba(201,209,220,.08), rgba(11,10,36,.35)); box-shadow: none; }
.mc-vcl .mc-vc-tarjeta:focus-visible { outline: 2px solid var(--pv-oro); outline-offset: 2px; }
.mc-vcl .mc-vc-sinmini { background: radial-gradient(circle, rgba(255,255,255,.08), rgba(0,0,0,.25)); }
.mc-vcl .mc-vc-plata .mc-vc-sinmini { background: radial-gradient(circle, rgba(255,255,255,.08), rgba(0,0,0,.25)); }
.mc-vcl .mc-vc-sinmini .mc-pz { width: 52px; height: 52px; }
.mc-vcl .mc-vc-texto strong { font: 700 16px/1.2 var(--f-texto); color: #fff; }
@media (max-width: 480px) { .mc-vcl-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: no-preference) { .mc-vt-pieza, .mc-vc-tarjeta { transition: transform .15s ease; } .mc-vt-pieza:hover, .mc-vcl .mc-vc-tarjeta:hover { transform: translateY(-2px); } }
