/* FUTEBOL VISEU V221 — Diretos focados no distrito de Viseu */
:root{
  --fv221-navy:#071522;
  --fv221-navy-2:#0d2233;
  --fv221-green:#79c900;
  --fv221-green-dark:#4f8f00;
  --fv221-green-soft:#f1f8e8;
  --fv221-bg:#f4f7f8;
  --fv221-text:#14202a;
  --fv221-muted:#667985;
  --fv221-line:#dfe6ea;
  --fv221-red:#dc2638;
}

body .fv221-diretos-page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 0 20px!important;
  background:var(--fv221-bg)!important;
  color:var(--fv221-text)!important;
  overflow-x:hidden!important;
}
body .fv221-diretos-page .live-wrap{
  width:min(calc(100% - 28px),1180px)!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Topo compacto */
body .fv221-diretos-page .fv221-hero.live-hero{
  margin:0!important;
  padding:25px 0 22px!important;
  border:0!important;
  border-bottom:4px solid var(--fv221-green)!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 85% 15%,rgba(121,201,0,.17),transparent 28%),
    linear-gradient(135deg,var(--fv221-navy),var(--fv221-navy-2))!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .fv221-hero:after{display:none!important}
body .fv221-diretos-page .fv221-hero-inner{display:block!important}
body .fv221-diretos-page .fv221-hero-copy{max-width:860px!important}
body .fv221-diretos-page .fv221-eyebrow{
  display:block!important;
  margin-bottom:7px!important;
  color:#bceb80!important;
  font-size:11px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body .fv221-diretos-page .fv221-hero h1{
  margin:0!important;
  color:#fff!important;
  font-size:clamp(30px,4vw,48px)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
}
body .fv221-diretos-page .fv221-hero-text{
  display:block!important;
  max-width:740px!important;
  margin:8px 0 0!important;
  color:#bdcbd4!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body .fv221-diretos-page .live-view-tabs{
  display:inline-flex!important;
  width:auto!important;
  margin:16px 0 0!important;
  padding:4px!important;
  gap:4px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.06)!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .live-view-tab{
  min-width:82px!important;
  min-height:38px!important;
  padding:8px 14px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  color:#d5e0e6!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .live-view-tab:hover{
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
}
body .fv221-diretos-page .live-view-tab.is-active{
  background:var(--fv221-green)!important;
  color:var(--fv221-navy)!important;
}
body .fv221-diretos-page .fv221-hero-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px 14px!important;
  margin-top:12px!important;
  color:#98abb7!important;
  font-size:10.5px!important;
  font-weight:750!important;
}
body .fv221-diretos-page .fv221-hero-meta span{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
}
body .fv221-diretos-page .fv221-hero-meta span+span:before{
  content:""!important;
  width:3px!important;
  height:3px!important;
  margin-right:2px!important;
  border-radius:50%!important;
  background:#667d8c!important;
}
body .fv221-diretos-page .live-update-dot{
  display:inline-block!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--fv221-green)!important;
  box-shadow:0 0 0 4px rgba(121,201,0,.12)!important;
}

