/* ════════════════════════════════════════════════════════════════
   FUVEV THEME v5 — "Cancha Nocturna"
   Capa visual final. Se carga DESPUÉS de los <style> de index.html
   y gana la cascada. 100% CSS: no toca lógica, IDs ni data-*.
   Fusión de los 5 mockups aprobados:
     1 Broadcast  → badges EN VIVO, marcadores tabulares
     2 Quiet Premium → superficies mate, bordes hairline, acento mínimo
     3 Data Grid  → tablas densas, zebra, columna equipo sticky
     4 Card Elevation → línea superior de acento 2px sin glow
     5 Federation → cabeceras de sección con regla + label uppercase
   Paleta 60-30-10: #0F0F11 / #1A1A1E / rgba(255,255,255,.08)
   Marca: #854900 (rellenos, bordes, CTAs) · #C9772E (texto naranja)
   Reversible: eliminar este <link> restaura el diseño anterior.
   ════════════════════════════════════════════════════════════════ */

/* ── 1. TOKENS ──────────────────────────────────────────────────── */
:root{
  --fv-bg:#0F0F11;
  --fv-bg2:#141417;
  --fv-card:#1A1A1E;
  --fv-card2:#202025;
  --fv-line:rgba(255,255,255,.08);
  --fv-line2:rgba(255,255,255,.14);
  --fv-brand:#854900;
  --fv-brand-2:#6B3B00;
  --fv-brand-text:#C9772E;
  --fv-brand-soft:rgba(133,73,0,.18);
  --fv-brand-border:rgba(133,73,0,.55);
  --fv-live:#EF4444;
  --fv-t1:#FFFFFF;
  --fv-t2:rgba(255,255,255,.65);
  --fv-t3:rgba(255,255,255,.42);
  /* Remapeo de variables ya usadas por el sitio (solo lectura visual) */
  --bg:var(--fv-bg)!important;
  --bg2:var(--fv-bg2)!important;
  --bg3:var(--fv-card)!important;
  --bg4:var(--fv-card2)!important;
  --border:var(--fv-line)!important;
  --border2:var(--fv-line2)!important;
  --orange:var(--fv-brand-text)!important;
  --orange2:var(--fv-brand)!important;
  --orange3:var(--fv-brand-border)!important;
  --br-pri:var(--fv-brand-text)!important;
  --br-pri-h:#E08A3C!important;
  --br-pri-fg:#FFFFFF!important;
  --br-pri-soft:var(--fv-brand-soft)!important;
  --s-0:var(--fv-bg)!important;
  --s-1:var(--fv-bg2)!important;
  --s-2:var(--fv-card)!important;
  --s-3:var(--fv-card2)!important;
  --b-sub:var(--fv-line)!important;
  --b-def:var(--fv-line2)!important;
  --gray:var(--fv-t2)!important;
  --gray3:var(--fv-t2)!important;
  --gray2:var(--fv-t3)!important;
  --font-h:'Plus Jakarta Sans','Bricolage Grotesque','Inter',-apple-system,sans-serif!important;
  --shadow:0 12px 32px rgba(0,0,0,.45)!important;
  --shadow2:0 4px 14px rgba(0,0,0,.3)!important;
  --live:var(--fv-live)!important;
  /* Firma visual: cancha nocturna (SVG inline, ~1KB) */
  --fv-pitch:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 600'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.028)' stroke-width='2'%3E%3Cline x1='450' y1='0' x2='450' y2='600'/%3E%3Ccircle cx='450' cy='300' r='110'/%3E%3Ccircle cx='450' cy='300' r='4' fill='rgba(255,255,255,0.028)'/%3E%3Cpath d='M0,180 h120 v240 h-120'/%3E%3Cpath d='M900,180 h-120 v240 h120'/%3E%3Cpath d='M120,245 a70,70 0 0 1 0,110'/%3E%3Cpath d='M780,245 a70,70 0 0 0 0,-110'/%3E%3Cpath d='M0,14 a14,14 0 0 0 14,-14'/%3E%3Cpath d='M0,586 a14,14 0 0 1 14,14'/%3E%3Cpath d='M900,14 a14,14 0 0 1 -14,-14'/%3E%3Cpath d='M900,586 a14,14 0 0 0 -14,14'/%3E%3C/g%3E%3C/svg%3E");
}

