/* ===========================================================
   TALENT RADAR SPAIN · base de datos de scouting
   Paleta de sus folletos: negro profundo y dorado.
   Cristal liquido: paneles translucidos que filtran el fondo ambiental.
   Movil primero, porque la carga de informes se hace en la grada.
   =========================================================== */

:root{
  --negro:#08080a;
  --carbon:#111114;
  --linea:rgba(201,165,92,.15);
  --linea-viva:rgba(201,165,92,.4);
  --oro:#c9a55c;
  --oro-claro:#e6cfa0;
  --hueso:#f4f2ed;
  --gris:#8f8d87;
  --gris-claro:#adaba4;
  --verde:#5fbf7d;
  --ambar:#e0965a;
  --rojo:#d9737d;
  --radio:16px;
  --radio-sm:11px;
  --sombra:0 18px 44px rgba(0,0,0,.55);

  /* Receta de cristal liquido, reutilizada en todos los paneles */
  --cristal:linear-gradient(158deg, rgba(255,255,255,.075), rgba(255,255,255,.022) 42%, rgba(255,255,255,.045));
  --cristal-borde:rgba(255,255,255,.1);
  --cristal-brillo:inset 0 1px 0 rgba(255,255,255,.13), inset 0 -1px 0 rgba(0,0,0,.28);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  margin:0;
  background:var(--negro);
  color:var(--hueso);
  font-family:"Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;
  line-height:1.55;
  min-height:100vh;
  overflow-x:hidden;
}
body.bloqueado{overflow:hidden}

.contenedor{width:100%;max-width:1120px;margin:0 auto;padding:0 18px}
.contenedor-estrecho{max-width:760px}

/* ═══ FONDO AMBIENTAL ═══ */
.ambiente{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.halo{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}
.halo-1{
  width:70vw;height:70vw;max-width:680px;max-height:680px;top:-22%;left:-14%;
  background:radial-gradient(circle, rgba(201,165,92,.5), transparent 68%);
  animation:derivaA 26s ease-in-out infinite alternate;
}
.halo-2{
  width:60vw;height:60vw;max-width:560px;max-height:560px;bottom:-16%;right:-12%;
  background:radial-gradient(circle, rgba(120,140,190,.34), transparent 68%);
  animation:derivaB 32s ease-in-out infinite alternate;
}
@keyframes derivaA{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(9%,7%,0) scale(1.16)}}
@keyframes derivaB{from{transform:translate3d(0,0,0) scale(1.1)}to{transform:translate3d(-8%,-6%,0) scale(1)}}

