/* DOUBLE-V V28.4 — Terrains broadcast, événements sous les compositions et cinéma. */
:root{--dv284-orchid:#c996ff;--dv284-ice:#f2e5ff;--dv284-night:#08050e;--dv284-border:#b97dff52}
/* CINEMA : photographie existante, éclairages atmosphériques (aucune particule). */
.hero{isolation:isolate!important;overflow:hidden!important}
#dv22-stage .dv22-photo{
  animation:dv284-camera 19s cubic-bezier(.46,0,.54,1) infinite alternate!important;
  will-change:transform,filter;filter:contrast(1.27) saturate(1.37) brightness(.79)!important;
}
#dv22-stage .dv22-atmos{
  background:linear-gradient(90deg,#06040fec 0%,#070413d9 30%,#140a288a 55%,#0c051d66 100%),
   radial-gradient(ellipse at 75% 14%,#b472ff47 0,transparent 47%),
   radial-gradient(ellipse at 40% 100%,#37115c73 0,transparent 65%)!important;
  animation:dv284-stadium-light 8.5s ease-in-out infinite alternate!important;
}
.hero:after{background:linear-gradient(180deg,#07041022 0%,transparent 42%,#080411db 100%),
  radial-gradient(ellipse at 77% 35%,#ae76ef31 0%,transparent 49%)!important;box-shadow:inset 0 0 100px #04030aa1!important}
.hero-content{animation:dv284-arrive 1.1s cubic-bezier(.15,.8,.25,1) both!important}
.hero h1{filter:drop-shadow(0 18px 24px #06010f88)!important}
.hero h1 em{background:linear-gradient(100deg,#ffffff,#e4caff 34%,#bd87ff 57%,#f0d8ff 87%,#ffffff)!important;
 background-size:220% 100%!important;background-clip:text!important;-webkit-background-clip:text!important;
 animation:dv284-title-glint 8s ease-in-out infinite alternate!important}
.dv283-filmframe{opacity:.6!important;mix-blend-mode:screen}
.dv283-moveline{opacity:.2!important}
.dv283-hero-panel{box-shadow:0 25px 85px #05000cdd,0 0 50px #a75cf339,inset 0 1px #f6e7ff29!important;
  backdrop-filter:blur(19px) saturate(135%)!important;
  animation:dv284-panel-in 1s .3s both,dv284-panel-breathe 9s 1.3s ease-in-out infinite alternate!important}
.dv283-panel-score{filter:drop-shadow(0 0 19px #bb7cff51)}
.dv281-broadcast{box-shadow:0 -15px 44px #090411ba,0 0 20px #9e59ff2e!important}
/* Le terrain : une véritable surface éditoriale de diffusion et non deux rectangles plats. */
.dv16-overview{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}
.dv16-pitches,.dv284-pitches{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important}
.dv16-team-pitch{position:relative!important;min-width:0!important;padding:15px!important;
 border:1px solid #ae7cee66!important;border-radius:19px!important;
 background:linear-gradient(150deg,#1b102b,#100b1c 67%,#170d24)!important;
 box-shadow:0 18px 34px #07020d89,inset 0 1px #e4bcff1d!important;overflow:hidden!important}
.dv16-team-pitch:before{content:"";position:absolute;pointer-events:none;inset:0 0 auto;height:68px;
 background:linear-gradient(180deg,#b57dff20,transparent);opacity:.8}
.dv16-pitch-heading{position:relative!important;z-index:2!important;gap:12px!important;padding:3px 1px 12px!important;margin-bottom:0!important}
.dv16-pitch-heading strong{font-size:clamp(14px,1.48vw,19px)!important;font-weight:900!important;line-height:1.2!important;color:#fcf6ff!important;letter-spacing:-.02em!important}
.dv16-pitch-heading span{font-size:11px!important;color:#f0dbff!important;letter-spacing:.5px!important;font-weight:900!important;
 border:1px solid #ca9dff73!important;border-radius:7px!important;background:#602b965c!important;padding:6px 9px!important}
.dv16-pitch{height:clamp(380px,50vh,470px)!important;position:relative!important;overflow:hidden!important;
 border:1px solid #ceabff80!important;border-radius:15px!important;
 background:radial-gradient(ellipse at 50% 45%,#9864df2d,transparent 70%),
  linear-gradient(180deg,#23123d 0%,#1b1133 50%,#20113b 100%)!important;
 box-shadow:inset 0 0 45px #0a051bc9,inset 0 1px #ffffff2c,0 0 0 4px #8c5ed115!important}
.dv16-pitch:before{content:"";position:absolute;inset:0;pointer-events:none;
 background:repeating-linear-gradient(180deg,#ffffff03 0 42px,#a96dff0c 42px 84px),
  radial-gradient(ellipse at 50% -10%,#c694ff38,transparent 65%);opacity:.9;z-index:0}
.dv16-pitch:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
 box-shadow:inset 0 0 32px #04040d88;z-index:0}
.dv16-pitch-lines{inset:14px!important;border:1.6px solid #d7b9ff7c!important;border-radius:4px!important;z-index:0!important}
.dv16-pitch-lines:before{border:1.5px solid #d7b9ff7c!important;border-top:0!important;width:50%!important;left:25%!important;height:17%!important}
.dv16-pitch-lines:after{border:1.6px solid #d7b9ff7c!important;width:75px!important;height:75px!important;box-shadow:0 0 0 1px #5e2e8940!important}
.dv16-player{width:min(17.5%,92px)!important;min-width:0!important;max-width:92px!important;gap:6px!important;z-index:3!important;isolation:isolate}
.dv16-avatar{width:39px!important;height:39px!important;filter:none!important}
.dv16-head{display:none!important}
.dv16-shirt{top:0!important;left:0!important;width:39px!important;height:39px!important;border-radius:50%!important;
 clip-path:none!important;background:linear-gradient(145deg,#ddb5ff,#8c49e4 75%)!important;
 border:1px solid #f3deffab!important;box-shadow:0 3px 14px #6f34c2ad,0 0 0 4px #1a0c2bad!important}
.dv16-shirt.dv16-away{background:linear-gradient(145deg,#e7d3ff,#aa67e7 70%,#7b3fc3)!important;box-shadow:0 3px 14px #ab5ef088,0 0 0 4px #1a0c2bad!important}
.dv16-shirt.dv16-goalkeeper{background:linear-gradient(145deg,#ffe3a3,#e3a85b 75%)!important;border-color:#ffecc0a9!important;
 box-shadow:0 3px 14px #dca74c77,0 0 0 4px #1a0c2bad!important}
.dv17-shirt-number{display:grid!important;place-items:center!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;top:0!important;
 color:#190b2d!important;font-size:16px!important;font-weight:950!important;line-height:1!important;text-shadow:0 1px #ffffff7d!important}
.dv16-playername{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
 white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;max-width:100%!important;width:100%!important;
 font-family:Inter,Arial,sans-serif!important;font-size:10px!important;font-weight:800!important;line-height:1.24!important;
 padding:4px 3px!important;min-height:29px!important;text-align:center!important;
 background:#0c0719b9!important;border:1px solid #bd8ce349!important;border-radius:7px!important;
 color:#f9f0ff!important;text-shadow:0 1px 4px #000!important;box-shadow:0 3px 8px #0005!important}
.dv16-indicative{font-size:10px!important;color:#bcacd3!important;letter-spacing:.3px!important;padding:11px 5px 0!important}
.dv16-team-pitch.dv28-no-lineup .dv16-pitch{min-height:110px!important;height:auto!important;background:linear-gradient(135deg,#21122f,#100a1c)!important}
.dv16-team-pitch.dv28-no-lineup .dv16-pitch:before,.dv16-team-pitch.dv28-no-lineup .dv16-pitch:after{display:none!important}
.dv16-team-pitch.dv28-no-lineup .dv16-pitch-unavailable{position:relative!important;top:auto!important;margin:0!important;
 border:0!important;background:transparent!important;font-size:12px!important;color:#decdee!important}
/* ÉVÉNEMENTS : immédiatement sous les deux terrains, onglet Compositions ET vue d'ensemble. */
.dv284-lineups-tab{display:flex!important;flex-direction:column!important;gap:18px!important;min-width:0!important}
.dv284-lineups-tab .dv16-pitches{width:100%!important}
.dv284-events-block{grid-column:1/-1!important;min-width:0!important;
 background:linear-gradient(140deg,#1a0e2a,#0d0918 78%)!important;
 border:1px solid #a775e65e!important;border-radius:18px!important;padding:20px!important;
 box-shadow:0 16px 38px #07020d84,inset 0 1px #f4dfff19!important}
.dv284-events-head{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;
 border-bottom:1px solid #aa77e84a!important;padding-bottom:15px!important;margin-bottom:16px!important}
.dv284-events-head h3{font-family:'Barlow Condensed',Impact,sans-serif!important;color:#fff!important;
 font-size:clamp(21px,2.3vw,30px)!important;letter-spacing:.4px!important;line-height:1.1!important;margin:0 auto 0 0!important}
.dv284-kicker{font-size:10px!important;letter-spacing:2px!important;color:#c99afc!important;font-weight:900!important}
.dv284-count{color:#d0b8e7!important;border-radius:30px!important;border:1px solid #c197fc38!important;
 background:#8d55d121!important;padding:6px 10px!important;font-size:10px!important;font-weight:800!important}
.dv284-events-block>.dv13-events{max-width:100%!important;border-left:none!important;padding-left:0!important;
 display:grid!important;gap:8px!important;margin:0!important}
.dv284-events-block .dv13-event{display:grid!important;grid-template-columns:48px 32px minmax(0,1fr)!important;gap:12px!important;
 align-items:center!important;padding:12px 16px!important;margin:0!important;border-radius:13px!important;
 background:linear-gradient(110deg,#291638,#1b1129)!important;border:1px solid #b27ded48!important;min-height:0!important}
.dv284-events-block .dv13-event-time{font-size:14px!important;font-weight:900!important;color:#e8caff!important;font-variant-numeric:tabular-nums!important}
.dv284-events-block .dv13-event-icon{font-size:19px!important}
.dv284-events-block .dv13-event-content{min-width:0!important;color:#f6eaff!important}
.dv284-events-block .dv13-event-content strong{font-weight:900!important;color:#fff!important}
.dv284-events-block .dv13-event-content small{color:#bea8d7!important}
.dv284-events-block .dv13-empty{max-width:none!important;width:100%!important;padding:16px!important;margin:0!important;
 border:1px dashed #b682eb53!important;background:#1c1028!important}
.dv284-lineups-tab>.dv13-empty{width:100%!important;max-width:none!important}
/* Fenêtre libre de ses cartes et accessible sans étirement. */
#fixtures .fixture-card>.dv13-panel,.dv-global-results .fixture-card>.dv13-panel{width:min(1060px,calc(100vw - 28px))!important;max-width:1060px!important;
 max-height:calc(100dvh - 26px)!important;overflow:auto!important;overscroll-behavior:contain!important}
.dv13-tabbody{min-width:0!important}
@keyframes dv284-camera{from{transform:scale(1.04) translate3d(0,0,0)}to{transform:scale(1.17) translate3d(-1.4%,.7%,0)}}
@keyframes dv284-stadium-light{from{opacity:.79;filter:saturate(1)}to{opacity:1;filter:saturate(1.24)}}
@keyframes dv284-arrive{from{opacity:.2;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}
@keyframes dv284-title-glint{from{background-position:10% 50%}to{background-position:100% 50%}}
@keyframes dv284-panel-in{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
@keyframes dv284-panel-breathe{from{box-shadow:0 25px 85px #05000cdd,0 0 36px #a75cf329}to{box-shadow:0 25px 85px #05000cdd,0 0 60px #a75cf354}}
@media(max-width:980px){.dv16-pitches,.dv284-pitches{grid-template-columns:1fr!important}.dv16-pitch{height:clamp(350px,47vh,450px)!important}}
@media(max-width:600px){.dv16-team-pitch{padding:10px!important}.dv16-pitch{height:370px!important}
 .dv16-player{width:18%!important}.dv16-avatar,.dv16-shirt{width:33px!important;height:33px!important}
 .dv17-shirt-number{font-size:13px!important}.dv16-playername{font-size:9px!important;min-height:28px!important}
 .dv284-events-block{padding:13px!important}.dv284-events-head{gap:8px!important}
 .dv284-events-block .dv13-event{grid-template-columns:40px 25px 1fr!important;gap:7px!important;padding:10px 8px!important}}
@media(prefers-reduced-motion:reduce){#dv22-stage .dv22-photo,#dv22-stage .dv22-atmos,.hero-content,.hero h1 em,.dv283-hero-panel{animation:none!important}}
body.dv22-still #dv22-stage .dv22-photo,body.dv22-still #dv22-stage .dv22-atmos{animation:none!important}