/* ── 2. FONDO FIRMA (todas las páginas) ─────────────────────────── */
body{background:var(--fv-bg)!important}
#page-home,#page-torneo,#page-login,#page-reset,#page-planes,
#page-admin,#page-crear,#page-editar,#page-ge,#page-legal,
#page-pago-ok,#page-pago-cancel{
  background-color:var(--fv-bg)!important;
  background-image:
    radial-gradient(ellipse 70% 42% at 50% -6%, rgba(133,73,0,.20), transparent 62%),
    radial-gradient(ellipse 50% 30% at 12% 4%, rgba(133,73,0,.10), transparent 60%),
    var(--fv-pitch),
    linear-gradient(180deg, #121215 0%, var(--fv-bg) 45%)!important;
  background-size:100% 100%, 100% 100%, 900px 600px, 100% 100%!important;
  background-position:top center, top left, center 120px, top!important;
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat!important;
  background-attachment:fixed, fixed, fixed, fixed!important;
}
@media (max-width:768px){
  #page-home,#page-torneo,#page-login,#page-reset,#page-planes,
  #page-admin,#page-crear,#page-editar,#page-ge,#page-legal,
  #page-pago-ok,#page-pago-cancel{
    background-attachment:scroll,scroll,scroll,scroll!important;
    background-size:100% 100%,100% 100%,760px 507px,100% 100%!important;
    background-position:top center,top left,center 90px,top!important;
  }
}
.page.active#page-admin{background:transparent!important}

/* ── 3. TIPOGRAFÍA Y NÚMEROS ────────────────────────────────────── */
body{letter-spacing:-.1px}
.standings-table,.score-box,.mst-score,.stat-value,.stat-rank,.hstat-n,
.hsi-num,.vti-live-score,.vti-stat-n,.vti-podium-stat-n,#ep-marcador,
#ep-goles-num,.vti-next-time-h,.match-time,.pts-cell,.home-compare td{
  font-variant-numeric:tabular-nums!important;
}

/* ── 4. NAVBAR + MENÚ DESPLEGABLE ───────────────────────────────── */
.navbar{
  background:rgba(15,15,17,.88)!important;
  border-bottom:1px solid var(--fv-line)!important;
  height:56px!important;
  justify-content:space-between!important;
  backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
}
.navbar-name{
  background:0 0!important;
  -webkit-text-fill-color:var(--fv-t1)!important;
  color:var(--fv-t1)!important;
  text-shadow:none!important;
  font-weight:600!important;
  letter-spacing:2.5px!important;
  font-size:18px!important;
}
.navbar-logo{border:1px solid var(--fv-line)}
.nav-btn{
  background:transparent!important;
  border:1px solid var(--fv-line)!important;
  color:var(--fv-t2)!important;
}
.nav-btn:hover{background:var(--fv-card)!important;border-color:var(--fv-line2)!important;color:var(--fv-t1)!important;transform:none!important}
.nav-btn.active{background:var(--fv-brand-soft)!important;border-color:var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
/* Botón + panel creados por fuvev-menu.v5.js */
#fv-menu-btn{
  width:36px;height:36px;border-radius:10px;cursor:pointer;
  background:transparent;border:1px solid var(--fv-line);
  color:var(--fv-t1);display:inline-flex;align-items:center;justify-content:center;
  transition:background .15s,border-color .15s;
}
#fv-menu-btn:hover{background:var(--fv-card);border-color:var(--fv-line2)}
#fv-menu-btn.open{background:var(--fv-brand-soft);border-color:var(--fv-brand-border);color:var(--fv-brand-text)}
#fv-menu-btn svg{width:18px;height:18px}
#fv-menu-panel{
  position:fixed;top:62px;right:12px;width:196px;z-index:400;
  background:var(--fv-card);border:1px solid var(--fv-line2);
  border-radius:14px;padding:6px;
  box-shadow:0 18px 44px rgba(0,0,0,.55);
  opacity:0;transform:translateY(-6px) scale(.98);pointer-events:none;
  transition:opacity .16s ease,transform .16s ease;
}
#fv-menu-panel.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
.fv-menu-item{
  display:flex;align-items:center;gap:10px;width:100%;
  padding:10px 11px;border:0;border-radius:9px;cursor:pointer;
  background:transparent;color:var(--fv-t2);
  font-family:'Inter',sans-serif;font-size:13px;font-weight:500;text-align:left;
  transition:background .12s,color .12s;
}
.fv-menu-item:hover{background:rgba(255,255,255,.05);color:var(--fv-t1)}
.fv-menu-item.active{background:var(--fv-brand-soft);color:var(--fv-brand-text)}
.fv-menu-item svg{width:16px;height:16px;flex-shrink:0}
.fv-menu-sep{height:1px;background:var(--fv-line);margin:4px 8px}
@media (prefers-reduced-motion:reduce){#fv-menu-panel{transition:none}}

/* ── 5. BOTTOM NAV FUERA · FABs reubicados ──────────────────────── */
.fuvev-bnav{display:none!important}
body{padding-bottom:0!important}
.fuvev-cookie-banner{bottom:0!important}
.fuvev-fab{bottom:18px!important;box-shadow:0 10px 26px rgba(0,0,0,.5)!important;background:var(--fv-brand)!important;color:#fff!important}
.fuvev-fab:hover{background:#9A5500!important;box-shadow:0 14px 32px rgba(0,0,0,.6)!important}
.vti-share-fab{bottom:80px!important;color:var(--fv-brand-text)!important}

/* ── 6. HERO (Quiet Premium) ────────────────────────────────────── */
#fuvev-hero{background:transparent!important;border-bottom:1px solid var(--fv-line)!important;padding:44px 20px 32px!important}
#fuvev-hero::before,#fuvev-hero::after{display:none!important}
#page-home #fuvev-hero{background:transparent!important}
#page-home #fuvev-hero::after{display:none!important}
.hero-title{
  font-family:var(--font-h)!important;font-weight:600!important;
  letter-spacing:-2px!important;text-shadow:none!important;color:var(--fv-t1)!important;
}
.hero-badge{
  background:var(--fv-brand-soft)!important;border:1px solid var(--fv-brand-border)!important;
  color:var(--fv-brand-text)!important;backdrop-filter:none!important;
}
.hero-sub{color:var(--fv-t2)!important}
.hero-sub .hl{color:var(--fv-brand-text)!important}
.hero-cta-main,#page-home #fuvev-hero .hero-cta-main{
  background:var(--fv-brand)!important;background-image:none!important;
  color:#fff!important;box-shadow:0 8px 22px rgba(0,0,0,.4)!important;
  text-transform:none!important;letter-spacing:0!important;font-weight:600!important;
}
.hero-cta-main:hover,#page-home #fuvev-hero .hero-cta-main:hover{
  background:#9A5500!important;transform:translateY(-1px)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.5)!important;filter:none!important;
}
.hero-cta-main svg,#page-home #fuvev-hero .hero-cta-main svg{color:#fff!important}
.hero-cta .btn-outline,#page-home #fuvev-hero .hero-cta .btn-outline{
  background:transparent!important;border:1px solid var(--fv-line2)!important;
  color:var(--fv-t1)!important;box-shadow:none!important;backdrop-filter:none!important;
  text-transform:none!important;letter-spacing:0!important;font-weight:500!important;
}
.hero-cta .btn-outline:hover,#page-home #fuvev-hero .hero-cta .btn-outline:hover{
  background:rgba(255,255,255,.05)!important;border-color:var(--fv-brand-border)!important;
  color:var(--fv-brand-text)!important;box-shadow:none!important;
}
.hero-cta .btn-outline svg,#page-home #fuvev-hero .hero-cta .btn-outline svg{color:currentColor!important}
.hero-logo-img{filter:none!important;border:1px solid var(--fv-line);background:var(--fv-card)!important;box-shadow:none!important}
.home-trust,#page-home #fuvev-hero .home-trust{background:rgba(255,255,255,.03)!important;border:1px solid var(--fv-line)!important;color:var(--fv-t2)!important}
.hsi-num{color:var(--fv-brand-text)!important}
.splash-title{background:0 0!important;-webkit-text-fill-color:#fff!important;color:#fff!important}
.splash-logo{filter:none!important}
.splash-bar-inner{background:var(--fv-brand)!important}
.splash-bg{background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(133,73,0,.16) 0,transparent 70%)!important}

