/* ActiveFoot — Refonte 3 Lot 7d : finales publiques bracket simple expérimental */
.af-finals-simple{
  margin:0 0 18px;
  color:var(--fg,#f8fafc);
}
.af-finals-simple *{box-sizing:border-box;}
.af-finals-simple__intro{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(34,197,94,.24);
  border-radius:20px;
  background:
    radial-gradient(circle at 0 0, rgba(34,197,94,.14), transparent 34%),
    linear-gradient(135deg, rgba(7,18,16,.98), rgba(15,23,42,.94));
  padding:16px 18px;
  margin-bottom:14px;
}
.af-finals-simple__eyebrow{
  color:var(--green,#22c55e);
  font-family:var(--fh,inherit);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:11px;
  font-weight:950;
  margin-bottom:8px;
}
.af-finals-simple__title{
  font-family:var(--fh,inherit);
  font-size:22px;
  line-height:1.12;
  font-weight:950;
  margin:0 0 6px;
  color:#f8fafc;
}
.af-finals-simple__hint{
  font-size:13px;
  line-height:1.45;
  color:rgba(203,213,225,.78);
  max-width:900px;
}
.af-finals-simple__legend{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
.af-finals-simple__pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(148,163,184,.18);
  border-radius:999px;
  background:rgba(15,23,42,.66);
  color:rgba(226,232,240,.86);
  font-size:11px;
  font-weight:800;
}
.af-finals-simple__dot{
  width:8px;
  height:8px;
  border-radius:99px;
  background:var(--green,#22c55e);
  box-shadow:0 0 0 3px rgba(34,197,94,.12);
}
.af-finals-simple__dot--played{background:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.12);}
.af-finals-simple__dot--pending{background:#facc15;box-shadow:0 0 0 3px rgba(250,204,21,.12);}
.af-finals-simple__tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 0 12px;
  margin-bottom:8px;
  scrollbar-width:thin;
}
.af-finals-simple__tab{
  flex:0 0 auto;
  border:1px solid rgba(148,163,184,.22);
  border-radius:999px;
  padding:9px 12px;
  background:rgba(15,23,42,.74);
  color:rgba(226,232,240,.84);
  font-family:var(--fh,inherit);
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}
.af-finals-simple__tab:hover{border-color:rgba(34,197,94,.45);color:#fff;}
.af-finals-simple__tab.is-active{
  color:#07120f;
  border-color:var(--green,#22c55e);
  background:linear-gradient(135deg, var(--green,#22c55e), #86efac);
}
.af-finals-simple__league{
  display:none;
  border:1px solid rgba(34,197,94,.20);
  border-radius:20px;
  background:rgba(15,23,42,.72);
  overflow:hidden;
  margin-bottom:14px;
}
.af-finals-simple__league.is-active{display:block;}
.af-finals-simple__league-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  border-bottom:1px solid rgba(148,163,184,.15);
  background:linear-gradient(90deg, rgba(34,197,94,.11), rgba(15,23,42,.72));
}
.af-finals-simple__league-title{
  font-family:var(--fh,inherit);
  color:#f8fafc;
  font-size:17px;
  font-weight:950;
  line-height:1.2;
}
.af-finals-simple__league-meta{
  margin-top:3px;
  color:rgba(203,213,225,.68);
  font-size:12px;
}
.af-finals-simple__league-type{
  flex:0 0 auto;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(34,197,94,.10);
  border:1px solid rgba(34,197,94,.22);
  color:var(--green,#22c55e);
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.af-finals-simple__scroll-note{
  display:none;
  padding:10px 14px 0;
  color:rgba(203,213,225,.62);
  font-size:12px;
}
.af-finals-simple__board{
  overflow-x:auto;
  padding:14px;
  scrollbar-width:thin;
}
.af-finals-simple__grid{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(220px, 250px);
  gap:12px;
  min-width:max-content;
  align-items:stretch;
}
.af-finals-simple__round{
  display:flex;
  flex-direction:column;
  border:1px solid rgba(148,163,184,.16);
  border-radius:16px;
  background:rgba(2,6,23,.26);
  min-height:100%;
  overflow:hidden;
}
.af-finals-simple__round-head{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:10px 11px;
  border-bottom:1px solid rgba(148,163,184,.14);
  background:rgba(15,23,42,.76);
}
.af-finals-simple__round-name{
  font-family:var(--fh,inherit);
  font-weight:950;
  font-size:13px;
  color:#f8fafc;
  line-height:1.15;
}
.af-finals-simple__round-count{
  color:rgba(203,213,225,.60);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}
.af-finals-simple__matches{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:space-around;
  gap:11px;
  padding:11px;
}
.af-finals-simple__match{
  position:relative;
  border:1px solid rgba(148,163,184,.18);
  border-radius:14px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(15,23,42,.98), rgba(10,18,32,.96));
  box-shadow:0 10px 24px rgba(0,0,0,.14);
}
.af-finals-simple__match::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:3px;
  background:rgba(148,163,184,.26);
}
.af-finals-simple__match.is-played::before{background:#60a5fa;}
.af-finals-simple__match.is-pending::before{background:#facc15;}
.af-finals-simple__match.is-final::before{background:var(--green,#22c55e);}
.af-finals-simple__match-top{
  display:flex;
  justify-content:space-between;
  gap:8px;
  padding:8px 9px 6px 11px;
  border-bottom:1px solid rgba(148,163,184,.12);
  color:rgba(203,213,225,.68);
  font-size:10.5px;
  font-weight:800;
}
.af-finals-simple__match-label{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.af-finals-simple__match-time{white-space:nowrap;color:rgba(226,232,240,.82);}
.af-finals-simple__team{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:center;
  padding:7px 9px 7px 11px;
  font-size:12px;
  color:rgba(226,232,240,.88);
}
.af-finals-simple__team + .af-finals-simple__team{border-top:1px solid rgba(148,163,184,.10);}
.af-finals-simple__team.is-winner{color:var(--green,#22c55e);font-weight:950;}
.af-finals-simple__team-name{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  min-width:0;
}
.af-finals-simple__score{
  min-width:28px;
  text-align:center;
  padding:3px 7px;
  border-radius:8px;
  background:rgba(148,163,184,.12);
  color:#f8fafc;
  font-family:var(--fh,inherit);
  font-size:13px;
  font-weight:950;
}
.af-finals-simple__team.is-winner .af-finals-simple__score{
  background:rgba(34,197,94,.16);
  color:var(--green,#22c55e);
}
.af-finals-simple__pen{
  padding:0 9px 8px 11px;
  color:rgba(250,204,21,.86);
  font-size:10.5px;
  font-weight:850;
}
.af-finals-simple__place{
  padding:0 9px 8px 11px;
  color:rgba(203,213,225,.60);
  font-size:10.5px;
}
.af-finals-simple-old{
  margin-top:14px;
  border:1px dashed rgba(148,163,184,.26);
  border-radius:16px;
  background:rgba(15,23,42,.42);
  overflow:hidden;
}
.af-finals-simple-old > summary{
  cursor:pointer;
  padding:12px 14px;
  color:rgba(226,232,240,.86);
  font-family:var(--fh,inherit);
  font-size:13px;
  font-weight:900;
  list-style:none;
}
.af-finals-simple-old > summary::-webkit-details-marker{display:none;}
.af-finals-simple-old__content{
  padding:12px;
  border-top:1px dashed rgba(148,163,184,.22);
}
@media (max-width:760px){
  .af-finals-simple__intro{border-radius:16px;padding:14px;}
  .af-finals-simple__title{font-size:18px;}
  .af-finals-simple__hint{font-size:12px;}
  .af-finals-simple__league-head{display:block;padding:13px 14px;}
  .af-finals-simple__league-type{display:inline-flex;margin-top:8px;}
  .af-finals-simple__scroll-note{display:block;}
  .af-finals-simple__board{padding:12px;}
  .af-finals-simple__grid{grid-auto-columns:minmax(205px, 84vw);gap:10px;}
  .af-finals-simple__round-head{min-height:48px;}
  .af-finals-simple__team{font-size:12px;}
}


/* Lot 7c hotfix: garde-fou si les CSS globales forcent un rendu texte */
#af-finals-simple-root.af-finals-simple{display:block!important;width:100%!important;}
#af-finals-simple-root .af-finals-simple__tabs button{font:inherit;}
#af-finals-simple-root .af-finals-simple__board{max-width:100%;}


/* Lot 7d : rendu équilibré — plus lisible que pleine largeur totale */
@media (min-width:900px){
  #af-finals-simple-root .af-finals-simple__intro,
  #af-finals-simple-root .af-finals-simple__tabs{
    max-width:980px;
    margin-left:auto;
    margin-right:auto;
  }
  #af-finals-simple-root .af-finals-simple__league.is-active{
    width:min(calc(100vw - 96px), 1320px)!important;
    max-width:1320px!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
  }
  #af-finals-simple-root .af-finals-simple__league-head{
    padding:12px 15px!important;
  }
  #af-finals-simple-root .af-finals-simple__board{
    padding:14px!important;
    overflow-x:auto!important;
  }
  #af-finals-simple-root .af-finals-simple__grid{
    grid-auto-columns:minmax(205px, 1fr)!important;
    min-width:100%!important;
    gap:12px!important;
  }
  #af-finals-simple-root .af-finals-simple__round{
    min-width:0!important;
  }
  #af-finals-simple-root .af-finals-simple__match{
    box-shadow:none!important;
  }
}
@media (min-width:1500px){
  #af-finals-simple-root .af-finals-simple__league.is-active{
    width:1320px!important;
  }
}
@media (max-width:899px){
  #af-finals-simple-root .af-finals-simple__league.is-active{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }
}
