.today-games-page{padding:22px 0 54px;background:radial-gradient(circle at 88% 3%,rgba(20,135,255,.13),transparent 26%),radial-gradient(circle at 5% 45%,rgba(54,211,153,.055),transparent 22%)}
.today-games-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:300px;overflow:hidden;padding:44px 52px 92px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(118deg,#07111f 0%,#0d1d32 61%,#063768 150%);box-shadow:var(--shadow)}
.today-games-hero:before{content:"";position:absolute;right:-120px;bottom:-205px;width:520px;height:520px;border:54px solid rgba(255,255,255,.035);border-radius:50%}
.today-games-hero-copy{position:relative;z-index:2;max-width:760px}
.today-games-hero h1,.today-games-heading h2,.today-games-empty h2{margin:0;font-family:"Bebas Neue",sans-serif;color:var(--text);letter-spacing:.025em}
.today-games-hero h1{margin:10px 0 15px;font-size:clamp(4.1rem,8vw,7.2rem);line-height:.84}
.today-games-hero p{max-width:680px;margin:0;color:#b7c8dc;font-size:1.02rem;line-height:1.65}
.today-games-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.today-games-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);color:var(--text);font-size:.78rem;font-weight:800;text-decoration:none}
.today-games-button:hover{border-color:#3c9cff;color:#67b2ff}.today-games-button.primary{border-color:#1487ff;background:#0877d1;color:#fff}.today-games-button.primary:hover{background:#1487ff;color:#fff}
.today-games-hero-brand{position:relative;z-index:1;display:flex;align-items:center;gap:14px;align-self:start;padding:14px 17px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(5,14,27,.43);backdrop-filter:blur(8px)}
.today-games-hero-brand img{width:76px;height:76px;object-fit:contain}.today-games-hero-brand span{display:flex;flex-direction:column}.today-games-hero-brand small{color:#8fa3bc;font-size:.59rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.today-games-hero-brand strong{margin-top:4px;color:#fff;font:2rem "Bebas Neue",sans-serif;letter-spacing:.06em}
.today-games-summary{position:absolute;z-index:2;left:52px;right:52px;bottom:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.1)}
.today-games-summary span{display:flex;align-items:baseline;gap:9px;padding:18px 0}.today-games-summary span+span{padding-left:24px;border-left:1px solid rgba(255,255,255,.1)}.today-games-summary strong{color:#fff;font:2rem/1 "Bebas Neue",sans-serif}.today-games-summary small{color:#8fa3bc;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}
.today-games-update{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;margin:12px 0 26px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted);font-size:.72rem}.today-games-update span{display:flex;align-items:center;gap:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.today-games-update i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(54,211,153,.11)}.today-games-update strong{color:var(--text);font-size:.74rem}
.today-games-section{margin-top:32px}.today-games-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:13px}.today-games-heading h2{margin-top:5px;font-size:2.35rem;line-height:1}.today-games-count{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.today-games-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.today-game-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,var(--surface-2),var(--surface));box-shadow:0 13px 34px rgba(0,0,0,.15);color:var(--text);text-decoration:none;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.today-game-card[href]:hover{border-color:rgba(20,135,255,.62);box-shadow:0 17px 38px rgba(0,0,0,.22);transform:translateY(-2px)}
.today-game-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.018)}.today-game-card>header small{color:var(--muted);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.game-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:5px;background:rgba(20,135,255,.13);color:#63b1ff;font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.075em}.is-final .game-status{background:rgba(54,211,153,.14);color:#61dfb0}
.today-game-matchup{display:grid;gap:3px;min-height:164px;padding:17px 15px}.today-game-team{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:7px 4px;border-radius:10px;color:var(--text);text-decoration:none}.today-game-team:hover{background:rgba(20,135,255,.055)}.today-game-logo{display:grid;place-items:center;width:54px;height:54px}.today-game-logo img{max-width:50px;max-height:50px;object-fit:contain;filter:drop-shadow(0 7px 9px rgba(0,0,0,.2));transition:transform .18s ease}.today-game-team:hover .today-game-logo img{transform:scale(1.08)}.today-game-team-copy{display:flex;min-width:0;flex-direction:column}.today-game-team-copy strong{overflow:hidden;font-size:.8rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.today-game-team-copy small{margin-top:4px;color:var(--muted);font-size:.55rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.today-game-team.is-winner .today-game-team-copy strong{color:#62dfb1}.today-game-team-score{min-width:28px;color:var(--text);font:2rem/1 "Bebas Neue",sans-serif;text-align:right}.today-game-team.is-winner .today-game-team-score{color:#62dfb1}.today-game-team-mark{color:#64788e;font:1.25rem/1 "Bebas Neue",sans-serif}
.today-game-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 15px;border-top:1px solid var(--line);background:rgba(3,10,20,.13)}.today-game-card>footer span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.today-game-card>footer span i{width:6px;height:6px;border-radius:50%;background:#1487ff}.is-final>footer span i{background:var(--green)}.today-game-card>footer strong{color:var(--text);font-size:.63rem;letter-spacing:.04em}
.upcoming-grid .today-game-card{background:linear-gradient(145deg,rgba(20,135,255,.07),var(--surface) 42%)}
.today-games-inline-empty,.today-games-empty{color:var(--muted);text-align:center}.today-games-inline-empty{padding:34px}.today-games-empty{padding:60px 25px}.today-games-empty img{width:100px;height:100px;object-fit:contain;opacity:.8}.today-games-empty h2{margin:9px 0;font-size:2.5rem}.today-games-empty p{margin:0 0 20px}
.today-games-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 25px;margin-top:34px}.today-games-footer>div{display:grid;gap:3px}.today-games-footer strong{font-size:1rem}.today-games-footer p{margin:0;color:var(--muted);font-size:.76rem}
[data-theme="light"] .today-games-hero{background:linear-gradient(118deg,#edf5ff,#d8eaff);border-color:#c7d9ed}[data-theme="light"] .today-games-hero h1,[data-theme="light"] .today-games-summary strong{color:#0b1d31}[data-theme="light"] .today-games-hero p{color:#445b72}[data-theme="light"] .today-games-hero-brand{border-color:#c3d5e7;background:rgba(255,255,255,.52)}[data-theme="light"] .today-games-hero-brand strong{color:#0b1d31}[data-theme="light"] .today-game-card{background:linear-gradient(145deg,#fff,#eef4fa);box-shadow:0 10px 28px rgba(31,65,96,.08)}[data-theme="light"] .upcoming-grid .today-game-card{background:linear-gradient(145deg,#eef7ff,#fff 48%)}
@media(max-width:980px){.today-games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.today-games-hero{padding:35px 34px 90px}.today-games-hero-brand{position:absolute;right:28px;top:28px;opacity:.2}.today-games-summary{left:34px;right:34px}}
@media(max-width:620px){.today-games-grid{grid-template-columns:1fr}}
@media(max-width:560px){.today-games-page{padding-top:9px}.today-games-page>.container{width:min(calc(100% - 16px),var(--container))}.today-games-hero{min-height:auto;padding:27px 21px 105px;border-radius:19px}.today-games-hero h1{font-size:clamp(3.7rem,18vw,5.2rem)}.today-games-hero p{font-size:.88rem;line-height:1.5}.today-games-actions{display:grid;grid-template-columns:1fr;margin-top:19px}.today-games-hero-brand{right:-18px;top:18px}.today-games-hero-brand span{display:none}.today-games-hero-brand img{width:82px;height:82px}.today-games-summary{left:21px;right:21px}.today-games-summary span{display:grid;gap:2px;padding:14px 0;text-align:center}.today-games-summary span+span{padding-left:0}.today-games-summary strong{font-size:1.55rem}.today-games-summary small{font-size:.5rem}.today-games-update{align-items:flex-start;flex-direction:column}.today-games-heading{align-items:flex-start}.today-games-heading h2{font-size:2rem}.today-games-count{font-size:.55rem}.today-game-card{border-radius:15px}.today-game-matchup{min-height:154px;padding:13px 12px}.today-game-team{grid-template-columns:48px minmax(0,1fr) auto;gap:9px}.today-game-logo{width:48px;height:48px}.today-game-logo img{max-width:45px;max-height:45px}.today-game-team-copy strong{font-size:.76rem}.today-game-team-copy small{font-size:.5rem}.today-game-team-score{font-size:1.8rem}.today-games-footer{align-items:stretch;flex-direction:column}.today-games-footer .today-games-button{width:100%}}

/* Cartes de résultats plus lisibles et tactiles */
.today-games-button{min-height:48px;font-size:.86rem}
.today-game-card>header{min-height:49px;padding:13px 16px}.today-game-card>header small{font-size:.67rem}.game-status{min-height:28px;font-size:.7rem}
.today-game-matchup{min-height:180px;padding:18px 16px}.today-game-team{grid-template-columns:60px minmax(0,1fr) auto;min-height:72px;gap:13px}.today-game-logo{width:58px;height:58px}.today-game-logo img{max-width:54px;max-height:54px}.today-game-team-copy strong{font-size:.92rem;line-height:1.3}.today-game-team-copy small{font-size:.64rem;line-height:1.35}.today-game-team-score{font-size:2.2rem}
.today-game-card>footer{min-height:48px;padding:12px 16px}.today-game-card>footer span{font-size:.65rem}.today-game-card>footer strong{font-size:.72rem}
.today-games-update{font-size:.78rem}.today-games-update strong{font-size:.8rem}.today-games-count{font-size:.7rem}
@media(max-width:760px){.today-games-grid{grid-template-columns:1fr}.today-game-card{max-width:100%}}
@media(max-width:560px){
 .today-games-hero{padding:24px 18px 104px}.today-games-hero h1{font-size:clamp(3.25rem,16vw,4.7rem)}.today-games-hero p{font-size:.96rem;line-height:1.55}.today-games-summary{left:18px;right:18px}
 .today-games-heading{flex-direction:column;gap:9px}.today-games-count{font-size:.66rem}.today-games-update{font-size:.74rem;line-height:1.45}
 .today-game-card>header{padding:12px 14px}.today-game-card>header small{font-size:.64rem}.game-status{font-size:.68rem}
 .today-game-matchup{min-height:auto;padding:12px 10px}.today-game-team{grid-template-columns:54px minmax(0,1fr) auto;min-height:72px;gap:10px;padding:7px 3px}.today-game-logo{width:52px;height:52px}.today-game-logo img{max-width:49px;max-height:49px}.today-game-team-copy strong{font-size:.9rem;white-space:normal}.today-game-team-copy small{font-size:.6rem}.today-game-team-score{font-size:2.15rem}
 .today-game-card>footer{padding:12px 14px}.today-game-card>footer span{font-size:.62rem}.today-game-card>footer strong{font-size:.7rem}
 .today-games-footer p{font-size:.82rem;line-height:1.5}
}
@media(max-width:380px){.today-games-hero-brand{display:none}.today-games-hero h1{font-size:3.15rem}.today-game-team{grid-template-columns:46px minmax(0,1fr) auto}.today-game-logo{width:44px;height:44px}.today-game-logo img{max-width:42px;max-height:42px}.today-game-team-copy strong{font-size:.84rem}.today-game-team-score{font-size:1.9rem}}