/* ── 7. BUSCADOR ────────────────────────────────────────────────── */
.search-sticky,#page-home .search-sticky{background:transparent!important;border-bottom:1px solid var(--fv-line)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.search-input,#page-home .search-sticky .search-input{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;color:var(--fv-t1)!important;
}
.search-input:focus,#page-home .search-sticky .search-input:focus{
  border-color:var(--fv-brand-border)!important;box-shadow:0 0 0 3px var(--fv-brand-soft)!important;
}
.search-icon,#page-home .search-sticky .search-icon{color:var(--fv-t3)!important}

/* ── 8. CARDS (Card Elevation, sin glow) ────────────────────────── */
#page-home .torneo-card,#page-torneo .match-card{
  background:var(--fv-card)!important;
  border:1px solid var(--fv-line)!important;
  border-radius:0 0 14px 14px!important;
  box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
#page-home .torneo-card::after,#page-torneo .match-card::after{
  height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important;
}
#page-home .torneo-card:hover,#page-torneo .match-card:hover{
  transform:translateY(-2px)!important;border-color:var(--fv-line2)!important;
  box-shadow:0 14px 30px rgba(0,0,0,.45)!important;
}
#page-home .torneo-card.pinned{border-color:var(--fv-brand-border)!important;box-shadow:0 8px 22px rgba(0,0,0,.35)!important}
.torneo-card.pinned::before,#page-home .torneo-card.pinned::before{
  content:"ANCLADO"!important;color:var(--fv-brand-text)!important;
  background:rgba(15,15,17,.85)!important;border:1px solid var(--fv-brand-border);
  border-radius:999px;padding:2px 8px!important;letter-spacing:1.2px!important;
}
#page-home .torneo-logo{background:var(--fv-card2)!important;border:1px solid var(--fv-line)}
#page-home .torneo-nombre{font-family:var(--font-h)!important;font-weight:600!important}
.card{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important}
.card:hover{border-color:var(--fv-line2)!important;box-shadow:0 10px 26px rgba(0,0,0,.4)!important}