.rejilla{
  position:absolute;inset:0;opacity:.4;
  background-image:
    linear-gradient(rgba(201,165,92,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201,165,92,.055) 1px, transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse 90% 60% at 50% 0%, #000, transparent 78%);
  -webkit-mask-image:radial-gradient(ellipse 90% 60% at 50% 0%, #000, transparent 78%);
}

/* ═══ MARCA DE AGUA ═══ */
.marca-agua{
  position:fixed;inset:-30%;z-index:1;pointer-events:none;
  transform:rotate(-24deg);opacity:.026;
  background-image:repeating-linear-gradient(0deg, transparent 0 78px, rgba(201,165,92,.9) 78px 79px);
}
.marca-agua::after{
  content:"TALENT RADAR · J. VIDAL · NO DISTRIBUIR · TALENT RADAR · J. VIDAL · NO DISTRIBUIR · TALENT RADAR · J. VIDAL · NO DISTRIBUIR";
  position:absolute;inset:0;
  font-size:1.35rem;font-weight:800;letter-spacing:.3em;color:var(--oro);
  line-height:4.9;word-spacing:.6em;overflow:hidden;
}

/* ═══ PANTALLA DE ACCESO ═══ */
.acceso{
  position:fixed;inset:0;z-index:200;
  display:grid;place-items:center;padding:20px;
  background:rgba(6,6,8,.9);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  animation:aparece .4s ease;
}
.acceso[hidden]{display:none}
@keyframes aparece{from{opacity:0}to{opacity:1}}

.acceso-caja{
  width:100%;max-width:370px;text-align:center;
  background:var(--cristal);border:1px solid var(--cristal-borde);
  border-radius:20px;padding:30px 24px 24px;
  backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);
  box-shadow:var(--sombra), var(--cristal-brillo);
}
.marca-sello.grande{width:58px;height:58px;margin:0 auto 16px;border-radius:15px}
.marca-sello.grande svg{width:34px;height:34px}

.acceso-titulo{
  margin:0 0 6px;font-size:1.15rem;font-weight:800;letter-spacing:.2em;line-height:1.2;
}
.acceso-titulo small{display:block;font-size:.62rem;letter-spacing:.5em;color:var(--oro);font-weight:700;margin-top:3px}
.acceso-sub{margin:0 0 22px;font-size:.83rem;color:var(--gris)}
.acceso .campo{text-align:left;margin-bottom:13px}
.acceso-nota{
  margin:16px 0 0;font-size:.71rem;color:var(--gris);line-height:1.45;
  padding-top:14px;border-top:1px solid rgba(255,255,255,.07);
}

/* ═══ CABECERA ═══ */
.cabecera{
  position:sticky;top:0;z-index:30;
  background:rgba(8,8,10,.74);
  backdrop-filter:blur(20px) saturate(150%);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
  border-bottom:1px solid var(--linea);
}
.cabecera-fila{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px}

.marca{display:flex;align-items:center;gap:11px;min-width:0}
.marca-sello{
  flex:none;width:38px;height:38px;display:grid;place-items:center;
  border:1px solid var(--linea-viva);border-radius:10px;color:var(--oro);
  background:linear-gradient(155deg, rgba(201,165,92,.2), rgba(201,165,92,.03));
  box-shadow:var(--cristal-brillo), 0 0 18px rgba(201,165,92,.14);
}
.marca-sello svg{width:22px;height:22px}
.marca-txt{display:flex;flex-direction:column;line-height:1.08;min-width:0}
.marca-txt b{font-size:.88rem;letter-spacing:.16em;font-weight:700}
.marca-txt small{font-size:.6rem;letter-spacing:.44em;color:var(--oro)}

.sesion{
  display:flex;align-items:center;gap:8px;flex:none;
  background:var(--cristal);border:1px solid var(--cristal-borde);
  border-radius:999px;padding:6px 13px 6px 11px;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.sesion-punto{
  width:7px;height:7px;border-radius:50%;background:var(--verde);flex:none;
  box-shadow:0 0 0 3px rgba(95,191,125,.16);
  animation:latido 2.6s ease-in-out infinite;
}
@keyframes latido{0%,100%{box-shadow:0 0 0 3px rgba(95,191,125,.16)}50%{box-shadow:0 0 0 6px rgba(95,191,125,.03)}}
.sesion-txt{display:flex;flex-direction:column;line-height:1.12;font-size:.74rem;color:var(--hueso);font-weight:600}
.sesion-txt b{font-size:.57rem;color:var(--gris);letter-spacing:.07em;font-weight:600}

/* ═══ NAVEGACION ═══ */
.navegacion{border-top:1px solid rgba(255,255,255,.05)}
.nav-fila{display:flex;gap:4px}
.nav-btn{
  flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;
  background:transparent;border:0;border-bottom:2px solid transparent;
  color:var(--gris);font-family:inherit;font-size:.82rem;font-weight:700;
  padding:13px 8px;min-height:48px;cursor:pointer;
  transition:color .2s ease, border-color .2s ease, background-color .2s ease;
}
.nav-btn svg{width:16px;height:16px}
.nav-btn:hover{color:var(--oro-claro);background:rgba(201,165,92,.05)}
.nav-btn.activo{color:var(--oro);border-bottom-color:var(--oro)}
.nav-btn:focus-visible{outline:2px solid var(--oro);outline-offset:-3px}

/* ═══ AVISO PROTOTIPO ═══ */
.aviso-demo{
  position:relative;z-index:20;
  background:rgba(201,165,92,.075);border-bottom:1px solid var(--linea);
  font-size:.71rem;color:var(--oro-claro);padding:7px 0;text-align:center;
}
.aviso-demo strong{color:var(--oro);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem}

/* ═══ INTRO ═══ */
main{position:relative;z-index:5;padding-bottom:70px}

.intro{padding:38px 0 24px;max-width:660px}
.intro-eyebrow{
  margin:0 0 12px;font-size:.63rem;text-transform:uppercase;letter-spacing:.26em;
  color:var(--oro);font-weight:700;
}
.intro h1{
  margin:0 0 13px;font-size:clamp(1.75rem,6.2vw,2.85rem);line-height:1.12;
  font-weight:800;letter-spacing:-.02em;
}
.intro h1 em{
  font-style:normal;
  background:linear-gradient(100deg, var(--oro) 10%, var(--oro-claro) 55%, var(--oro));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.intro-sub{margin:0;color:var(--gris-claro);font-size:.96rem;max-width:520px}

/* ═══ PANEL ═══ */
.panel{
  position:relative;
  background:var(--cristal);border:1px solid var(--cristal-borde);
  border-radius:var(--radio);padding:16px;
  backdrop-filter:blur(22px) saturate(150%);
  -webkit-backdrop-filter:blur(22px) saturate(150%);
  box-shadow:var(--sombra), var(--cristal-brillo);
}
.panel::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(160deg, rgba(255,255,255,.11), transparent 34%);
}
.panel > *{position:relative}

.buscador{position:relative;margin-bottom:14px}
.buscador-icono{
  position:absolute;left:13px;top:50%;transform:translateY(-50%);
  width:17px;height:17px;color:var(--oro);pointer-events:none;
}
.buscador input{
  width:100%;background:rgba(0,0,0,.36);
  border:1px solid rgba(255,255,255,.09);border-radius:11px;
  color:var(--hueso);font-family:inherit;font-size:.9rem;
  padding:12px 14px 12px 39px;min-height:46px;
  transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.buscador input::placeholder{color:var(--gris)}
.buscador input:focus{
  outline:none;border-color:var(--linea-viva);background:rgba(0,0,0,.5);
  box-shadow:0 0 0 3px rgba(201,165,92,.1);
}
.buscador input::-webkit-search-cancel-button{filter:invert(.6)}

.filtros{display:grid;grid-template-columns:1fr 1fr;gap:11px}

/* ═══ CAMPOS ═══ */
.campo{display:flex;flex-direction:column;gap:6px;min-width:0}
.campo>span{
  font-size:.63rem;text-transform:uppercase;letter-spacing:.14em;
  color:var(--oro);font-weight:700;
}
.campo select,
.campo input[type="text"],
.campo input[type="password"],
.campo input[type="number"],
.campo input[type="date"],
.campo textarea{
  width:100%;background-color:rgba(0,0,0,.36);
  border:1px solid rgba(255,255,255,.09);border-radius:10px;
  color:var(--hueso);font-family:inherit;font-size:.85rem;font-weight:600;
  padding:11px 12px;min-height:45px;
  transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.campo textarea{min-height:auto;resize:vertical;line-height:1.5;font-weight:400}
.campo select{
  appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:32px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c9a55c' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;background-size:15px;
}
.campo input::placeholder,.campo textarea::placeholder{color:var(--gris);font-weight:400}
.campo select:hover{border-color:var(--linea-viva);background-color:rgba(0,0,0,.5)}
.campo select:focus-visible,
.campo input:focus,
.campo textarea:focus{
  outline:none;border-color:var(--linea-viva);background-color:rgba(0,0,0,.5);
  box-shadow:0 0 0 3px rgba(201,165,92,.1);
}
.campo input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(.7) sepia(1) saturate(3) hue-rotate(5deg);cursor:pointer}

.panel-pie{
  display:flex;align-items:flex-end;justify-content:space-between;gap:12px;
  margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07);
}
.orden{flex:1;min-width:0;max-width:260px}

/* ═══ BOTONES ═══ */
.btn-primario{
  width:100%;display:inline-flex;align-items:center;justify-content:center;gap:9px;
  background:linear-gradient(160deg, var(--oro-claro), var(--oro));
  border:0;border-radius:12px;color:#1a1408;
  font-family:inherit;font-size:.92rem;font-weight:800;letter-spacing:.02em;
  padding:0 20px;min-height:50px;cursor:pointer;
  box-shadow:0 8px 22px rgba(201,165,92,.24);
  transition:transform .18s ease, box-shadow .2s ease, filter .2s ease;
}
.btn-primario svg{width:17px;height:17px}
.btn-primario:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(201,165,92,.34);filter:brightness(1.06)}
.btn-primario:active{transform:translateY(0)}
.btn-primario:focus-visible{outline:2px solid var(--hueso);outline-offset:3px}

.btn-limpiar{
  display:inline-flex;align-items:center;gap:7px;flex:none;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:999px;color:var(--oro-claro);
  font-family:inherit;font-size:.76rem;font-weight:700;
  padding:0 15px;height:45px;cursor:pointer;
  transition:background-color .2s ease, border-color .2s ease, transform .18s ease;
}
.btn-limpiar svg{width:13px;height:13px}
.btn-limpiar:hover{background:rgba(201,165,92,.14);border-color:var(--linea-viva);transform:translateY(-1px)}
.btn-limpiar:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

/* ═══ CHIPS ═══ */
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.chips:empty{display:none}
.chip{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(201,165,92,.13);border:1px solid var(--linea-viva);
  border-radius:999px;color:var(--oro-claro);
  font-family:inherit;font-size:.73rem;font-weight:700;
  padding:6px 9px 6px 12px;cursor:pointer;
  animation:entraChip .26s ease backwards;transition:background-color .18s ease;
}
.chip:hover{background:rgba(201,165,92,.22)}
.chip:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.chip svg{width:12px;height:12px;opacity:.8}
@keyframes entraChip{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}

.recuento{margin:18px 0 12px;font-size:.84rem;color:var(--gris)}
.recuento b{color:var(--oro-claro);font-size:1.02rem;font-weight:800}

/* ═══ TARJETA DE JUGADOR ═══ */
.listado{display:flex;flex-direction:column;gap:11px}

.jugador{
  position:relative;
  background:var(--cristal);border:1px solid var(--cristal-borde);
  border-radius:var(--radio);overflow:hidden;
  backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);
  box-shadow:0 8px 26px rgba(0,0,0,.34), var(--cristal-brillo);
  transition:border-color .25s ease, transform .25s ease, box-shadow .25s ease;
  animation:entraCarta .42s cubic-bezier(.22,.9,.3,1) backwards;
}
@keyframes entraCarta{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.jugador:hover{
  border-color:var(--linea-viva);transform:translateY(-2px);
  box-shadow:0 16px 38px rgba(0,0,0,.44), 0 0 0 1px rgba(201,165,92,.12), var(--cristal-brillo);
}
.jugador.abierto{border-color:var(--linea-viva)}

/* Jugador recien cargado: destello dorado para localizarlo de un vistazo */
.jugador.nuevo{animation:destello 2.4s ease}
@keyframes destello{
  0%{box-shadow:0 0 0 2px var(--oro), 0 0 34px rgba(201,165,92,.5)}
  100%{box-shadow:0 8px 26px rgba(0,0,0,.34), var(--cristal-brillo)}
}

.jug-cabeza{
  width:100%;display:flex;align-items:center;gap:12px;
  background:transparent;border:0;padding:13px;
  color:inherit;font-family:inherit;text-align:left;cursor:pointer;
}
.jug-cabeza:focus-visible{outline:2px solid var(--oro);outline-offset:-3px}

.jug-foto{
  flex:none;position:relative;width:58px;height:58px;border-radius:13px;overflow:hidden;
  border:1px solid rgba(255,255,255,.13);background:#000;
}
.jug-foto img{width:100%;height:100%;object-fit:cover;display:block}
.jug-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, transparent 55%, rgba(0,0,0,.45))}
/* Inicial cuando el jugador se acaba de crear y no tiene foto */
.jug-foto.sin-foto{
  display:grid;place-items:center;
  background:linear-gradient(155deg, rgba(201,165,92,.28), rgba(201,165,92,.06));
  color:var(--oro-claro);font-size:1.3rem;font-weight:800;
}
.jug-foto.sin-foto::after{display:none}

