/* STADE1 — Mode Stade */
body.fbs-on{overflow:hidden}
.fbs{position:fixed;inset:0;z-index:10050;color:#fff;font-family:inherit;background:#050912}
.fbs *{box-sizing:border-box}

/* Porte d'entrée */
.fbs-gate{position:absolute;inset:0;display:grid;place-items:center;padding:24px;text-align:center;background:radial-gradient(90% 60% at 50% 0%,#1d4ed8 0%,#0b1d44 45%,#050912 80%)}
.fbs-gate__in{max-width:360px}
.fbs-gate__ic{display:block;font-size:72px;filter:drop-shadow(0 14px 22px rgba(0,0,0,.6));animation:fbs-float 2.6s ease-in-out infinite}
@keyframes fbs-float{50%{transform:translateY(-8px)}}
.fbs-gate h1{margin:10px 0 6px;font-size:34px;font-weight:900;letter-spacing:-.01em}
.fbs-gate p{margin:0 0 22px;color:#bfdbfe;font-size:15px;line-height:1.5}
.fbs-cta{display:block;width:100%;margin:0 0 10px;padding:16px;border:0;border-radius:16px;font:inherit;font-size:16px;font-weight:900;color:#0b1d44;background:#fff;box-shadow:0 16px 30px -12px rgba(0,0,0,.7);cursor:pointer}
.fbs-cta--ghost{color:#fff;background:rgba(255,255,255,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.fbs-back{display:inline-block;margin-top:10px;color:#93c5fd;font-weight:800;text-decoration:none}

/* Écran */
.fbs-scr{--gc:37,99,235;position:absolute;inset:0;overflow:hidden;isolation:isolate;background:radial-gradient(120% 60% at 50% 0%,#12305e 0%,#060b18 60%);padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px)}
.fbs-goalbg{position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .25s ease;background:radial-gradient(90% 60% at 50% 42%,rgba(var(--gc),1) 0%,rgba(var(--gc),.55) 55%,#0a0306 100%)}
.fbs-rays{position:absolute;inset:-60%;background:repeating-conic-gradient(from 0deg,rgba(255,255,255,.12) 0 8deg,transparent 8deg 22deg);animation:fbs-spin 14s linear infinite}
@keyframes fbs-spin{to{transform:rotate(360deg)}}
.fbs-beam{position:absolute;top:-40px;width:42%;height:62%;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.3),rgba(255,255,255,0));filter:blur(8px);transform-origin:top center;animation:fbs-beam 7s ease-in-out infinite}
.fbs-beam--l{left:-12%;transform:rotate(-22deg)}.fbs-beam--r{right:-12%;transform:rotate(22deg);animation-delay:-3.5s}
@keyframes fbs-beam{50%{opacity:.55}}
.fbs-lamp{position:absolute;top:10px;width:52px;height:12px;border-radius:4px;background:#fff;box-shadow:0 0 30px 12px rgba(255,255,255,.55)}
.fbs-lamp--l{left:22px}.fbs-lamp--r{right:22px}

.fbs-top{position:relative;display:flex;align-items:center;gap:8px;padding:36px 16px 0}
.fbs-live{padding:5px 10px;border-radius:999px;background:#ef4444;font-size:12px;font-weight:900;letter-spacing:.03em;animation:fbs-blink 1.6s ease-in-out infinite}
.fbs-live.is-off{background:rgba(255,255,255,.18);animation:none}
@keyframes fbs-blink{50%{box-shadow:0 0 0 6px rgba(239,68,68,.25)}}
.fbs-demo{padding:5px 10px;border-radius:999px;background:#facc15;color:#3b2a00;font-size:11px;font-weight:900}
.fbs-x{margin-left:auto;padding:7px 12px;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.fbs-comp{margin:18px 16px 0;text-align:center;color:#93c5fd;font-size:12px;font-weight:900;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fbs-teams{display:flex;justify-content:space-around;align-items:flex-start;margin-top:4vh;padding:0 8px}
.fbs-team{width:44%;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.fbs-team b{font-size:15px;font-weight:900;line-height:1.2}
.fbs-crest{width:clamp(70px,20vw,96px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.25),0 14px 30px -8px rgba(0,0,0,.8);overflow:hidden}
.fbs-crest img{width:72%;height:72%;object-fit:contain}
.fbs-crest span{color:#0b1d44;font-weight:900;font-size:20px}
.fbs-score{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:2vh;font-size:clamp(84px,26vw,130px);font-weight:900;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 0 30px rgba(96,165,250,.55)}
.fbs-score i{font-style:normal;opacity:.7}
.fbs-clock{margin:2vh 0 0;text-align:center}
.fbs-clock span{display:inline-block;padding:7px 18px;border-radius:999px;background:rgba(239,68,68,.15);color:#fca5a5;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums;box-shadow:inset 0 0 0 1px rgba(239,68,68,.5)}
.fbs-meter{position:absolute;left:24px;right:24px;bottom:calc(150px + env(safe-area-inset-bottom,0px))}
.fbs-meter em{display:block;margin-bottom:6px;text-align:center;font-style:normal;font-size:11px;font-weight:900;letter-spacing:.08em;color:#94a3b8}
.fbs-bars{display:flex;gap:4px;align-items:flex-end;height:46px}
.fbs-bars i{flex:1;height:10%;border-radius:3px;background:linear-gradient(0deg,#22c55e,#facc15);transition:height .12s linear}
.fbs-crowd{position:absolute;left:0;right:0;bottom:0;height:150px;z-index:-1;background:radial-gradient(14px 16px at 10px 30px,#0b1222 98%,transparent) 0 0/26px 40px repeat-x,radial-gradient(14px 16px at 22px 52px,#0e172b 98%,transparent) 0 30px/30px 40px repeat-x,linear-gradient(180deg,transparent 30px,#050912 80px)}
.fbs-btns{position:absolute;left:0;right:0;bottom:calc(22px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;gap:8px;padding:0 10px}
.fbs-btns button{padding:11px 14px;border:0;border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.fbs-btns button:focus-visible,.fbs-x:focus-visible,.fbs-cta:focus-visible{outline:3px solid #facc15;outline-offset:2px}

/* But */
.fbs-gol{position:absolute;left:0;right:0;top:20%;margin:0;text-align:center;font-size:clamp(46px,14vw,80px);font-weight:900;font-style:italic;letter-spacing:-.02em;opacity:0;pointer-events:none;transform:rotate(-6deg)}
.fbs-gol b{display:inline-block;text-shadow:0 6px 0 rgba(0,0,0,.35),0 0 40px rgba(255,255,255,.7);animation:fbs-wave 1s ease-in-out infinite;animation-delay:calc(var(--i) * 70ms)}
@keyframes fbs-wave{0%,60%,100%{transform:translateY(0)}25%{transform:translateY(-10px) scale(1.12)}}
.fbs-scr.is-goal .fbs-goalbg{opacity:1}
.fbs-scr.is-goal .fbs-gol{opacity:1;animation:fbs-golin .6s cubic-bezier(.2,1.6,.4,1)}
@keyframes fbs-golin{from{transform:rotate(-6deg) scale(.2)}to{transform:rotate(-6deg) scale(1)}}
.fbs-scr.is-goal .fbs-teams{opacity:.0;transition:opacity .2s}
.fbs-scr.is-goal .fbs-score{text-shadow:0 0 34px rgba(255,255,255,.85);animation:fbs-shake .5s ease 2}
.fbs-scr.is-goal[data-side="home"] [data-hs],.fbs-scr.is-goal[data-side="away"] [data-as]{color:#fde68a;animation:fbs-pop .6s cubic-bezier(.2,1.8,.4,1)}
@keyframes fbs-pop{from{transform:scale(2)}to{transform:scale(1)}}
@keyframes fbs-shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.fbs-scr.is-goal .fbs-comp{color:#fff}
.fbs-scr.is-goal .fbs-bars i{background:linear-gradient(0deg,#facc15,#fff)}
.fbs-scorer{position:absolute;left:20px;right:20px;top:58%;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;background:rgba(0,0,0,.35);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);animation:fbs-up .5s cubic-bezier(.2,1.3,.4,1)}
.fbs-scorer[hidden]{display:none}
@keyframes fbs-up{from{opacity:0;transform:translateY(20px)}}
.fbs-av{flex:0 0 54px;height:54px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#fff;font-size:26px}
.fbs-av img{width:72%;height:72%;object-fit:contain}
.fbs-av--ph img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.fbs-scorer b{display:block;font-size:17px;font-weight:900}
.fbs-scorer small{font-size:13px;color:rgba(255,255,255,.85)}
.fbs-bit{position:absolute;z-index:5;font-size:24px;pointer-events:none}

/* Autre match */
.fbs-sheet{position:absolute;inset:0;z-index:20;display:flex;align-items:flex-end;background:rgba(0,0,0,.55)}
.fbs-sheet[hidden]{display:none}
.fbs-sheet__in{width:100%;max-height:70%;overflow:auto;padding:16px 14px calc(18px + env(safe-area-inset-bottom,0px));border-radius:22px 22px 0 0;background:#0e1b2e;animation:fbs-up .3s ease}
.fbs-sheet__t{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px;font-weight:900;font-size:16px}
.fbs-sheet__t button{border:0;background:rgba(255,255,255,.12);color:#fff;border-radius:999px;width:34px;height:34px;font-size:15px;cursor:pointer}
.fbs-sheet ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fbs-sheet li button{width:100%;display:grid;grid-template-columns:1fr auto 1fr 40px;gap:8px;align-items:center;padding:12px;border:0;border-radius:14px;background:rgba(255,255,255,.06);color:#fff;font:inherit;font-size:14px;font-weight:800;text-align:center;cursor:pointer}
.fbs-sheet li button.is-cur{box-shadow:inset 0 0 0 2px #60a5fa}
.fbs-sheet li button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fbs-sheet li button b{font-size:16px}
.fbs-sheet li button em{font-style:normal;color:#fca5a5;font-size:12px}
.fbs-none{color:#94a3b8;text-align:center;padding:12px}

@media(min-width:900px){.fbs-scr{max-width:520px;margin:0 auto;border-left:1px solid rgba(255,255,255,.08);border-right:1px solid rgba(255,255,255,.08)}}
@media (prefers-reduced-motion:reduce){.fbs-rays,.fbs-beam,.fbs-live,.fbs-gol b,.fbs-gate__ic,.fbs-scr.is-goal .fbs-score{animation:none}}