/* ── 9. BADGES (Broadcast) ──────────────────────────────────────── */
.badge{font-weight:600!important;letter-spacing:.3px!important;border-radius:999px!important}
.badge-orange{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important;border:1px solid var(--fv-brand-border)!important}
.badge-gray{background:rgba(255,255,255,.04)!important;color:var(--fv-t2)!important;border:1px solid var(--fv-line)!important}
#page-home .torneo-card.live-now .badge-green{
  background:var(--fv-bg)!important;border:1px solid var(--fv-brand-border)!important;
}
#page-home .torneo-card.live-now .badge-green::after{color:var(--fv-brand-text)!important}
#page-home .torneo-card.live-now .badge-green::before{background:var(--fv-live)!important;box-shadow:0 0 0 2px rgba(239,68,68,.22)!important}
.vti-live{background:var(--fv-card)!important;border:1px solid var(--fv-brand-border)!important}
.vti-live-badge{color:var(--fv-live)!important}

/* ── 10. TABS + PESTAÑAS ────────────────────────────────────────── */
#page-torneo .tabs-bar,.tabs-bar{background:rgba(15,15,17,.92)!important;border-bottom:1px solid var(--fv-line)!important}
.tab-btn{color:var(--fv-t3)!important}
.tab-btn:hover:not(.active),#page-torneo .tab-btn:hover{color:var(--fv-t1)!important}
.tab-btn.active,#page-torneo .tab-btn.active{
  color:var(--fv-brand-text)!important;border-bottom-color:var(--fv-brand)!important;
}
#page-torneo .grupo-chip.active,.grupo-chip.active{
  background:var(--fv-brand)!important;border-color:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important;
}
#page-login .login-tab.active{background:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important}

/* ── 11. TABLA DE POSICIONES (Data Grid) ────────────────────────── */
#page-torneo .standings-wrap{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;
  border-radius:0 0 14px 14px!important;box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
#page-torneo .standings-wrap::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .standings-table th{
  background:rgba(255,255,255,.025)!important;color:var(--fv-t3)!important;
  letter-spacing:1px!important;
}
#page-torneo .standings-table td{color:var(--fv-t2)!important;border-bottom:1px solid rgba(255,255,255,.05)!important}
#page-torneo .standings-table tbody tr:nth-child(even){background:rgba(255,255,255,.018)}
#page-torneo .standings-table tbody tr:hover{background:var(--fv-brand-soft)!important}
#page-torneo .standings-table tbody tr:first-child{
  background:linear-gradient(90deg,var(--fv-brand-soft),transparent 55%)!important;
  border-left:2px solid var(--fv-brand)!important;
}
#page-torneo .standings-table tbody tr:first-child .pos-badge{
  background:var(--fv-brand)!important;color:#fff!important;border-color:transparent!important;
}
#page-torneo .pos-badge{background:var(--fv-bg)!important;color:var(--fv-t2)!important;border:1px solid var(--fv-line)!important}
#page-torneo .team-cell-name{color:var(--fv-t1)!important}
#page-torneo .pts-cell,.pts-cell{color:var(--fv-brand-text)!important;font-weight:700!important}
#page-torneo .pos-group-title{color:var(--fv-brand-text)!important;border-top:1px solid var(--fv-line)}
/* Columna posición + equipo fijas al hacer scroll horizontal (móvil) */
@media (max-width:520px){
  #page-torneo .standings-table th:first-child,
  #page-torneo .standings-table td:first-child{
    position:sticky;left:0;z-index:3;background:var(--fv-card)!important;
  }
  #page-torneo .standings-table th:nth-child(2),
  #page-torneo .standings-table td:nth-child(2){
    position:sticky;left:26px;z-index:3;background:var(--fv-card)!important;
    box-shadow:6px 0 8px -6px rgba(0,0,0,.6);
  }
  #page-torneo .standings-table tbody tr:first-child td:first-child,
  #page-torneo .standings-table tbody tr:first-child td:nth-child(2){
    background:#211812!important;
  }
  #page-torneo .standings-table tbody tr:nth-child(even) td:first-child,
  #page-torneo .standings-table tbody tr:nth-child(even) td:nth-child(2){
    background:#1C1C21!important;
  }
}