.jug-datos{flex:1;min-width:0}
.jug-nombre{display:block;font-size:1rem;font-weight:700;letter-spacing:-.01em;margin-bottom:3px}
.jug-linea{display:flex;flex-wrap:wrap;gap:4px 7px;font-size:.75rem;color:var(--gris)}
.jug-linea .pos{color:var(--oro-claro);font-weight:700}
.jug-linea .sep{opacity:.32}

.jug-etiquetas{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.tag{
  font-size:.62rem;font-weight:700;letter-spacing:.04em;
  border-radius:999px;padding:3px 9px;
  background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);color:var(--gris-claro);
}
.tag.ue{background:rgba(95,191,125,.13);border-color:rgba(95,191,125,.32);color:var(--verde)}
.tag.extra{background:rgba(224,150,90,.13);border-color:rgba(224,150,90,.32);color:var(--ambar)}
.tag.vistas{background:rgba(201,165,92,.11);border-color:var(--linea);color:var(--oro-claro)}
.tag.est-recomendado{background:rgba(95,191,125,.16);border-color:rgba(95,191,125,.4);color:var(--verde)}
.tag.est-seguimiento{background:rgba(201,165,92,.14);border-color:var(--linea-viva);color:var(--oro-claro)}
.tag.est-descartado{background:rgba(217,115,125,.13);border-color:rgba(217,115,125,.32);color:var(--rojo)}

/* Anillo de nota + techo */
.jug-marcador{flex:none;display:flex;flex-direction:column;align-items:center;gap:5px}
.jug-anillo{position:relative;width:52px;height:52px}
.jug-anillo svg{width:100%;height:100%;transform:rotate(-90deg)}
.jug-anillo .pista{fill:none;stroke:rgba(255,255,255,.09);stroke-width:3.5}
.jug-anillo .valor{
  fill:none;stroke:var(--oro);stroke-width:3.5;stroke-linecap:round;
  transition:stroke-dashoffset .85s cubic-bezier(.22,.9,.3,1);
}
.jug-anillo b{
  position:absolute;inset:0;display:grid;place-items:center;
  font-size:.92rem;font-weight:800;letter-spacing:-.03em;color:var(--hueso);
}
.jug-anillo.alta b{color:var(--oro-claro)}
.jug-techo{
  font-size:.58rem;font-weight:700;letter-spacing:.06em;color:var(--gris);
  white-space:nowrap;
}
.jug-techo b{color:var(--oro-claro)}

.jug-flecha{flex:none;width:22px;height:22px;color:var(--oro);transition:transform .3s ease;opacity:.7}
.jugador.abierto .jug-flecha{transform:rotate(180deg);opacity:1}

/* ═══ CUERPO DESPLEGADO ═══ */
.jug-cuerpo{
  border-top:1px solid rgba(255,255,255,.07);
  padding:15px 13px;background:rgba(0,0,0,.28);
  animation:abre .34s ease;
}
@keyframes abre{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.jug-cuerpo[hidden]{display:none}

.bloque-titulo{
  margin:0 0 12px;font-size:.63rem;text-transform:uppercase;letter-spacing:.15em;
  color:var(--oro);font-weight:700;display:flex;align-items:center;gap:8px;
}
.bloque-titulo::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--linea),transparent)}

/* Evolucion: la diferencia entre el primer visionado y el ultimo */
.evolucion{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin-bottom:16px;padding:11px 13px;border-radius:var(--radio-sm);
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);
}
.evo-flecha{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.8rem;font-weight:800;padding:3px 10px;border-radius:999px;
}
.evo-flecha svg{width:13px;height:13px}
.evo-sube{background:rgba(95,191,125,.15);color:var(--verde)}
.evo-baja{background:rgba(217,115,125,.15);color:var(--rojo)}
.evo-igual{background:rgba(255,255,255,.06);color:var(--gris-claro)}
.evo-txt{font-size:.78rem;color:var(--gris);flex:1;min-width:140px}

.atributos{display:grid;grid-template-columns:1fr 1fr;gap:11px 16px;margin-bottom:18px}
.atr{min-width:0}
.atr-alto{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}
.atr-nom{font-size:.72rem;color:var(--gris-claro);font-weight:600}
.atr-val{font-size:.72rem;color:var(--oro-claro);font-weight:800}
.atr-pista{height:5px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}
.atr-barra{
  height:100%;border-radius:99px;
  background:linear-gradient(90deg, rgba(201,165,92,.55), var(--oro));
  width:0;transition:width .85s cubic-bezier(.22,.9,.3,1);
}

.ficha{
  display:grid;grid-template-columns:1fr 1fr;gap:9px;
  margin-bottom:18px;padding:12px;border-radius:var(--radio-sm);
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);
}
.ficha div{min-width:0}
.ficha dt{font-size:.6rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gris);font-weight:700}
.ficha dd{margin:2px 0 0;font-size:.83rem;font-weight:600;color:var(--hueso)}

