:root{
  --bg:#07080C;
  --bg-panel:#0B1016;
  --bg-card:#161C26;
  --shell:#161C26;
  --inset:#0C1118;
  --lime:#C4FF2A;
  --gold:#F5C518;
  --green:#2ECC71;
  --red:#E74C3C;
  --text:#F4F6F8;
  --text-dim:#A7B2C2;
  --border:rgba(244,246,248,.07);
  --radius:22px;
  --radius-card:22px;
  --radius-shell:32px;
  --ease:cubic-bezier(.22,1,.36,1);
  color-scheme:dark;
}
*{margin:0;padding:0;box-sizing:border-box}
html{color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:normal;word-break:keep-all;background:#07080C}
body{
  font-family:'Heebo',sans-serif;
  background:#07080C;
  color:#F4F6F8;
  direction:rtl;
  min-height:100dvh;
  line-height:1.45;
  padding-bottom:calc(72px + env(safe-area-inset-bottom));
  overflow-x:hidden;
  overscroll-behavior-y:contain;
  color-scheme:dark;
}
h1,h2,h3{font-family:'Heebo',sans-serif;font-weight:800;text-wrap:balance}
button,a,[role="button"]{
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
  user-select:none;
  -webkit-appearance:none;
  appearance:none;
  color:inherit;
  font-family:inherit;
  background:transparent;
  border:none;
}
input,textarea{user-select:text;touch-action:auto;-webkit-tap-highlight-color:rgba(196,255,42,.18)}
:focus-visible{outline:2px solid var(--lime);outline-offset:2px}

/* ---------- Header ---------- */
header.site-header{
  padding:10px 16px 12px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  position:relative;
  border-bottom:1px solid var(--border);
  background:var(--bg);
  z-index:40;
}
.header-top{display:flex;align-items:center;justify-content:center;gap:10px;position:relative;min-height:72px}
.header-brand{display:flex;align-items:center;gap:8px;min-width:0}
.logo{display:flex;align-items:center;justify-content:center;text-decoration:none!important;line-height:0}
.logo-3d{
  height:58px;width:auto;display:block;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.55));
}
.logo .bb{display:none}
.logo .sport{display:none}
.header-date{display:none}
.header-date .hd-day{font-size:.84rem}
.header-date .hd-full{color:var(--text);font-weight:700;font-size:.72rem;opacity:.85}

/* hide old stadium overlays — mockup is clean black */
.live-zone{position:relative}
.live-zone .zone-bg,.live-zone::after{display:none!important}