/* ── 12. GOLEADORES / STATS / PODIOS ────────────────────────────── */
#page-torneo .stat-row{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important}
#page-torneo .stat-row:hover{background:var(--fv-card2)!important;border-color:var(--fv-line2)!important}
#page-torneo .stat-row:first-child{
  background:var(--fv-card)!important;border:1px solid var(--fv-brand-border)!important;
  border-left:2px solid var(--fv-brand)!important;box-shadow:0 8px 20px rgba(0,0,0,.35)!important;
}
#page-torneo .stat-row:first-child .stat-rank,
#page-torneo .stat-row:first-child .stat-value{color:var(--fv-brand-text)!important}
#page-torneo .stat-rank{color:var(--fv-t3)!important}
#page-torneo .stat-value{color:var(--fv-t1)!important}
#page-torneo #vt-tab-inicio .stat-row:first-child{
  background:var(--fv-card)!important;border:1px solid rgba(255,215,0,.3)!important;
  border-left:2px solid #E5C558!important;box-shadow:0 8px 20px rgba(0,0,0,.35)!important;
}
#page-torneo #vt-tab-inicio .stat-row:first-child .stat-rank,
#page-torneo #vt-tab-inicio .stat-row:first-child .stat-value{color:#E5C558!important}
#page-torneo #vt-tab-inicio .stat-row:nth-child(2){background:var(--fv-card)!important;border:1px solid rgba(192,192,192,.22)!important;border-left:2px solid #B8B8B8!important}
#page-torneo #vt-tab-inicio .stat-row:nth-child(2) .stat-rank{color:#B8B8B8!important}
#page-torneo #vt-tab-inicio .stat-row:nth-child(3){background:var(--fv-card)!important;border:1px solid rgba(205,127,50,.24)!important;border-left:2px solid #C08A50!important}
#page-torneo #vt-tab-inicio .stat-row:nth-child(3) .stat-rank{color:#C08A50!important}
#page-torneo .vti-podium-card{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
#page-torneo .vti-podium-card::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .vti-podium-card:hover{border-color:var(--fv-line2)!important;box-shadow:0 14px 30px rgba(0,0,0,.45)!important}
#page-torneo .vti-podium-slot.s1 .vti-podium-avatar{border:2px solid var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .vti-podium-slot.s1 .vti-podium-stat{background:var(--fv-brand-soft)!important;border-color:var(--fv-brand-border)!important}
#page-torneo .vti-podium-slot.s1 .vti-podium-stat-n{color:var(--fv-brand-text)!important}
#page-torneo .vti-podium-slot.s1 .vti-podium-stat-l{color:var(--fv-brand-text)!important}
.vti-stat{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important}
.vti-stat.feat .vti-stat-ico{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
.vti-next-card{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important}
.vti-next-time-h{color:var(--fv-brand-text)!important}
.vti-see-all,#page-torneo .vti-see-all{color:var(--fv-brand-text)!important}

/* ── 13. CABECERAS DE SECCIÓN (Federation) ──────────────────────── */
.vti-section-title,#page-torneo .vti-section-title,
.home-stats-title,.social-follow-label,.adm-section-title{
  color:var(--fv-brand-text)!important;letter-spacing:2px!important;
}
.vti-section-head{border-bottom:1px solid var(--fv-line);padding-bottom:6px}
#page-torneo .day-header{
  background:transparent!important;border:0!important;
  border-bottom:1px solid var(--fv-line)!important;border-left:0!important;
  border-radius:0!important;color:var(--fv-brand-text)!important;padding:8px 2px!important;
}
.section-title{color:var(--fv-brand-text)!important}

/* ── 14. PARTIDOS (match cards + marcadores Broadcast) ──────────── */
#page-torneo .match-top{background:rgba(255,255,255,.025)!important;border-bottom:1px solid var(--fv-line)!important}
#page-torneo .match-phase{color:var(--fv-brand-text)!important}
.score-box{
  background:var(--fv-bg)!important;border:1px solid var(--fv-line)!important;
  font-family:var(--font-h)!important;font-weight:600!important;
}
.match-final .score-box{color:var(--fv-brand-text)!important;border-color:var(--fv-brand-border)!important;background:var(--fv-brand-soft)!important;font-weight:700!important}
.match-status.live{color:var(--fv-live)!important}
.match-action-btn:hover{color:var(--fv-brand-text)!important;background:var(--fv-brand-soft)!important}
#page-torneo .prog-controls{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;
  border-radius:0 0 14px 14px!important;box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
#page-torneo .prog-controls::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}

/* ── 15. GRUPOS ─────────────────────────────────────────────────── */
#page-torneo .grupo-card{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.35)!important;
}
#page-torneo .grupo-card::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .grupo-card-header{background:var(--fv-brand-soft)!important;border-bottom:1px solid var(--fv-line)!important}
#page-torneo .grupo-letter{background:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important}
#page-torneo .grupo-team-row:hover{background:var(--fv-brand-soft)!important}