/* Historial de observaciones: el corazon del producto */
.obs{list-style:none;margin:0;padding:0;position:relative}
.obs::before{
  content:"";position:absolute;left:5px;top:7px;bottom:7px;width:1px;
  background:linear-gradient(180deg,var(--oro),transparent);opacity:.4;
}
.obs li{position:relative;padding:0 0 15px 23px}
.obs li:last-child{padding-bottom:0}
.obs li::before{
  content:"";position:absolute;left:0;top:6px;width:11px;height:11px;border-radius:50%;
  background:var(--negro);border:2px solid var(--oro);
}
.obs li:first-child::before{box-shadow:0 0 0 4px rgba(201,165,92,.14)}
.obs-alto{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 9px;margin-bottom:3px}
.obs-fecha{font-size:.71rem;color:var(--oro-claro);font-weight:700;letter-spacing:.02em}
.obs-partido{font-size:.79rem;font-weight:600}
.obs-nota{
  margin-left:auto;font-size:.71rem;font-weight:800;color:var(--oro);
  background:rgba(201,165,92,.13);border:1px solid var(--linea);
  border-radius:6px;padding:1px 7px;
}
.obs-txt{margin:0;font-size:.82rem;color:var(--gris-claro);line-height:1.5}

/* Acciones de la ficha */
.acciones{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.07)}
.btn-acc{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:999px;color:var(--oro-claro);
  font-family:inherit;font-size:.75rem;font-weight:700;
  padding:0 14px;height:42px;cursor:pointer;
  transition:background-color .2s ease, border-color .2s ease;
}
.btn-acc svg{width:14px;height:14px}
.btn-acc:hover{background:rgba(201,165,92,.14);border-color:var(--linea-viva)}
.btn-acc:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

/* ═══ FORMULARIO DE CARGA ═══ */
.formulario{padding:0;overflow:hidden}
.paso{padding:18px 16px;border-bottom:1px solid rgba(255,255,255,.07)}
.paso:last-of-type{border-bottom:0}
.paso-titulo{
  display:flex;align-items:center;gap:10px;margin:0 0 15px;
  font-size:.95rem;font-weight:800;letter-spacing:-.01em;
}
.paso-num{
  flex:none;width:25px;height:25px;display:grid;place-items:center;border-radius:8px;
  background:linear-gradient(155deg, rgba(201,165,92,.3), rgba(201,165,92,.08));
  border:1px solid var(--linea-viva);color:var(--oro-claro);
  font-size:.78rem;font-weight:800;
}

.rejilla-campos{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.campo-ancho{grid-column:1 / -1}

.alta-nueva{
  margin-top:13px;padding-top:14px;border-top:1px dashed var(--linea);
  animation:abre .3s ease;
}
.alta-nueva[hidden]{display:none}

/* Notas: hoy y techo, lado a lado */
.notas-par{display:grid;grid-template-columns:1fr;gap:16px}
.nota-bloque{
  padding:13px;border-radius:var(--radio-sm);
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);
}
.nota-alto{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:9px}
.nota-nom{font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;color:var(--oro);font-weight:700}
.nota-val{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;color:var(--oro-claro);line-height:1}
.nota-ayuda{margin:9px 0 0;font-size:.71rem;color:var(--gris);line-height:1.4}
.nota-ayuda b{color:var(--gris-claro)}

.rangos{display:flex;flex-direction:column;gap:14px}
.rango-fila .nota-alto{margin-bottom:6px}

/* Deslizador: grande y comodo, se usa con el pulgar en la grada */
.rango{
  -webkit-appearance:none;appearance:none;width:100%;height:44px;
  background:transparent;cursor:pointer;display:block;
  /* 44px de alto aunque la barra se vea fina: la zona que se puede tocar es
     toda esa altura, que es lo que hace falta para moverlo con el pulgar. */
}
.rango::-webkit-slider-runnable-track{
  height:6px;border-radius:99px;
  background:linear-gradient(90deg, rgba(201,165,92,.75), rgba(201,165,92,.15));
  border:1px solid rgba(255,255,255,.07);
}
.rango::-moz-range-track{
  height:6px;border-radius:99px;
  background:linear-gradient(90deg, rgba(201,165,92,.75), rgba(201,165,92,.15));
  border:1px solid rgba(255,255,255,.07);
}
.rango::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:24px;height:24px;margin-top:-9px;border-radius:50%;
  background:linear-gradient(160deg, #fff, var(--oro-claro));
  border:2px solid var(--oro);
  box-shadow:0 3px 12px rgba(0,0,0,.5), 0 0 0 0 rgba(201,165,92,.3);
  transition:box-shadow .2s ease, transform .15s ease;
}
.rango::-moz-range-thumb{
  width:22px;height:22px;border-radius:50%;
  background:linear-gradient(160deg, #fff, var(--oro-claro));
  border:2px solid var(--oro);box-shadow:0 3px 12px rgba(0,0,0,.5);
}
.rango:active::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 3px 12px rgba(0,0,0,.5), 0 0 0 9px rgba(201,165,92,.16)}
.rango:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(201,165,92,.4)}
.rango-techo::-webkit-slider-runnable-track{background:linear-gradient(90deg, rgba(120,140,190,.6), rgba(120,140,190,.12))}
.rango-techo::-moz-range-track{background:linear-gradient(90deg, rgba(120,140,190,.6), rgba(120,140,190,.12))}

.form-pie{padding:18px 16px;background:rgba(0,0,0,.24)}
.form-nota{margin:11px 0 0;font-size:.72rem;color:var(--gris);text-align:center}

