/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Oct 05 2025 | 19:29:03 */
/* ===== Fonte (opcional): Akrobat ===== */
@font-face{
  font-family:'Akrobat';
  src:url('https://fonts.cdnfonts.com/s/20256/Akrobat-Regular.woff') format('woff');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Akrobat';
  src:url('https://fonts.cdnfonts.com/s/20256/Akrobat-SemiBold.woff') format('woff');
  font-weight:600; font-style:normal; font-display:swap;
}

/* ===== GRID 4/3/1 ===== */
.vila-roster{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:1.2rem !important;
}
@media (max-width:1024px){ .vila-roster{ grid-template-columns:repeat(3,1fr) !important; } }
@media (max-width:640px){  .vila-roster{ grid-template-columns:1fr !important; } }

/* ===== Fundos por escalão (lista + modal) ===== */
:is(.vila-roster,.vf-modal).seniores { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/seniores.png'); }
:is(.vila-roster,.vf-modal).sub19    { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/sub19.png'); }
:is(.vila-roster,.vf-modal).sub17    { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/sub17.png'); }
:is(.vila-roster,.vf-modal).sub15    { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/sub15.png'); }
:is(.vila-roster,.vf-modal).sub13    { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/sub13.png'); }
:is(.vila-roster,.vf-modal).sub11    { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/sub11.png'); }
:is(.vila-roster,.vf-modal).academia { --card-bg:url('https://www.vilafutsal.pt/wp-content/uploads/2025/10/academia.png'); }

/* ===== Neutralizar estilos do plugin no card ===== */
.vila-roster .player-tile{
  float:none !important;
  width:auto !important;
  margin:0 !important;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.vila-roster .player-tile:hover{
  transform:translateY(-4px) scale(1.03);
  box-shadow:0 14px 36px rgba(0,0,0,.22);
}

/* ===== Cartão (lista + modal) ===== */
:is(.vila-roster,.vf-modal) .player-tile{
  position:relative !important;
  aspect-ratio:3/4 !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#0b0b0b !important;
  box-shadow:0 6px 20px rgba(0,0,0,.2) !important;
}
:is(.vila-roster,.vf-modal) .player-tile::before{
  content:"" !important;
  position:absolute !important; inset:0 !important;
  background-image:var(--card-bg) !important;
  background-size:100% 100% !important;
  background-position:center !important;
  z-index:0 !important;
}

/* ===== Foto (igual no card e no popup) ===== */
:is(.vila-roster,.vf-modal) .player-photo{
  position:absolute !important;
  top:5% !important; left:5% !important; right:14% !important; bottom:32% !important;
  z-index:1 !important;
}
/* garante que o link e a imagem ocupam 100% da caixa */
:is(.vila-roster,.vf-modal) .player-photo a{
  display:block !important; width:100% !important; height:100% !important;
  padding:0 !important; margin:0 !important; border:0 !important;
  background:transparent !important; box-shadow:none !important;
}
:is(.vila-roster,.vf-modal) .player-photo img{
  display:block !important; width:100% !important; height:100% !important;
  object-fit:contain !important; background:transparent !important; border:0 !important; outline:0 !important; box-shadow:none !important;
}

/* ===== Nome (sem número) — fixo e igual no card e no popup ===== */
:is(.vila-roster,.vf-modal) .player-name-number{
  position:absolute !important;
  left:6% !important; right:6% !important;
  bottom:14% !important; height:12% !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  z-index:3 !important; text-align:center !important;
  line-height:1.2 !important; letter-spacing:0 !important;
  color:#fff !important; text-shadow:0 2px 6px rgba(0,0,0,.55) !important;
  font-family:'Akrobat','Barlow Condensed',system-ui,sans-serif !important;
  font-weight:600 !important;
  font-size:var(--name-size, 18px) !important; /* será “congelado” pelo JS */
}
:is(.vila-roster,.vf-modal) .player-name-number .player-name,
:is(.vila-roster,.vf-modal) .player-name-number .player-name *{
  font:inherit !important; color:inherit !important; text-decoration:none !important;
  letter-spacing:inherit !important; pointer-events:none !important;
}

/* ===== Esconder números do plugin (garantia) ===== */
.vila-roster .player-number,
.vf-modal .player-number,
.vila-roster .player-number-badge,
.vf-modal .player-number-badge,
.vila-roster .mstw-tr-number,
.vf-modal .mstw-tr-number,
.vila-roster .mstw-tr-jersey-number,
.vf-modal .mstw-tr-jersey-number{ display:none !important; }
.vila-roster .player-name-number .player-number::after,
.vf-modal .player-name-number .player-number::after{ content:none !important; }

/* ===== Modal ===== */
.vf-modal{
  position:fixed !important; inset:0 !important; display:none; opacity:0;
  background:rgba(0,0,0,.65) !important;
  z-index:9999 !important; transition:opacity .2s ease;
  -webkit-text-size-adjust:100%; text-size-adjust:100%;
}
.vf-modal.is-open{ display:grid !important; place-items:center !important; opacity:1 !important; }
.vf-modal__dialog{
  position:relative !important;
  width:min(82vw,380px) !important;  /* popup 3:4 compacto */
  aspect-ratio:3/4 !important;
  border-radius:20px !important;
  overflow:hidden !important;
  box-shadow:0 20px 60px rgba(0,0,0,.5) !important;
  background:transparent !important;
}
.vf-modal__content{ width:100% !important; height:100% !important; position:relative !important; z-index:1 !important; }

/* Tile clonado ocupa 100% */
.vf-modal .player-tile{
  width:100% !important; height:100% !important; margin:0 !important;
  border-radius:inherit !important; background:transparent !important; box-shadow:none !important; transform:none !important;
  cursor:default !important; z-index:1 !important;
}

/* Botões */
.vf-actions{
  position:absolute !important; right:.6rem !important; bottom:.6rem !important;
  display:flex !important; gap:.5rem !important; z-index:10 !important;
}
.vf-actions .vf-btn{
  appearance:none !important; border:0 !important; padding:.55rem .85rem !important; border-radius:999px !important;
  font-weight:700 !important; line-height:1 !important; cursor:pointer !important;
  display:inline-flex !important; align-items:center !important; gap:.45rem !important;
  box-shadow:0 6px 16px rgba(0,0,0,.25) !important;
}
.vf-actions .vf-share{ background:#00b140 !important; color:#fff !important; }

.vf-modal__close{
  position:absolute !important; top:.8rem !important; right:.8rem !important;
  background:rgba(255,255,255,.92) !important; border:0 !important; border-radius:50% !important;
  padding:.4rem .6rem !important; font-size:1.2rem !important;
  box-shadow:0 4px 12px rgba(0,0,0,.25) !important; cursor:pointer !important; z-index:20 !important;
}
.vf-icon{ width:18px !important; height:18px !important; display:inline-block !important; }

/* Sem scroll ao abrir */
.vf-no-scroll{ overflow:hidden !important; }