/* ── 16. BOTONES GLOBALES ───────────────────────────────────────── */
.btn-primary{
  background:var(--fv-brand)!important;background-image:none!important;color:#fff!important;
  box-shadow:0 6px 16px rgba(0,0,0,.35)!important;
}
.btn-primary:hover{background:#9A5500!important;filter:none!important;box-shadow:0 10px 22px rgba(0,0,0,.45)!important}
.btn-secondary{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;color:var(--fv-t1)!important}
.btn-secondary:hover{background:var(--fv-card2)!important;border-color:var(--fv-line2)!important}
.btn-ghost{background:var(--fv-brand-soft)!important;border:1px solid var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
.btn-ghost:hover{background:rgba(133,73,0,.28)!important}
.btn-outline{border-color:var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
.btn-outline:hover{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
#btn-app-download{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 6px 16px rgba(0,0,0,.35)!important}
#btn-app-download:hover{background:#9A5500!important;box-shadow:0 10px 22px rgba(0,0,0,.45)!important}
.btn-stats-share{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;color:var(--fv-t2)!important;box-shadow:none!important}
.btn-stats-share:hover{color:var(--fv-brand-text)!important;border-color:var(--fv-brand-border)!important;box-shadow:none!important}
.adm-btn-primary{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 6px 16px rgba(0,0,0,.35)!important}
#page-login .btn-primary.btn-full,#page-reset .btn-primary.btn-full,
#page-planes .btn-primary.btn-full{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 8px 20px rgba(0,0,0,.4)!important}
#page-login .btn-primary.btn-full:hover,#page-reset .btn-primary.btn-full:hover,
#page-planes .btn-primary.btn-full:hover{background:#9A5500!important;box-shadow:0 12px 26px rgba(0,0,0,.5)!important}
.hero-cta .btn-outline{border-width:1px!important}
input:focus,.input:focus,select:focus,textarea:focus,
#page-login .input:focus,#page-reset .input:focus,#page-planes .input:focus,
#modal-editar-partido .input:focus{
  border-color:var(--fv-brand-border)!important;
  box-shadow:0 0 0 3px var(--fv-brand-soft)!important;
}
:focus-visible{outline:2px solid var(--fv-brand-text)!important}
.btn:focus-visible,.adm-btn-primary:focus-visible,.notif-chip:focus-visible,
.tab-btn:focus-visible,.match-action-btn:focus-visible,.modal-close:focus-visible,
.icon-btn:focus-visible{outline:2px solid var(--fv-brand-text)!important}

/* ── 17. MODALES / TOASTS ───────────────────────────────────────── */
.modal-center,.modal-sheet,
#modal-confirm .modal-center,#modal-del-password .modal-center,
#modal-video .modal-sheet,#modal-editar-partido .modal-sheet{
  background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.6)!important;
}
#modal-confirm .modal-center::after,#modal-del-password .modal-center::after,
#modal-video .modal-sheet::after,#modal-editar-partido .modal-sheet::after{
  background:var(--fv-brand)!important;box-shadow:none!important;
}
#modal-match-stats .modal-sheet{border:1px solid var(--fv-brand-border)!important;box-shadow:0 24px 60px rgba(0,0,0,.6)!important}
.mst-score{color:var(--fv-brand-text)!important}
.mst-divider{background:var(--fv-brand)!important}
.toast{background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;box-shadow:0 14px 30px rgba(0,0,0,.5)!important}
.loading-card{border:1px solid var(--fv-brand-border)!important;box-shadow:0 10px 32px rgba(0,0,0,.5)!important;background:var(--fv-card)!important}
.spinner-lo{border-color:var(--fv-brand-soft)!important;border-top-color:var(--fv-brand-text)!important}
#ep-marcador,#ep-goles-num{color:var(--fv-brand-text)!important}
#ep-chip-local.btn-primary,#ep-chip-visit.btn-primary{background:var(--fv-brand)!important;color:#fff!important;border-color:var(--fv-brand)!important;box-shadow:none!important}
.ep-counter-btn:hover{border-color:var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
.ep-actions>.btn-primary{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.35)!important}
#modal-editar-partido #ep-datos-body .btn-full.btn-primary{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 6px 16px rgba(0,0,0,.35)!important}
.ep-inc-chip-gol{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
.ep-inc-dorsal{color:var(--fv-brand-text)!important}
.ep-inc-title{color:var(--fv-brand-text)!important}

/* ── 18. LOGIN / PLANES / ADMIN ─────────────────────────────────── */
#page-login .auth-hero,#page-reset .auth-hero,#page-planes .auth-hero{
  background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;box-shadow:none!important;
}
#page-login .auth-hero::after,#page-reset .auth-hero::after,#page-planes .auth-hero::after{
  background:var(--fv-brand)!important;box-shadow:none!important;
}
#page-login .auth-hero::before,#page-reset .auth-hero::before,#page-planes .auth-hero::before{
  background:radial-gradient(ellipse 70% 90% at 50% 0,rgba(133,73,0,.14),transparent 65%)!important;
}
#page-login .auth-hero-logo,#page-reset .auth-hero-logo,#page-planes .auth-hero-logo{
  border:1px solid var(--fv-brand-border)!important;box-shadow:none!important;background:var(--fv-bg)!important;
}
#page-login .auth-hero-title,#page-reset .auth-hero-title,#page-planes .auth-hero-title{text-shadow:none!important}
#page-login .auth-body,#page-reset .auth-body{
  background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;border-top:0!important;
  box-shadow:0 20px 48px rgba(0,0,0,.5)!important;
}
.auth-notice{border-color:var(--fv-brand-border)!important;border-left:3px solid var(--fv-brand)!important;background:var(--fv-bg)!important}
.auth-notice-icon,.auth-notice-text strong{color:var(--fv-brand-text)!important}
#page-planes .plan-card{
  background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.4)!important;
}
#page-planes .plan-card::after{background:rgba(133,73,0,.45)!important;box-shadow:none!important}
#page-planes .plan-card:hover{box-shadow:0 18px 40px rgba(0,0,0,.5)!important;border-color:var(--fv-line2)!important}
#page-planes .plan-card:hover::after{background:var(--fv-brand)!important;box-shadow:none!important}
#page-planes .plan-card.recommended{background:#211812!important;border-color:var(--fv-brand-border)!important;box-shadow:0 18px 40px rgba(0,0,0,.5)!important}
#page-planes .plan-card.recommended::after{background:var(--fv-brand)!important;box-shadow:none!important}
#page-planes .plan-card.recommended::before{
  content:"RECOMENDADO"!important;background:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important;
}
#page-planes .plan-price{color:var(--fv-brand-text)!important;text-shadow:none!important}
#page-planes [style*="background:var(--bg3)"]{
  background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;box-shadow:0 12px 30px rgba(0,0,0,.4)!important;
}
#page-planes [style*="background:var(--bg3)"]::after{background:var(--fv-brand)!important;box-shadow:none!important}
#page-planes #pay-selected-info{border-color:var(--fv-brand-border)!important;box-shadow:0 16px 36px rgba(0,0,0,.45)!important;background:var(--fv-card)!important}
#page-planes #pay-selected-info::after{background:var(--fv-brand)!important;box-shadow:none!important}
.admin-hero-row{background:var(--fv-card)!important;border:1px solid var(--fv-brand-border)!important}
.admin-title{color:var(--fv-brand-text)!important}
.admin-item{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;border-left:2px solid var(--fv-brand)!important}
.admin-item:hover{background:var(--fv-card2)!important;box-shadow:0 10px 24px rgba(0,0,0,.4)!important}
.adm-card{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;box-shadow:0 8px 22px rgba(0,0,0,.35)!important}
.adm-card::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
.adm-card-title{color:var(--fv-brand-text)!important}
.adm-card-icon,.adm-empty-ico{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
.adm-section-dot{background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo #vt-admin-banner{background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;box-shadow:0 12px 28px rgba(0,0,0,.4)!important}
#page-torneo #vt-admin-banner::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .vt-admin-chip{background:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important}
#page-torneo .vt-admin-chip svg{stroke:#fff!important}
#page-torneo .vt-admin-chip-txt{color:#fff!important}

/* ── 19. TORNEO HERO ────────────────────────────────────────────── */
#page-torneo .torneo-hero-bg{
  background:var(--fv-card)!important;border-bottom:1px solid var(--fv-line2)!important;box-shadow:none!important;
}
#page-torneo .torneo-hero-bg::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#page-torneo .torneo-hero-bg::before{display:none!important}

/* ── 20. SECCIONES HOME (features, pasos, FAQ, compare) ─────────── */
.home-eyebrow{background:var(--fv-brand-soft)!important;border-color:var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
.home-section-title,.home-cta-final .home-cta-title{text-shadow:none!important;font-family:var(--font-h)!important;font-weight:600!important}
.home-feature,.home-step,.home-use,.home-tcard,.home-faq-item{
  background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;box-shadow:none!important;
}
.home-feature::after,.home-tcard::after{background:var(--fv-brand)!important;box-shadow:none!important;opacity:1!important}
.home-use::after{background:rgba(133,73,0,.4)!important;box-shadow:none!important}
.home-use:hover{background:var(--fv-card2)!important;border-color:var(--fv-brand-border)!important}
.home-use:hover::after{background:var(--fv-brand)!important;box-shadow:none!important}
.home-feature-ico,.home-use .ico{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important;border-color:var(--fv-brand-border)!important}
.home-step-num{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 6px 14px rgba(0,0,0,.4)!important}
.home-tcard .stars{color:var(--fv-brand-text)!important;text-shadow:none!important}
.home-tcard .who .av{background:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important}
.home-faq-item .faq-q::after{color:var(--fv-brand-text)!important}
.home-compare{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important}
.home-compare::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
.home-compare th.th-fuvev,.home-compare td.fuvev{color:var(--fv-brand-text)!important}
.home-compare td.fuvev{background:var(--fv-brand-soft)!important}
.home-app-card{background:var(--fv-card)!important;border:1px solid var(--fv-line2)!important;box-shadow:0 18px 44px rgba(0,0,0,.5)!important}
.home-app-card::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
.home-app-ico{background:var(--fv-brand)!important;box-shadow:0 10px 22px rgba(0,0,0,.45)!important}
.home-app-glow{background:radial-gradient(ellipse,rgba(133,73,0,.14),transparent 70%)!important}
.home-stats-final .hstat-n{color:var(--fv-brand-text)!important;text-shadow:none!important}
.home-stats-final{background:transparent!important;border-top:1px solid var(--fv-line)!important}
.home-stats-inner .hstat-n{color:var(--fv-brand-text)!important;text-shadow:none!important}
.home-cta-final{background:transparent!important}
.social-icon-item:hover{border-color:var(--fv-brand-border)!important;box-shadow:0 8px 18px rgba(0,0,0,.4)!important}
.hstat-n{color:var(--fv-brand-text)!important}

/* ── 21. FLYERS ADMIN / NOTIFICACIONES (colores de marca) ───────── */
#vt-tab-flyer .ef-card{background:var(--fv-card)!important;border:1px solid var(--fv-line)!important;box-shadow:0 8px 22px rgba(0,0,0,.35)!important}
#vt-tab-flyer .ef-card::after{height:2px!important;background:var(--fv-brand)!important;box-shadow:none!important}
#vt-tab-flyer .ef-title,#vt-tab-flyer #ef-color-hex{color:var(--fv-brand-text)!important}
#vt-tab-flyer .ef-title-ico{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
#vt-tab-flyer .ef-card-dot{background:var(--fv-brand)!important;box-shadow:none!important}
#vt-tab-flyer #ef-color-save-btn{background:var(--fv-brand)!important;color:#fff!important;box-shadow:0 4px 12px rgba(0,0,0,.35)!important}
#vt-tab-flyer .ef-swatch.active{border-color:var(--fv-brand-text)!important;box-shadow:0 0 0 2px var(--fv-brand-soft)!important}
#vt-tab-flyer #ef-fmt-v.btn-primary,#vt-tab-flyer #ef-fmt-c.btn-primary{background:var(--fv-brand)!important;color:#fff!important;border-color:var(--fv-brand)!important}
#vt-tab-notif .notif-chip.active{background:var(--fv-brand)!important;border-color:var(--fv-brand)!important;color:#fff!important;box-shadow:none!important}
.notif-preview-icon{background:var(--fv-brand)!important;box-shadow:none!important}
.notif-hist-icon{background:var(--fv-brand-soft)!important;color:var(--fv-brand-text)!important}
.prog-label svg{color:var(--fv-brand-text)!important}
.day-flyer-btn:hover,.prog-flyer-btn:hover,.ef-action-btn:hover{border-color:var(--fv-line2)!important}

/* ── 22. DETALLES FINALES ───────────────────────────────────────── */
::-webkit-scrollbar-thumb{background:var(--fv-brand-2)!important}
::-webkit-scrollbar-thumb:hover{background:var(--fv-brand)!important}
.divider{background:var(--fv-line)!important}
.upload-area:hover{border-color:var(--fv-brand-border)!important;background:var(--fv-brand-soft)!important}
.fuvev-footer-links a:hover{color:var(--fv-brand-text)!important}
.fuvev-cookie-banner{border-top:1px solid var(--fv-brand-border)!important;background:rgba(15,15,17,.97)!important}
.fuvev-cookie-btn.accept{background:var(--fv-brand)!important;color:#fff!important}
.fuvev-cookie-btn.accept:hover{background:#9A5500!important}
.fuvev-cookie-text a{color:var(--fv-brand-text)!important;border-bottom-color:var(--fv-brand-border)!important}
.payment-title-gradient{background:0 0!important;-webkit-text-fill-color:var(--fv-brand-text)!important;color:var(--fv-brand-text)!important}
.payment-cancel-ring{background:var(--fv-brand-soft)!important;border-color:var(--fv-brand-border)!important;color:var(--fv-brand-text)!important}
.payment-tip{background:var(--fv-brand-soft)!important;border-color:var(--fv-brand-border)!important}
.payment-card-fancy{background:var(--fv-card)!important;border:1px solid var(--fv-brand-border)!important;box-shadow:0 20px 48px rgba(0,0,0,.5)!important}
@media (prefers-reduced-motion:reduce){
  *,::before,::after{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
/* fin fuvev-theme.v5.css */