/* ═══ AVISO FLOTANTE ═══ */
.aviso{
  position:fixed;left:50%;bottom:22px;transform:translateX(-50%) translateY(0);
  z-index:150;max-width:calc(100% - 32px);
  display:flex;align-items:center;gap:10px;
  background:linear-gradient(160deg, rgba(30,30,26,.97), rgba(18,18,16,.97));
  border:1px solid var(--linea-viva);border-radius:13px;
  padding:13px 18px;color:var(--hueso);font-size:.85rem;font-weight:600;
  box-shadow:0 16px 40px rgba(0,0,0,.6);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  animation:entraAviso .35s cubic-bezier(.22,.9,.3,1);
}
.aviso[hidden]{display:none}
.aviso svg{width:18px;height:18px;color:var(--verde);flex:none}
@keyframes entraAviso{from{opacity:0;transform:translateX(-50%) translateY(18px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}

/* ═══ VACIO ═══ */
.vacio{
  display:flex;flex-direction:column;gap:5px;text-align:center;
  color:var(--gris);font-size:.88rem;padding:44px 20px;
  border:1px dashed var(--linea);border-radius:var(--radio);
  background:rgba(255,255,255,.02);
}
.vacio b{color:var(--oro-claro);font-size:1rem;letter-spacing:.02em}

/* ═══ PIE ═══ */
.pie{
  position:relative;z-index:5;
  border-top:1px solid var(--linea);padding:26px 0 36px;text-align:center;
  background:rgba(8,8,10,.5);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.pie p{margin:0}
.pie-marca b{color:var(--oro);letter-spacing:.24em;font-size:.72rem;font-weight:700}
.pie-nota{margin-top:7px!important;font-size:.71rem;color:var(--gris);opacity:.8}

/* ═══════════ ESCRITORIO ═══════════ */
@media(min-width:720px){
  .cabecera-fila{padding:14px 18px}
  .marca-sello{width:42px;height:42px}
  .marca-sello svg{width:25px;height:25px}
  .marca-txt b{font-size:.95rem}
  .nav-fila{gap:6px}
  .nav-btn{flex:none;padding:13px 22px;font-size:.85rem}

  .intro{padding:52px 0 28px}
  .panel{padding:20px}
  .filtros{grid-template-columns:repeat(4,1fr);gap:13px}
  .buscador input{font-size:.94rem;min-height:48px}

  .jug-cabeza{padding:15px 17px;gap:15px}
  .jug-foto{width:70px;height:70px;border-radius:14px}
  .jug-foto.sin-foto{font-size:1.6rem}
  .jug-nombre{font-size:1.1rem}
  .jug-linea{font-size:.79rem}
  .jug-anillo{width:58px;height:58px}
  .jug-anillo b{font-size:1rem}

  .jug-cuerpo{padding:19px 20px}
  .atributos{grid-template-columns:repeat(4,1fr);gap:14px}
  .ficha{grid-template-columns:repeat(4,1fr);padding:14px 16px}

  .paso{padding:22px 20px}
  .notas-par{grid-template-columns:1fr 1fr;gap:14px}
  .form-pie{padding:20px}
  .btn-primario{width:auto;min-width:230px;margin:0 auto;display:flex}
}

@media(min-width:1000px){
  .jug-cuerpo{display:grid;grid-template-columns:1fr 1.15fr;gap:26px;align-items:start}
  .jug-cuerpo .col-izq,.jug-cuerpo .col-der{min-width:0}
  .atributos{grid-template-columns:1fr 1fr;margin-bottom:16px}
  .ficha{grid-template-columns:1fr 1fr;margin-bottom:0}
  .acciones{grid-column:1 / -1}
}

/* ═══════════ IMPRESION / PDF ═══════════
   El club se lleva la ficha en papel o PDF. Fondo blanco, tinta negra,
   y solo el jugador elegido. */
@media print{
  .ambiente,.marca-agua,.cabecera,.aviso-demo,.pie,.panel,.chips,
  .recuento,.intro,.aviso,.acceso,.jug-flecha,.acciones,#vistaCarga{display:none!important}
  body{background:#fff;color:#000}
  .jugador{display:none!important}
  .jugador.imprimir{
    display:block!important;border:1px solid #999;box-shadow:none;background:#fff;
    break-inside:avoid;animation:none;
  }
  .jugador.imprimir .jug-cuerpo{display:block!important;background:#fff;border-color:#ccc}
  .jugador.imprimir .jug-nombre,.jugador.imprimir .obs-partido,
  .jugador.imprimir .ficha dd{color:#000}
  .jugador.imprimir .obs-txt,.jugador.imprimir .jug-linea,
  .jugador.imprimir .atr-nom{color:#333}
  .jugador.imprimir .bloque-titulo,.jugador.imprimir .obs-fecha,
  .jugador.imprimir .atr-val,.jugador.imprimir .obs-nota,
  .jugador.imprimir .jug-anillo b{color:#8a6d2f}
  .jugador.imprimir .tag{border-color:#bbb;color:#444;background:#f5f5f5}
  .jugador.imprimir .atr-barra{background:#8a6d2f}
  .jugador.imprimir .atr-pista,.jugador.imprimir .ficha,
  .jugador.imprimir .evolucion{background:#f7f7f7;border-color:#ddd}
  @page{margin:14mm}
}

/* ═══════════════════════════════════════════════════════════
   BLOQUE 2 · edicion, carpetas, comparador y seguimiento
   ═══════════════════════════════════════════════════════════ */

/* Pastilla del contador en la navegacion */
.nav-pastilla{
  display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 5px;
  border-radius:999px;background:var(--ambar);color:#241503;
  font-size:.63rem;font-weight:800;line-height:1;
}
.nav-pastilla[hidden]{display:none}

/* Barra de resultados */
.barra-res{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;margin:18px 0 12px;
}
.barra-res .recuento{margin:0}
.barra-acciones{display:flex;gap:8px;flex-wrap:wrap}

/* Barra flotante de seleccion */
.seleccion{
  position:sticky;bottom:14px;z-index:40;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  margin:0 0 14px;padding:11px 13px;border-radius:14px;
  background:linear-gradient(160deg, rgba(32,32,28,.97), rgba(18,18,16,.97));
  border:1px solid var(--linea-viva);
  box-shadow:0 14px 36px rgba(0,0,0,.6);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  animation:entraAviso .3s cubic-bezier(.22,.9,.3,1);
}
.seleccion[hidden]{display:none}
.sel-txt{font-size:.8rem;color:var(--gris-claro);font-weight:600;margin-right:auto}
.sel-txt b{color:var(--oro-claro);font-size:1rem;font-weight:800}
.btn-acc-x{padding:0;width:42px;justify-content:center}

/* Casilla de marcar en la tarjeta */
.jug-marca{
  position:absolute;top:9px;right:9px;z-index:3;
  width:30px;height:30px;display:grid;place-items:center;
  background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.16);
  border-radius:9px;color:transparent;cursor:pointer;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}
.jug-marca svg{width:15px;height:15px}
.jug-marca:hover{border-color:var(--linea-viva);color:rgba(201,165,92,.5)}
.jug-marca:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.jugador.marcado .jug-marca{background:var(--oro);border-color:var(--oro);color:#1a1408}
.jugador.marcado{border-color:var(--oro)}
/* Deja sitio a la casilla para que no pise las etiquetas */
.jug-cabeza{padding-right:46px!important}

/* Aviso de dias sin ver */
.tag.dias-alerta{background:rgba(224,150,90,.15);border-color:rgba(224,150,90,.42);color:var(--ambar)}
.tag.dias-ok{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.09);color:var(--gris)}
.tag.carpeta{background:rgba(120,140,190,.15);border-color:rgba(120,140,190,.36);color:#a9b8dd}

/* Informe: editar y borrar */
.obs li{padding-right:64px}
.obs-btns{position:absolute;right:0;top:2px;display:flex;gap:4px;opacity:0;transition:opacity .2s ease}
.obs li:hover .obs-btns,.obs li:focus-within .obs-btns{opacity:1}
@media(hover:none){.obs-btns{opacity:1}}
.obs-btn{
  width:28px;height:28px;display:grid;place-items:center;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:8px;color:var(--gris-claro);cursor:pointer;
  transition:background-color .18s ease, color .18s ease, border-color .18s ease;
}
.obs-btn svg{width:13px;height:13px}
.obs-btn:hover{background:rgba(201,165,92,.16);border-color:var(--linea-viva);color:var(--oro-claro)}
.obs-btn.borrar:hover{background:rgba(217,115,125,.16);border-color:rgba(217,115,125,.4);color:var(--rojo)}
.obs-btn:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

/* Nota privada */
.obs-privada{
  display:flex;align-items:flex-start;gap:8px;
  margin:7px 0 0;padding:8px 10px;border-radius:9px;
  background:rgba(217,115,125,.08);border:1px solid rgba(217,115,125,.22);
  font-size:.78rem;color:#e2b3b8;line-height:1.45;
}
.obs-privada svg{width:13px;height:13px;flex:none;margin-top:3px;color:var(--rojo)}
.campo-privado>span{color:var(--rojo);display:flex;align-items:center;gap:6px}
.campo-privado>span svg{width:12px;height:12px}
.campo-privado textarea{border-color:rgba(217,115,125,.24);background-color:rgba(217,115,125,.05)}
.campo-privado textarea:focus{border-color:rgba(217,115,125,.5);box-shadow:0 0 0 3px rgba(217,115,125,.12)}

/* Enlace de video */
.enlace-video{
  display:inline-flex;align-items:center;gap:7px;
  color:var(--oro-claro);font-size:.78rem;font-weight:700;text-decoration:none;
  background:rgba(201,165,92,.1);border:1px solid var(--linea);
  border-radius:999px;padding:7px 13px;margin-bottom:14px;
  transition:background-color .2s ease;
}
.enlace-video:hover{background:rgba(201,165,92,.2)}
.enlace-video svg{width:14px;height:14px}

/* ═══ MODAL ═══ */
.modal{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:16px}
.modal[hidden]{display:none}
.modal-fondo{
  position:absolute;inset:0;background:rgba(4,4,6,.78);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  animation:aparece .25s ease;
}
.modal-caja{
  position:relative;width:100%;max-width:520px;max-height:88vh;
  display:flex;flex-direction:column;
  background:linear-gradient(160deg, rgba(26,26,24,.98), rgba(15,15,14,.98));
  border:1px solid var(--cristal-borde);border-radius:18px;
  box-shadow:var(--sombra);
  animation:entraModal .32s cubic-bezier(.22,.9,.3,1);
}
@keyframes entraModal{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}

.modal-alto{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08);flex:none;
}
.modal-titulo{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.01em}
.modal-x{
  flex:none;width:34px;height:34px;display:grid;place-items:center;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);
  border-radius:9px;color:var(--gris-claro);cursor:pointer;
  transition:background-color .2s ease, color .2s ease;
}
.modal-x svg{width:15px;height:15px}
.modal-x:hover{background:rgba(217,115,125,.16);color:var(--rojo)}
.modal-x:focus-visible{outline:2px solid var(--oro);outline-offset:2px}

.modal-cuerpo{padding:18px;overflow-y:auto;flex:1}
.modal-pie{
  display:flex;gap:9px;margin-top:18px;padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
}
.modal-pie .btn-primario{flex:1;min-height:46px;margin:0}
.btn-peligro{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;
  background:rgba(217,115,125,.12);border:1px solid rgba(217,115,125,.35);
  border-radius:12px;color:var(--rojo);
  font-family:inherit;font-size:.82rem;font-weight:700;
  padding:0 16px;min-height:46px;cursor:pointer;
  transition:background-color .2s ease;
}
.btn-peligro svg{width:15px;height:15px}
.btn-peligro:hover{background:rgba(217,115,125,.24)}
.btn-peligro:focus-visible{outline:2px solid var(--rojo);outline-offset:2px}

.modal .rejilla-campos{grid-template-columns:1fr 1fr}
.modal .campo{margin-bottom:12px}
.modal .nota-bloque{margin-bottom:13px}

/* Comparador */
.comp-cab{display:grid;gap:10px;margin-bottom:18px}
.comp-jug{
  display:flex;align-items:center;gap:10px;padding:10px;border-radius:11px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
}
.comp-jug img,.comp-jug .sinfoto{
  width:40px;height:40px;border-radius:10px;object-fit:cover;flex:none;
  border:1px solid rgba(255,255,255,.12);
}
.comp-jug .sinfoto{
  display:grid;place-items:center;color:var(--oro-claro);font-weight:800;
  background:linear-gradient(155deg, rgba(201,165,92,.28), rgba(201,165,92,.06));
}
.comp-datos{min-width:0;flex:1}
.comp-datos b{display:block;font-size:.87rem}
.comp-datos span{font-size:.71rem;color:var(--gris)}
.comp-nota{text-align:right;flex:none}
.comp-nota b{color:var(--oro-claro);font-size:1.1rem}
.comp-nota span{display:block;font-size:.6rem;color:var(--gris)}

.comp-fila{margin-bottom:14px}
.comp-nom{
  font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;
  color:var(--oro);font-weight:700;margin-bottom:7px;display:block;
}
.comp-barras{display:flex;flex-direction:column;gap:6px}
.comp-b{display:flex;align-items:center;gap:9px}
.comp-b>span{font-size:.7rem;color:var(--gris-claro);width:78px;flex:none;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.comp-b .pista{flex:1;height:7px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}
.comp-b .barra{height:100%;border-radius:99px;background:linear-gradient(90deg, rgba(201,165,92,.5), var(--oro))}
.comp-b .barra.gana{background:linear-gradient(90deg, rgba(95,191,125,.6), var(--verde))}
.comp-b>b{font-size:.72rem;font-weight:800;color:var(--oro-claro);width:26px;text-align:right;flex:none}
.comp-b>b.gana{color:var(--verde)}

/* Carpetas en el modal */
.carpetas-lista{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}
.carpeta-op{
  display:flex;align-items:center;gap:10px;
  padding:12px 13px;border-radius:11px;cursor:pointer;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);
  color:var(--hueso);font-family:inherit;font-size:.86rem;font-weight:600;
  text-align:left;width:100%;
  transition:background-color .2s ease, border-color .2s ease;
}
.carpeta-op:hover{background:rgba(201,165,92,.12);border-color:var(--linea-viva)}
.carpeta-op:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.carpeta-op svg{width:16px;height:16px;color:var(--oro);flex:none}
.carpeta-op small{margin-left:auto;font-size:.7rem;color:var(--gris);font-weight:600}

@media(min-width:720px){
  .modal-caja{max-width:560px}
  .modal-cuerpo{padding:20px}
  .comp-cab{grid-template-columns:1fr 1fr}
  .obs li{padding-right:70px}
}

/* En impresion no salen ni controles ni nada privado */
@media print{
  .seleccion,.jug-marca,.obs-btns,.obs-privada,.barra-res,.modal,.enlace-video{display:none!important}
}

/* ═══════════════════════════════════════════════════════════
   BLOQUE 3 · radar, evolucion, estadisticas y filtros de ojeador
   ═══════════════════════════════════════════════════════════ */

/* ── Filtros avanzados plegables ── */
.avanzados{margin-top:13px;border-top:1px solid rgba(255,255,255,.07);padding-top:13px}
.avanzados summary{
  display:flex;align-items:center;gap:9px;cursor:pointer;list-style:none;
  font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  color:var(--oro);padding:13px 0;min-height:44px;
}
.avanzados summary::-webkit-details-marker{display:none}
.avanzados summary svg{width:15px;height:15px}
.av-chevron{margin-left:auto;transition:transform .28s ease;opacity:.7}
.avanzados[open] .av-chevron{transform:rotate(180deg)}
.avanzados summary:hover{color:var(--oro-claro)}
.avanzados summary:focus-visible{outline:2px solid var(--oro);outline-offset:3px;border-radius:6px}
.filtros-av{margin-top:12px;animation:abre .3s ease}

/* ── Busquedas guardadas ── */
.guardadas{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;align-items:center}
.guardadas:empty{display:none}
.guardada{
  display:inline-flex;align-items:center;gap:7px;
  background:rgba(120,140,190,.13);border:1px solid rgba(120,140,190,.34);
  border-radius:999px;color:#b9c6e6;
  font-family:inherit;font-size:.73rem;font-weight:700;
  padding:7px 13px;cursor:pointer;
  transition:background-color .18s ease, transform .18s ease;
}
.guardada:hover{background:rgba(120,140,190,.24);transform:translateY(-1px)}
.guardada:focus-visible{outline:2px solid #8fa5d6;outline-offset:2px}
.guardada svg{width:12px;height:12px;opacity:.75}
.guardada .quitar-g{
  display:grid;place-items:center;width:16px;height:16px;border-radius:50%;
  background:rgba(0,0,0,.28);margin-left:2px;
}
.guardada .quitar-g:hover{background:rgba(217,115,125,.4)}
.guardar-nueva{
  display:inline-flex;align-items:center;gap:6px;
  background:transparent;border:1px dashed var(--linea-viva);
  border-radius:999px;color:var(--oro);
  font-family:inherit;font-size:.73rem;font-weight:700;
  padding:7px 13px;cursor:pointer;transition:background-color .18s ease;
}
.guardar-nueva:hover{background:rgba(201,165,92,.12)}
.guardar-nueva:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
.guardar-nueva svg{width:12px;height:12px}

/* ── Radar de atributos ──
   Es el grafico que cualquiera del fútbol reconoce al instante. Todo SVG
   generado a mano: sin librerias, sin CDN, y pesa cero. */
.radar-zona{display:flex;flex-direction:column;align-items:center;margin-bottom:18px}
.radar{width:100%;max-width:290px;height:auto;overflow:visible}
.radar .malla{fill:none;stroke:rgba(255,255,255,.08);stroke-width:1}
.radar .eje{stroke:rgba(255,255,255,.07);stroke-width:1}
.radar .area{
  fill:rgba(201,165,92,.22);stroke:var(--oro);stroke-width:2;
  stroke-linejoin:round;
  transform-origin:center;transform:scale(.2);opacity:0;
  transition:transform .75s cubic-bezier(.34,1.3,.5,1), opacity .5s ease;
}
.radar.visible .area{transform:scale(1);opacity:1}
.radar .punto{fill:var(--oro-claro);stroke:var(--negro);stroke-width:1.5}
.radar .etiqueta{
  fill:var(--gris-claro);font-size:8.5px;font-weight:700;
  font-family:inherit;text-anchor:middle;letter-spacing:.03em;
}
.radar .cifra{fill:var(--oro-claro);font-size:8px;font-weight:800;font-family:inherit;text-anchor:middle}

/* ── Grafico de evolucion de la nota ── */
.grafico{width:100%;height:auto;overflow:visible;margin-bottom:4px}
.grafico .rejilla-g{stroke:rgba(255,255,255,.07);stroke-width:1}
.grafico .relleno{fill:url(#degEvo)}
.grafico .linea{
  fill:none;stroke:var(--oro);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;
}
.grafico .nodo{fill:var(--negro);stroke:var(--oro);stroke-width:2}
.grafico .nodo-ult{fill:var(--oro-claro);stroke:var(--oro-claro)}
.grafico .valor-g{fill:var(--oro-claro);font-size:8px;font-weight:800;font-family:inherit;text-anchor:middle}
.grafico .fecha-g{fill:var(--gris);font-size:7px;font-weight:600;font-family:inherit;text-anchor:middle}

/* ── Estadisticas de temporada ── */
.stats{
  display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px;
}
.stat{
  text-align:center;padding:10px 6px;border-radius:10px;
  background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);
}
.stat b{display:block;font-size:1.15rem;font-weight:800;color:var(--oro-claro);letter-spacing:-.02em;line-height:1.1}
.stat span{
  display:block;font-size:.57rem;text-transform:uppercase;letter-spacing:.1em;
  color:var(--gris);margin-top:3px;font-weight:700;
}
.stats-pie{
  margin:-12px 0 18px;font-size:.68rem;color:var(--gris);text-align:center;
}
.stats-vacio{
  margin:0 0 18px;padding:14px;border-radius:var(--radio-sm);text-align:center;
  background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.1);
  font-size:.78rem;color:var(--gris);line-height:1.5;
}
.stats-vacio b{color:var(--oro-claro)}

@media(min-width:720px){
  .filtros-av{grid-template-columns:repeat(4,1fr)}
  .radar{max-width:320px}
}

/* ═══ SELECTOR DE FOTO ═══ */
.foto-campo{margin-bottom:15px}
.foto-titulo{
  display:block;margin-bottom:8px;
  font-size:.63rem;text-transform:uppercase;letter-spacing:.14em;
  color:var(--oro);font-weight:700;
}
.foto-selector{display:flex;align-items:center;gap:13px}
.foto-vista{
  flex:none;width:76px;height:76px;border-radius:14px;overflow:hidden;
  display:grid;place-items:center;
  background:rgba(0,0,0,.34);border:1px dashed rgba(201,165,92,.34);
  color:rgba(201,165,92,.45);
}
.foto-vista svg{width:34px;height:34px}
.foto-vista img{width:100%;height:100%;object-fit:cover;display:block}
.foto-vista.puesta{border-style:solid;border-color:var(--oro)}
.foto-acciones{flex:1;min-width:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.btn-foto{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(201,165,92,.12);border:1px solid var(--linea-viva);
  border-radius:11px;color:var(--oro-claro);
  font-family:inherit;font-size:.79rem;font-weight:700;
  padding:0 15px;min-height:44px;cursor:pointer;
  transition:background-color .2s ease;
}
.btn-foto svg{width:16px;height:16px}
.btn-foto:hover{background:rgba(201,165,92,.22)}
.btn-foto:focus-within{outline:2px solid var(--oro);outline-offset:2px}
.btn-foto-quitar{
  background:rgba(217,115,125,.12);border:1px solid rgba(217,115,125,.32);
  border-radius:11px;color:var(--rojo);
  font-family:inherit;font-size:.75rem;font-weight:700;
  padding:0 13px;min-height:44px;cursor:pointer;transition:background-color .2s ease;
}
.btn-foto-quitar:hover{background:rgba(217,115,125,.24)}
.btn-foto-quitar:focus-visible{outline:2px solid var(--rojo);outline-offset:2px}
.foto-ayuda{
  flex-basis:100%;margin:0;font-size:.7rem;color:var(--gris);line-height:1.4;
}
.modal .foto-campo{margin-bottom:16px}

/* ═══════════════════════════════════════════════════════════
   IMPRESION · el informe que el club se lleva a su reunion
   Se imprime SOLO el jugador elegido, con cabecera de marca y pie
   de confidencialidad. Nada de interfaz, nada de notas privadas.
   ═══════════════════════════════════════════════════════════ */

/* Piezas que solo existen en papel */
.solo-papel{display:none}

@media print{
  @page{margin:12mm 14mm}

  /* Que se impriman los fondos y colores, si no el radar sale hueco */
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}

  html,body{background:#fff!important;color:#14140f!important;font-size:10.5pt}
  body{overflow:visible!important}

  /* Fuera todo lo que no sea el informe */
  .ambiente,.marca-agua,.cabecera,.aviso-demo,.pie,.panel,.chips,.guardadas,
  .avanzados,.barra-res,.seleccion,.modal,.aviso,.acceso,.intro,.vacio,
  #vistaCarga,#vistaRevisar,.jug-flecha,.jug-marca,.acciones,.obs-btns,
  .obs-privada,.enlace-video{display:none!important}

  main{padding:0!important}
  .contenedor{max-width:none!important;padding:0!important}

  .jugador{display:none!important}
  .jugador.imprimir{
    display:block!important;
    background:#fff!important;border:0!important;box-shadow:none!important;
    animation:none!important;border-radius:0!important;
    backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  }
  .solo-papel{display:block}

  /* ── Cabecera de marca ── */
  .print-cab{
    display:flex!important;align-items:flex-end;justify-content:space-between;
    padding-bottom:3mm;margin-bottom:5mm;border-bottom:1.5pt solid #8a6d2f;
  }
  .pc-marca{display:flex;align-items:center;gap:3mm;color:#8a6d2f}
  .pc-marca svg{width:11mm;height:11mm}
  .pc-marca span{display:flex;flex-direction:column;line-height:1.1}
  .pc-marca b{font-size:12pt;letter-spacing:.18em;color:#14140f}
  .pc-marca small{font-size:7pt;letter-spacing:.42em;color:#8a6d2f}
  .pc-doc{text-align:right;line-height:1.3}
  .pc-doc b{display:block;font-size:10pt;color:#14140f}
  .pc-doc span{font-size:8.5pt;color:#666}

  /* ── Bloque del jugador ── */
  .jug-cabeza{
    display:flex!important;align-items:center;gap:5mm;width:100%;
    padding:0 0 4mm 0!important;margin-bottom:4mm;
    border-bottom:.5pt solid #ccc;background:none!important;
    break-inside:avoid;
  }
  .jug-foto{width:24mm!important;height:24mm!important;border:.5pt solid #bbb!important;border-radius:2mm!important}
  .jug-foto::after{display:none}
  .jug-foto.sin-foto{background:#f0ece3!important;color:#8a6d2f!important}
  .jug-nombre{font-size:17pt!important;color:#14140f!important;margin-bottom:1.5mm!important}
  .jug-linea{font-size:9.5pt!important;color:#444!important}
  .jug-linea .pos{color:#8a6d2f!important}
  .tag{
    background:#f6f4ef!important;border:.5pt solid #ccc!important;color:#444!important;
    font-size:7.5pt!important;padding:1mm 2.5mm!important;
  }
  .tag.dias-alerta,.tag.dias-ok{display:none!important}
  .jug-marcador{text-align:center}
  .jug-anillo{width:20mm!important;height:20mm!important}
  .jug-anillo .pista{stroke:#e4e0d6!important}
  .jug-anillo .valor{stroke:#8a6d2f!important}
  .jug-anillo b{font-size:12pt!important;color:#14140f!important}
  .jug-techo{font-size:7.5pt!important;color:#666!important}
  .jug-techo b{color:#8a6d2f!important}

  /* ── Cuerpo a dos columnas ── */
  .jug-cuerpo{
    display:grid!important;grid-template-columns:1fr 1.1fr;gap:8mm;
    padding:0!important;background:none!important;border:0!important;
    animation:none!important;
  }
  .jug-cuerpo[hidden]{display:grid!important}

  .bloque-titulo{
    color:#8a6d2f!important;font-size:7.5pt!important;margin-bottom:2.5mm!important;
  }
  .bloque-titulo::after{background:#ddd!important}

  /* Radar y grafico ya desplegados y en tinta */
  .radar-zona{margin-bottom:5mm!important}
  .radar{max-width:62mm!important}
  .radar .area{transform:scale(1)!important;opacity:1!important;fill:rgba(138,109,47,.18)!important;stroke:#8a6d2f!important}
  .radar .malla,.radar .eje{stroke:#ddd!important}
  .radar .punto{fill:#8a6d2f!important;stroke:#fff!important}
  .radar .etiqueta{fill:#444!important}
  .radar .cifra{fill:#8a6d2f!important}

  .grafico{margin-bottom:3mm!important}
  .grafico .linea{stroke:#8a6d2f!important}
  .grafico .nodo{fill:#fff!important;stroke:#8a6d2f!important}
  .grafico .nodo-ult{fill:#8a6d2f!important}
  .grafico .relleno{fill:rgba(138,109,47,.12)!important}
  .grafico .valor-g{fill:#8a6d2f!important}
  .grafico .fecha-g{fill:#777!important}
  .grafico .rejilla-g{stroke:#ddd!important}

  .stats,.ficha,.evolucion{background:none!important;border:.5pt solid #ddd!important}
  .stat{background:#faf9f6!important;border-color:#e2ded4!important}
  .stat b{color:#8a6d2f!important;font-size:13pt!important}
  .stat span{color:#666!important}
  .stats-pie{color:#777!important}
  .ficha dt{color:#777!important}
  .ficha dd{color:#14140f!important}
  .evo-flecha{background:#f2efe8!important;color:#14140f!important}
  .evo-sube{color:#2e7d4f!important}
  .evo-baja{color:#b03a44!important}
  .evo-txt{color:#555!important}

  /* Historial: que no se parta un informe entre dos paginas */
  .obs li{padding-right:0!important;break-inside:avoid}
  .obs::before{background:#ddd!important;opacity:1!important}
  .obs li::before{background:#fff!important;border-color:#8a6d2f!important;box-shadow:none!important}
  .obs-fecha{color:#8a6d2f!important}
  .obs-partido{color:#14140f!important}
  .obs-nota{background:#f6f4ef!important;border-color:#ddd!important;color:#8a6d2f!important}
  .obs-txt{color:#444!important}

  /* ── Pie de confidencialidad ── */
  .print-pie{
    margin-top:6mm;padding-top:3mm;border-top:.5pt solid #ddd;
    font-size:7.5pt;color:#777;line-height:1.5;
  }
  .print-pie p{margin:0}
  .print-pie b{color:#14140f}
  .pp-ref{margin-top:1.5mm!important;color:#8a6d2f!important;font-weight:700}
}

/* ═══ ACCESIBILIDAD ═══ */
@media(prefers-reduced-motion:reduce){
  *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  html{scroll-behavior:auto}
  .halo{animation:none}
  .radar .area{transform:scale(1);opacity:1}
}
