.match-information{display:flex;justify-content:space-between;gap:30px;align-items:center;background:#fff;border-left:6px solid var(--gold);padding:18px 22px;margin-bottom:26px}
.match-information p{margin:0;line-height:1.45}.match-information div{display:grid;gap:7px;flex:none}.match-information a{color:var(--wine);font-size:12px;font-weight:900}
.matches-health{margin:-12px 0 24px;padding:13px 16px;border-left:5px solid #b61937;background:#fff0f2;color:#8e0e2d;font-weight:800;line-height:1.45}
.match-calendar{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.match-calendar .match-card{display:block;padding:0;border:1px solid var(--line);border-top:5px solid var(--wine);overflow:hidden;background:#fff}
.match-card>header{height:auto;background:#faf5f1;border:0;padding:15px 18px;display:flex;justify-content:space-between;gap:12px}
.match-card>header time{font-weight:900;text-transform:capitalize}.match-card>header span{color:var(--wine);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}
.match-card .competition-name{min-height:44px;margin:0;padding:13px 18px;color:#5e5350;font-size:12px;line-height:1.45}
.scoreboard{display:grid;grid-template-columns:minmax(0,1fr) 86px minmax(0,1fr);gap:12px;align-items:center;padding:18px}
.scoreboard .match-team{display:grid;justify-items:center;align-content:start;gap:8px;text-align:center}.scoreboard .match-team b{line-height:1.2}
.scoreboard .match-logo{width:58px;height:58px}.scoreboard .match-logo.fallback{display:grid;place-items:center;border-radius:50%;background:#eee5dc;color:var(--wine);font-weight:900}
.score,.kickoff,.match-status{justify-self:center;display:flex;align-items:center;justify-content:center;min-width:76px;min-height:52px;padding:9px;background:var(--wine);color:#fff;font:30px Impact,'Arial Narrow',sans-serif;letter-spacing:.02em}
.match-calendar .score{color:#fff}.score i{font-style:normal;color:var(--gold);padding:0 5px}.match-calendar .kickoff{font-size:21px;background:#242020;color:var(--gold)}.match-calendar .kickoff.unconfirmed{font-family:Arial,sans-serif;font-size:11px;font-weight:900;text-align:center;color:#fff}
.match-status{font-family:Arial,sans-serif;font-size:11px;font-weight:900;text-transform:uppercase}.match-status.postponed{background:#a66a00}.match-status.cancelled{background:#5e5555}
.match-card>footer{display:flex;justify-content:space-between;gap:16px;padding:14px 18px;background:#faf5f1;border-top:1px solid var(--line);font-size:11px}.match-card>footer a{color:var(--wine);font-weight:800}
.match-location{display:inline;line-height:1.45}.match-location b{color:var(--ink);font-size:12px}.match-location i{font-style:normal}.match-location a{color:var(--wine);font-weight:900;text-decoration:underline;text-underline-offset:3px}.team-match-row>.match-location{grid-column:1;display:block}.team-match-row>.match-location b{font-size:inherit}
.event-card{grid-column:1/-1}.match-calendar .match-card>.event-summary{display:grid;grid-template-columns:110px 1fr;align-items:center;gap:20px;padding:18px;background:linear-gradient(135deg,#2a2023,#171012);color:#fff;text-align:left}.match-calendar .event-summary .kickoff{justify-self:start;width:100%;margin:0}.match-calendar .event-summary>div{display:grid!important;grid-template-columns:1fr!important;gap:4px;text-align:left}.event-summary>div b{font-size:19px}.event-summary>div span{font-size:11px;color:#d8c9ce;text-transform:uppercase;letter-spacing:.08em}
.match-calendar .match-card>.plateau-participants{display:block;grid-column:auto;padding:22px 18px 26px;text-align:left}.plateau-participants>small{display:block;margin-bottom:14px;color:var(--wine);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.match-calendar .plateau-participants>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:10px;text-align:left}.plateau-participants>div>span{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:10px;min-height:68px;border:1px solid var(--line);border-left:4px solid #cdbfb5;padding:10px 12px;background:#fff}.plateau-participants>div>span.host-team{background:var(--gold);color:var(--ink);border-color:#d39f00;border-left-color:var(--wine)}.plateau-participants>div>span.our-team{background:var(--wine);color:#fff;border-color:var(--wine);border-left-color:var(--gold)}.plateau-participants .participant-copy{display:grid;gap:3px}.plateau-participants .participant-copy b{font-size:13px;line-height:1.2}.plateau-participants .participant-copy small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.plateau-participants .match-logo{width:40px;height:40px;object-fit:contain}.plateau-participants .match-logo.fallback{display:grid;place-items:center;border:1px solid #d6c8bd;border-radius:50%;background:#f4eee8;color:var(--wine);font-size:20px;line-height:1}
.participant-empty{margin:0;color:#6b6060;font-size:12px}.match-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:#fff;border:1px solid var(--line);border-left:6px solid var(--gold);padding:17px;margin:0 0 28px}.match-filters label{display:grid;gap:7px;color:var(--wine);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.match-filters select{width:100%;padding:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:13px}
.match-calendar .match-card>.plateau-program{display:block;grid-column:auto;border-top:1px solid var(--line);text-align:left;font-size:inherit}.plateau-program>button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:15px;border:0;padding:15px 18px;background:#f7f0eb;color:var(--wine);font-weight:900;text-align:left;cursor:pointer}.plateau-program>button:hover,.plateau-program>button[aria-expanded="true"]{background:var(--gold);color:#211515}.plateau-program>button span{font-size:18px}.plateau-program-empty{border-top:1px solid var(--line);padding:13px 18px;color:#756b68;font-size:11px;font-weight:700}.plateau-games-detail{width:100%;padding:18px;background:#f7f0eb}.plateau-games-loading{margin:0;color:#756b68;font-size:12px}.plateau-games-list{display:grid;gap:8px}.plateau-game-row{display:grid;grid-template-columns:62px minmax(0,1fr) 86px minmax(0,1fr);align-items:center;gap:12px;padding:12px;background:#fff;border:1px solid var(--line)}.plateau-game-row>small{color:var(--wine);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.plateau-game-team{display:flex;align-items:center;gap:9px;min-width:0}.plateau-game-team b{font-size:12px;line-height:1.25}.plateau-game-team .match-logo{width:36px;height:36px;flex:none;object-fit:contain}.plateau-game-team .match-logo.fallback{display:grid;place-items:center;border-radius:50%;background:#f2ece7;color:var(--wine)}.plateau-game-score,.plateau-game-status{justify-self:center;min-width:65px;padding:8px;background:#211719;color:var(--gold);font-weight:900;text-align:center}.plateau-game-score i{padding:0 4px;color:#fff;font-style:normal}.plateau-game-status{font-size:9px;text-transform:uppercase}
.team-match-list{display:grid;gap:10px}.team-match-row{display:grid;grid-template-columns:100px minmax(150px,1fr) 90px minmax(150px,1fr);align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--wine);padding:15px}.team-match-row>time,.team-match-row>small,.team-match-row>span{grid-column:1}.team-match-row>.match-team:first-of-type{grid-column:2;grid-row:1/4}.team-match-row>strong{grid-column:3;grid-row:1/4;justify-self:center;background:var(--wine);color:#fff;padding:10px;font-size:20px}.team-match-row>.match-team:last-of-type{grid-column:4;grid-row:1/4}.team-match-row .match-logo{width:42px;height:42px}
.team-plateau-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-top:5px solid var(--wine)}.team-plateau-card>header{align-items:center}.team-plateau-card>header>div{display:grid;gap:4px}.team-plateau-card>header time{font-weight:900}.team-plateau-card>header small{color:var(--wine);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.team-plateau-card>header>strong{padding:10px 13px;background:#211719;color:var(--gold);font-size:18px}.team-plateau-card>.competition-name{min-height:0}.team-plateau-card>.plateau-participants{padding:18px}.team-plateau-card .plateau-participants>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:8px}.team-plateau-card>.plateau-program{display:block;border-top:1px solid var(--line);text-align:left;font-size:inherit}.team-plateau-card>footer{display:flex}
@media(max-width:760px){
  .match-information{display:grid}.match-information div{flex:none}
  .match-calendar{grid-template-columns:1fr}
  .event-card{grid-column:auto}
  .match-card>header{padding:12px 14px}.match-card>header time{font-size:14px}
  .match-card .competition-name{min-height:0;padding:10px 14px}
  .scoreboard{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:6px;padding:14px 8px 18px}
  .scoreboard .match-logo{width:48px;height:48px}.scoreboard .match-team b{font-size:12px}
  .score,.kickoff,.match-status{min-width:64px;min-height:46px;font-size:25px;padding:7px}.match-calendar .kickoff{font-size:18px}.match-calendar .kickoff.unconfirmed,.match-status{font-size:9px}
  .match-card>footer{display:grid;padding:12px 14px;gap:8px}.match-card>footer a:first-child{font-size:12px}
  .match-calendar .match-card>.event-summary{grid-template-columns:82px 1fr;gap:12px;padding:14px}.event-summary>div b{font-size:15px}.match-calendar .match-card>.plateau-participants{padding:16px 14px 20px}.match-calendar .plateau-participants>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.plateau-participants>div>span{grid-template-columns:34px 1fr;min-height:58px;padding:8px}.plateau-participants .match-logo{width:31px;height:31px}.plateau-participants .participant-copy b{font-size:11px}
  .plateau-program>button{padding:13px 14px}.plateau-games-detail{padding:9px}.plateau-game-row{grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr);padding:10px 6px;gap:6px}.plateau-game-row>small{grid-column:1/-1;text-align:center}.plateau-game-team{display:grid;justify-items:center;align-content:start;gap:5px;text-align:center}.plateau-game-team b{max-width:100%;font-size:10px;overflow-wrap:anywhere}.plateau-game-team .match-logo{width:34px;height:34px}.plateau-game-score,.plateau-game-status{min-width:52px;padding:7px 3px;font-size:10px}
  .team-match-row{grid-template-columns:1fr 64px 1fr;padding:13px 8px}.team-match-row>time,.team-match-row>small,.team-match-row>span{grid-column:1/-1;text-align:center}.team-match-row>.match-team:first-of-type{grid-column:1;grid-row:4}.team-match-row>strong{grid-column:2;grid-row:4;font-size:14px;padding:8px}.team-match-row>.match-team:last-of-type{grid-column:3;grid-row:4}.team-match-row .match-team{flex-direction:column}.team-match-row .match-team b{font-size:11px;text-align:center}
  .team-plateau-card>header{padding:12px 14px}.team-plateau-card>header time{font-size:14px}.team-plateau-card>header>strong{font-size:15px}.team-plateau-card>.plateau-participants{padding:14px}.team-plateau-card .plateau-participants>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.team-plateau-card>footer{display:grid}
  .match-filters{grid-template-columns:1fr;padding:14px}
}

/* FCE 2026-09 — contraste scores plateau */

.plateau-game-score{
  background:#fff;
  color:var(--wine);
  border:2px solid var(--wine);
  box-shadow:none;
}

.plateau-game-score i{
  color:var(--ink);
}


/* FCE 2026-09 — classements fiche équipe */

.team-standings{
  display:grid;
  gap:18px;
}

.team-standing-card{
  background:#fff;
  border:1px solid var(--line);
  border-top:5px solid var(--wine);
}

.team-standing-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;

  padding:16px 18px;
  background:#faf5f1;
}

.team-standing-head h3{
  margin:0;
  font-size:22px;
}

.team-standing-head a{
  color:var(--wine);
  font-size:11px;
  font-weight:900;
}

.team-standing-card .standings{
  overflow-x:auto;
}

.team-standing-card table{
  min-width:620px;
}

.team-standing-card tr.is-fce{
  background:#fff5c7;
  font-weight:900;
}

.team-standing-card tr.is-fce td:first-child{
  border-left:5px solid var(--wine);
}


/* Classements sur /matchs/ */

.standings-groups{
  display:grid;
  gap:18px;
}

.standings-group{
  background:#fff;
  border:1px solid var(--line);
}

.standings-group>header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;

  padding:12px 14px;
  background:#faf5f1;
  border-bottom:1px solid var(--line);
}

.standings-group>header h3{
  margin:0;
  font-size:18px;
}

.standings-group>header a{
  color:var(--wine);
  font-size:11px;
  font-weight:900;
}

.standings-group tr.is-fce{
  background:#fff5c7;
  font-weight:900;
}

@media(max-width:600px){
  .team-standing-head,
  .standings-group>header{
    align-items:flex-start;
    flex-direction:column;
  }
}

.standings-block {
  margin-top: 2rem;
  border: 1px solid var(--border, #d7cfc3);
  background: linear-gradient(180deg, #f8f5ef 0%, #f3eee4 100%);
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
  overflow: hidden;
}

.standings-block__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background: linear-gradient(90deg, #7a0f19 0%, #a51724 100%);
  color: #fff;
}

.standings-block__title {
  margin: 0;
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: .02em;
}

.standings-block__meta {
  font-size: .9rem;
  opacity: .9;
}

.standings-table-wrap {
  overflow-x: auto;
}

.standings-table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
  background: #fffdf9;
}

.standings-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: .9rem .85rem;
  text-align: left;
  font-size: .92rem;
  font-weight: 800;
  color: #5f0d17;
  background: #efe7d3;
  border-bottom: 2px solid #d8c59b;
}

.standings-table tbody td {
  padding: .95rem .85rem;
  border-bottom: 1px solid #ece4d8;
  font-size: 1rem;
  vertical-align: middle;
}

.standings-table tbody tr:nth-child(even) {
  background: #fcfaf6;
}

.standings-table tbody tr:hover {
  background: #f7f0df;
}

.standings-table tbody tr.is-club {
  background: #f3e7b5;
  font-weight: 700;
}

.standings-table tbody tr.is-club td:first-child {
  border-left: 4px solid #b31224;
}

.standings-rank {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  height: 2rem;
  border-radius: 999px;
  background: #7a0f19;
  color: #fff;
  font-weight: 800;
}

.standings-team {
  font-weight: 700;
  color: #251d18;
}

.standings-diff--positive {
  color: #147a36;
  font-weight: 700;
}

.standings-diff--negative {
  color: #a61d24;
  font-weight: 700;
}

.standings-points {
  font-weight: 800;
  color: #7a0f19;
}

.standings-source {
  color: #fff;
  text-decoration: none;
  font-weight: 700;
}

@media (max-width: 720px) {
  .standings-block__header {
    flex-direction: column;
    align-items: flex-start;
  }

  .standings-block__title {
    font-size: 1.25rem;
  }

  .standings-table thead th,
  .standings-table tbody td {
    padding: .75rem .65rem;
    font-size: .92rem;
  }
}


/* FCE standings redesign v2 */

.tabs{
  align-items:center;
  gap:10px;
}

.tabs button{
  cursor:pointer;
  border:1px solid #a61928;
  border-radius:999px;
  padding:11px 20px;
  background:#fff;
  color:var(--wine);
  transition:
    background .18s ease,
    color .18s ease,
    transform .18s ease,
    box-shadow .18s ease;
}

.tabs button:hover{
  transform:translateY(-1px);
}

.tabs button.active,
.tabs button[aria-selected="true"]{
  background:var(--wine);
  color:#fff;
  border-color:var(--wine);
  box-shadow:0 7px 18px rgba(91,14,26,.22);
}

.tabs button:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
}


.standings-groups,
.team-standings{
  display:grid;
  gap:28px;
}


.standings-card{
  overflow:hidden;
  background:#fff;
  border:1px solid #e2d8cf;
  border-radius:18px;
  box-shadow:
    0 18px 45px rgba(41,25,20,.08),
    0 2px 8px rgba(41,25,20,.05);
}


.standings-card .standings-card__header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;

  padding:20px 24px;

  background:
    radial-gradient(
      circle at 90% 10%,
      rgba(255,205,52,.20),
      transparent 32%
    ),
    linear-gradient(
      120deg,
      #67101d 0%,
      #8e1424 55%,
      #a41a2b 100%
    );

  color:#fff;
  border:0;
}


.standings-card__header>div{
  display:grid;
  gap:3px;
}


.standings-card__eyebrow{
  color:var(--gold);
  font-size:10px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.13em;
}


.standings-card .standings-card__header h3{
  margin:0;
  color:#fff;
  font-size:clamp(19px,2vw,25px);
  line-height:1.15;
}


.standings-card .standings-card__header a{
  flex:none;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;

  color:#fff;
  font-size:10px;
  font-weight:900;
  text-decoration:none;

  transition:
    background .18s ease,
    border-color .18s ease;
}


.standings-card .standings-card__header a:hover{
  background:#fff;
  border-color:#fff;
  color:var(--wine);
}


.standings-table-wrap{
  width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}


.standings-table-wrap:focus{
  outline:none;
}


.standings-table{
  width:100%;
  min-width:790px;
  border:0;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
}


.standings-table thead th{
  padding:13px 12px;

  background:#f3eee8;
  border:0;
  border-bottom:1px solid #ded3ca;

  color:#75655d;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  text-align:center;
}


.standings-table thead th:nth-child(2){
  text-align:left;
}


.standings-table tbody td{
  height:58px;
  padding:10px 12px;

  border:0;
  border-bottom:1px solid #eee7e1;

  color:#241c1b;
  font-size:14px;
  text-align:center;

  transition:background .16s ease;
}


.standings-table tbody td:nth-child(2){
  text-align:left;
}


.standings-table tbody tr:last-child td{
  border-bottom:0;
}


.standings-table tbody tr:hover td{
  background:#faf6f1;
}


.standings-table tbody tr.is-club td{
  background:#fff5cc;
  font-weight:800;
}


.standings-table tbody tr.is-club:hover td{
  background:#ffefaf;
}


.standings-table tbody tr.is-club td:first-child{
  box-shadow:inset 5px 0 0 var(--gold);
}


.standings-rank{
  display:inline-grid;
  place-items:center;

  width:32px;
  height:32px;

  border-radius:10px;
  background:#eee8e3;

  color:#493c38;
  font-weight:900;
}


.standings-rank--1{
  background:var(--gold);
  color:#3c2700;
}


.standings-rank--2{
  background:#dedede;
  color:#333;
}


.standings-rank--3{
  background:#d9aa7c;
  color:#432615;
}


.standings-team-cell{
  min-width:230px;
}


.standings-team{
  font-weight:800;
}


.standings-club-badge{
  display:inline-flex;
  margin-left:9px;
  padding:3px 7px;

  border-radius:999px;
  background:var(--wine);
  color:#fff;

  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  vertical-align:middle;
}


.standings-diff{
  display:inline-flex;
  justify-content:center;
  min-width:38px;

  padding:4px 7px;
  border-radius:999px;

  background:#eeeae7;
  font-weight:900;
}


.standings-diff--positive{
  background:#e4f5e9;
  color:#146b32;
}


.standings-diff--negative{
  background:#fbe6e7;
  color:#9a1724;
}


.standings-points{
  display:inline-grid;
  place-items:center;

  min-width:40px;
  height:32px;

  padding:0 9px;
  border-radius:10px;

  background:#241c1b;
  color:#fff;
  font-size:15px;
  font-weight:900;
}


.standings-table tbody tr.is-club .standings-points{
  background:var(--wine);
}


@media(max-width:720px){

  .standings-card{
    border-radius:13px;
  }

  .standings-card .standings-card__header{
    align-items:flex-start;
    flex-direction:column;
    padding:17px;
  }

  .standings-table{
    min-width:730px;
  }

  .standings-table tbody td{
    height:52px;
    padding:8px 9px;
    font-size:13px;
  }

  .standings-team-cell{
    min-width:190px;
  }
}


/* FCE matches redesign v3 */

#matches-page[hidden],
#standings-page[hidden]{
  display:none!important;
}

.match-information{
  position:relative;
  overflow:hidden;
  border:1px solid #e2d8cf;
  border-radius:18px;
  padding:20px 22px;
  background:#fff;
  box-shadow:0 16px 40px rgba(41,25,20,.07);
}

.match-information::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:6px;
  background:var(--gold);
}

.match-information strong{
  color:var(--wine);
}

.match-filters{
  gap:16px;
  border:1px solid #e2d8cf;
  border-radius:18px;
  padding:22px 20px 20px;
  background:#fff;
  box-shadow:0 16px 40px rgba(41,25,20,.06);
}

.match-filters legend{
  padding:7px 12px;
  border-radius:999px;
  background:var(--wine);
  color:#fff;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.match-filters select{
  min-height:46px;
  border:1px solid #ddd2c9;
  border-radius:10px;
  background:#faf8f5;
}

.match-calendar{
  gap:22px;
}

.match-calendar .match-card,
.team-plateau-card{
  overflow:hidden;
  border:1px solid #e2d8cf;
  border-top:0;
  border-radius:18px;
  background:#fff;
  box-shadow:
    0 18px 45px rgba(41,25,20,.08),
    0 2px 8px rgba(41,25,20,.05);
}

.match-card>header,
.team-plateau-card>header{
  padding:17px 19px;
  background:
    radial-gradient(
      circle at 92% 15%,
      rgba(255,205,52,.20),
      transparent 35%
    ),
    linear-gradient(
      120deg,
      #67101d 0%,
      #8e1424 60%,
      #a41a2b 100%
    );
  color:#fff;
}

.match-card>header time{
  color:#fff;
}

.match-card>header span{
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:var(--gold);
}

.match-card .competition-name{
  min-height:0;
  padding:13px 19px;
  background:#f3eee8;
  border-bottom:1px solid #e7ded7;
  color:#76665f;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.score,
.kickoff,
.match-status{
  border-radius:12px;
}

.match-card>footer{
  background:#faf8f5;
}

.standings-team-identity{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.standings-team-identity .match-logo{
  flex:none;
  width:34px;
  height:34px;
  object-fit:contain;
}

.standings-team-identity .match-logo.fallback{
  display:grid;
  place-items:center;
  border:1px solid #ddd2c9;
  border-radius:50%;
  background:#f5f0eb;
  font-size:15px;
}

.data-note{
  margin-top:22px;
  padding:13px 16px;
  border-radius:12px;
  background:#f3eee8;
  color:#75665f;
  font-size:11px;
}

@media(max-width:720px){
  .match-information{
    align-items:flex-start;
    flex-direction:column;
  }

  .match-filters,
  .match-calendar .match-card,
  .team-plateau-card{
    border-radius:14px;
  }
}


/* FCE standings mobile v5 */

/* Les titres ne doivent jamais être tronqués */
.standings-card__header>div:first-child{
  min-width:0;
  max-width:100%;
}

.standings-card .standings-card__header h3{
  max-width:100%;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;
  word-break:normal;
}

.standings-mobile-stats{
  display:none;
}

.standings-toggle{
  display:none;
}


/* Une petite amélioration des matchs de la fiche équipe */
.team-match-row{
  overflow:hidden;
  border:1px solid #e2d8cf;
  border-left:0;
  border-radius:16px;
  box-shadow:
    0 10px 26px rgba(41,25,20,.06),
    0 2px 6px rgba(41,25,20,.04);
}

.team-match-row::before{
  content:"";
  align-self:stretch;
  width:5px;
  background:var(--wine);
}


@media(max-width:720px){

  /*
   * En mobile on abandonne le tableau large.
   * Trois colonnes seulement :
   * rang | équipe | points
   */
  .standings-table{
    width:100%;
    min-width:0;
  }

  .standings-table-wrap{
    overflow:visible;
  }

  .standings-table thead{
    display:none;
  }

  .standings-table tbody{
    display:grid;
  }

  .standings-table tbody tr{
    display:grid;
    grid-template-columns:
      42px
      minmax(0,1fr)
      48px;

    align-items:start;
    gap:8px;

    padding:12px 10px;

    border-bottom:1px solid #eee7e1;
  }

  .standings-table tbody tr:last-child{
    border-bottom:0;
  }

  .standings-table tbody td{
    display:none;
    height:auto;
    min-width:0;
    padding:0;
    border:0;
  }

  .standings-table tbody td:nth-child(1),
  .standings-table tbody td:nth-child(2),
  .standings-table tbody td:nth-child(10){
    display:block;
  }

  .standings-table tbody td:nth-child(1){
    grid-column:1;
    grid-row:1;
  }

  .standings-table tbody td:nth-child(2){
    grid-column:2;
    grid-row:1;
  }

  .standings-table tbody td:nth-child(10){
    grid-column:3;
    grid-row:1;
    text-align:right;
  }

  .standings-team-cell{
    min-width:0;
  }

  .standings-team-identity{
    align-items:center;
    gap:8px;
  }

  .standings-team-identity .match-logo{
    width:31px;
    height:31px;
  }

  .standings-team{
    min-width:0;
    line-height:1.2;
    overflow-wrap:anywhere;
  }

  /*
   * Toutes les autres statistiques sont placées
   * sous le nom de l'équipe.
   */
  .standings-mobile-stats{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:5px;

    margin-top:9px;
  }

  .standings-mobile-stats>span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;

    min-width:0;

    padding:4px 3px;

    border-radius:7px;

    background:#f3eee8;
  }

  .standings-mobile-stats small{
    color:#796b64;
    font-size:8px;
    font-weight:900;
    text-transform:uppercase;
  }

  .standings-mobile-stats b{
    font-size:10px;
  }


  /*
   * En-tête mobile :
   * le titre peut prendre autant de lignes que nécessaire.
   */
  .standings-card .standings-card__header{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px 12px;

    width:100%;
    padding:16px;

    overflow:visible;
  }

  .standings-card__header>div:first-child{
    grid-column:1/-1;
    width:100%;
  }

  .standings-card .standings-card__header h3{
    font-size:18px;
    line-height:1.25;
  }

  .standings-card .standings-card__header>a{
    grid-column:1;
    justify-self:start;
  }

  .standings-toggle{
    grid-column:2;

    display:grid;
    place-items:center;

    width:36px;
    height:36px;

    padding:0;

    border:1px solid rgba(255,255,255,.40);
    border-radius:50%;

    background:rgba(255,255,255,.12);
    color:#fff;

    font-size:22px;
    font-weight:700;

    cursor:pointer;
  }

  .standings-card.is-collapsed .standings-table-wrap{
    display:none;
  }

  .standings-card.is-collapsed>.standings{
    display:none;
  }

  /*
   * La carte repliée ne prend quasiment plus
   * de hauteur : pratique quand il y a 6 classements.
   */
  .standings-card.is-collapsed{
    box-shadow:
      0 8px 22px rgba(41,25,20,.06);
  }

  .standings-card.is-collapsed .standings-card__header{
    border-radius:12px;
  }
}

/* FCE standings mobile polish v7 */

/* FCE : mise en avant plus sobre */
.standings-table tbody tr.is-club td{
  background:#fff;
}

.standings-table tbody tr.is-club:hover td{
  background:#faf6f3;
}

.standings-table tbody tr.is-club td:first-child{
  box-shadow:inset 5px 0 0 var(--wine);
}


/* Titres longs */
.standings-card .standings-card__header h3{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:break-word;
}


/* Smartphone */
@media(max-width:720px){

  /*
   * Le bouton +/- reste toujours en haut à droite,
   * quelle que soit la hauteur du titre.
   */
  .standings-card .standings-card__header{
    position:relative;
    display:block;

    min-height:0;

    padding:
      16px
      58px
      16px
      16px;

    overflow:visible;
  }

  .standings-card__header>div:first-child{
    width:100%;
    min-width:0;
  }

  .standings-card .standings-card__header h3{
    width:100%;
    max-width:none;

    margin-top:4px;

    font-size:17px;
    line-height:1.24;

    overflow-wrap:normal;
    word-break:normal;
    hyphens:auto;
  }

  .standings-toggle{
    position:absolute;
    top:14px;
    right:14px;

    display:grid;
    place-items:center;

    width:36px;
    height:36px;

    margin:0;
  }

  .standings-card .standings-card__header>a{
    display:inline-flex;

    width:max-content;
    max-width:100%;

    margin-top:11px;
  }

  /* Une carte repliée reste très compacte */
  .standings-card.is-collapsed
  .standings-card__header>a{
    display:none;
  }


  /*
   * Ligne classement mobile :
   * rang à gauche, puis toute la largeur
   * disponible pour l'équipe et ses statistiques.
   */
  .standings-table tbody tr{
    position:relative;

    grid-template-columns:
      42px
      minmax(0,1fr);

    gap:8px;

    padding:
      12px
      12px
      12px
      10px;
  }

  .standings-table tbody td:nth-child(1){
    grid-column:1;
  }

  .standings-table tbody td:nth-child(2){
    grid-column:2;

    padding-right:48px;
  }

  /*
   * Les points flottent en haut à droite,
   * sans réduire la largeur des stats.
   */
  .standings-table tbody td:nth-child(10){
    position:absolute;

    top:12px;
    right:10px;

    display:block;
  }

  .standings-team-identity{
    min-height:32px;
  }

  .standings-mobile-stats{
    width:100%;

    grid-template-columns:
      repeat(4,minmax(0,1fr));

    margin-top:8px;
  }

  .standings-table tbody tr.is-club{
    background:#fff;
    box-shadow:
      inset 4px 0 0 var(--wine);
  }

  .standings-table tbody tr.is-club td{
    background:transparent;
  }

}

/* Correctif définitif : titres de classement longs sur mobile */
.standings-card .standings-card__header{
  height:auto;
  min-height:84px;
}

@media(max-width:720px){

  .standings-card .standings-card__header{
    height:auto;
    min-height:0;

    padding:
      16px
      58px
      17px
      16px;
  }

  .standings-card .standings-card__header h3{
    display:block;

    width:100%;
    max-width:100%;

    margin:5px 0 0;

    line-height:1.25;

    white-space:normal;
    overflow:visible;

    word-break:normal;
    overflow-wrap:break-word;
    hyphens:none;
  }

  .standings-card.is-collapsed
  .standings-card__header{
    height:auto;
    min-height:0;
  }

  .standings-toggle{
    top:14px;
    right:14px;
  }
}