/* Só as competições que têm jogos */
body .fv221-diretos-page .live-competition-strip{
  margin:0!important;
  padding:10px 0!important;
  border:0!important;
  border-bottom:1px solid var(--fv221-line)!important;
  background:#fff!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .live-competition-strip-inner{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  overflow-x:auto!important;
  scrollbar-width:none!important;
}
body .fv221-diretos-page .live-competition-strip-inner::-webkit-scrollbar{display:none!important}
body .fv221-diretos-page .live-competition-strip a{
  flex:0 0 auto!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:7px 11px!important;
  border:1px solid #dce5e9!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#34454f!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .live-competition-strip a.has-games{
  border-color:#c8dfab!important;
  background:#f7fbf2!important;
  color:#355d12!important;
}
body .fv221-diretos-page .live-competition-strip img{
  width:25px!important;
  height:25px!important;
  object-fit:contain!important;
}
body .fv221-diretos-page .live-competition-strip span{
  font-size:11px!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
body .fv221-diretos-page .live-competition-strip i{
  width:6px!important;
  height:6px!important;
  border-radius:50%!important;
  background:var(--fv221-green)!important;
}

/* Conteúdo */
body .fv221-diretos-page .live-main{
  padding:18px 0 8px!important;
  background:transparent!important;
}
body .fv221-diretos-page .live-competition{
  margin:0 0 18px!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid var(--fv221-line)!important;
  border-top:3px solid var(--fv221-green)!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(12,32,43,.055)!important;
}
body .fv221-diretos-page .live-competition-head{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  min-height:58px!important;
  padding:10px 13px!important;
  border:0!important;
  border-bottom:1px solid #e7ecef!important;
  background:#fff!important;
}
body .fv221-diretos-page .live-competition-head img{
  width:36px!important;
  height:36px!important;
  object-fit:contain!important;
}
body .fv221-diretos-page .live-competition-head h2{
  margin:0!important;
  color:var(--fv221-navy)!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:900!important;
}
body .fv221-diretos-page .live-comp-count{
  margin-left:auto!important;
  padding:6px 9px!important;
  border:1px solid #dce9cd!important;
  border-radius:999px!important;
  background:var(--fv221-green-soft)!important;
  color:var(--fv221-green-dark)!important;
  font-size:9.5px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
body .fv221-diretos-page .live-round{
  padding:13px!important;
  border:0!important;
  border-bottom:1px solid #edf1f3!important;
  background:#fff!important;
}
body .fv221-diretos-page .live-round:last-child{border-bottom:0!important}
body .fv221-diretos-page .live-round-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:auto!important;
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
body .fv221-diretos-page .live-round-head h3{
  margin:0!important;
  color:#354651!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
}
body .fv221-diretos-page .live-round-head span{
  color:#81919b!important;
  font-size:10px!important;
  font-weight:800!important;
}
body .fv221-diretos-page .live-games{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
}

/* Cartão de jogo */
body .fv221-diretos-page .live-game.fv221-game{
  position:relative!important;
  min-width:0!important;
  margin:0!important;
  padding:12px!important;
  border:1px solid #dde5e9!important;
  border-left:3px solid #cbd5da!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--fv221-text)!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .live-game.fv221-game.is-live{
  border-left-color:var(--fv221-red)!important;
  box-shadow:0 0 0 1px rgba(220,38,56,.025)!important;
}
body .fv221-diretos-page .live-game.fv221-game.is-finished{border-left-color:#98a2aa!important}
body .fv221-diretos-page .live-game.fv221-game:hover{
  border-color:#cfd9de!important;
  border-left-color:var(--fv221-green)!important;
  background:#fff!important;
}
body .fv221-diretos-page .live-game-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin:0 0 9px!important;
  padding:0 0 9px!important;
  border:0!important;
  border-bottom:1px solid #edf1f3!important;
}
body .fv221-diretos-page .live-status{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  color:var(--fv221-red)!important;
  font-size:9.5px!important;
  line-height:1.2!important;
  font-weight:950!important;
  letter-spacing:.035em!important;
}
body .fv221-diretos-page .live-status:before{
  width:7px!important;
  height:7px!important;
  flex:0 0 7px!important;
  border-radius:50%!important;
  background:var(--fv221-red)!important;
}
body .fv221-diretos-page .live-status.scheduled{color:#587b32!important}
body .fv221-diretos-page .live-status.scheduled:before{background:var(--fv221-green)!important;box-shadow:none!important}
body .fv221-diretos-page .live-status.finished{color:#687984!important}
body .fv221-diretos-page .live-status.finished:before{background:#9aa8b0!important;box-shadow:none!important}
body .fv221-diretos-page .live-status.interval{color:#9b6500!important}
body .fv221-diretos-page .live-status.interval:before{background:#e8a817!important;box-shadow:none!important}
body .fv221-diretos-page .live-status.postponed{color:#946100!important}
body .fv221-diretos-page .live-status.postponed:before{background:#e7a719!important;box-shadow:none!important}
body .fv221-diretos-page .fv221-kickoff{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:5px 9px!important;
  border:0!important;
  border-radius:7px!important;
  background:var(--fv221-navy)!important;
  color:#fff!important;
  font-size:10.5px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body .fv221-diretos-page .live-team{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:9px!important;
  min-height:53px!important;
  margin:0!important;
  padding:7px 5px!important;
  border:0!important;
  border-bottom:1px solid #edf1f3!important;
  background:transparent!important;
}
body .fv221-diretos-page .live-team.is-viseu-team{
  margin:3px 0!important;
  padding:7px!important;
  border:1px solid #d9e9c6!important;
  border-radius:9px!important;
  background:#f7fbf2!important;
}
body .fv221-diretos-page .live-team-info{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:0!important;
}
body .fv221-diretos-page .live-team-info img{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  padding:3px!important;
  border:1px solid #e2e8eb!important;
  border-radius:8px!important;
  background:#fff!important;
  object-fit:contain!important;
}
body .fv221-diretos-page .fv221-team-copy{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:5px 7px!important;
  min-width:0!important;
}
body .fv221-diretos-page .live-team-info strong{
  display:block!important;
  min-width:0!important;
  color:#17242d!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
body .fv221-diretos-page .fv221-viseu-badge{
  display:inline-flex!important;
  align-items:center!important;
  min-height:18px!important;
  padding:2px 6px!important;
  border-radius:999px!important;
  background:var(--fv221-green)!important;
  color:var(--fv221-navy)!important;
  font-size:7.5px!important;
  font-weight:950!important;
  letter-spacing:.06em!important;
}
body .fv221-diretos-page .live-score{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:4px 7px!important;
  border-radius:8px!important;
  background:var(--fv221-navy)!important;
  color:#fff!important;
  font-size:23px!important;
  line-height:1!important;
  font-weight:950!important;
}
body .fv221-diretos-page .live-score.pending{
  background:#f0f3f5!important;
  color:#8a99a2!important;
  font-size:19px!important;
}
body .fv221-diretos-page .fv221-stadium{
  display:block!important;
  margin:9px 0 0!important;
  padding:0!important;
  color:#6f818c!important;
  font-size:10.5px!important;
  line-height:1.35!important;
}
body .fv221-diretos-page .fv221-game-detail.live-game-detail{
  width:100%!important;
  min-height:36px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:10px 0 0!important;
  padding:7px 10px!important;
  border:1px solid #c9dfaF!important;
  border-radius:8px!important;
  background:var(--fv221-green-soft)!important;
  color:#416d16!important;
  font-size:10px!important;
  font-weight:950!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
body .fv221-diretos-page .fv221-game-detail.live-game-detail:hover{
  border-color:var(--fv221-green)!important;
  background:#eaf5dc!important;
  color:#284b09!important;
}
body .fv221-diretos-page .live-note{
  margin:9px 0 0!important;
  padding:7px 9px!important;
  border-radius:7px!important;
  background:#fff7e6!important;
  color:#855800!important;
  font-size:10.5px!important;
  font-weight:800!important;
}

body .fv221-diretos-page .live-all-empty{
  margin:0!important;
  padding:34px 20px!important;
  border:1px dashed #bdcbd2!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--fv221-text)!important;
}
body .fv221-diretos-page .live-all-empty strong{font-size:19px!important;color:var(--fv221-navy)!important}
body .fv221-diretos-page .live-empty-actions a.primary{background:var(--fv221-green)!important;color:var(--fv221-navy)!important}

@media (max-width:820px){
  body .fv221-diretos-page .live-games{grid-template-columns:1fr!important}
}

@media (max-width:680px){
  body .fv221-diretos-page .live-wrap{
    width:calc(100% - 16px)!important;
    max-width:calc(100% - 16px)!important;
  }
  body .fv221-diretos-page .fv221-hero.live-hero{padding:18px 0 16px!important}
  body .fv221-diretos-page .fv221-eyebrow{font-size:9.5px!important}
  body .fv221-diretos-page .fv221-hero h1{font-size:28px!important;line-height:1.06!important}
  body .fv221-diretos-page .fv221-hero-text{margin-top:6px!important;font-size:11.5px!important}
  body .fv221-diretos-page .live-view-tabs{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    margin-top:13px!important;
  }
  body .fv221-diretos-page .live-view-tab{
    width:100%!important;
    min-width:0!important;
    min-height:37px!important;
    padding:7px 4px!important;
    font-size:10.5px!important;
  }
  body .fv221-diretos-page .fv221-hero-meta{gap:5px 10px!important;margin-top:10px!important;font-size:9.5px!important}
  body .fv221-diretos-page .fv221-hero-meta span+span:before{display:none!important}
  body .fv221-diretos-page .live-competition-strip{padding:8px 0!important}
  body .fv221-diretos-page .live-competition-strip a{min-height:38px!important;padding:6px 9px!important}
  body .fv221-diretos-page .live-competition-strip img{width:22px!important;height:22px!important}
  body .fv221-diretos-page .live-competition-strip span{font-size:10px!important}
  body .fv221-diretos-page .live-main{padding-top:10px!important}
  body .fv221-diretos-page .live-competition{margin-bottom:12px!important;border-radius:11px!important}
  body .fv221-diretos-page .live-competition-head{min-height:52px!important;padding:9px 10px!important}
  body .fv221-diretos-page .live-competition-head img{width:31px!important;height:31px!important}
  body .fv221-diretos-page .live-competition-head h2{font-size:14px!important}
  body .fv221-diretos-page .live-comp-count{padding:5px 7px!important;font-size:8.5px!important}
  body .fv221-diretos-page .live-round{padding:9px!important}
  body .fv221-diretos-page .live-round-head{margin-bottom:8px!important}
  body .fv221-diretos-page .live-round-head h3{font-size:10.5px!important}
  body .fv221-diretos-page .live-game.fv221-game{padding:10px!important;border-radius:9px!important}
  body .fv221-diretos-page .live-game-top{margin-bottom:7px!important;padding-bottom:7px!important}
  body .fv221-diretos-page .live-status{font-size:8.8px!important}
  body .fv221-diretos-page .fv221-kickoff{min-height:27px!important;padding:5px 8px!important;font-size:10px!important}
  body .fv221-diretos-page .live-team{min-height:50px!important;padding:6px 3px!important}
  body .fv221-diretos-page .live-team.is-viseu-team{padding:6px!important}
  body .fv221-diretos-page .live-team-info img{width:34px!important;height:34px!important;flex-basis:34px!important}
  body .fv221-diretos-page .live-team-info strong{font-size:12.5px!important}
  body .fv221-diretos-page .live-score{min-width:36px!important;min-height:36px!important;font-size:21px!important}
  body .fv221-diretos-page .fv221-game-detail.live-game-detail{min-height:35px!important}
}
