:root {
  --bg: #f3f6fb;
  --surface: #ffffff;
  --surface-2: #f8faff;
  --text: #14213d;
  --muted: #74809a;
  --line: #e6ebf4;
  --navy: #101a3a;
  --blue: #2f6bff;
  --cyan: #17b4d9;
  --green: #10b981;
  --red: #ef4444;
  --orange: #f59e0b;
  --purple: #8b5cf6;
  --shadow: 0 12px 34px rgba(24, 42, 82, .09);
  --radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at 10% 0%, rgba(47,107,255,.09), transparent 26%),
    radial-gradient(circle at 100% 20%, rgba(23,180,217,.08), transparent 26%),
    var(--bg);
}
button, a { font: inherit; }
button { cursor: pointer; }
.shell { width: min(1260px, calc(100% - 32px)); margin-inline: auto; }
.topbar {
  background: linear-gradient(135deg, #0b1433 0%, #13285a 58%, #174d77 100%);
  color: #fff;
  padding-top: max(12px, env(safe-area-inset-top));
  box-shadow: 0 10px 30px rgba(6, 17, 48, .2);
  position: sticky;
  top: 0;
  z-index: 20;
}
.brand-row { height: 64px; display: flex; align-items: center; justify-content: space-between; }
.brand { color: #fff; text-decoration: none; font-size: 24px; font-weight: 800; display: flex; gap: 10px; align-items: center; }
.brand-mark { width: 36px; height: 36px; display:grid; place-items:center; border-radius: 12px; background: linear-gradient(135deg, #2f6bff, #18c6d9); box-shadow: 0 8px 18px rgba(24,198,217,.25); }
.accent { color: #45e1ff; }
.top-actions { display:flex; gap:8px; align-items:center; }
.icon-btn, .avatar { border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.08); color: #fff; height: 38px; min-width: 38px; border-radius: 12px; }
.avatar { background: linear-gradient(135deg, #f59e0b, #ef4444); border:0; font-weight:800; }
.primary-nav { display: flex; gap: 8px; overflow-x:auto; padding-bottom: 12px; scrollbar-width:none; }
.primary-nav::-webkit-scrollbar{ display:none; }
.nav-pill { border:0; color: rgba(255,255,255,.75); background: transparent; padding: 10px 16px; border-radius: 12px; font-weight: 700; white-space:nowrap; }
.nav-pill.active { background: #fff; color: var(--navy); }
.count { margin-left:6px; font-size:11px; background: var(--red); color:#fff; border-radius:999px; padding:3px 6px; }
.layout { display:grid; grid-template-columns: 190px minmax(0, 1fr) 280px; gap:18px; padding-top:22px; padding-bottom:90px; }
.left-card, .side-card, .hero-card, .league-block { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); }
.left-card { padding:14px; height:max-content; position:sticky; top:135px; }
.left-card h3 { margin: 4px 8px 12px; font-size:14px; }
.league-link { width:100%; border:0; background:transparent; color:#526078; display:flex; align-items:center; gap:9px; text-align:left; border-radius:12px; padding:10px; font-size:13px; font-weight:600; }
.league-link:hover, .league-link.active { background:#eef4ff; color:var(--blue); }
.content { min-width:0; }
.hero-card { padding:22px; background:linear-gradient(135deg, #ffffff 0%, #edf4ff 58%, #ecfbff 100%); display:flex; justify-content:space-between; gap:20px; align-items:end; overflow:hidden; position:relative; }
.hero-card:after { content:""; position:absolute; width:180px; height:180px; border-radius:50%; right:-50px; top:-70px; background:linear-gradient(135deg, rgba(47,107,255,.14), rgba(23,180,217,.07)); }
.eyebrow { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.14em; margin:0 0 8px; }
.hero-card h1 { margin:0; font-size: clamp(24px, 3vw, 36px); letter-spacing:-.04em; }
.hero-copy { margin:8px 0 0; color:var(--muted); font-size:14px; }
.hero-badges { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; position:relative; z-index:1; }
.hero-badges span { background:#fff; border:1px solid #e4eaf6; padding:8px 10px; border-radius:12px; font-size:11px; font-weight:700; white-space:nowrap; }
.quick-filters { display:flex; gap:8px; overflow-x:auto; padding:16px 0 12px; scrollbar-width:none; }
.quick-filters::-webkit-scrollbar{display:none;}
.filter-chip { border:1px solid var(--line); background:var(--surface); color:#526078; border-radius:999px; padding:9px 13px; font-size:12px; font-weight:700; white-space:nowrap; }
.filter-chip.active { border-color:#bdd0ff; color:var(--blue); background:#edf3ff; }
.filter-chip span { opacity:.7; margin-left:4px; }
.league-block { margin-bottom:14px; overflow:hidden; }
.league-head { display:flex; align-items:center; justify-content:space-between; padding:13px 15px; border-bottom:1px solid var(--line); background:var(--surface-2); }
.league-title { display:flex; gap:9px; align-items:center; min-width:0; }
.league-flag { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; background:#fff; border:1px solid var(--line); }
.league-title h2 { margin:0; font-size:13px; }
.league-title p { margin:2px 0 0; font-size:10px; color:var(--muted); }
.league-head button { border:0; background:transparent; color:var(--blue); font-weight:700; font-size:11px; }
.match-row { display:grid; grid-template-columns: 64px 1fr auto; gap:12px; align-items:center; padding:14px 15px; border-bottom:1px solid var(--line); transition:.18s ease; cursor:pointer; }
.match-row:last-child { border-bottom:0; }
.match-row:hover { background:#fbfcff; transform: translateY(-1px); }
.match-time { font-size:11px; color:var(--muted); font-weight:700; text-align:center; }
.live-badge { display:inline-flex; align-items:center; gap:4px; color:var(--red); font-weight:800; }
.live-dot { width:6px; height:6px; border-radius:50%; background:var(--red); box-shadow:0 0 0 4px rgba(239,68,68,.10); }
.teams { display:grid; gap:8px; min-width:0; }
.team { display:grid; grid-template-columns: 28px minmax(0,1fr) 28px; gap:9px; align-items:center; }
.team-badge { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; background:linear-gradient(135deg,#eef3ff,#f9fbff); border:1px solid var(--line); font-size:13px; font-weight:800; color:var(--navy); }
.team-name { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:13px; font-weight:700; }
.score { text-align:center; font-size:15px; font-weight:800; }
.match-actions { display:flex; align-items:center; gap:8px; }
.event-tag { font-size:10px; color:var(--red); background:#fff0f0; padding:5px 7px; border-radius:8px; font-weight:800; }
.star { border:0; background:transparent; color:#c5ccda; font-size:18px; padding:4px; }
.star.active { color:var(--orange); }
.right-column { display:grid; gap:14px; height:max-content; position:sticky; top:135px; }
.side-card { padding:15px; }
.card-title-row { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.card-title-row h3 { margin:0; font-size:14px; }
.card-title-row button { border:0; background:transparent; color:var(--blue); font-size:11px; font-weight:700; }
.standings-head, .standing { display:grid; grid-template-columns:26px 1fr 26px 26px; gap:6px; align-items:center; padding:8px 0; font-size:11px; }
.standings-head { color:var(--muted); border-bottom:1px solid var(--line); }
.standing { border-bottom:1px dashed #edf0f5; }
.standing:last-child { border-bottom:0; }
.standing b { font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.standing strong { color:var(--blue); }
.promo-card { background:linear-gradient(135deg,#141f48,#234da0); color:white; border:0; }
.promo-card p { color:rgba(255,255,255,.72); font-size:12px; line-height:1.55; margin-bottom:0; }
.promo-card h3 { margin:7px 0 6px; }
.promo-icon { display:inline-grid; width:34px; height:34px; place-items:center; background:rgba(255,255,255,.1); border-radius:10px; }
.mobile-bottom { display:none; }
.match-dialog { width:min(560px, calc(100% - 24px)); border:0; border-radius:22px; padding:0; box-shadow:0 28px 80px rgba(10,18,45,.28); }
.match-dialog::backdrop { background:rgba(7,13,31,.55); backdrop-filter:blur(4px); }
.dialog-close { position:absolute; right:12px; top:12px; z-index:2; width:36px; height:36px; border-radius:12px; border:0; background:rgba(255,255,255,.85); font-size:22px; }
.dialog-hero { padding:28px 20px 20px; color:white; background:linear-gradient(135deg,#111c43,#245bb8); }
.dialog-meta { font-size:11px; opacity:.72; text-align:center; }
.dialog-scoreline { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; margin-top:18px; }
.dialog-team { text-align:center; font-weight:800; font-size:13px; }
.dialog-team .big-badge { width:54px; height:54px; display:grid; place-items:center; border-radius:18px; background:rgba(255,255,255,.12); margin:0 auto 8px; font-size:22px; }
.dialog-score { font-size:28px; font-weight:800; }
.dialog-tabs { display:flex; gap:8px; overflow:auto; padding:12px; border-bottom:1px solid var(--line); }
.dialog-tabs span { white-space:nowrap; font-size:11px; font-weight:700; background:#f2f5fb; padding:8px 10px; border-radius:9px; }
.dialog-body { padding:16px 18px 22px; }
.stat-row { display:grid; grid-template-columns:1fr 60px 1fr; gap:10px; align-items:center; font-size:11px; margin:12px 0; }
.stat-row span:first-child { text-align:right; font-weight:700; }
.stat-row span:last-child { font-weight:700; }
.stat-label { text-align:center; color:var(--muted); font-size:10px; }
.empty-state { text-align:center; padding:40px 20px; color:var(--muted); }
@media (max-width: 1050px) {
  .layout { grid-template-columns: 170px minmax(0,1fr); }
  .right-column { display:none; }
}
@media (max-width: 760px) {
  .shell { width:min(100% - 20px, 680px); }
  .topbar { position:sticky; }
  .brand-row { height:56px; }
  .brand { font-size:20px; }
  .brand-mark { width:32px; height:32px; border-radius:10px; }
  .desktop-only { display:none !important; }
  .layout { display:block; padding-top:12px; padding-bottom:92px; }
  .hero-card { padding:18px; align-items:start; }
  .hero-badges { display:none; }
  .hero-card h1 { font-size:24px; }
  .hero-copy { font-size:12px; line-height:1.5; }
  .primary-nav { padding-bottom:10px; }
  .nav-pill { padding:9px 13px; font-size:12px; }
  .quick-filters { padding-top:12px; }
  .league-block { border-radius:16px; }
  .match-row { grid-template-columns: 50px 1fr auto; padding:12px; gap:8px; }
  .team { grid-template-columns:24px minmax(0,1fr) 24px; gap:7px; }
  .team-badge { width:24px; height:24px; border-radius:8px; font-size:11px; }
  .team-name { font-size:12px; }
  .score { font-size:14px; }
  .event-tag { display:none; }
  .mobile-bottom { display:grid; grid-template-columns:repeat(5,1fr); position:fixed; left:0; right:0; bottom:0; z-index:30; padding:8px 10px calc(8px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); border-top:1px solid var(--line); box-shadow:0 -10px 30px rgba(20,33,61,.08); }
  .mobile-bottom button { border:0; background:transparent; color:#8490a7; display:grid; place-items:center; gap:2px; }
  .mobile-bottom button span { font-size:18px; }
  .mobile-bottom button small { font-size:9px; font-weight:700; }
  .mobile-bottom button.active { color:var(--blue); }
}
@media (max-width: 380px) {
  #refreshBtn { display:none; }
  .hero-card h1 { font-size:21px; }
  .match-row { grid-template-columns:46px 1fr 28px; }
  .star { font-size:16px; }
}
.status-banner{margin:12px 0;padding:12px 14px;border-radius:14px;background:#fff7d6;color:#6b5600;border:1px solid #f3df83;font-size:13px;font-weight:700}.loading-line{padding:14px;color:#718096;font-size:13px}.league-link small{margin-left:auto;opacity:.55}.league-link{display:flex;align-items:center;gap:8px;width:100%}.match-actions .star{font-size:24px;line-height:1}.empty-state{padding:30px 18px;text-align:center;color:#718096;background:#fff;border-radius:18px;border:1px solid #e6eaf2}.status-banner[hidden]{display:none!important}@media(max-width:600px){.hero-card h1{font-size:24px}.hero-card{padding:18px}.match-row{grid-template-columns:58px minmax(0,1fr) 30px}.team-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.league-head button{font-size:10px}}

/* v0.5 mobile functional panels */
.match-actions{display:flex;align-items:center;gap:6px}.fav-btn,.detail-btn{border:0;background:transparent;cursor:pointer;font-size:20px;padding:8px;border-radius:10px}.fav-btn.active{color:#ffb000}.detail-btn{font-size:24px}.sheet-backdrop{position:fixed;inset:0;background:rgba(5,10,26,.48);z-index:90}.mobile-sheet{position:fixed;left:0;right:0;bottom:0;z-index:100;max-height:78vh;overflow:hidden;background:#fff;border-radius:22px 22px 0 0;box-shadow:0 -20px 50px rgba(4,12,30,.22);transform:translateY(110%);transition:transform .22s ease;padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-sheet.open{transform:translateY(0)}.sheet-handle{width:46px;height:5px;background:#d8dfec;border-radius:99px;margin:10px auto 2px}.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid #edf0f6}.sheet-head h2{font-size:20px;margin:0}.sheet-close{border:0;background:#eef2f8;width:36px;height:36px;border-radius:50%;font-size:22px}.sheet-body{padding:14px 16px;overflow:auto;max-height:calc(78vh - 80px)}.sheet-list{display:grid;gap:9px}.sheet-item{width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;border:1px solid #e8edf5;background:#fff;border-radius:14px;padding:13px 14px;font:inherit;font-weight:700;color:#17213f}.sheet-item small{color:#77829a;font-weight:600}.favorite-empty,.sheet-note{padding:22px 8px;text-align:center;color:#69748b}.favorite-card{border:1px solid #e7ecf5;border-radius:14px;padding:12px;margin-bottom:10px}.favorite-card b{display:block;margin-bottom:5px}.more-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.more-action{border:1px solid #e5eaf3;background:#f8faff;border-radius:16px;padding:18px 12px;text-align:center;font:inherit;font-weight:700}.toast{position:fixed;left:50%;bottom:96px;transform:translateX(-50%);z-index:150;background:#101a3a;color:#fff;padding:11px 16px;border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.18);font-size:14px;white-space:nowrap}.api-error{border:1px solid #ffd5d5;background:#fff4f4;color:#a33131;border-radius:14px;padding:14px}.api-ok{border:1px solid #d7f0de;background:#f2fff6;color:#26733a;border-radius:14px;padding:10px 12px;margin-bottom:12px;font-weight:700}
@media(min-width:900px){.mobile-sheet,.sheet-backdrop{display:none!important}}

.build-badge{font-size:9px;font-weight:800;letter-spacing:.08em;padding:4px 6px;border-radius:999px;background:rgba(69,225,255,.13);color:#78eaff;border:1px solid rgba(120,234,255,.22);margin-left:2px;white-space:nowrap}
@media(max-width:380px){.build-badge{display:none}}


/* v0.7 country + live stability UI */
.country-head{margin:12px 8px 5px;padding-top:8px;border-top:1px solid #edf1f7;color:#8691a6;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.country-head:first-child{margin-top:2px;border-top:0;padding-top:0}
.league-link-text{display:flex;flex-direction:column;min-width:0;gap:2px;flex:1}
.league-link-text b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}
.league-link-text em{font-style:normal;font-size:10px;color:#96a0b2;font-weight:600}
.league-link small{white-space:nowrap;font-size:10px}
.sheet-country{padding:11px 4px 3px;color:#6f7b91;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.league-sheet-item>span{display:flex;flex-direction:column;gap:3px;min-width:0}
.league-sheet-item>span b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.league-sheet-item>span em{font-style:normal;color:#8a95a9;font-size:11px;font-weight:600}

/* v0.8 logos + richer match detail */
.logo-wrap{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;overflow:hidden;background:#f4f7fb;border:1px solid #e5eaf2}
.logo-wrap .logo-fallback{position:absolute;inset:0;display:grid;place-items:center;font-weight:800;color:#59657a;font-size:.68em}
.logo-wrap .entity-logo{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;padding:2px;background:transparent}
.logo-wrap .entity-logo.broken{display:none}
.team-badge{width:30px;height:30px;border-radius:9px;font-size:12px;background:#f7f9fd}
.league-logo{width:36px;height:36px;border-radius:11px;background:#fff}
.mini-league-logo{width:26px;height:26px;border-radius:8px;background:#fff}
.standing-logo{width:22px;height:22px;border-radius:7px;background:#fff}
.dialog-league-logo{width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18)}
.big-badge.logo-wrap{width:66px;height:66px;border-radius:20px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16);margin:0 auto 9px}
.big-badge .logo-fallback{color:#fff;font-size:18px}
.lineup-team-logo{width:34px;height:34px;border-radius:10px;background:#fff}
.favorite-logo{width:30px;height:30px;border-radius:9px;background:#fff}
.league-title{align-items:center}.league-title h2{display:flex;align-items:center;gap:6px}
.league-link{min-height:44px}.standing{grid-template-columns:26px minmax(0,1fr) 26px 28px}.standing-team{display:flex!important;align-items:center;gap:7px;min-width:0}.standing-team>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dialog-hero{padding:22px 20px 20px}.dialog-league{display:flex;justify-content:center;align-items:center;gap:8px;font-size:11px;font-weight:800;margin-bottom:8px;opacity:.92}.dialog-meta{font-size:11px;opacity:.78}.dialog-team{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.dialog-team b{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dialog-score{font-size:30px;white-space:nowrap}.dialog-score span{opacity:.5;font-size:20px}.dialog-tabs{padding:10px 12px;gap:6px}.dialog-tabs button{border:0;background:#f1f4f9;color:#5f6c84;border-radius:10px;padding:9px 11px;font:inherit;font-size:11px;font-weight:800;white-space:nowrap}.dialog-tabs button.active{background:#e7f0ff;color:#2669db}.dialog-body h3{font-size:14px;margin:20px 0 10px}.dialog-panel[hidden]{display:none!important}
.facts-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.fact-card{display:flex;gap:10px;align-items:flex-start;border:1px solid #e9edf4;background:#f9fbfe;border-radius:14px;padding:11px;min-width:0}.fact-card>span{font-size:18px}.fact-card div{min-width:0}.fact-card small{display:block;color:#8993a6;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}.fact-card b{display:block;font-size:11px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.stats-panel{border:1px solid #edf0f5;border-radius:14px;padding:4px 12px;background:#fff}.stats-panel .stat-row{border-bottom:1px dashed #edf0f5;padding:6px 0;margin:0}.stats-panel .stat-row:last-child{border-bottom:0}.stat-row span:first-child,.stat-row span:last-child{font-size:12px}.stat-label{font-size:9px}
.timeline{display:grid;gap:8px}.timeline-item{display:grid;grid-template-columns:42px 28px minmax(0,1fr);gap:8px;align-items:center;padding:9px 10px;border-radius:12px;background:#f8fafd;border:1px solid #edf0f5}.timeline-minute{font-size:11px;font-weight:800;color:#5a6880;text-align:right}.timeline-icon{font-size:17px;text-align:center}.timeline-item b{font-size:11px;display:block}.timeline-item small{font-size:10px;color:#7a8598;display:block;margin-top:2px}.timeline-item.home{border-left:3px solid #377ee8}.timeline-item.away{border-right:3px solid #ff8a2b}
.formations{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin-bottom:14px;padding:12px;border-radius:14px;background:#f6f9fd;border:1px solid #e7ecf4}.formations>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;min-width:0}.formations>div:last-child{grid-template-columns:1fr auto;text-align:right}.formations>div:last-child .lineup-team-logo{grid-column:2;grid-row:1/3}.formations b{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.formations span{font-size:10px;color:#7b879b}.formations strong{font-size:10px;color:#8a95a8}.lineup-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lineup-columns section{min-width:0;border:1px solid #e8edf5;border-radius:14px;padding:10px;background:#fff}.lineup-columns h4{font-size:12px;margin:0 0 8px}.lineup-columns h5{font-size:10px;margin:12px 0 6px;color:#8490a3;text-transform:uppercase}.player-list{display:grid;gap:5px}.player-row{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:6px;align-items:center;padding:6px 4px;border-bottom:1px dashed #eef1f5}.player-row:last-child{border-bottom:0}.player-row b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-row small{font-size:9px;color:#8994a7}.shirt-no{width:22px;height:22px;border-radius:7px;background:#edf3fd;display:grid;place-items:center;font-size:9px;font-weight:800;color:#4c6fa4}.coach-line{font-size:10px;color:#748096;margin:9px 0 0}.lineup-empty{font-size:10px;color:#8a95a8;padding:6px}
.sheet-league-main{display:flex!important;align-items:center;gap:9px;min-width:0;flex:1}.sheet-league-main>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.favorite-card.favorite-click{display:block;width:100%;text-align:left;background:#fff;color:inherit;font:inherit}.favorite-teams{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;margin-bottom:7px}.favorite-teams b{text-align:center;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-card>span{font-size:11px;color:#707c91}.favorite-card>small{font-size:10px;color:#909bad;display:block;margin-top:4px}
@media(max-width:600px){.team-badge{width:28px;height:28px}.league-logo{width:34px;height:34px}.facts-grid{grid-template-columns:1fr}.dialog-scoreline{gap:10px}.dialog-team b{max-width:105px;font-size:11px}.big-badge.logo-wrap{width:58px;height:58px}.dialog-score{font-size:24px}.lineup-columns{grid-template-columns:1fr}.formations{grid-template-columns:1fr auto 1fr;padding:10px 8px}.formations .lineup-team-logo{display:none}.formations>div,.formations>div:last-child{display:block;text-align:center}.formations b{display:block;max-width:110px}.match-row{grid-template-columns:54px minmax(0,1fr) 36px}.team{grid-template-columns:28px minmax(0,1fr) 26px}.dialog-body{padding:14px 12px 20px}}

/* v0.9 authoritative league metadata + clear country/league separation */
.country-flag{display:inline-block;min-width:1.35em;text-align:center;font-size:1.08em;vertical-align:-.06em}
.league-head .league-title h2{margin:0;color:#17233d;font-size:13px;font-weight:800}
.league-head .league-title p{display:flex;align-items:center;gap:4px;margin:3px 0 0;color:#7b879b;font-size:10px;font-weight:700}
.dialog-league-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;text-align:left}
.dialog-league-text b{font-size:12px;color:#fff}
.dialog-league-text small{display:flex;align-items:center;gap:3px;margin-top:3px;font-size:9px;color:rgba(255,255,255,.78);font-weight:700}
.country-head,.sheet-country{display:flex;align-items:center;gap:5px}


/* v1.0 league priority */
.league-section-title{margin:12px 8px 8px;padding:8px 10px;border-radius:10px;background:#eef5ff;color:#1b4f9c;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.league-section-title.secondary{margin-top:18px;background:#f5f6f9;color:#657084}
.featured-league{background:linear-gradient(90deg,rgba(43,117,246,.08),rgba(43,117,246,.02));border-left:3px solid #2b75f6}
.sheet-featured-title{margin:4px 0 8px;padding:10px 12px;border-radius:12px;background:#edf5ff;color:#1c55a8;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.sheet-featured-title.other{margin-top:18px;background:#f4f5f7;color:#697386}
.featured-sheet-league{background:linear-gradient(90deg,rgba(43,117,246,.08),rgba(43,117,246,.015));border-left:3px solid #2b75f6}

/* v1.1 league center, team/player pages, H2H and favorite teams */
.team{grid-template-columns:minmax(0,1fr) 28px}
.match-team-open{min-width:0;border:0;background:transparent;padding:0;display:grid;grid-template-columns:30px minmax(0,1fr);gap:9px;align-items:center;text-align:left;color:inherit}
.match-team-open:hover .team-name{text-decoration:underline;text-underline-offset:2px}
.dialog-team.team-open{border:0;background:transparent;color:#fff;padding:0;cursor:pointer}
.dialog-team.team-open:hover b{text-decoration:underline;text-underline-offset:3px}
.standing-team.team-open{border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer}
.league-tabs{display:flex;gap:6px;margin:0 0 10px;overflow:auto}
.league-tab{border:1px solid #e1e7f0;background:#f6f8fc;color:#667287;border-radius:10px;padding:8px 10px;font-size:10px;font-weight:800;white-space:nowrap}
.league-tab.active{background:#e8f1ff;border-color:#c8dcff;color:#2463c5}
.scorer-list{display:grid;gap:4px}
.scorer-row{width:100%;display:grid;grid-template-columns:26px 32px minmax(0,1fr) 32px;gap:7px;align-items:center;border:0;border-bottom:1px dashed #edf0f5;background:transparent;padding:7px 0;text-align:left;color:inherit}
.scorer-row:last-child{border-bottom:0}.scorer-rank{font-size:10px;color:#7c879a;text-align:center;font-weight:800}.scorer-photo{width:30px;height:30px;border-radius:50%;background:#f1f4f9}.scorer-info{min-width:0}.scorer-info b,.scorer-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scorer-info b{font-size:10px}.scorer-info small{font-size:9px;color:#8b96a8;margin-top:2px}.scorer-row>strong{font-size:13px;color:#2265cf;text-align:center}
.profile-hero{display:flex;align-items:center;gap:16px;padding:26px 22px;background:linear-gradient(135deg,#111c43,#245bb8);color:#fff}.profile-hero h2{margin:2px 0 8px;font-size:22px}.profile-hero p{margin:0;font-size:11px;opacity:.78}.profile-main-logo{width:84px;height:84px;border-radius:24px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.18)}.profile-player-photo{width:92px;height:92px;border-radius:50%;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18)}.profile-player-photo .logo-fallback{font-size:28px;color:#fff}.profile-subtitle{font-size:11px;opacity:.8}.team-fav-action{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:8px 10px;font-size:10px;font-weight:800}.team-fav-action.active{background:#ffb020;color:#452c00;border-color:#ffb020}.profile-body{padding:16px 18px 24px}.profile-body h3{font-size:14px;margin:20px 0 10px}.profile-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.profile-field{border:1px solid #e8edf5;background:#f9fbfe;border-radius:12px;padding:10px}.profile-field small{display:block;color:#8b96a8;font-size:9px;font-weight:800;text-transform:uppercase;margin-bottom:3px}.profile-field b{font-size:11px;overflow-wrap:anywhere}.profile-team-link{display:flex;align-items:center;gap:8px;width:100%;margin-top:10px;border:1px solid #e3e9f3;background:#f7faff;color:#315a99;border-radius:12px;padding:10px;font-size:11px;font-weight:800}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-card{border:1px solid #e8edf5;background:#fbfcff;border-radius:14px;padding:12px;min-width:0}.form-card>b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:9px}.form-badges{display:flex;gap:4px;flex-wrap:wrap}.form-badges i{font-style:normal;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-size:9px;font-weight:900;color:#fff}.form-w{background:#18a566}.form-d{background:#8b96a8}.form-l{background:#e54e4e}.form-numbers{display:flex;gap:7px;align-items:center;margin-top:9px;font-size:9px;color:#778399}.form-numbers strong{margin-left:auto;color:#203150}.muted-mini{font-size:10px;color:#909aad}.h2h-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.h2h-summary>div{border:1px solid #e7ecf4;background:#f9fbfe;border-radius:12px;padding:11px;text-align:center}.h2h-summary b{display:block;font-size:20px;color:#1f5fc2}.h2h-summary small{display:block;font-size:9px;color:#7b8799;margin-top:4px}.h2h-list{display:grid;gap:5px;margin-top:10px}.h2h-row{border:1px solid #edf0f5;background:#fff;border-radius:10px;padding:8px 10px;text-align:left;color:inherit}.h2h-row span{display:block;font-size:9px;color:#8c97a9}.h2h-row b{display:block;font-size:10px;margin-top:3px}.h2h-row strong{color:#2463c5;margin:0 5px}
.profile-fixtures{display:grid;gap:6px}.profile-fixture{border:1px solid #e8edf4;background:#fff;border-radius:11px;padding:9px 10px;text-align:left;color:inherit}.profile-fixture span{display:block;font-size:9px;color:#8a95a7}.profile-fixture b{display:block;margin-top:3px;font-size:10px}.profile-fixture strong{color:#2564c7;margin:0 4px}.squad-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.squad-player{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;border:1px solid #e8edf5;background:#fff;border-radius:12px;padding:7px;text-align:left;color:inherit;min-width:0}.squad-photo{width:36px;height:36px;border-radius:50%;background:#f2f5fa}.squad-player span{min-width:0}.squad-player b,.squad-player small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.squad-player b{font-size:10px}.squad-player small{font-size:9px;color:#8a95a8;margin-top:2px}.player-row.player-open{width:100%;border-left:0;border-right:0;border-top:0;background:transparent;color:inherit;text-align:left}.career-list{display:grid;gap:6px}.career-row{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px dashed #e9edf4;padding:8px 0;font-size:10px}.career-row b{font-size:10px}.career-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#647087}.career-row strong{font-size:9px;color:#2564c7;white-space:nowrap}.favorite-team-card{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;border:1px solid #e8edf5;background:#fff;border-radius:12px;padding:10px;text-align:left;color:inherit;margin-bottom:7px}.favorite-team-card span{min-width:0}.favorite-team-card b,.favorite-team-card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.favorite-team-card b{font-size:11px}.favorite-team-card small{font-size:9px;color:#8b96a8;margin-top:2px}.favorite-team-card strong{color:#7e899d}
@media(max-width:600px){.profile-hero{padding:24px 18px}.profile-main-logo{width:72px;height:72px}.profile-player-photo{width:78px;height:78px}.profile-body{padding:14px 12px 22px}.profile-fields{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.squad-grid{grid-template-columns:1fr}.career-row{grid-template-columns:70px minmax(0,1fr);}.career-row strong{grid-column:2}.h2h-summary small{font-size:8px}.dialog-tabs{scrollbar-width:none}.dialog-tabs::-webkit-scrollbar{display:none}}

/* v1.4 search, broadcasts, shot map, momentum and predictions */
.search-box{display:grid;grid-template-columns:28px minmax(0,1fr) 34px;gap:8px;align-items:center;border:1px solid #dfe6f1;background:#f7f9fd;border-radius:16px;padding:8px 10px;margin-bottom:12px}.search-box>span{font-size:22px;color:#587096;text-align:center}.search-box input{min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:#17233d;padding:8px 0}.search-box button{border:0;background:#e9eef6;width:32px;height:32px;border-radius:50%;font-size:20px;color:#66738a}.search-group{margin:14px 0}.search-group h3{margin:0 0 8px;font-size:11px;color:#7d899c;text-transform:uppercase;letter-spacing:.06em}.search-result{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 22px;gap:10px;align-items:center;border:1px solid #e6ebf3;background:#fff;border-radius:13px;padding:9px 10px;margin-bottom:7px;text-align:left;color:inherit}.search-result span{min-width:0}.search-result b,.search-result small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result b{font-size:11px}.search-result small{font-size:9px;color:#8a95a7;margin-top:3px}.search-result strong{color:#8b96a8;font-size:18px}.search-logo{width:40px;height:40px;border-radius:12px;background:#f4f7fb}.search-logo.player{border-radius:50%}
.broadcast-box{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;margin:14px 0;border:1px solid #dbe9ff;background:#f2f7ff;border-radius:14px;padding:11px 13px}.broadcast-box>span{width:36px;height:36px;border-radius:11px;background:#e4efff;display:grid;place-items:center;font-size:19px}.broadcast-box small,.broadcast-box b{display:block}.broadcast-box small{font-size:9px;color:#74829a;font-weight:800;text-transform:uppercase}.broadcast-box b{margin-top:3px;font-size:11px;color:#20385f;line-height:1.45}.compact-note{padding:12px 8px}
.analysis-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.analysis-summary>div{border:1px solid #e5ebf3;background:#f8faff;border-radius:13px;padding:10px;text-align:center}.analysis-summary b{display:block;font-size:20px;color:#22355b}.analysis-summary small{display:block;font-size:9px;color:#79869b;margin:3px 0}.analysis-summary span{font-size:10px;font-weight:800;color:#2b67c8}.pitch-wrap{border:1px solid #dde6ef;border-radius:16px;padding:10px;background:#f2f8f3}.shot-pitch{display:block;width:100%;height:auto;max-height:360px;background:#6ca875;border-radius:10px}.shot-pitch>rect:first-child{fill:#6ca875;stroke:#e9f4ea;stroke-width:.7}.shot-pitch>line,.shot-pitch .pitch-line{fill:none;stroke:#e9f4ea;stroke-width:.55}.shot-dot{stroke:#fff;stroke-width:.55;opacity:.9}.home-shot{fill:#2367d1}.away-shot{fill:#e44d58}.goal-shot{stroke:#ffd54a;stroke-width:1}.shot-legend{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px;font-size:9px;color:#66738a;font-weight:700}.shot-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:4px}.legend-home{background:#2367d1}.legend-away{background:#e44d58}.shot-list{display:grid;gap:5px;margin-top:10px}.shot-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) 60px;gap:7px;align-items:center;border-bottom:1px dashed #e8edf4;padding:7px 2px}.shot-list b{font-size:10px;color:#60708a}.shot-list span{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shot-list strong{font-size:10px;color:#2464c6;text-align:right}
.momentum-names{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-bottom:8px}.momentum-names b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.momentum-names b:last-child{text-align:right}.momentum-names span{font-size:8px;color:#8c97a8;font-weight:800}.momentum-wrap{border:1px solid #e1e7ef;background:#fbfcfe;border-radius:15px;padding:10px}.momentum-chart{width:100%;height:auto;display:block}.momentum-chart>line{stroke:#cbd4e1;stroke-width:.35}.mom-home{fill:#2a6bd3}.mom-away{fill:#ef5963}.analysis-note{font-size:9px;line-height:1.5;color:#8a95a7;margin:9px 2px 0}
.prediction-card{border:1px solid #e2e9f3;background:#fbfcff;border-radius:15px;padding:12px}.prediction-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:center;margin-bottom:12px}.prediction-head>span{width:34px;height:34px;border-radius:11px;background:#edf3ff;display:grid;place-items:center;font-size:18px}.prediction-head small,.prediction-head b{display:block}.prediction-head small{font-size:8px;color:#8793a6;text-transform:uppercase;font-weight:800}.prediction-head b{font-size:11px;margin-top:2px}.prediction-head em{font-style:normal;font-size:9px;font-weight:800;color:#2764c4;background:#edf4ff;border-radius:99px;padding:5px 7px}.prob-row{display:grid;grid-template-columns:100px minmax(0,1fr) 45px;gap:8px;align-items:center;margin:8px 0}.prob-row>span{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prob-row>div{height:8px;background:#edf1f6;border-radius:99px;overflow:hidden}.prob-row i{display:block;height:100%;border-radius:99px}.prob-home{background:#2a6bd3}.prob-draw{background:#8d99aa}.prob-away{background:#e34e59}.prob-row>b{text-align:right;font-size:10px}.prediction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.prediction-grid>div{border:1px solid #e6ebf3;background:#fff;border-radius:11px;padding:9px;text-align:center}.prediction-grid small{display:block;font-size:8px;color:#8995a7}.prediction-grid b{display:block;font-size:12px;margin-top:4px;color:#243b61}
@media(max-width:600px){.top-actions{gap:5px}.top-actions .icon-btn{width:38px;height:38px}.prob-row{grid-template-columns:84px minmax(0,1fr) 42px}.prediction-grid{grid-template-columns:1fr 1fr 1fr}.shot-list>div{grid-template-columns:30px minmax(0,1fr) 54px}}

/* v1.5 LIVE PRO — Unlimited + Live WebSocket (odds UI intentionally excluded) */
.wsplus-tag{display:block;margin-top:4px;font-size:7px;line-height:1;font-weight:900;letter-spacing:.08em;color:#0f8e60;background:#e9fff6;border:1px solid #bfeeda;border-radius:99px;padding:3px 5px;width:max-content;margin-left:auto;margin-right:auto}.wsplus-tag.basic{color:#3368b6;background:#edf4ff;border-color:#d4e4ff}
.live-summary-link{margin:13px 0}.live-summary-link button{width:100%;border:0;background:#eaf8f1;color:#087a4c;border-radius:13px;padding:12px;font:inherit;font-weight:900;cursor:pointer}
.live-center{display:grid;gap:12px}.live-connect-row{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;color:#8190a4}.live-transport{font-weight:900;border-radius:99px;padding:6px 9px;background:#edf1f6;color:#66758d}.live-transport.connected{background:#e6fff1;color:#078150}.live-transport.connecting{background:#fff6dd;color:#9c7110}.live-transport.rest{background:#edf4ff;color:#3568af}
.live-pitch-card{border:1px solid #dce7e0;background:#f5faf6;border-radius:16px;padding:10px}.live-pitch-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.live-pitch-head b{font-size:11px}.live-pitch-head span{font-size:9px;font-weight:800;color:#258257;background:#e6f8ed;border-radius:99px;padding:5px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:55%}
.live-pitch{position:relative;aspect-ratio:100/62;background:linear-gradient(90deg,#5f9e6b,#68a874 50%,#5f9e6b);border-radius:12px;overflow:hidden;border:2px solid rgba(255,255,255,.75)}.live-pitch:before,.live-pitch:after{content:"";position:absolute;top:22%;bottom:22%;width:14%;border:1px solid rgba(255,255,255,.72)}.live-pitch:before{left:-1px;border-left:0}.live-pitch:after{right:-1px;border-right:0}.lp-half{position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.72)}.lp-circle{position:absolute;left:50%;top:50%;width:18%;aspect-ratio:1;border:1px solid rgba(255,255,255,.72);border-radius:50%;transform:translate(-50%,-50%)}.live-ball{position:absolute;z-index:3;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#101827;border:2px solid #183052;font-size:8px;box-shadow:0 4px 10px rgba(0,0,0,.24);transition:left .35s linear,top .35s linear}.live-ball.away{border-color:#dc4f5f}.live-commentary{margin:8px 2px 0;font-size:10px;line-height:1.45;color:#607087;min-height:29px}
.live-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.live-stat-grid>div{border:1px solid #e5ebf3;background:#fff;border-radius:12px;padding:9px 6px;text-align:center}.live-stat-grid small{display:block;font-size:7px;color:#8591a3}.live-stat-grid b{display:block;font-size:11px;color:#253d62;margin-top:4px}
.live-timeline-head{display:flex;justify-content:space-between;align-items:center}.live-timeline-head b{font-size:11px}.live-timeline-head span{font-size:8px;color:#8793a6}.live-action-feed{display:grid;gap:6px;max-height:310px;overflow:auto}.live-action{display:grid;grid-template-columns:35px 26px minmax(0,1fr);gap:7px;align-items:center;border:1px solid #e8edf4;background:#fff;border-radius:11px;padding:8px}.live-action>span{font-size:9px;font-weight:900;color:#637188;text-align:right}.live-action>i{font-style:normal;text-align:center}.live-action b{display:block;font-size:10px}.live-action small{display:block;font-size:8px;color:#8a95a7;margin-top:2px}.live-action.home{border-left:3px solid #2769d2}.live-action.away{border-right:3px solid #e64f5c}.live-action.history{opacity:.75}
.live-event-flash{position:fixed;z-index:250;left:50%;top:18%;transform:translate(-50%,-20px) scale(.96);opacity:0;pointer-events:none;background:#0d1731;color:#fff;border-radius:16px;padding:14px 20px;font-size:15px;font-weight:900;box-shadow:0 18px 45px rgba(0,0,0,.3);transition:.18s ease}.live-event-flash.show{opacity:1;transform:translate(-50%,0) scale(1)}
.arena-empty{border:1px dashed #d8e0ec;background:#f9fbfe;border-radius:16px;padding:28px 18px;text-align:center;color:#6e7b91}.arena-empty>span{display:block;font-size:34px;margin-bottom:8px}.arena-empty b{display:block;color:#263b60}.arena-empty p{font-size:10px;line-height:1.5}.arena-empty small{display:block;font-size:9px;color:#9aa4b5;margin-top:6px}.arena-empty button{border:0;background:#2468d4;color:#fff;border-radius:12px;padding:11px 15px;font:inherit;font-weight:900;margin-top:8px}.arena-frame-wrap{border-radius:16px;overflow:hidden;background:#091124}.arena-frame{display:block;width:100%;height:520px;border:0;background:#091124}
.avg-head{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;margin-bottom:9px}.avg-head b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avg-head b:last-child{text-align:right}.avg-head span{font-size:8px;color:#8b96a8;font-weight:900}.average-pitch{position:relative;aspect-ratio:100/68;background:#66a372;border-radius:14px;border:2px solid #e8f3e9;overflow:hidden}.average-pitch:before,.average-pitch:after{content:"";position:absolute;top:23%;bottom:23%;width:15%;border:1px solid rgba(255,255,255,.75)}.average-pitch:before{left:-1px;border-left:0}.average-pitch:after{right:-1px;border-right:0}.ap-half{position:absolute;left:50%;top:0;bottom:0;width:1px;background:rgba(255,255,255,.72)}.ap-circle{position:absolute;left:50%;top:50%;width:19%;aspect-ratio:1;border:1px solid rgba(255,255,255,.72);border-radius:50%;transform:translate(-50%,-50%)}.avg-player{position:absolute;transform:translate(-50%,-50%);border:0;background:transparent;color:#fff;text-align:center;z-index:2;padding:0}.avg-player>b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:2px solid #fff;background:#2167d0;font-size:8px;box-shadow:0 2px 8px rgba(0,0,0,.22)}.avg-player.away>b{background:#e24d5a}.avg-player small{display:block;max-width:58px;margin-top:2px;padding:2px 3px;border-radius:4px;background:rgba(7,20,28,.67);font-size:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rating-list{display:grid;gap:6px}.rating-row{display:grid;grid-template-columns:22px 38px minmax(0,1fr) 46px;gap:8px;align-items:center;border:1px solid #e7ecf4;background:#fff;border-radius:12px;padding:7px;text-align:left;color:inherit}.rating-row>span{font-size:9px;color:#8792a4;text-align:center}.rating-photo{width:36px;height:36px;border-radius:50%}.rating-row div{min-width:0}.rating-row b,.rating-row small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rating-row b{font-size:10px}.rating-row small{font-size:8px;color:#8a95a7}.rating-row>strong{justify-self:end;min-width:36px;text-align:center;border-radius:9px;padding:6px 5px;background:#edf3ff;color:#2a63b7;font-size:10px}.rating-row>strong.great{background:#e4faee;color:#087b4c}.rating-row>strong.low{background:#fff0f0;color:#bd3f49}
.absence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.absence-grid section{border:1px solid #e8edf4;background:#fbfcff;border-radius:14px;padding:10px}.absence-grid h4{margin:0 0 8px;font-size:10px}.absence-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;border-top:1px dashed #e8edf4;padding:7px 0}.absence-row:first-of-type{border-top:0}.absence-photo{width:28px;height:28px;border-radius:50%}.absence-row b,.absence-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.absence-row b{font-size:9px}.absence-row small{font-size:8px;color:#8a95a7;margin-top:2px}.prematch-stack>h3{margin-top:18px}
.team-metric-grid,.player-stat-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.team-metric-grid>div,.player-stat-summary>div{border:1px solid #e6ebf3;background:#f9fbfe;border-radius:12px;padding:9px;text-align:center}.team-metric-grid small,.player-stat-summary small{display:block;font-size:8px;color:#8793a6}.team-metric-grid b,.player-stat-summary b{display:block;font-size:13px;color:#274368;margin-top:4px}.player-stat-matches{display:grid;gap:5px;margin-top:10px}.player-stat-match{border-bottom:1px dashed #e6ebf2;padding:8px 2px}.player-stat-match span{display:block;font-size:8px;color:#909bad}.player-stat-match b{display:block;font-size:10px;margin-top:2px}.player-stat-match small{display:block;font-size:8px;color:#69778d;margin-top:3px}
.notify-center{display:grid;gap:8px}.notify-pref{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:center;border:1px solid #e6ebf3;background:#fff;border-radius:13px;padding:11px}.notify-pref input{width:20px;height:20px}.notify-pref b,.notify-pref small{display:block}.notify-pref b{font-size:11px}.notify-pref small{font-size:9px;color:#8793a6;margin-top:2px}.notify-permission{border:0;background:#2468d4;color:#fff;border-radius:13px;padding:12px;font:inherit;font-weight:900;margin-top:4px}
@media(max-width:600px){.live-stat-grid{grid-template-columns:1fr 1fr}.arena-frame{height:390px}.absence-grid{grid-template-columns:1fr}.team-metric-grid,.player-stat-summary{grid-template-columns:1fr 1fr}.avg-player small{display:none}.average-pitch{min-height:245px}.live-event-flash{top:15%;max-width:88%;font-size:13px;text-align:center}}

/* v1.6 desktop score center */
.shell{width:min(1420px,calc(100% - 32px))}
.sport-strip{border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.sport-nav{display:flex;align-items:center;gap:4px;overflow:auto;scrollbar-width:none}
.sport-nav::-webkit-scrollbar{display:none}.sport-link{color:rgba(255,255,255,.72);text-decoration:none;font-size:12px;font-weight:700;padding:10px 13px;border-bottom:2px solid transparent;white-space:nowrap}.sport-link:hover,.sport-link.active-sport{color:#fff;border-bottom-color:#5fe1ff}.sport-link.active{color:#fff}
.desktop-score-layout{grid-template-columns:260px minmax(560px,1fr) 280px;gap:16px;padding-top:18px}
.left-card{padding:12px 10px;max-height:calc(100vh - 170px);overflow:auto;scrollbar-width:thin}.left-card-head{display:flex;align-items:center;justify-content:space-between;padding:0 5px 8px;position:sticky;top:-12px;background:#fff;z-index:2}.left-card-head h3{margin:8px 4px}.tiny-link{border:0;background:transparent;color:var(--blue);font-size:10px;font-weight:800}.league-link{align-items:flex-start;padding:10px 8px;gap:8px}.league-link-text b{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:11px!important;line-height:1.25}.league-link-text em{font-size:9px!important;line-height:1.2}.league-link small{font-size:9px;white-space:nowrap;padding-top:4px}.mini-league-logo{margin-top:1px}.league-section-title{font-size:10px;padding:7px 8px;margin-left:3px;margin-right:3px}.country-head{margin-left:5px;margin-right:5px}
.compact-hero{min-height:128px}.compact-hero h1{font-size:clamp(25px,2.3vw,34px)}
.league-context{margin:14px 0 0;background:linear-gradient(135deg,#182954,#245aa7);color:#fff;border-radius:16px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow)}.league-context[hidden]{display:none!important}.league-context>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.league-context>div:first-child>span{font-size:26px}.league-context small{display:block;font-size:8px;letter-spacing:.12em;color:rgba(255,255,255,.65);font-weight:800}.league-context h2{font-size:15px;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.league-context-actions{display:flex;gap:7px}.league-context-actions button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);color:#fff;border-radius:10px;padding:8px 10px;font-size:9px;font-weight:800;white-space:nowrap}.league-context-actions button:last-child{background:#fff;color:#18315e}
.right-column{top:166px}.live-rail-card{border-top:3px solid #ef4444}.rail-match{width:100%;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;gap:7px;align-items:center;border:0;border-bottom:1px solid #edf0f5;background:transparent;padding:9px 2px;text-align:left;color:inherit}.rail-match:last-child{border-bottom:0}.rail-match:hover{background:#f8faff}.rail-time{font-size:9px;color:#768298;font-weight:800;text-align:center}.rail-time .live-badge{font-size:9px}.rail-teams{min-width:0;display:grid;gap:3px}.rail-teams b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail-score{display:grid;gap:3px;text-align:center;font-size:10px}.rail-empty{font-size:10px;color:#8792a5;padding:14px 4px;text-align:center}
.utility-dialog{width:min(760px,calc(100% - 28px));max-height:88vh;overflow:auto}.utility-hero{background:linear-gradient(135deg,#111d43,#2867c9);color:#fff;padding:24px 24px 18px}.utility-hero>div{display:flex;align-items:center;gap:12px}.utility-hero h2{margin:2px 0 0;font-size:20px}.utility-hero small{color:rgba(255,255,255,.7)}.utility-body{padding:18px 20px 24px}
@media(max-width:1200px){.desktop-score-layout{grid-template-columns:230px minmax(0,1fr)}.right-column{display:none}.left-card{max-height:calc(100vh - 170px)}}
@media(max-width:900px){.sport-nav{padding-left:0}.desktop-score-layout{display:block}.league-context{margin-top:10px}.league-context-actions button:first-child{display:none}}
@media(max-width:760px){.sport-link{font-size:11px;padding:9px 10px}.league-context{border-radius:14px;padding:11px 12px}.league-context h2{font-size:13px}.league-context>div:first-child>span{font-size:22px}.compact-hero{min-height:auto}.utility-dialog{width:calc(100% - 16px)}}

/* v1.6.3 son kullanıcı deneyimi */
.match-skeleton{display:grid;gap:12px;padding:4px 0 18px}.match-skeleton i{display:block;height:112px;border-radius:16px;background:linear-gradient(90deg,#eef2f7 25%,#f8fafc 45%,#eef2f7 65%);background-size:220% 100%;animation:skorShimmer 1.3s linear infinite;border:1px solid #e7ebf2}.match-skeleton i:first-child{height:138px}.match-skeleton i:nth-child(3){height:96px}.match-skeleton i:nth-child(4){height:120px}@keyframes skorShimmer{0%{background-position:100% 0}100%{background-position:-120% 0}}
.friendly-retry{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 20px;text-align:center;box-shadow:0 8px 30px rgba(30,50,90,.05)}.friendly-retry>span{font-size:36px}.friendly-retry h3{margin:10px 0 6px;font-size:17px}.friendly-retry p{margin:0 0 16px;color:var(--muted);font-size:12px}.friendly-retry button{border:0;border-radius:12px;background:var(--blue);color:#fff;padding:11px 18px;font-weight:800}
.consumer-promo-card{overflow:hidden;background:linear-gradient(135deg,#10204a,#245db0)!important;color:#fff!important}.consumer-promo-card .promo-kicker{font-size:9px;letter-spacing:.16em;opacity:.72;font-weight:800}.promo-rotator{height:46px;overflow:hidden;margin-top:8px}.promo-rotator>div{height:46px;display:flex;align-items:center;font-size:12px;font-weight:800;animation:promoCycle 12s steps(1,end) infinite}.promo-rotator>div:nth-child(2){animation-delay:-9s}.promo-rotator>div:nth-child(3){animation-delay:-6s}.promo-rotator>div:nth-child(4){animation-delay:-3s}@keyframes promoCycle{0%,24%{display:flex}25%,100%{display:none}}
.more-promo{margin-top:16px;border-radius:18px;background:linear-gradient(135deg,#111f48,#2567c7);color:#fff;padding:16px;overflow:hidden}.more-promo>small{font-size:9px;letter-spacing:.16em;font-weight:800;opacity:.7}.more-promo-track{margin-top:9px;height:28px;overflow:hidden;position:relative}.more-promo-track b{position:absolute;inset:0;display:flex;align-items:center;opacity:0;transform:translateY(12px);animation:morePromo 12s infinite;font-size:12px}.more-promo-track b:nth-child(2){animation-delay:3s}.more-promo-track b:nth-child(3){animation-delay:6s}.more-promo-track b:nth-child(4){animation-delay:9s}@keyframes morePromo{0%,5%{opacity:0;transform:translateY(10px)}10%,22%{opacity:1;transform:translateY(0)}27%,100%{opacity:0;transform:translateY(-10px)}}
.ad-placeholder{margin-top:14px;padding:18px;border:1px dashed #cbd5e4;border-radius:18px;background:linear-gradient(135deg,#fff,#f6f8fc);display:grid;gap:5px;text-align:center}.ad-placeholder span{font-size:9px;letter-spacing:.12em;color:#8290a7;font-weight:800}.ad-placeholder strong{font-size:14px}.ad-placeholder small{font-size:10px;color:#8793a6;line-height:1.5}
.status-banner{font-size:11px;border-radius:12px}.wsplus-tag{display:none!important}.build-badge{display:none!important}
@media(prefers-reduced-motion:reduce){.match-skeleton i,.more-promo-track b,.promo-rotator>div{animation:none}.more-promo-track b:first-child{opacity:1;transform:none}.promo-rotator>div:first-child{display:flex}}

/* Son kullanıcı yükleme ve güvenli durum mesajları */
.consumer-loading{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px 20px;text-align:center;box-shadow:0 8px 30px rgba(30,50,90,.05)}
.consumer-loading h3{margin:12px 0 6px;font-size:17px}.consumer-loading p{margin:0;color:var(--muted);font-size:12px}.consumer-spinner{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#eef5ff;font-size:28px;animation:consumerBall 1.4s ease-in-out infinite}.consumer-loadbar{height:4px;max-width:220px;margin:18px auto 0;border-radius:999px;background:#e9eef6;overflow:hidden}.consumer-loadbar i{display:block;width:45%;height:100%;border-radius:999px;background:var(--blue);animation:consumerLoad 1.15s ease-in-out infinite}@keyframes consumerBall{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(12deg)}}@keyframes consumerLoad{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}
.friendly-panel-message{border:1px solid #e4eaf3;background:#f8faff;color:#647087;border-radius:14px;padding:18px;text-align:center;font-size:12px;line-height:1.5}
@media(prefers-reduced-motion:reduce){.consumer-spinner,.consumer-loadbar i{animation:none}}
