/* FUTEBOL VISEU V178
   Visual mais simples, coerente e futebolístico.
   Regra principal: em fundos escuros, texto sempre claro.
*/
:root{
  --fv178-navy:#071827;
  --fv178-navy-2:#0d2942;
  --fv178-green:#78c800;
  --fv178-green-dark:#4d8700;
  --fv178-green-soft:#eef8df;
  --fv178-text:#142033;
  --fv178-muted:#667085;
  --fv178-line:#dbe4ea;
  --fv178-bg:#f4f6f8;
  --fv178-white:#fff;
  --fv178-shadow:0 6px 18px rgba(7,24,39,.06);
  --fv178-radius:14px;
}

html{background:var(--fv178-bg)!important}
body{
  color:var(--fv178-text)!important;
  background:var(--fv178-bg)!important;
  background-image:none!important;
}
h1,h2,h3,h4,h5,h6{color:var(--fv178-text);font-weight:950!important}
p,small{line-height:1.5}

/* --------------------------------------------------------------
   1. FUNDOS ESCUROS = LETRAS BRANCAS
   -------------------------------------------------------------- */
.fvms-header,
.fvms-panel,
.fv-hero,
.fv-comp-hero,
.fv143-simple-hero,
.fv-clubes-hero,
.club-block-hero,
.live-hero,
.fvc-hero,
.fvj-hero,
.fv63-footer{
  color:#fff!important;
}
.fv-hero h1,.fv-hero h2,.fv-hero h3,.fv-hero p,.fv-hero strong,.fv-hero small,.fv-hero span,
.fv-comp-hero h1,.fv-comp-hero h2,.fv-comp-hero h3,.fv-comp-hero p,.fv-comp-hero strong,.fv-comp-hero small,.fv-comp-hero span,
.fv143-simple-hero h1,.fv143-simple-hero h2,.fv143-simple-hero h3,.fv143-simple-hero p,.fv143-simple-hero strong,.fv143-simple-hero small,.fv143-simple-hero span,
.fv-clubes-hero h1,.fv-clubes-hero h2,.fv-clubes-hero h3,.fv-clubes-hero p,.fv-clubes-hero strong,.fv-clubes-hero small,.fv-clubes-hero span,
.club-block-hero h1,.club-block-hero h2,.club-block-hero h3,.club-block-hero p,.club-block-hero strong,.club-block-hero small,.club-block-hero span,
.live-hero h1,.live-hero h2,.live-hero h3,.live-hero p,.live-hero strong,.live-hero small,.live-hero span,
.fvc-hero h1,.fvc-hero h2,.fvc-hero h3,.fvc-hero p,.fvc-hero strong,.fvc-hero small,.fvc-hero span,
.fvj-hero h1,.fvj-hero h2,.fvj-hero h3,.fvj-hero p,.fvj-hero strong,.fvj-hero small,.fvj-hero span{
  color:#fff!important;
}
.fv-hero .fv143-kicker,
.fv-comp-hero .fv143-kicker,
.fv143-simple-hero .fv143-kicker,
.fv-clubes-hero .fv-clubes-eyebrow,
.club-block-hero .club-tag,
.live-hero .live-kicker,
.fvc-hero .fvc-kicker{
  color:#bff184!important;
}
.z-live-shell .z-live-head,
.z-live-shell .z-live-head *,
.fv154-participate .fv154-participate-copy,
.fv154-participate .fv154-participate-copy *,
.fv-social-connect__head,
.fv-social-connect__head *,
.fv-social-connect__follow>span,
.fv-social-connect__follow>span *,
.fv63-footer summary,
.fv63-footer summary *,
.fv63-footer .fv63-bottom,
.fv63-footer .fv63-bottom *{
  color:#fff!important;
}
.z-live-shell .z-live-head p,
.z-live-shell .z-live-head small,
.fv154-participate .fv154-participate-copy p,
.fv-social-connect__head p,
.fv63-footer .fv63-bottom small{
  color:#c4d0da!important;
}
.fvms-panel section>strong{color:#bff184!important}
.fvms-panel a{color:#e3eaf0!important}
.fvms-panel a:hover{color:#fff!important}

/* --------------------------------------------------------------
   2. MENOS "CAIXAS": BLOCOS MAIS SIMPLES
   -------------------------------------------------------------- */
.z-block,
.z-results-panel,
.fv154-table-card,
.z-matchday-panel,
.z-team-card,
.fv55-gallery-card,
.fv-series-card,
.fv-block,
.fv-results-block,
.fv-teams-block,
.fv-team-card-wrap,
.fv-team-card,
.fv-club-card,
.club-overview-card,
.club-block-section,
.club-stat-card,
.club-staff-card,
.player-chip,
.live-game,
.live-competition,
.fvc-card,
.fvc-action,
.fvc-end-card,
.fv-card,
.page-card,
.info-card,
.fvj-card,
.admin-stat,
.fv164-nav,
.fv164-quick-grid a,
.admin-section.card{
  border:1px solid var(--fv178-line)!important;
  border-top:1px solid var(--fv178-line)!important;
  border-left:1px solid var(--fv178-line)!important;
  border-radius:var(--fv178-radius)!important;
  background:#fff!important;
  box-shadow:var(--fv178-shadow)!important;
}

/* Rows de jogos/resultados devem parecer linhas de competição, não cartões empilhados. */
.z-fixture-row,
.z-recent-result,
.fv-game-card,
.fv77-result-row{
  border:1px solid #e1e8ed!important;
  border-left:1px solid #e1e8ed!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.z-fixture-row:hover,
.z-recent-result:hover,
.fv-game-card:hover,
.fv77-result-row:hover{
  border-color:#b8d98c!important;
  box-shadow:0 4px 12px rgba(7,24,39,.05)!important;
}

/* Títulos: um único detalhe verde em vez de várias faixas. */
.z-section-heading h2:after,
.fv-section-head h2:after,
.fv-block-head h2:after{
  width:38px!important;
  height:3px!important;
  margin-top:7px!important;
  background:var(--fv178-green)!important;
}
.z-section-heading>div>span,
.z-block-heading>div>span,
.z-results-head>div>span,
.fv-section-head .fv-pill,
.fv-block-head .fv-pill,
.fv-clubes-eyebrow,
.fvc-kicker,
.live-kicker{
  color:var(--fv178-green-dark)!important;
}

/* --------------------------------------------------------------
   3. ZONAS ESCURAS DE FUTEBOL — LIMPAS E CONSISTENTES
   -------------------------------------------------------------- */
.z-live-shell,
.fv-hero,
.fv-comp-hero,
.fv143-simple-hero,
.fv-clubes-hero,
.club-block-hero,
.live-hero,
.fvc-hero,
.fvj-hero{
  border:0!important;
  border-bottom:3px solid var(--fv178-green)!important;
  border-radius:16px!important;
  background:var(--fv178-navy)!important;
  background-image:linear-gradient(110deg,rgba(120,200,0,.10),transparent 32%)!important;
  box-shadow:0 10px 26px rgba(7,24,39,.14)!important;
}
.z-live-shell{border-radius:16px!important}
.fv63-footer{
  border-top:3px solid var(--fv178-green)!important;
  background:var(--fv178-navy)!important;
  background-image:none!important;
}
.fv154-participate{
  border:0!important;
  border-left:4px solid var(--fv178-green)!important;
  border-radius:14px!important;
  background:var(--fv178-navy)!important;
  background-image:none!important;
  box-shadow:none!important;
}

/* cartões brancos dentro de zonas escuras voltam a texto escuro */
.z-live-card,
.z-live-card *,
.fv154-participate-actions a,
.fv154-participate-actions a *,
.fv-social-link,
.fv-social-link *,
.fv-social-connect__follow a,
.fv-social-connect__follow a *{
  color:var(--fv178-text)!important;
}
.z-live-card small,
.fv154-participate-actions small,
.fv-social-link small{
  color:var(--fv178-muted)!important;
}

/* --------------------------------------------------------------
   4. MARCADORES / TABELAS / BOTÕES
   -------------------------------------------------------------- */
.z-score,
.fv-score,
.z-live-score,
.live-score,
.fv-game-time,
.fv77-score{
  border:0!important;
  border-radius:9px!important;
  background:var(--fv178-navy)!important;
  color:#fff!important;
  box-shadow:inset 0 -3px 0 var(--fv178-green)!important;
  font-weight:950!important;
}
.z-score *,
.fv-score *,
.z-live-score *,
.live-score *,
.fv-game-time *,
.fv77-score *{color:#fff!important}

table thead th,
.fv-table thead th{
  background:var(--fv178-navy)!important;
  color:#fff!important;
  font-weight:950!important;
}
table thead th *,
.fv-table thead th *{color:#fff!important}

.btn.primary,
button.primary,
a.btn.primary,
.z-btn-primary,
.fvc-submit{
  border-color:var(--fv178-green)!important;
  background:var(--fv178-green)!important;
  color:var(--fv178-navy)!important;
  font-weight:950!important;
  box-shadow:none!important;
}
.btn.primary:hover,
button.primary:hover,
a.btn.primary:hover{background:#88d613!important}

.fv154-game-link,
.fv154-result-game-link,
.fv169-team-game-link,
.fv141-section-link,
.fv141-results-link{
  border:1px solid #cfe5ad!important;
  background:var(--fv178-green-soft)!important;
  color:#315d00!important;
  box-shadow:none!important;
}

/* --------------------------------------------------------------
   5. PAINEL ADMINISTRATIVO — RETIRAR EXCESSO DE DECORAÇÃO
   -------------------------------------------------------------- */
body.fv-admin-page{background:#f4f6f8!important;background-image:none!important}
.section-title{
  border:1px solid var(--fv178-line)!important;
  border-top:1px solid var(--fv178-line)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:var(--fv178-shadow)!important;
}
.fv164-nav{background:#fff!important}
.fv164-nav a.is-active{
  border-color:#cfe5ad!important;
  background:var(--fv178-green-soft)!important;
  color:#315d00!important;
  box-shadow:inset 3px 0 0 var(--fv178-green)!important;
}
.fv164-quick-grid a{background:#fff!important}
.fv164-quick-grid i{background:var(--fv178-green-soft)!important;color:#315d00!important}

#ficha-jogo{
  border:1px solid var(--fv178-line)!important;
  border-top:1px solid var(--fv178-line)!important;
  background:#fff!important;
}
#ficha-jogo .admin-form-title h2:before{display:none!important}
#ficha-jogo .fv167-selected-game{
  border:0!important;
  border-radius:12px!important;
  background:var(--fv178-navy)!important;
  background-image:none!important;
  box-shadow:none!important;
}
#ficha-jogo .fv167-selected-game>span,
#ficha-jogo .fv167-selected-game>strong,
#ficha-jogo .fv167-selected-game>strong>span{
  color:#fff!important;
}
#ficha-jogo .fv167-selected-game b{
  background:var(--fv178-green)!important;
  color:var(--fv178-navy)!important;
  box-shadow:none!important;
}
#ficha-jogo .form-grid,
#ficha-jogo .fv154-goal-add{
  border:1px solid var(--fv178-line)!important;
  border-left:1px solid var(--fv178-line)!important;
  border-radius:12px!important;
  background:#f7f9fb!important;
}
#ficha-jogo .fv154-goals-admin{
  border:1px solid var(--fv178-line)!important;
  border-top:1px solid var(--fv178-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
#ficha-jogo .fv154-goal-row>b{
  background:var(--fv178-green)!important;
  color:var(--fv178-navy)!important;
  box-shadow:none!important;
}

/* --------------------------------------------------------------
   6. MOBILE
   -------------------------------------------------------------- */
@media(max-width:700px){
  .z-live-shell,
  .fv-hero,
  .fv-comp-hero,
  .fv143-simple-hero,
  .fv-clubes-hero,
  .club-block-hero,
  .live-hero,
  .fvc-hero,
  .fvj-hero{border-radius:12px!important}
  .z-block,
  .z-results-panel,
  .fv154-table-card,
  .z-team-card,
  .fv-team-card-wrap,
  .fv-club-card,
  .live-game,
  .fvc-card,
  .fvj-card,
  .admin-section.card{border-radius:12px!important}
}