/* ---------- Chips ---------- */
.filter-chips{
  display:flex;gap:8px;overflow-x:auto;flex-wrap:nowrap;
  padding:10px 16px 8px;
  scrollbar-width:none;-webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  background:#05070A;
}
.filter-chips::-webkit-scrollbar{display:none}
.chip{
  flex-shrink:0;
  padding:8px 14px;
  border:none;
  cursor:pointer;
  font-family:inherit;
  font-size:.8rem;
  font-weight:700;
  border-radius:999px;
  background:#101A28;
  color:#F4F6F8;
  min-height:36px;
  box-shadow:0 0 0 1px rgba(244,246,248,.08);
  -webkit-appearance:none!important;appearance:none!important;
  transition:transform 150ms ease-out, background-color 150ms ease-out, color 150ms ease-out, box-shadow 150ms ease-out;
  display:inline-flex;align-items:center;gap:7px;
}
.chip .lg-logo{width:18px;height:18px;object-fit:contain}
.chip:active{transform:scale(.96)}
.chip.on{background:var(--gold);color:#0A0E14;box-shadow:none}

.fav-bar{display:flex;gap:8px;overflow-x:auto;padding:0 16px 6px;scrollbar-width:none}
.fav-bar:empty{display:none}
.fav-pill{display:flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:rgba(196,255,42,.1);border:1px solid rgba(196,255,42,.28);color:var(--text);font-size:.78rem;font-weight:700;white-space:nowrap;cursor:pointer;font-family:inherit}
.star-btn{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:1.15rem;padding:4px 8px;line-height:1}
.star-btn.on{color:var(--gold)}

/* ---------- Live strip + match tiles ---------- */
.live-strip-wrap{padding:4px 0 8px;position:relative}
.strip-title{display:flex;align-items:center;gap:8px;padding:6px 16px 10px;font-size:.95rem;font-weight:800}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--red);animation:pulse 1.6s infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(231,76,60,.55)}50%{box-shadow:0 0 0 7px rgba(231,76,60,0)}}
.live-strip{display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;padding:2px 20px 16px 16px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-padding-inline:16px;direction:rtl}
.live-strip::-webkit-scrollbar{display:none}
.match-card{
  min-width:212px;max-width:240px;
  scroll-snap-align:start;
  padding:14px 14px 12px;
  flex-shrink:0;
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
}
.match-card .comp-name{font-size:.68rem;color:var(--text-dim);margin-bottom:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between;gap:6px}
.open-badge{background:var(--lime);color:#0A0E14;font-size:.58rem;font-weight:800;padding:2px 7px;border-radius:999px;letter-spacing:.02em}
.match-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.score-flip{
  font-family:'Rubik Mono One',monospace;
  font-size:1rem;
  min-width:34px;
  text-align:center;
  background:#070B12;
  border-radius:8px;
  padding:5px 8px;
  direction:ltr;
  font-variant-numeric:tabular-nums;
  border:1px solid var(--border);
}
.score-flip.flipping{animation:flip .6s ease}
@keyframes flip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}100%{transform:rotateX(0)}}
.match-status{
  margin-top:8px;
  font-size:.78rem;
  font-weight:700;
  text-align:center;
  border-radius:12px;
  padding:8px 10px;
  background:#0A1018;
  color:var(--text);
  width:100%;
  border:none;
  font-family:inherit;
}
.match-status.live{background:rgba(231,76,60,.18);color:#FF8A7A}
.match-status.done{background:rgba(46,204,113,.14);color:var(--green)}
.card-open{background:none;border:none;padding:0;width:100%;cursor:pointer;color:inherit;font-family:inherit}
.card-open .match-status{display:block}

/* logos / teams */
.tlogo{width:24px;height:24px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}
.team-open{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;color:var(--text);font-family:inherit;font-size:.82rem;font-weight:700;padding:0;max-width:100%;text-align:inherit;min-width:0}
.team-open span{overflow:visible;text-overflow:unset;white-space:normal;line-height:1.25;word-break:keep-all}
.team-open.winner span{color:var(--gold)}
.game-row .home .team-open{flex-direction:row}
.game-row .away .team-open{flex-direction:row-reverse;margin-inline-start:auto}

/* deco illustrations */
.deco{position:absolute;pointer-events:none;user-select:none;z-index:3}
.deco-player{display:none}
.deco-board{left:6px;top:-6px;height:84px;width:auto;transform:rotate(-12deg)}
.section-head{position:relative;padding-inline-end:96px}

/* ---------- Featured ---------- */
.featured-banner{
  margin:4px 16px 16px;
  padding:14px 16px;
  display:flex;align-items:center;gap:12px;
  cursor:pointer;
  border:1px solid rgba(245,197,24,.32);
  background:var(--bg-card);
  border-radius:var(--radius-card);
  position:relative;overflow:hidden;
}
.featured-banner .fb-star{font-size:1.45rem;color:var(--gold);filter:drop-shadow(0 0 8px rgba(245,197,24,.45))}
.featured-banner .fb-teams{flex:1;min-width:0}
.featured-banner .fb-title{font-size:.68rem;color:var(--gold);font-weight:800;margin-bottom:4px}
.featured-banner .fb-line{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700}
.featured-banner .fb-line img{width:22px;height:22px;object-fit:contain}
.featured-banner .fb-vs{color:var(--text-dim);font-size:.75rem}
.featured-banner .fb-when{font-size:.72rem;color:var(--text-dim);margin-top:4px}
.fb-score{
  flex-shrink:0;text-align:center;min-width:64px;
  font-family:'Rubik Mono One',monospace;font-size:1.35rem;line-height:1;direction:ltr;unicode-bidi:isolate;white-space:nowrap;
}
.fb-score .min{display:block;font-family:'Heebo',sans-serif;font-size:.68rem;font-weight:800;color:var(--lime);margin-top:5px}
.fb-score.soon{font-family:'Heebo',sans-serif;font-size:.95rem;font-weight:800;color:var(--gold)}

/* ---------- Headlines / sections ---------- */
.headlines{padding:4px 16px 16px;display:grid;gap:10px}
.section-title{font-size:1.12rem;font-weight:800;padding:16px 16px 10px;display:flex;align-items:center;gap:8px}
.section-title .bar{width:5px;height:20px;background:var(--gold);border-radius:3px}
.headline-card{
  padding:10px;
  display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:center;
  text-decoration:none;color:var(--text);
  background:var(--bg-card);
  border:none;
  box-shadow:0 0 0 1px var(--border);
  border-radius:var(--radius-card);
  transition:transform 150ms var(--ease);
}
.headline-card.no-img{grid-template-columns:1fr;padding:14px 15px}
.headline-card img{width:96px;height:74px;object-fit:cover;border-radius:14px;background:var(--bg-panel)}
.headline-card:active{transform:scale(.97)}
.headline-card .src{display:inline-flex;align-items:center;font-size:.65rem;color:#F5C518;font-weight:800;margin-bottom:6px;background:rgba(245,197,24,.14);padding:3px 9px;border-radius:999px;letter-spacing:.01em}
.headline-card .title{font-size:.95rem;font-weight:600;line-height:1.45;overflow-wrap:normal;word-break:keep-all;hyphens:none;unicode-bidi:plaintext}
.headline-card .time{font-size:.7rem;color:var(--text-dim);margin-top:6px}
.stale-bar{margin:8px 16px;padding:10px 12px;border-radius:14px;background:rgba(231,76,60,.12);color:#ff8a7a;font-size:.78rem;font-weight:700;display:none}
.stale-bar.on{display:flex;align-items:center;justify-content:space-between;gap:8px}
.heat-map{position:relative;margin:0 16px 14px;aspect-ratio:3/4.2;border-radius:16px;overflow:hidden;background:#0E2417;border:2px solid rgba(242,244,248,.14)}
.heat-map svg{position:absolute;inset:0;width:100%;height:100%}
.heat-blob{position:absolute;width:42px;height:42px;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(196,255,42,.55),rgba(245,197,24,.2) 55%,transparent 70%);pointer-events:none}
.cmp-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 16px 14px}
.cmp-chips{display:flex;gap:6px;overflow-x:auto;padding:0 16px 12px;scrollbar-width:none}

.glass{
  background:var(--bg-card);
  border:1px solid var(--border);
  border-radius:var(--radius-card);
}

/* ---------- Results groups ---------- */
.league-group{margin:0 16px 16px;overflow:hidden}
.league-header{
  display:flex;align-items:center;justify-content:flex-start;gap:8px;
  padding:12px 16px;background:#0C1219;border-bottom:1px solid var(--border);
  font-weight:800;font-size:.92rem;direction:rtl;text-align:right;
}
.league-header.israel{background:rgba(46,204,113,.1)}
.league-header .lg-logo{width:28px;height:28px;object-fit:contain;flex-shrink:0}
.league-header .flag{font-size:1.15rem}
.fx-card{display:block;width:100%;border-bottom:1px solid var(--border);padding:14px 12px 16px;background:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer}
.fx-card:last-child{border-bottom:none}
.fx-card.live{background:rgba(231,76,60,.06)}
.fx-teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;direction:ltr}
.fx-team{display:flex;align-items:center;gap:8px;min-width:0;font-size:.9rem;font-weight:800;line-height:1.2;background:none;border:none;color:inherit;padding:0}
.fx-team span{min-width:0;line-height:1.2;font-weight:800}
.fx-team.away{flex-direction:row;justify-content:flex-end;text-align:right}
.fx-team.home{flex-direction:row;justify-content:flex-start;text-align:left}
.fx-team .tlogo{width:36px;height:36px;flex-shrink:0;object-fit:contain}
.fx-mid{text-align:center;min-width:84px;width:auto;max-width:120px;background:none;border:none;color:inherit;padding:0 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto}
.fx-mid .kickoff.time{font-size:1.28rem;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:.02em;line-height:1.1}
.fx-mid .score{font-family:'Rubik Mono One',monospace;font-size:1.15rem;direction:ltr;unicode-bidi:isolate}
.fx-mid .minute{font-size:.68rem;font-weight:800;color:#FF8A7A;margin-top:2px}
.fx-mid .kickoff{font-size:.8rem;color:var(--text-dim)}
.fx-mid .tv-chip{font-size:.62rem;color:var(--text-dim);margin-top:4px}
.fx-tv{display:flex;justify-content:center;align-items:center;padding:6px 0 2px}
.fx-tv .tv-row{margin:0;min-height:0;width:auto;flex:0 0 auto}
.tv-row{display:inline-flex;justify-content:flex-start;align-items:center;gap:10px;margin-top:6px;min-height:22px;direction:rtl;unicode-bidi:isolate;overflow:visible;width:auto;max-width:100%;vertical-align:middle}
.tv-item{display:inline-flex;align-items:center;gap:10px;flex-direction:row}
.tv-name{display:none}
.tv-logo{height:22px;width:auto;max-width:140px;max-height:28px;object-fit:contain;object-position:center;display:block;background:transparent;border:0;direction:ltr;unicode-bidi:isolate;transform:none;flex-shrink:0}
.tk-foot .tv-row{justify-content:flex-start;margin:0 0 4px}
.tk-foot .tk-odds{font-size:.68rem;color:var(--text-dim)}
.m-row.m-tv{align-items:center;flex-wrap:wrap;gap:8px}
.m-row.m-tv .tv-row{display:inline-flex;width:auto;flex:0 0 auto;margin:0;justify-content:flex-start;align-items:center}
.m-row.m-tv .tv-logo{height:52px;max-height:52px;max-width:260px}
.fx-mid .tv-logo{height:20px;max-width:120px}
.odds-wrap{display:block;width:100%;background:none;border:none;padding:0;margin-top:6px;color:inherit}
.odds-line{
  display:flex;justify-content:center;align-items:baseline;gap:16px;
  direction:ltr;font-size:.7rem;font-weight:700;color:#C9D2DC;
  font-variant-numeric:tabular-nums;line-height:1;
}
.odds-line b{font-weight:800;color:#7E8B9C;font-size:.6rem;margin-inline-end:4px}
.hr-body{min-width:0;display:flex;flex-direction:column;gap:5px}
.hr-body .odds-line{justify-content:flex-start;gap:12px;padding-inline-start:2px}
.game-center{text-align:center;min-width:0}
button.game-center{
  background:none;border:none;cursor:pointer;color:inherit;font-family:inherit;
  padding:6px 4px;border-radius:12px;min-height:44px;min-width:0;
  transition:background-color 150ms ease-out, transform 150ms ease-out;
}
button.game-center:active{background:rgba(196,255,42,.12);transform:scale(.96)}
.game-center .score{font-family:'Rubik Mono One',monospace;font-size:1.1rem;direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;white-space:nowrap}
.game-center .minute{font-size:.68rem;font-weight:800;color:#FF8A7A}
.game-center .kickoff{font-size:.85rem;color:var(--text-dim)}
.game-center .tv-chip{font-size:.62rem;color:var(--text-dim);margin-top:3px}
.game-center .odds-chip{font-size:.62rem;color:var(--gold);font-weight:700;margin-top:2px;direction:ltr;unicode-bidi:isolate;white-space:nowrap}

/* day strip */
.day-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 20px 14px 16px;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-padding-inline:16px}
.day-strip::-webkit-scrollbar{display:none}
.day-chip{
  flex-shrink:0;scroll-snap-align:start;min-width:52px;
  padding:6px 7px 5px;text-align:center;border:none;
  background:var(--bg-card);border-radius:14px;cursor:pointer;color:var(--text);
  font-family:inherit;position:relative;
  box-shadow:0 0 0 1px var(--border);
  transition:transform 150ms ease-out, background-color 150ms ease-out, color 150ms ease-out, box-shadow 150ms ease-out;
}
.day-chip:active{transform:scale(.96)}
.day-chip .dw{font-size:.62rem;color:var(--text-dim);font-weight:700;line-height:1.2}
.day-chip .dn{font-family:'Rubik Mono One',monospace;font-size:.95rem;margin-top:1px;line-height:1}
.day-chip .dm{font-size:.58rem;color:var(--text-dim);line-height:1.2;margin-top:1px}
.day-chip.active{background:var(--gold);color:#0A0E14;box-shadow:none}
.day-chip.active .dw,.day-chip.active .dm{color:rgba(10,14,20,.75)}
.day-chip .live-mark{position:absolute;top:6px;inset-inline-end:8px;width:7px;height:7px;border-radius:50%;background:var(--red);animation:pulse 1.6s infinite}

.state-msg{margin:24px 16px;padding:22px 18px;text-align:center;color:var(--text-dim);font-size:.9rem;line-height:1.7}
.state-msg .big{font-size:1.6rem;margin-bottom:8px}
.last-updated{text-align:center;font-size:.7rem;color:var(--text-dim);padding:4px 0 10px;position:relative;z-index:4}

/* ---------- Bottom nav ---------- */
nav.bottom-nav{
  position:fixed;bottom:0;right:0;left:0;
  min-height:56px;display:flex;z-index:50;
  background:rgba(5,7,10,.94);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-top:1px solid var(--border);
  padding-bottom:max(8px,env(safe-area-inset-bottom));
}
.bottom-nav button{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  background:transparent!important;border:none;cursor:pointer;color:#A7B2C2;
  font-size:.7rem;font-weight:700;font-family:inherit;min-height:48px;padding:6px 0 4px;
  -webkit-appearance:none!important;appearance:none!important;
  transition:color 150ms ease-out, transform 150ms ease-out;
}
.bottom-nav button:active{transform:scale(.96)}
.bottom-nav button .ico{width:24px;height:24px;line-height:0}
.bottom-nav button .ico svg{width:100%;height:100%}
.bottom-nav button.active{color:var(--gold)}

.page{display:none}
.page.visible{display:block}
.x-updates{margin:4px 12px 28px;border-radius:18px;overflow:hidden;background:#15202B;min-height:70vh}
.x-updates iframe{display:block;width:100%;height:min(78vh,760px);border:0;background:#15202B}

/* install bar */
.install-bar{display:none!important}
.stadium-build{
  position:fixed;inset:0;z-index:97;
  background:#05070A;
  display:flex;align-items:center;justify-content:center;
}
.stadium-build[hidden]{display:none!important}
.sb-stage{width:min(92vw,420px);text-align:center}
.sb-svg{width:100%;height:auto;filter:drop-shadow(0 0 28px rgba(196,255,42,.28))}
.sb-pitch{transform-box:fill-box;transform-origin:center;animation:sbPitch .7s ease both}
.sb-stand{transform-box:fill-box;transform-origin:center bottom;animation:sbRise .9s cubic-bezier(.22,1,.36,1) both}
.sb-s1{animation-delay:.15s}
.sb-s2{animation-delay:.32s}
.sb-lights{opacity:0;animation:sbLights .5s .9s ease both}
.sb-word{opacity:0;animation:sbWord .5s 1.2s ease both}
.sb-caption{margin-top:8px;font:800 .95rem Heebo,sans-serif;color:#C4FF2A;letter-spacing:.02em;animation:sbWord .4s .4s ease both}
@keyframes sbPitch{from{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes sbRise{from{transform:scaleY(.05) translateY(40px);opacity:0}to{transform:scaleY(1) translateY(0);opacity:1}}
@keyframes sbLights{0%{opacity:0}40%{opacity:1}55%{opacity:.35}70%{opacity:1}85%{opacity:.5}100%{opacity:1}}
@keyframes sbWord{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.goal-flash{animation:goalFlash .9s ease}
@keyframes goalFlash{
  0%{box-shadow:0 0 0 0 rgba(196,255,42,.0)}
  25%{box-shadow:0 0 0 4px rgba(196,255,42,.55); background:rgba(196,255,42,.12)}
  100%{box-shadow:0 0 0 0 rgba(196,255,42,0)}
}
.skel{height:68px;border-radius:18px;margin:0 16px 10px;background:linear-gradient(90deg,rgba(242,244,248,.04),rgba(242,244,248,.1) 50%,rgba(242,244,248,.04));background-size:200% 100%;animation:skel 1.3s ease infinite}
@keyframes skel{to{background-position:-200% 0}}
.legal{text-align:center;font-size:.68rem;color:var(--text-dim);padding:10px 16px 24px;line-height:1.65}
.legal a{color:var(--lime);text-decoration:none}
.stand-team{display:flex;align-items:center;gap:8px;background:none;border:none;color:inherit;font:inherit;cursor:pointer;font-weight:800;padding:0;min-width:0;width:100%;text-align:right}
.stand-team .st-name{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;font-size:.86rem}
#page-stats .filter-chips{position:sticky;top:0;z-index:6;background:linear-gradient(#07080C 78%,rgba(7,8,12,0));padding-bottom:8px}
.board{margin:4px 12px 18px;background:#10161E;border-radius:28px;overflow:visible;box-shadow:0 0 0 1px rgba(244,246,248,.07)}
.board-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 6px}
.board-name{display:flex;align-items:center;gap:10px;min-width:0}
.board-name img,.board-name .lg-logo{width:36px;height:36px;object-fit:contain}
.board-name b{display:block;font-size:1rem;line-height:1.15}
.board-name small{display:block;color:var(--text-dim);font-size:.68rem;font-weight:700;margin-top:2px}
.board-modes{display:flex;background:#0C1118;border-radius:999px;padding:3px;flex-shrink:0}
.board-modes button{border:0;background:transparent;color:#A7B2C2;font:800 .74rem Heebo,sans-serif;padding:8px 12px;border-radius:999px;min-height:32px}
.board-modes button.on{background:#F4F6F8;color:#0A0E14}
.board-legend{display:flex;flex-wrap:wrap;gap:8px 12px;padding:4px 14px 10px;align-items:center}
.board-legend .lg{display:inline-flex;align-items:center;gap:6px;font-size:.68rem;font-weight:800;color:#C5CED8}
.board-legend .lg::before{content:"";width:8px;height:8px;border-radius:99px;background:#3A4554}
.board-legend .z1::before{background:#C4FF2A}
.board-legend .z2::before{background:#7EB6FF}
.board-legend .z3::before{background:#C4B5FD}
.board-legend .zrel::before{background:#FF7A59}
.board-legend .hint{color:#7E8B9C;font-weight:700}
.board-legend .hint::before{display:none}
.board[data-mode="cards"] .num-list{display:none}
.board[data-mode="full"] .board-cards{display:none}
.league-pick{position:relative;padding:0 12px 8px;z-index:8}
.lp-btn,.lp-item{
  width:100%;display:flex;align-items:center;gap:10px;
  background:#0C1118;color:#F4F6F8;border:0;border-radius:16px;
  padding:8px 12px;min-height:48px;font:800 .9rem Heebo,sans-serif;text-align:right;
}
.lp-btn span,.lp-item span{flex:1;min-width:0}
.lp-chev{width:8px;height:8px;border-inline-start:2px solid #C5CED8;border-bottom:2px solid #C5CED8;transform:rotate(-45deg);margin-inline-end:4px;flex-shrink:0}
.lp-btn[aria-expanded="true"] .lp-chev{transform:rotate(135deg)}
.lp-menu{
  position:absolute;inset-inline:12px;top:calc(100% - 2px);z-index:30;
  max-height:min(62vh,460px);overflow:auto;-webkit-overflow-scrolling:touch;
  background:#121922;border-radius:18px;padding:6px;
  box-shadow:0 18px 40px rgba(0,0,0,.5),0 0 0 1px rgba(244,246,248,.08);
}
.lp-item{background:transparent;border-radius:12px;min-height:46px;font-weight:700}
.lp-item.on{background:rgba(196,255,42,.12)}
.lg-mark{width:28px;height:28px;flex-shrink:0;display:grid;place-items:center;position:relative}
.lg-mark img{width:28px;height:28px;object-fit:contain;position:relative;z-index:1}
.lg-flag{display:none;font-size:1.05rem;line-height:1}
.lg-mark:not(:has(img)) .lg-flag{display:block}
.board-cards,.num-list{border-radius:0 0 26px 26px;overflow:hidden}
.br{position:relative;border-top:1px solid rgba(244,246,248,.06)}
.br-main{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto auto;align-items:center;gap:8px;padding:11px 12px;min-height:64px}
.br-hit{position:absolute;inset:0;border:0;background:transparent;z-index:1}
.br-pos{position:relative;z-index:2;width:32px;height:32px;border-radius:11px;display:grid;place-items:center;font:800 .84rem Heebo,sans-serif;background:#1A222C;color:#C5CED8;pointer-events:none}
.br.rank1 .br-pos{background:#F5C518;color:#1A1200}
.br.rank2 .br-pos{background:#D5DDE6;color:#1A1200}
.br.rank3 .br-pos{background:#C9844A;color:#1A1200}
.br.z1{box-shadow:inset -4px 0 0 #C4FF2A}
.br.z2{box-shadow:inset -4px 0 0 #7EB6FF}
.br.z3{box-shadow:inset -4px 0 0 #C4B5FD}
.br.zrel{box-shadow:inset -4px 0 0 #FF7A59}
.br.hi{background:rgba(196,255,42,.08)}
.br-club{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:5px;background:none;border:0;color:inherit;padding:0;min-width:0;text-align:right}
.br-id{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}
.br-id .tlogo{width:32px;height:32px;flex-shrink:0}
.br-club .nm{font-weight:800;font-size:.92rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.br-form{display:flex;gap:3px;direction:rtl;pointer-events:none}
.fd{width:7px;height:7px;border-radius:50%;background:#2A3340;display:block}
.fd.w{background:#3DDC97}
.fd.d{background:#F5C518}
.fd.l{background:#FF6B5A}
.br-gd{position:relative;z-index:2;pointer-events:none;font:800 .78rem Heebo,sans-serif;direction:ltr;color:#8B97A6;min-width:32px;text-align:center}
.br-gd.up{color:#3DDC97}
.br-gd.dn{color:#FF6B5A}
.br-pts{position:relative;z-index:2;pointer-events:none;min-width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#0C1118;color:#F5C518;font:800 1.15rem Heebo,sans-serif;box-shadow:inset 0 0 0 1px rgba(245,197,24,.18)}
.br-more{display:none;padding:0 12px 14px;position:relative;z-index:2}
.br.open .br-more{display:grid;gap:8px}
.br-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.br-stats div{background:#0C1118;border-radius:14px;padding:8px 4px 7px;text-align:center}
.br-stats b{display:block;font-size:1rem;line-height:1.1}
.br-stats span{font-size:.62rem;color:#8B97A6;font-weight:700}
.br-goals{display:flex;justify-content:space-between;align-items:center;background:#0C1118;border-radius:14px;padding:10px 12px;font-weight:800}
.br-goals span{color:#8B97A6;font-size:.75rem}
.br-next{display:flex;align-items:center;gap:8px;padding:2px 2px 0}
.br-next>span{color:#8B97A6;font-size:.72rem;font-weight:800}
.br-next .team-open{display:inline-flex;align-items:center;gap:6px;background:#0C1118;border:0;color:inherit;border-radius:999px;padding:6px 10px 6px 8px;font:800 .78rem Heebo,sans-serif;min-width:0}
.br-next .tlogo{width:22px;height:22px}
.br-next em{margin-inline-start:auto;font-style:normal;color:#A7B2C2;font-size:.72rem;font-weight:700}
.num-list{display:flex;flex-direction:column}
.num-head,.num-row{
  display:grid;
  grid-template-columns:30px minmax(0,1fr) 28px 22px 22px 22px 40px 36px;
  align-items:center;gap:2px;padding:0 8px;
}
.num-head{color:#8B97A6;font-size:.62rem;font-weight:800;padding-top:4px;padding-bottom:8px}
.num-head span,.num-row>span,.num-row>b{text-align:center}
.num-head span:nth-child(2),.num-row .stand-team{text-align:right}
.num-row{min-height:52px;border-top:1px solid rgba(244,246,248,.06);font-size:.78rem;font-variant-numeric:tabular-nums}
.num-row .stand-team{gap:6px}
.num-row .tlogo{width:22px;height:22px}
.num-row .st-name{font-size:.78rem}
.num-row .br-pos{width:26px;height:26px;border-radius:8px;font-size:.72rem}
.num-row .c-pts{color:#F5C518;font-size:.95rem;text-align:center}
.num-row .up{color:#3DDC97}
.num-row .dn{color:#FF6B5A}
.num-row.z1{box-shadow:inset -4px 0 0 #C4FF2A}
.num-row.z2{box-shadow:inset -4px 0 0 #7EB6FF}
.num-row.z3{box-shadow:inset -4px 0 0 #C4B5FD}
.num-row.zrel{box-shadow:inset -4px 0 0 #FF7A59}
.num-row.hi{background:rgba(196,255,42,.08)}
.rank1 .br-pos{background:#F5C518;color:#1A1200}
.rank2 .br-pos{background:#D5DDE6;color:#1A1200}
.rank3 .br-pos{background:#C9844A;color:#1A1200}
.king-row{
  width:100%;display:grid;grid-template-columns:34px 40px minmax(0,1fr) auto;
  align-items:center;gap:8px;padding:10px 12px;border:0;border-top:1px solid rgba(244,246,248,.06);
  background:transparent;color:inherit;text-align:right;font:inherit;
}
.king-row img{border-radius:50%;object-fit:cover;background:#1A222C}
.king-who{min-width:0;display:flex;flex-direction:column;gap:2px}
.king-who b{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.king-who small{color:#8B97A6;font-size:.7rem;font-weight:700}
.board.kings{margin-top:0}
.form-d{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:3px;font-size:.55rem;font-weight:800;margin-inline-start:2px}
.form-row{display:flex;gap:4px;direction:ltr;flex-shrink:0}
.form-dot{
  width:22px;height:22px;border-radius:6px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:.62rem;font-weight:800;line-height:1;
}
.form-dot.w{background:#2ECC71;color:#06210f}
.form-dot.d{background:#5c6b7a;color:#F4F6F8}
.form-dot.l{background:#E74C3C;color:#fff}
.form-team{display:flex;flex-direction:column;gap:8px;padding:10px 0}
.form-team + .form-team{border-top:1px solid var(--border);padding-top:12px}
.form-who{display:flex;align-items:center;gap:8px;font-weight:700;background:none;border:none;color:inherit;font:inherit;padding:0;cursor:pointer}

/* ---------- Team modal / pitch / events (kept, retinted) ---------- */
.team-modal{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;background:var(--bg);opacity:0;pointer-events:none;visibility:hidden;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}
.team-modal.open{opacity:1;pointer-events:auto;visibility:visible}
.team-sheet{margin:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;background:var(--bg);padding-bottom:max(24px,env(safe-area-inset-bottom))}
@keyframes sheetUp{from{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}
.team-hero{display:flex;align-items:center;gap:14px;padding:20px 18px 14px;position:sticky;top:0;background:linear-gradient(180deg,var(--bg) 75%,transparent);z-index:2}
.team-hero img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 2px 10px rgba(196,255,42,.25))}
.team-hero h3{font-size:1.35rem;flex:1}
.team-close{background:var(--bg-card);border:1px solid var(--border);color:var(--text);width:36px;height:36px;border-radius:50%;font-size:1rem;cursor:pointer;flex-shrink:0}
.squad-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;padding:4px 16px 24px}
.player-open{cursor:pointer}
.player-card{text-align:center;padding:10px 6px;cursor:pointer;border:none;font-family:inherit;color:inherit;width:100%;background:var(--bg-card)}
.pp.player-open{cursor:pointer}
.player-card img{width:56px;height:56px;border-radius:50%;object-fit:cover;background:var(--bg-panel);margin-bottom:6px}
.player-card .pname{font-size:.7rem;font-weight:600;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.player-card .ppos{font-size:.6rem;color:var(--text-dim);margin-top:3px}
.pos-title{padding:12px 18px 6px;font-size:.85rem;font-weight:800;color:var(--gold)}

.fx-hero{margin:0 16px 14px;padding:18px 16px;text-align:center;max-width:calc(100% - 32px);overflow:hidden}
.fx-hero .fx-comp{font-size:.72rem;color:var(--gold);font-weight:800;margin-bottom:10px}
.fx-hero .fx-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.fx-hero .fx-team{flex:1;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0}
.fx-hero .fx-team img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 3px 10px rgba(0,0,0,.5))}
.fx-hero .fx-team .n{font-size:.84rem;font-weight:700;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:center}
.fx-hero .fx-mid{font-family:'Rubik Mono One',monospace;font-size:1.5rem;direction:ltr}
.fx-hero .fx-status{margin-top:10px;font-size:.75rem;color:var(--text-dim)}
.fx-hero .fx-status.live{color:#FF8A7A;font-weight:800}
.fx-meta{margin:0 16px 14px;padding:12px 15px;display:grid;gap:8px;font-size:.82rem}
.fx-meta .m-row{display:flex;gap:8px;align-items:center}
.fx-meta .m-ico{width:20px;text-align:center;flex-shrink:0;line-height:1}

.pitch-stage{margin:4px 10px 8px}
.pitch3d{position:relative;width:100%;aspect-ratio:3/5.15;border-radius:16px;border:2px solid rgba(242,244,248,.14);overflow:hidden;background:
  radial-gradient(circle at 50% 50%, transparent 8.5%, rgba(242,244,248,.18) 9% 9.6%, transparent 10.2%),
  linear-gradient(rgba(242,244,248,.18), rgba(242,244,248,.18)) 50% 50%/100% 2px no-repeat,
  repeating-linear-gradient(90deg,#0E2417 0 12.5%,#123020 12.5% 25%)}
.pitch3d .box{position:absolute;left:22%;width:56%;height:12%;border:2px solid rgba(242,244,248,.16)}
.pitch3d .box.top{top:-2px;border-top:none}
.pitch3d .box.bottom{bottom:-2px;border-bottom:none}
.pp{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;width:64px;background:none;border:none;padding:0;color:inherit;z-index:1}
.pp-face{position:relative;width:42px;height:42px;flex-shrink:0}
.pp img,.pp .avatar-fallback{width:42px;height:42px;border-radius:50%;object-fit:cover;background:var(--bg-panel);border:2.5px solid #F5C518;box-shadow:0 3px 10px rgba(0,0,0,.55)}
.pp.away img,.pp.away .avatar-fallback{border-color:#93B5FF}
.pp .pn{margin-top:3px;font-size:.55rem;font-weight:800;line-height:1.15;text-align:center;background:rgba(6,9,14,.92);border-radius:6px;padding:2px 4px;max-width:64px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.pp .pn-num{position:absolute;bottom:-3px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#0A0E14;color:#fff;font-size:.55rem;font-weight:800;line-height:16px;border:1px solid rgba(245,197,24,.55);z-index:2}
.pp.away .pn-num{border-color:rgba(147,181,255,.65)}

.events-wrap{margin:8px 16px 12px;padding:4px 0 8px;position:relative}
.events-wrap::before{content:'';position:absolute;top:8px;bottom:8px;right:50%;width:2px;background:linear-gradient(180deg,transparent,rgba(196,255,42,.35),transparent)}
.ev-row{display:grid;grid-template-columns:1fr 54px 1fr;align-items:center;gap:6px;padding:6px 10px}
.live-events-title{padding:4px 18px 0;font-size:.78rem;font-weight:800;color:var(--gold)}
.ev-min{text-align:center;font-family:'Rubik Mono One',monospace;font-size:.72rem;color:var(--gold);background:var(--bg);border:1px solid rgba(245,197,24,.3);border-radius:999px;padding:3px 0;z-index:1}
.ev-side{display:flex;align-items:center;gap:7px;font-size:.78rem;min-width:0}
.ev-side.home{justify-content:flex-start}
.ev-side.away{justify-content:flex-end;text-align:left}
.ev-ico{font-size:1rem;flex-shrink:0}
.ev-txt{min-width:0;font-weight:600}
.ev-name{background:none;border:none;color:inherit;font:inherit;padding:0;font-weight:700;text-align:inherit}
.ev-sub{font-size:.64rem;color:var(--text-dim);display:block;font-weight:400}

.avatar-fallback{display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.72rem;color:var(--lime);background:linear-gradient(140deg,#182338,#0F1725)!important}
.wiki-card{margin:0 16px 14px;overflow:hidden}
.wiki-banner{width:100%;height:130px;object-fit:cover;display:block;filter:saturate(.9)}
.wiki-body{padding:13px 15px}
.wiki-desc{font-size:.72rem;color:var(--gold);font-weight:700;margin-bottom:6px}
.wiki-extract{font-size:.85rem;line-height:1.65;color:var(--text)}
.wiki-link{display:inline-block;margin-top:10px;font-size:.75rem;color:var(--lime);text-decoration:none;font-weight:700}
.career-box{margin:0 16px 14px;padding:4px 0 8px}
.career-row{display:grid;grid-template-columns:64px 24px 1fr auto;gap:8px;align-items:center;padding:8px 14px;border-top:1px solid var(--border);font-size:.8rem}
.career-row.no-logo{grid-template-columns:64px 1fr auto}
.career-row:first-child{border-top:none}
.career-row .cy{font-family:'Rubik Mono One',monospace;font-size:.62rem;color:var(--text-dim);direction:ltr;text-align:right}
.career-row .clogo{width:22px;height:22px;object-fit:contain;background:transparent}
.career-row .cn{font-weight:700;min-width:0}
.career-row .ca{font-variant-numeric:tabular-nums;color:var(--gold);font-weight:800;direction:ltr;font-size:.78rem}
.champ-row{display:grid;grid-template-columns:86px 1fr;gap:10px;padding:9px 15px;border-top:1px solid var(--border);font-size:.82rem;align-items:center}
.champ-row .cy{font-family:'Rubik Mono One',monospace;font-size:.72rem;color:var(--text-dim);direction:ltr;text-align:right}
.champ-row .cn{font-weight:700}
.champ-row .cn .cnt{color:var(--gold);font-size:.7rem;margin-inline-start:6px}
.kick-loader{display:flex;justify-content:center;align-items:center;padding:28px 0;min-height:120px}
.nx{
  width:72px;height:72px;border-radius:50%;position:relative;
  background:radial-gradient(circle at 50% 50%, rgba(196,255,42,.16), transparent 62%);
  box-shadow:0 0 0 1px rgba(196,255,42,.28), 0 0 28px rgba(196,255,42,.12);
}
.nx-sweep{
  position:absolute;inset:6px;border-radius:50%;
  background:conic-gradient(from 0deg, transparent 0 68%, rgba(196,255,42,.05) 78%, #C4FF2A 100%);
  -webkit-mask:radial-gradient(circle, transparent 58%, #000 60%);
  mask:radial-gradient(circle, transparent 58%, #000 60%);
  animation:nxSpin 1.15s linear infinite;
}
.nx-ring{
  position:absolute;inset:0;border-radius:50%;border:1px solid rgba(196,255,42,.35);
  animation:nxPulse 1.8s ease-out infinite;
}
.nx-ring.d2{animation-delay:.6s}
.nx b{
  position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px;border-radius:50%;
  background:#C4FF2A;box-shadow:0 0 14px #C4FF2A;
}
@keyframes nxSpin{to{transform:rotate(360deg)}}
@keyframes nxPulse{
  0%{transform:scale(.72);opacity:.7}
  100%{transform:scale(1.18);opacity:0}
}
.goal-loader{--p:8%;margin:8px 16px 28px}
.gl-stage{
  position:relative;overflow:hidden;border-radius:22px;
  aspect-ratio:16/9;max-height:38vh;
  background:#05070A;
  transform:perspective(900px) rotateX(9deg) rotateY(-7deg);
  transform-origin:center bottom;
  box-shadow:0 22px 48px rgba(0,0,0,.5), 0 0 0 1px rgba(196,255,42,.14), 0 0 40px rgba(196,255,42,.08);
  animation:glFloat 4.4s ease-in-out infinite;
}
@keyframes glFloat{
  0%,100%{transform:perspective(900px) rotateX(9deg) rotateY(-7deg) translateY(0)}
  50%{transform:perspective(900px) rotateX(6deg) rotateY(6deg) translateY(-7px)}
}
.gl-vid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.gl-bw{filter:grayscale(1) contrast(1.18) brightness(.82)}
.gl-color-mask{
  position:absolute;inset:0;
  clip-path:inset(calc(100% - var(--p)) 0 0 0);
  transition:clip-path 480ms ease;
}
.gl-color{filter:saturate(1.2) contrast(1.06)}
.gl-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgba(5,7,10,.55))}
.gl-bar{height:6px;border-radius:99px;background:#151C26;overflow:hidden;margin-top:12px;box-shadow:0 0 0 1px var(--border)}
.gl-bar i{display:block;height:100%;width:var(--p);background:linear-gradient(90deg,#C4FF2A,#F5C518);transition:width 480ms ease}
.gl-txt{text-align:center;font-size:.78rem;font-weight:700;color:var(--text-dim);margin-top:8px}
@media (prefers-reduced-motion:reduce){
  .gl-stage{animation:none;transform:none}
}
.lineup-legend{display:flex;justify-content:center;gap:16px;padding:8px 16px 16px;font-size:.7rem;color:var(--text-dim)}
.lineup-legend .dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-inline-end:5px;vertical-align:middle}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}
@media (min-width:720px){
  .headlines{grid-template-columns:1fr 1fr;max-width:900px;margin:0 auto}
  .league-group{max-width:700px;margin-inline:auto;margin-bottom:16px}
  .live-strip{padding-inline:max(16px,calc((100% - 900px)/2))}
  .deco-player{height:160px;left:8px}
  header.site-header{max-width:900px;margin:0 auto;width:100%}
}

:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.ab-name,.ab-club,.ab-opp,.pn,.tk-team span,.team-open span,.ev-txt{
  overflow-wrap:normal;word-break:keep-all;hyphens:none;
}
.hour-list{margin:0 16px 18px;overflow:hidden}
.hour-row{
  display:grid;grid-template-columns:56px minmax(0,1fr) 68px;
  align-items:center;gap:8px;width:100%;
  padding:12px 12px;background:none;border:0;border-bottom:1px solid var(--border);
  color:inherit;font:inherit;text-align:right;cursor:pointer;
  min-height:58px;
}
.hour-row:last-child{border-bottom:none}
.hour-row.live{background:rgba(196,255,42,.06)}
.hr-time{
  font-weight:800;font-size:1.02rem;font-variant-numeric:tabular-nums;
  letter-spacing:.02em;text-align:center;color:var(--text);
}
.hour-row.live .hr-time{color:var(--lime)}
.hour-row.done .hr-time{color:#A7B2C2}
.hr-teams{display:grid;grid-template-columns:28px minmax(0,1fr) auto minmax(0,1fr) 28px;align-items:center;gap:6px;min-width:0}
.hr-teams .tlogo{width:26px;height:26px;flex-shrink:0}
.hr-name{
  font-weight:800;font-size:.8rem;line-height:1.25;
  white-space:normal;overflow:visible;text-overflow:unset;
  max-width:none;text-align:right;word-break:keep-all;hyphens:none;
}
.hr-name.away{font-weight:700;color:#D5DCE6;text-align:left}
.hr-vs{color:#7E8B99;font-weight:800;flex-shrink:0;padding:0 2px}
.hr-score{font-family:'Rubik Mono One',monospace;font-size:.95rem;direction:ltr;unicode-bidi:isolate;flex-shrink:0}
.hr-side{display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;max-width:68px}
.hr-side .tv-row{margin:0;width:auto}
.hr-side .tv-logo{height:18px;max-width:64px;max-height:20px}
.hr-live{color:var(--lime);font-size:.68rem;font-weight:800}
.results-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-inline-end:16px}
.results-head .section-title{padding-inline-end:0;margin:0}
.results-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-top:8px}
.cal-btn{
  flex-shrink:0;margin-top:0;
  padding:8px 14px;border-radius:999px;border:none;
  background:var(--bg-card);color:var(--text);font:700 .8rem Heebo,sans-serif;
  box-shadow:0 0 0 1px var(--border);min-height:36px;
}
.tab-share{
  display:flex;
  align-items:center;
  justify-content:center;
  width:calc(100% - 32px);
  margin:10px 16px 14px;
  min-height:44px;
  padding:11px 22px;
  border:none;
  border-radius:999px;
  background:#F4F6F8;
  color:#0A0E14;
  font:800 .9rem Heebo,sans-serif;
}
.tab-share:active{transform:scale(.97)}
.tab-share:disabled{opacity:.55}
.tab-share-3d{display:none}
.share-btn:disabled{opacity:.55}
.share-preview{position:fixed;inset:0;z-index:400;background:rgba(5,7,10,.88);display:flex;align-items:flex-end;justify-content:center;padding:12px 12px calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(10px)}
.share-preview-card{width:min(100%,420px);max-height:92vh;display:flex;flex-direction:column;gap:10px;overflow:auto}
.share-preview-card img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:top;border-radius:16px;background:#07090D;box-shadow:0 12px 40px rgba(0,0,0,.45)}
.share-preview-actions{display:flex;gap:8px;flex-shrink:0}
.share-preview-actions button,.share-preview-actions a{
  flex:1;text-align:center;text-decoration:none;border:none;border-radius:14px;padding:12px 8px;
  font:800 .88rem Heebo,sans-serif;color:#05070A;background:var(--lime);min-height:44px
}
.share-preview-actions .ghost{background:#151C26;color:var(--text);box-shadow:0 0 0 1px var(--border)}
.cal-btn.on{background:var(--gold);color:#0A0E14;box-shadow:none}
.cal-panel{margin:0 16px 14px;padding:14px 12px 16px;display:none}
.cal-panel.open{display:block}
.cal-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.cal-nav h3{font-size:.95rem;font-weight:800}
.cal-nav button{width:40px;height:40px;border-radius:12px;border:none;background:#151C26;color:var(--text);font-size:1.2rem;font-weight:800}
.cal-dows{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:6px;text-align:center;font-size:.68rem;font-weight:800;color:var(--text-dim)}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-cell{
  aspect-ratio:1;border:none;border-radius:12px;background:transparent;color:var(--text);
  font:700 .85rem Heebo,sans-serif;position:relative;padding:0;
}
.cal-cell.out{color:#5c6775}
.cal-cell.on{background:var(--gold);color:#0A0E14}
.cal-cell.today:not(.on){box-shadow:0 0 0 1px var(--lime)}
.cal-cell .dot{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:var(--lime)}
.cal-cell.on .dot{background:#0A0E14}
.skip-link{position:absolute;inset-inline-start:12px;top:8px;z-index:200;background:var(--lime);color:#0A0E14;font-weight:800;font-size:.85rem;padding:10px 14px;border-radius:10px;text-decoration:none;transform:translateY(-160%)}
.skip-link:focus{transform:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ticket{
  appearance:none;-webkit-appearance:none!important;
  min-width:228px;max-width:248px;text-align:right;
  scroll-snap-align:start;padding:12px 14px 10px;flex-shrink:0;
  background:#101A28!important;border:none;border-radius:20px;color:#F4F6F8!important;font:inherit;
  box-shadow:0 0 0 1px rgba(255,255,255,.08);
  display:flex;flex-direction:column;gap:2px;
  transition:transform 150ms ease-out, box-shadow 150ms ease-out;
}
.ticket:active{transform:scale(.96)}
.ticket.live{box-shadow:0 0 0 1px rgba(231,76,60,.38)}
.tk-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.tk-comp{font-size:.72rem;color:#9AA6B5;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-main{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tk-teams{flex:1;min-width:0}
.tk-when{
  flex-shrink:0;font-variant-numeric:tabular-nums;font-weight:800;
  font-size:1.2rem;letter-spacing:.03em;color:#F4F6F8;line-height:1;
}
.tk-when.live{color:#C4FF2A;font-size:.95rem}
.tk-when.done{color:#8B97A6;font-size:.78rem}
.tk-meta{font-size:.68rem;font-weight:800;color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums}
.tk-live{font-size:.68rem;font-weight:800;color:#FF8A7A;white-space:nowrap;font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:5px}
.tk-live i{width:6px;height:6px;border-radius:50%;background:var(--red);animation:pulse 1.6s infinite;font-style:normal}
.tk-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:32px;margin-bottom:2px}
.tk-team{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:700;min-width:0;flex:1}
.tk-team span{overflow:visible;text-overflow:unset;white-space:normal;line-height:1.25}
.tk-team.winner span{color:var(--gold)}
.tk-row .tlogo{width:28px;height:28px}
.tk-score{font-family:'Rubik Mono One',monospace;font-size:1.12rem;min-width:1.5em;text-align:center;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;white-space:nowrap}
.tk-foot{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin-top:10px;padding-top:8px;border-top:1px solid rgba(244,246,248,.08);
  font-size:.68rem;color:var(--text-dim);font-weight:700;text-align:initial;
}
.tk-tv{flex:0 0 auto;max-width:40%;overflow:hidden}
.tk-foot .tv-row{margin:0;justify-content:flex-start}
.tk-foot .tv-logo{height:18px;max-height:20px;max-width:96px;width:auto}
.tk-foot .odds-line{flex:1;min-width:0;justify-content:flex-start;gap:14px}
.skel-card{min-width:228px;height:142px;border-radius:20px;background:linear-gradient(90deg,rgba(242,244,248,.04),rgba(242,244,248,.11) 50%,rgba(242,244,248,.04));background-size:200% 100%;animation:skel 1.3s linear infinite;box-shadow:none;pointer-events:none}
.skel-row{height:52px;margin:0 16px 2px;border-radius:12px;background:linear-gradient(90deg,rgba(242,244,248,.04),rgba(242,244,248,.1) 50%,rgba(242,244,248,.04));background-size:200% 100%;animation:skel 1.3s linear infinite}
.team-close{width:40px;height:40px;transition:transform 150ms ease-out, background-color 150ms ease-out}
.team-close:active{transform:scale(.96)}
.team-open{min-height:40px;padding:6px 2px;transition:opacity 150ms ease-out}
.team-open:active{opacity:.7}
body.sheet-open{padding-bottom:0;overflow:hidden;overscroll-behavior:none}
body.sheet-open .bottom-nav{visibility:hidden;pointer-events:none}
.team-sheet::before{content:none;display:none}
.fav-pill{transition:transform 150ms ease-out;min-height:36px}
.fav-pill:active{transform:scale(.96)}
.star-btn{min-width:40px;min-height:40px}

/* match sheet: tabs, poll, key players */
.fx-tabs{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:8px;
  padding:14px 12px 18px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  max-width:100%;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  position:sticky;
  top:0;
  z-index:8;
  background:var(--bg);
  perspective:640px;
}
.fx-tabs::-webkit-scrollbar{display:none}
.fx-tab{
  --tab-face:#1C2633;
  --tab-deep:#07090D;
  --tab-hi:rgba(255,255,255,.18);
  position:relative;
  isolation:isolate;
  flex:0 1 auto;
  padding:10px 12px;
  min-height:40px;
  border:none;
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,0) 38%),
    linear-gradient(180deg, #2A3544 0%, var(--tab-face) 46%, #10161F 100%);
  color:var(--text);
  font-weight:800;
  font-size:.8rem;
  letter-spacing:.01em;
  white-space:nowrap;
  transform:translateY(0) rotateX(10deg);
  transform-style:preserve-3d;
  box-shadow:
    0 7px 0 var(--tab-deep),
    0 12px 18px rgba(0,0,0,.48),
    inset 0 1px 0 var(--tab-hi),
    inset 0 -3px 6px rgba(0,0,0,.35);
  transition:transform 180ms cubic-bezier(.2,.8,.2,1), box-shadow 180ms ease, background 180ms ease, color 180ms ease, filter 180ms ease;
}
.fx-tab::after{
  content:"";
  position:absolute;
  inset:1px 8% auto;
  height:42%;
  border-radius:12px 12px 40% 40%;
  background:linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,0));
  pointer-events:none;
}
.fx-tab:active{
  transform:translateY(5px) rotateX(4deg);
  box-shadow:
    0 2px 0 var(--tab-deep),
    0 6px 10px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 -2px 4px rgba(0,0,0,.4);
}
.fx-tab.on{
  --tab-deep:#8A6400;
  background:
    linear-gradient(180deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,0) 36%),
    linear-gradient(180deg, #FFE56A 0%, #F5C518 48%, #C49200 100%);
  color:#0A0E14;
  transform:translateY(-3px) rotateX(12deg);
  box-shadow:
    0 8px 0 var(--tab-deep),
    0 14px 26px rgba(245,197,24,.38),
    inset 0 1px 0 rgba(255,255,255,.7),
    inset 0 -3px 6px rgba(120,80,0,.28);
  filter:saturate(1.08);
}
.fx-tab.on:active{
  transform:translateY(3px) rotateX(6deg);
  box-shadow:
    0 3px 0 var(--tab-deep),
    0 8px 14px rgba(245,197,24,.28),
    inset 0 1px 0 rgba(255,255,255,.45);
}
.fx-panel{display:none}
.fx-panel.on{display:block}
.probable-mini{display:inline-block;font-size:.68rem;font-weight:700;color:var(--text-dim);background:var(--bg-card);padding:4px 10px;border-radius:999px}
.probable-banner{margin:0 16px 12px;padding:10px 14px;border-radius:14px;background:rgba(245,197,24,.1);color:var(--gold);font-size:.78rem;font-weight:700;text-align:center}
.probable-banner.official{background:rgba(46,204,113,.12);color:var(--green)}
.probable-banner.predicted{background:rgba(196,255,42,.12);color:var(--lime)}
.odds-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 16px 14px}
.odds-cell{padding:10px 8px;text-align:center}
.odds-cell .ol{font-size:.68rem;color:var(--text-dim);font-weight:700;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.odds-cell .ov{font-family:'Rubik Mono One',monospace;font-size:1.05rem}
.vote-wrap{margin:0 16px 14px;padding:14px 15px}
.vote-title{font-size:.85rem;font-weight:800;margin-bottom:12px}
.vote-line{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;margin-bottom:10px}
.vote-line:last-child{margin-bottom:0}
.vote-line > span{font-size:.78rem;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vote-line > b{font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--text-dim)}
.vote-track{grid-column:1 / -1;height:8px;border-radius:999px;background:rgba(244,246,248,.08);overflow:hidden}
.vote-fill{height:100%;border-radius:999px;background:var(--lime);width:0}
.vote-fill.mid{background:var(--text-dim)}
.vote-fill.away{background:#93B5FF}
.stars-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 16px 16px}
.star-card{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:12px 8px 10px;border:none;background:var(--bg-card);color:var(--text);
  border-radius:16px;box-shadow:0 0 0 1px var(--border);
}
.star-card img,.star-card .avatar-fallback{width:56px;height:56px;border-radius:50%;object-fit:cover;background:var(--bg-panel);margin-bottom:6px}
.star-card .sn{font-size:.78rem;font-weight:700;line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.star-card .sp{font-size:.62rem;color:var(--text-dim);margin-top:3px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bench-col{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 16px 16px}
.bench-item{display:flex;align-items:center;gap:8px;padding:8px;text-align:right;width:100%;background:var(--bg-card);border:none;color:var(--text);border-radius:12px;font-size:.78rem;font-weight:600}
.bench-item img,.bench-item .avatar-fallback{width:42px;height:42px;border-radius:50%;object-fit:cover;flex-shrink:0}
.miss-why{
  margin-inline-start:auto;
  font-size:.62rem;
  font-weight:800;
  color:var(--text-dim);
  background:rgba(244,246,248,.08);
  border-radius:999px;
  padding:4px 8px;
  white-space:nowrap;
  flex-shrink:0;
}
.hour-head{font-size:.72rem;font-weight:800;color:var(--gold);padding:4px 2px 8px}
.coach-row{display:flex;justify-content:space-around;gap:12px;padding:4px 16px 16px;font-size:.8rem;font-weight:700}
.h2h-row{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;padding:10px 15px;font-size:.82rem;font-weight:600}
.h2h-home{text-align:right}
.h2h-away{text-align:left}
.h2h-meta{text-align:center;font-size:.62rem;color:var(--text-dim);padding:0 14px 8px}
.live-strip-stats{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 16px 12px}
.ls-cell{padding:10px 8px;text-align:center}
.ls-cell .k{font-size:.62rem;color:var(--text-dim);font-weight:700;margin-bottom:4px}
.ls-cell .v{display:flex;justify-content:space-between;font-family:'Rubik Mono One',monospace;font-size:.9rem;font-variant-numeric:tabular-nums;padding:0 4px}
.st-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px;font-size:.72rem;font-weight:800}
.st-head span{display:flex;align-items:center;gap:6px;min-width:0}
.st-head img{width:22px;height:22px;object-fit:contain}
.st-box{margin:0 16px 14px;padding:14px 14px 8px}
.st-row{margin-bottom:12px}
.pre-form{margin:0 16px 14px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.pre-last{margin:0 16px 14px;padding:14px 16px;text-align:center}
.pre-last .k{font-size:.72rem;color:var(--text-dim);font-weight:700;margin-bottom:6px}
.pre-last .v{font-family:'Rubik Mono One',monospace;font-size:1.35rem;color:#fff}
.pre-meets{margin:0 16px 14px;padding:12px 14px}
.pre-meet{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:8px 0;font-weight:800}
.pre-meet b{font-family:'Rubik Mono One',monospace;font-size:1rem}
.pm-n{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-n:last-child{text-align:left}
.pm-d{text-align:center;font-size:.62rem;color:var(--text-dim);padding-bottom:6px;border-bottom:1px solid var(--border)}
.pm-avg{text-align:center;font-size:.78rem;font-weight:800;color:var(--gold);padding-top:10px}
.score-chips{display:flex;gap:6px;flex-wrap:wrap}
.score-chips .sc{min-width:42px;padding:6px 8px;border-radius:10px;font-weight:800;font-size:.78rem;text-align:center;font-variant-numeric:tabular-nums}
.score-chips .sc.w{background:#22C55E;color:#06210f}
.score-chips .sc.l{background:#EF4444;color:#fff}
.score-chips .sc.d{background:#64748B;color:#fff}
.st-track-empty{opacity:.2}
.st-row{margin-bottom:12px}
.st-lab{text-align:center;font-size:.7rem;font-weight:700;color:var(--text-dim);margin-bottom:5px}
.st-nums{display:flex;align-items:center;gap:8px}
.st-nums b{font-variant-numeric:tabular-nums;font-size:.85rem;min-width:2.2em;font-weight:800}
.st-nums b.a{text-align:left}
.st-nums b.h{text-align:right}
.st-track{flex:1;height:8px;border-radius:999px;background:rgba(244,246,248,.08);display:flex;direction:ltr;overflow:hidden}
.st-track i{display:block;height:100%;min-width:0}
.st-track .hf{background:var(--gold)}
.st-track .af{background:#93B5FF}
.shot-pitch{margin:4px 16px 10px;padding:8px 8px 6px;background:#0B1C14;border-radius:16px;border:2px solid rgba(242,244,248,.14)}
.shot-field{position:relative;aspect-ratio:70/108;margin:0 6px}
.shot-field svg{position:absolute;inset:0;width:100%;height:100%}
.shot-dot{position:absolute;border-radius:50%;transform:translate(-50%,-50%);padding:0;border:2px solid rgba(10,14,20,.55);z-index:2;appearance:none;-webkit-appearance:none}
.shot-dot.home{background:var(--gold)}
.shot-dot.away{background:#93B5FF}
.shot-dot.goal{box-shadow:0 0 0 2px #fff,0 0 10px rgba(196,255,42,.75);background:var(--lime);border-color:#fff}
.shot-dot.on{box-shadow:0 0 0 1px rgba(255,255,255,.7)}
.shot-dot.off{background:transparent;border-width:2px}
.shot-dot.off.home{border-color:var(--gold)}
.shot-dot.off.away{border-color:#93B5FF}
.shot-dot.blk{border-radius:2px;transform:translate(-50%,-50%) rotate(45deg)}
.shot-end{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.68rem;font-weight:800;padding:2px 4px}
.shot-end img{width:16px;height:16px;object-fit:contain}
.shot-leg{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:4px 16px 14px;font-size:.62rem;color:var(--text-dim)}
.shot-leg i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-inline-end:4px;vertical-align:middle;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.pp .rt{position:absolute;top:-4px;left:-6px;display:inline-block;transform:none;margin:0;font-size:.58rem;font-weight:800;border-radius:8px;padding:2px 5px;line-height:1.15;z-index:3;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.pp .rt.hi{background:#2ECC71;color:#06210f}
.pp .rt.ok{background:#F5C518;color:#0A0E14}
.pp .rt.mid{background:#4a5968;color:#fff}
.pp .rt.lo{background:#E74C3C;color:#fff}
.rate-list{margin:0 16px 16px;padding:8px 12px}
.rate-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid var(--border);font-size:.8rem}
.rate-row:last-child{border-bottom:none}
.rate-row .rv{width:34px;text-align:center;font-weight:800;border-radius:8px;padding:3px 0;font-size:.78rem}
.rate-row .rv.hi{background:#2ECC71;color:#06210f}
.rate-row .rv.ok{background:#F5C518;color:#0A0E14}
.rate-row .rv.mid{background:#4a5968;color:#fff}
.rate-row .rv.lo{background:#E74C3C;color:#fff}
.motm{margin:0 16px 12px;padding:12px;display:flex;align-items:center;gap:10px;border:none;color:inherit;font:inherit;width:calc(100% - 32px);text-align:right}
.motm .tag{font-size:.62rem;font-weight:800;color:#0A0E14;background:var(--gold);border-radius:999px;padding:3px 8px}
.xg-svg{width:100%;height:120px;display:block}
.xg-wrap{margin:0 16px 14px;padding:12px 12px 8px}
.bc-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 16px 14px;text-align:center}
.bc-cell{padding:10px 6px}
.bc-cell .k{font-size:.62rem;color:var(--text-dim);font-weight:700}
.bc-cell .v{font-family:'Rubik Mono One',monospace;font-size:.95rem;margin-top:4px;direction:ltr}
.abroad-wrap{margin:8px 0 18px}
.strip-title.strip-link{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  width:100%;margin:0 0 8px;padding:4px 16px 0;background:none;border:none;
  color:inherit;font:inherit;text-align:right;cursor:pointer;
}
.strip-more{font-size:.78rem;font-weight:800;color:var(--lime)}
.ab-page-lead{margin:0 16px 14px;color:#A7B2C2;font-size:.82rem;font-weight:700;line-height:1.45}
.ab-page-row{border-bottom:1px solid var(--border)}
.ab-page-row:last-child{border-bottom:none}
.ab-page-row .fx-card{border-bottom:none}
.ab-who-row{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px 0}
.ab-who{
  display:flex;align-items:center;gap:8px;padding:4px 10px 4px 4px;
  background:#151C26;border:1px solid rgba(244,246,248,.08);border-radius:999px;
  color:inherit;font:800 .82rem Heebo,sans-serif;
}
.ab-who img,.ab-who .avatar-fallback{width:32px;height:32px;border-radius:50%;object-fit:cover}
.abroad-strip{display:flex;flex-direction:column;gap:12px;overflow:visible;padding:0}
.ab-expand{
  display:flex;align-items:center;justify-content:center;
  width:100%;min-height:44px;margin-top:2px;
  border:none;border-radius:999px;
  background:var(--inset);color:var(--text);
  font:800 .85rem Heebo,sans-serif;
}
.ab-expand:active{transform:scale(.97)}
.ab-home-row{
  background:var(--bg-card);border-radius:var(--radius-card);
  box-shadow:0 0 0 1px var(--border);overflow:hidden;
}
.ab-home-row .fx-card{border-bottom:none;padding:12px 12px 14px}
.ab-card{
  width:100%;text-align:right;
  padding:16px;background:var(--bg-card);border:none;color:inherit;
  border-radius:var(--radius-card);box-shadow:0 0 0 1px var(--border);
  font-family:inherit;
}
.ab-top{display:flex;align-items:center;gap:10px;margin-bottom:12px;width:100%;background:none;border:none;color:inherit;text-align:right;padding:0}
.ab-top img,.ab-top .avatar-fallback{width:48px;height:48px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--gold)}
.ab-name{font-size:.92rem;font-weight:800;line-height:1.3;color:var(--text)}
.ab-club{font-size:.72rem;color:#A7B2C2;font-weight:700;margin-top:3px;line-height:1.35}
.ab-match{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  width:100%;margin:0;padding:11px 12px;border-radius:12px;
  background:#151C26;color:var(--text);border:1px solid rgba(242,244,248,.1);
  font-size:.82rem;font-weight:700;-webkit-appearance:none;appearance:none;text-align:right;
  line-height:1.35;
}
.ab-match .ab-opp{flex:1;min-width:0;line-height:1.4}
.ab-match .vs{color:#A7B2C2;font-size:.72rem}
.ab-match.empty{color:#C5CCD6;justify-content:center;font-weight:700}
.ab-score{font-family:'Rubik Mono One',monospace;direction:ltr;unicode-bidi:isolate;font-size:1rem;color:var(--text);white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}
.ab-live{color:#C4FF2A;font-size:.78rem;font-weight:800;flex-shrink:0;white-space:nowrap}
.pos-delta{font-size:.68rem;font-weight:800;min-width:28px;display:inline-block}
.pos-delta.up{color:var(--green)}
.pos-delta.down{color:var(--red)}
.mp-box{margin:0 16px 14px;padding:14px;position:relative}
.mp-rate{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.2rem;margin-bottom:8px}
.mp-rate.hi{background:#2ECC71;color:#06210f}
.mp-rate.ok{background:#F5C518;color:#0A0E14}
.mp-rate.mid{background:#4a5968;color:#fff}
.mp-rate.lo{background:#E74C3C;color:#fff}
.mp-sub{font-size:.72rem;color:var(--text-dim);font-weight:700;margin-bottom:10px}
.mp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.mp-cell{background:rgba(244,246,248,.04);border-radius:10px;padding:8px 6px;text-align:center}
.mp-cell .k{font-size:.58rem;color:var(--text-dim);font-weight:700}
.mp-cell .v{font-size:.85rem;font-weight:800;margin-top:3px}
@media (prefers-reduced-motion:no-preference){
  .ticket,.chip,.day-chip,.star-card,.player-card,.bench-item,.alert-btn{
    transition:transform 160ms var(--ease), box-shadow 200ms var(--ease);
  }
  .ticket:active,.chip:active,.day-chip:active,.player-card:active,.bench-item:active{transform:scale(.97)}
  .ticket.live{animation:breathe 2.8s ease-in-out infinite}
  @keyframes breathe{50%{box-shadow:0 0 0 1px rgba(196,255,42,.45),0 10px 28px rgba(196,255,42,.08)}}
  .fx-tab.on{animation:tabFloat 2.6s ease-in-out infinite}
  @keyframes tabFloat{
    0%,100%{transform:translateY(-3px) rotateX(12deg)}
    50%{transform:translateY(-6px) rotateX(16deg)}
  }
  .fx-panel.on{animation:rise .28s var(--ease)}
  @keyframes rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .ev-row.goal-pop{animation:goalPop .7s var(--ease)}
  @keyframes goalPop{from{background:rgba(196,255,42,.22)}to{background:transparent}}
}
@media (prefers-reduced-motion:reduce){
  .ticket.live{animation:none}
  .fx-panel.on{animation:none}
}

/* ===== Shell language (hero / cards / testimonials / CTA) ===== */
.shell{
  margin:12px 14px 18px;
  padding:22px 16px 16px;
  background:var(--shell);
  border-radius:var(--radius-shell);
  box-shadow:none;
  border:0;
}
.shell-title{
  text-align:center;
  font-size:1.18rem;
  font-weight:800;
  letter-spacing:-.02em;
  margin:0 0 4px;
  color:var(--text);
  padding:0;
  justify-content:center;
  gap:8px;
}
.shell-title .bar{display:none}
.shell-sub{
  text-align:center;
  font-size:.82rem;
  color:var(--text-dim);
  font-weight:600;
  margin:0 0 16px;
  line-height:1.45;
}
.shell-inner{
  background:var(--inset);
  border-radius:24px;
  padding:16px 14px;
  border:0;
  box-shadow:none;
}
.pill-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:11px 22px;
  border-radius:999px;
  background:#F4F6F8;
  color:#0A0E14;
  font:800 .9rem Heebo,sans-serif;
  border:none;
}
.pill-cta:active{transform:scale(.97)}
.shell-cta{text-align:center;padding:28px 18px 26px}
.shell-cta .shell-title{margin-bottom:8px}
.shell-cta .shell-sub{margin-bottom:18px}
.shell-cta .pill-cta{background:var(--lime);color:#0A0E14}

.shell .live-strip{
  padding:0 4px 8px;
  margin:0 -4px;
}
#page-home .home-picks{
  flex-direction:column;
  overflow:visible;
  scroll-snap-type:none;
  padding:0 0 6px;
  margin:0;
  gap:10px;
}
#page-home .home-picks .ticket{
  min-width:0;max-width:none;width:100%;
}
.home-all{
  display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;margin-top:8px;min-height:48px;
  border:0;border-radius:999px;cursor:pointer;
  background:#F4F6F8;color:#0A0E14;
  font:800 .95rem Heebo,sans-serif;
}
.home-all::after{content:"‹";font-size:1.15rem;line-height:1}
.home-all:active{transform:scale(.98)}
.shell .last-updated{padding-bottom:2px}
.shell .headlines{padding:0}
.shell .abroad-strip{padding:0}
.shell .strip-title.strip-link{
  width:100%;
  padding:0;
  margin:0 0 4px;
  justify-content:center;
}
.shell .strip-more{color:#D6FF6A;margin-inline-start:8px;text-shadow:none}
#page-home .pitch-banner{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:78px;
  margin:0 0 14px;
  padding:26px 16px;
  border:0;
  border-radius:20px;
  color:#F7F8FA;
  background:
    linear-gradient(180deg, rgba(6,12,10,.28), rgba(4,8,8,.55)),
    url('/share/pitch-night.jpg') center 38% / cover no-repeat;
  text-shadow:0 1px 2px rgba(0,0,0,.9), 0 6px 16px rgba(0,0,0,.55);
}
#page-home .abroad-wrap .pitch-banner{
  background:
    linear-gradient(180deg, rgba(6,12,10,.3), rgba(4,8,8,.58)),
    url('/share/pitch-night.jpg') center 68% / cover no-repeat;
}
#page-home .pitch-banner .live-dot{box-shadow:0 0 0 3px rgba(0,0,0,.35)}

.featured-banner{
  margin:0;
  padding:16px 14px;
  display:flex;
  align-items:center;
  gap:14px;
  cursor:pointer;
  border:none;
  background:var(--inset);
  border-radius:24px;
  position:relative;
  overflow:hidden;
  box-shadow:none;
}
.featured-banner .fb-copy{flex:1;min-width:0;text-align:right}
.featured-banner .fb-title{
  font-size:.68rem;color:var(--gold);font-weight:800;margin-bottom:6px;letter-spacing:.02em
}
.featured-banner .fb-names{
  font-size:1.12rem;font-weight:800;line-height:1.3;color:var(--text);letter-spacing:-.02em
}
.featured-banner .fb-names span{color:var(--text-dim);font-weight:700;font-size:.82rem;padding:0 4px}
.featured-banner .fb-when{font-size:.78rem;color:var(--text-dim);margin:8px 0 12px;font-weight:700}
.featured-banner .pill-cta{background:#F4F6F8;color:#0A0E14;min-height:40px;padding:8px 16px;font-size:.82rem}
.featured-banner .fb-visual{
  flex-shrink:0;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;
  background:#141A22;border-radius:20px;padding:14px 12px;min-width:112px;
}
.featured-banner .fb-logo{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}
.featured-banner .fb-score{
  font-family:'Rubik Mono One',monospace;font-size:1.15rem;direction:ltr;unicode-bidi:isolate;white-space:nowrap
}
.featured-banner .fb-score .min{display:block;font-family:'Heebo',sans-serif;font-size:.62rem;font-weight:800;color:var(--lime);margin-top:2px}
.featured-banner .fb-score.soon{font-family:'Heebo',sans-serif;font-size:.85rem;font-weight:800;color:var(--gold)}

.ticket{
  background:var(--inset)!important;
  border-radius:20px;
  box-shadow:none;
  padding:14px 14px 12px;
}
.ticket.live{box-shadow:inset 0 0 0 1px rgba(231,76,60,.45)}
.skel-card{background:var(--inset);border-radius:20px}

.headline-card{
  background:var(--inset);
  box-shadow:none;
  border-radius:20px;
  padding:12px;
}
.headline-card img{border-radius:16px}

.ab-home-row{
  background:var(--inset);
  border-radius:20px;
  box-shadow:none;
}
.ab-who{background:#141A22;border:none}

.league-group.glass, .league-group{
  margin:12px 14px 16px;
  padding:6px 0 8px;
  background:var(--shell);
  border-radius:var(--radius-shell);
  border:none;
  box-shadow:none;
  overflow:hidden;
}
.league-header{
  background:transparent;
  border-bottom:none;
  justify-content:center;
  padding:14px 16px 8px;
  font-size:1rem;
}
.fx-card{padding:12px 14px 14px}

.glass{
  background:var(--shell);
  border:none;
  border-radius:var(--radius-shell);
}

.filter-chips{background:transparent}
.chip{background:var(--shell);box-shadow:none}
.chip.on{background:#F4F6F8;color:#0A0E14}

.day-chip{background:var(--shell);box-shadow:none;border-radius:18px}
.day-chip.active{background:#F4F6F8;color:#0A0E14}

.cal-btn{
  background:var(--shell);box-shadow:none;
}
#page-results .results-head{padding:6px 16px 4px}
#page-results .results-head .section-title{font-size:1.62rem;padding:10px 0 8px;gap:10px}
#page-results .results-head .section-title .bar{width:6px;height:30px}
#page-results .results-actions{gap:8px;padding-top:8px}
#page-results .cal-btn,
#page-results .share-btn,
#page-results .cal-btn.share-btn{
  width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;
  display:grid;place-items:center;
  background:#1A2230;color:#F4F6F8;box-shadow:none;
}
#page-results .cal-btn svg{width:18px;height:18px;display:block}
#page-results .day-strip{gap:8px;padding:6px 16px 14px}
#page-results .day-chip{
  width:66px;min-width:66px;height:82px;border-radius:20px;
  background:#161C27;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:6px 4px;
}
#page-results .day-chip .dw{font-size:.68rem;font-weight:800}
#page-results .day-chip .dn{font-size:1.22rem;margin:2px 0 1px}
#page-results .day-chip .dm{font-size:.64rem}
#page-results .day-chip.active{background:#F4F6F8;color:#111318;border-radius:28px}
#page-results .day-chip.active .dw,#page-results .day-chip.active .dm{color:#3A4250}
#results-group-chips{
  width:max-content;margin:0 auto 16px;padding:5px;gap:0;
  background:#161C27;border-radius:999px;overflow:visible;
}
#results-group-chips .chip{
  background:transparent;color:#9AA6B5;box-shadow:none;border-radius:999px;
  padding:10px 22px;min-height:42px;font-size:.95rem;font-weight:800;
}
#results-group-chips .chip+.chip{position:relative}
#results-group-chips .chip+.chip::before{
  content:"";position:absolute;inset-inline-start:0;top:9px;bottom:9px;width:1px;background:rgba(255,255,255,.28);
}
#results-group-chips .chip.on{background:transparent;color:#F4F6F8}

/* flatten match tabs to pills */
.fx-tabs{
  perspective:none;
  gap:6px;
  padding:12px 12px 14px;
  background:var(--bg);
}
.fx-tab, .fx-tab.on, .fx-tab:active, .fx-tab.on:active{
  transform:none !important;
  filter:none;
  isolation:auto;
  box-shadow:none;
  border-radius:999px;
  padding:10px 14px;
  min-height:40px;
  background:#1A222C;
  color:var(--text);
}
.fx-tab::after{display:none}
.fx-tab.on{
  background:#F4F6F8;
  color:#0A0E14;
}
@media (prefers-reduced-motion:no-preference){
  .fx-tab.on{animation:none}
}

nav.bottom-nav{
  background:rgba(7,8,12,.92);
  border-top:none;
  box-shadow:0 -8px 28px rgba(0,0,0,.35);
}
.bottom-nav button.active{color:var(--lime)}

.vote-wrap, .spicy-box, .st-box, .h2h-box, .form-box{
  margin-inline:14px;
  border-radius:24px;
  background:var(--shell);
  border:none;
}

