body:not(.is-player) { background: #fff; }
.player-login { min-height: calc(100vh - 76px); display: grid; grid-template-columns: minmax(0, 1fr) minmax(420px, 460px); background: #fff; }
.player-login[hidden] { display: none !important; }
.login-art { background: #fff url("../assets/player/login-bg.jpg") left center / cover no-repeat; min-width: 0; }
.login-panel { display: grid; align-content: center; gap: 12px; width: 100%; margin: 0; padding: 40px 36px 40px 28px; }
.login-kicker { margin: 0; color: #64748b; font-size: 13px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.login-panel h1 { margin: 0 0 8px; color: #0B4050; font-size: 22px; font-weight: 650; line-height: 1.3; }
.login-panel .td-field { margin: 0; font-size: 13px; font-weight: 500; color: #64748b; }
.login-panel .td-field input,
.login-panel .td-field select {
  height: 48px;
  border: 1px solid #DCE4E9;
  border-radius: 12px;
  font-size: 14px;
  font-weight: 400;
  color: #17283D;
}
.login-panel .td-field input::placeholder { color: #94A3B8; font-weight: 400; }
.login-panel .td-field input:focus,
.login-panel .td-field select:focus { outline: none; border-color: rgba(11, 64, 80, 0.35); }
.login-panel .btn { width: 100%; font-weight: 600; }
.login-phone { display: flex; align-items: stretch; border: 1px solid #DCE4E9; border-radius: 12px; background: #fff; overflow: hidden; }
.login-phone:focus-within { border-color: rgba(11, 64, 80, 0.35); }
.login-phone select, .login-phone input { border: 0 !important; border-radius: 0 !important; height: 46px; box-shadow: none; font-size: 14px; font-weight: 400; }
.login-phone select { flex: 0 0 72px; width: 72px; padding: 0 4px 0 14px; border-right: 1px solid #DCE4E9 !important; background: #fff; color: #334155; }
.login-phone input { flex: 1; min-width: 0; padding-left: 12px; }
.login-pass { position: relative; display: block; }
.login-pass input { width: 100%; padding-right: 44px; }
.login-eye { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; border: 0; background: transparent; color: #64748b; cursor: pointer; padding: 6px; }
.login-eye svg { display: block; width: 20px; height: 20px; }
.login-eye.is-on { color: #0B4050; }
.login-hint { margin: 0; color: #64748b; font-size: 13px; font-weight: 400; line-height: 1.4; }
.login-forgot { border: 0; background: transparent; color: #0B4050; font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; padding: 4px 0; text-align: center; }
.login-forgot:hover { text-decoration: underline; }
.player-home[hidden], .player-dock[hidden], .player-who[hidden],
#partner-login-link[hidden], #player-login-link[hidden] { display: none !important; }
.player-home { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 20px; max-width: 1480px; margin: 0 auto; padding: 20px 16px 88px; }
.player-side { background: #fff; border-radius: 16px; padding: 16px 10px; align-self: start; }
.player-side p { margin: 4px 12px 10px; color: #64748b; font-size: 13px; font-weight: 600; }
.player-side button, .player-tabs button, .player-dock button, .player-links button {
  border: 0; background: transparent; font: inherit; text-align: left; cursor: pointer;
}
.player-side button { display: block; width: 100%; border-radius: 10px; padding: 10px 12px; color: #334155; }
.player-side button.is-on { background: #E7F6EE; color: #166534; font-weight: 600; }
.player-hero { display: grid; grid-template-columns: 220px 1fr auto; gap: 16px; align-items: center; background: #fff; border-radius: 18px; padding: 16px; }
.player-hero .player-banner { width: 100%; height: 120px; object-fit: cover; border-radius: 12px; background: #0f766e; }
.player-hero h1 { margin: 0 0 8px; color: var(--atlantic); }
.player-hero p { margin: 4px 0; color: #64748b; }
.player-badge { display: inline-block; background: #DCFCE7; color: #166534; border-radius: 999px; padding: 4px 10px; font-size: 13px; font-weight: 600; }
.player-tabs { display: none; }
.player-tabs button { padding: 8px 12px; border-radius: 999px; color: #475569; white-space: nowrap; }
.player-tabs button.is-on { background: #fff; color: var(--atlantic); font-weight: 700; box-shadow: inset 0 -2px 0 var(--atlantic); }
.player-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.player-card, .player-match, .player-empty { background: #fff; border-radius: 16px; padding: 16px; }
.player-card { display: grid; grid-template-columns: 42px 1fr auto; gap: 12px; align-items: center; text-decoration: none; color: inherit; }
.player-card img { width: 42px; height: 42px; object-fit: contain; }
.player-card h2, .player-block h2 { margin: 0 0 4px; font-size: 18px; color: var(--atlantic); }
.player-card p, .player-match p { margin: 2px 0; color: #64748b; font-size: 14px; }
.player-status { display: inline-block; margin-top: 6px; background: #DCFCE7; color: #166534; border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 600; }
.player-split { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 16px; }
.player-block { background: #fff; border-radius: 16px; padding: 16px; }
.player-block header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 8px; }
.player-block header button { color: #2563eb; }
.player-match { display: grid; grid-template-columns: 64px 1fr auto; gap: 10px; align-items: center; border-top: 1px solid #e2e8f0; }
.player-match time { font-weight: 700; color: var(--atlantic); }
.player-links { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 16px; }
.player-links button { background: #fff; border-radius: 16px; padding: 14px; }
.player-links strong, .player-links span { display: block; }
.player-links span { color: #64748b; font-size: 13px; margin-top: 4px; }
.player-who { position: relative; display: inline-flex; align-items: center; gap: 8px; font-weight: 600; color: var(--atlantic); }
.player-menu-btn { display: inline-flex; align-items: center; gap: 8px; border: 0; box-shadow: none; background: transparent; color: var(--atlantic); font-weight: 600; padding: 0; }
.player-hello { color: #0f172a; font-size: 15px; font-weight: 700; }
.player-menu { position: absolute; right: 0; top: calc(100% + 10px); z-index: 30; min-width: 200px; background: #fff; border: 0; border-radius: 16px; padding: 8px; box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14); }
.player-menu[hidden] { display: none !important; }
.player-menu button { display: block; width: 100%; text-align: left; border: 0; border-radius: 12px; padding: 12px 14px; color: #0f172a; font-weight: 600; background: transparent; }
.player-menu button:hover, .player-menu button:focus { background: #E7F6EE; color: #166534; }
.discover-head h2 { margin: 0 0 4px; font-size: 22px; font-weight: 700; color: #0f172a; }
.discover-head p { margin: 0 0 14px; color: #64748b; font-size: 14px; }
.discover-search { display: flex; align-items: center; background: #fff; border: 1px solid #E2E8F0; border-radius: 12px; padding: 0 12px; margin-bottom: 14px; }
.discover-search input { flex: 1; height: 42px; border: 0; background: transparent; font: inherit; color: #0f172a; }
.discover-sport { display: block; margin: 0 0 12px; color: #64748b; font-size: 13px; }
.discover-sport select { display: block; width: 100%; max-width: 280px; height: 42px; margin-top: 4px; border: 1px solid #E2E8F0; border-radius: 12px; padding: 0 10px; font: inherit; background: #fff; color: #0f172a; }
.pick-bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 16px; padding: 12px 14px; background: #0f172a; color: #fff; border-radius: 14px; }
.pick-bar button { border: 0; background: #16a34a; color: #fff; border-radius: 999px; padding: 8px 16px; font-weight: 700; }
.pay-screen { position: fixed; inset: 0; z-index: 120; background: #F4F7FB; display: flex; flex-direction: column; }
.pick-bar button[data-clear-pick] { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.4); }
.pay-head { display: flex; align-items: center; gap: 8px; background: #fff; padding: 10px 12px; }
.pay-head button { width: 36px; height: 36px; border: 0; background: transparent; font-size: 28px; line-height: 1; color: #0B4050; }
.pay-head h2, .pay-card h2, .pay-card h3, .pay-label { margin: 0; color: #0B4050; font-size: 18px; font-weight: 800; }
.pay-label .req { color: #B42318; }
.pay-body { flex: 1; overflow: auto; padding: 12px; display: grid; gap: 10px; align-content: start; }
.pay-card { background: #fff; border-radius: 16px; padding: 12px; display: grid; gap: 8px; }
.pay-card label { display: grid; gap: 6px; color: #0B4050; font-size: 16px; font-weight: 700; }
.pay-card label .req { color: #B42318; }
.pay-card label .opt { font-weight: 500; color: #334155; }
.pay-card input, .pay-card input[type="file"] {
  height: 52px;
  border: 2px solid #0B4050;
  border-radius: 10px;
  padding: 0 14px;
  font: inherit;
  font-size: 18px;
  font-weight: 600;
  color: #17283D;
  background: #fff;
}
.pay-card input::placeholder { color: #3D4F63; }
.pay-card input[type="file"] { padding: 12px 14px; }
.pay-card header { display: flex; justify-content: space-between; align-items: center; }
.pay-card header span, .pay-you, .pay-venue em, .pay-method em { color: #64748b; font-size: 12px; font-style: normal; font-weight: 500; }
.pay-you { margin: 0; }
.pay-card > strong { font-size: 15px; font-weight: 650; }
.pay-card > span { color: #334155; font-size: 13px; }
.pay-venue { grid-template-columns: 64px 1fr; align-items: center; }
.pay-venue img, .pay-venue > span { width: 64px; height: 64px; border-radius: 12px; object-fit: cover; background: #E7F4F8; }
.pay-venue strong { display: block; font-size: 15px; }
.pay-total { display: flex; justify-content: space-between; margin: 4px 0 0; padding-top: 8px; border-top: 1px solid #EEF2F6; font-size: 14px; }
.pay-method { display: grid; grid-template-columns: 40px 1fr 18px; gap: 10px; align-items: center; width: 100%; text-align: left; border: 1px solid #E2E8F0; background: #fff; border-radius: 16px; padding: 12px; }
.pay-method.is-on { border-color: #C6F34D; }
.pay-method strong { display: block; font-size: 14px; color: #0B4050; }
.pay-method-ico { width: 40px; height: 40px; border-radius: 12px; background: #E7F6EE; color: #0B4050; display: grid; place-items: center; font-weight: 700; }
.pay-method i { width: 16px; height: 16px; border: 2px solid #CBD5E1; border-radius: 50%; }
.pay-method.is-on i { border-color: #84CC16; background: #C6F34D; }
.pay-marks { display: flex; justify-content: space-around; background: #fff; border-radius: 16px; padding: 10px; color: #64748b; font-size: 12px; }
.pay-foot { background: #fff; padding: 12px 12px calc(12px + env(safe-area-inset-bottom)); display: grid; gap: 8px; }
.pay-foot button { height: 46px; border: 0; border-radius: 12px; background: #C6F34D; color: #14532d; font-weight: 700; }
.pay-foot .pay-later { background: #fff; color: #0B4050; box-shadow: inset 0 0 0 1px #E2E8F0; }
.pay-later-link { border: 0; background: transparent; color: #0B4050; font-weight: 650; text-align: left; padding: 4px 0; }
.confirm-screen { align-items: center; text-align: center; padding: 12px 16px 24px; overflow: auto; }
.confirm-burst { position: relative; height: 28px; width: 100%; }
.confirm-burst i { position: absolute; left: 50%; top: 36px; width: 10px; height: 4px; border-radius: 2px; background: var(--c); transform: rotate(var(--a)) translateY(calc(var(--d) * -1)); }
.confirm-close { position: absolute; top: 8px; right: 8px; border: 0; background: transparent; font-size: 28px; color: #0B4050; }
.confirm-mark { width: 64px; height: 64px; border-radius: 50%; background: #C6F34D; margin: 28px 0 10px; position: relative; }
.confirm-mark:after { content: ''; position: absolute; left: 22px; top: 16px; width: 14px; height: 24px; border: solid #14532d; border-width: 0 4px 4px 0; transform: rotate(45deg); }
.confirm-screen h2 { margin: 0; color: #0B4050; font-size: 26px; }
.confirm-sub { margin: 6px 0 14px; color: #334155; }
.confirm-card { width: min(520px, 100%); text-align: left; }
.confirm-card img { width: 100%; height: 72px; object-fit: cover; border-radius: 12px; }
.confirm-card p { display: flex; justify-content: space-between; gap: 12px; margin: 0; padding-top: 8px; border-top: 1px solid #EEF2F6; font-size: 13px; }
.confirm-card span { color: #64748b; }
.confirm-note { width: min(520px, 100%); background: #D8F8E4; color: #166534; border-radius: 12px; padding: 10px 12px; font-size: 13px; text-align: left; }
.confirm-screen > button:not(.confirm-close) { width: min(520px, 100%); height: 48px; flex: none; margin-top: 8px; border: 0; border-radius: 26px; background: #C6F34D; color: #14532d; font-weight: 700; }
.you-card p { display: flex; justify-content: space-between; gap: 12px; margin: 0; padding: 8px 0; border-top: 1px solid #EEF2F6; }
.you-card .pay-you { border: 0; padding-bottom: 4px; }
.you-card span { color: #64748b; font-size: 13px; }
.you-card strong { color: #0f172a; font-size: 15px; }
.confirm-card strong, .confirm-card em { display: block; }
.confirm-card em { margin-top: 2px; color: #64748b; font-style: normal; font-weight: 500; font-size: 13px; }
.reg-note.is-error { color: #b91c1c; font-weight: 650; }
.reg-list { display: grid; gap: 10px; }
.book-card { display: grid; gap: 10px; background: #fff; border-radius: 16px; padding: 14px; text-decoration: none; color: inherit; }
.book-top { display: grid; grid-template-columns: 47px minmax(0, 1fr) auto; gap: 10px; align-items: start; }
.book-top img { width: 47px; height: 47px; object-fit: contain; }
.book-top strong { display: block; color: #0B4050; font-size: 16px; }
.book-top em { display: block; font-style: normal; color: #64748b; font-size: 13px; }
.book-top b { background: #D8F3E2; color: #16a34a; border-radius: 999px; padding: 2px 8px; font-size: 12px; }
.book-top b.is-cancelled { background: #FEE2E2; color: #b91c1c; }
.book-foot { display: flex; align-items: center; gap: 8px; color: #334155; font-size: 13px; }
.book-foot span { flex: 1; }
.book-foot i { color: #94a3b8; font-style: normal; }
.reg-line { display: flex; gap: 8px; align-items: center; margin: 0; font-size: 13px; font-weight: 600; }
.reg-line img { width: 22px; height: 22px; }
.reg-line span { flex: 1; }
.reg-line b { font-weight: 650; }
.reg-sheet label { display: grid; gap: 6px; color: #0B4050; font-size: 16px; font-weight: 700; }
.reg-sheet input { height: 52px; border: 2px solid #0B4050; border-radius: 12px; padding: 0 14px; font: inherit; font-size: 18px; font-weight: 600; color: #17283D; background: #fff; }
.reg-sheet input::placeholder { color: #3D4F63; }
.reg-line { display: flex; gap: 10px; align-items: center; margin: 0; }
.reg-line img { width: 28px; height: 28px; }
.reg-known, .reg-note { margin: 0; color: #64748b; font-size: 13px; }
.reg-extra { display: grid; gap: 8px; padding-top: 8px; border-top: 1px solid #EEF2F6; }
.discover-filters { display: flex; gap: 8px; overflow-x: auto; overflow-y: hidden; margin-bottom: 16px; }
.discover-filters button { border: 1px solid #E2E8F0; background: #fff; border-radius: 999px; height: 32px; padding: 0 12px; color: #334155; font-weight: 600; font-size: 13px; line-height: 32px; white-space: nowrap; flex: none; }
.discover-filters .is-on { background: #0f172a; color: #fff; border-color: #0f172a; }
.discover-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.discover, .discover-grid, .mock-card, .player-main { min-width: 0; max-width: 100%; }
.mock-card__media img { max-width: 100%; }
.mock-card { background: #fff; border-radius: 18px; overflow: hidden; border: 1px solid #E8EEF5; box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04); }
.mock-card__media { position: relative; height: 148px; background: #0f172a; }
.mock-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mock-badge { position: absolute; top: 12px; right: 12px; border-radius: 999px; padding: 4px 10px; font-size: 12px; font-weight: 700; }
.mock-badge.is-live { background: #DCFCE7; color: #166534; }
.mock-badge.is-upcoming { background: #E8F1FF; color: #1d4ed8; }
.mock-badge.is-past { background: #E2E8F0; color: #334155; }
.mock-card__body { padding: 14px 16px 16px; }
.mock-card h3 { margin: 0; font-size: 18px; font-weight: 700; color: #0f172a; }
.mock-kind { margin: 2px 0 8px; color: #64748b; font-size: 13px; }
.mock-line { display: flex; align-items: center; gap: 8px; margin: 4px 0; color: #334155; font-size: 13px; }
.mock-line .sched-ico { color: #64748b; }
.mock-actions { display: flex; gap: 8px; margin-top: 14px; }
.mock-follow, .mock-view { flex: 1; height: 38px; border-radius: 999px; font-weight: 700; font-size: 14px; }
.mock-follow { border: 1px solid #CBD5E1; background: #fff; color: #0f172a; }
.mock-follow.is-on { border: 0; background: #C6F34D; color: #14532d; }
.mock-view { border: 1px solid #BFDBFE; background: #fff; color: #2563eb; }
.discover .td-hero { margin-top: 12px; }
.discover .td-register { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.discover .td-register .btn { text-align: center; }
.discover-card { background: #fff; border-radius: 16px; overflow: hidden; border: 1px solid #E2E8F0; }
.discover-card img, .discover-cover { width: 100%; height: 140px; object-fit: cover; background: #0f172a; display: block; }
.discover-card h3, .discover-card p { margin: 6px 12px; }
.discover-card div { display: flex; gap: 8px; padding: 12px; }
.discover-badge { display: inline-block; margin: 8px 12px 0; border-radius: 999px; padding: 2px 8px; font-size: 12px; font-weight: 700; }
.discover-badge.is-live { background: #DCFCE7; color: #166534; }
.discover-badge.is-upcoming { background: #E8F1FF; color: #1d4ed8; }
.discover-badge.is-past { background: #E2E8F0; color: #334155; }
.discover-hero { display: grid; grid-template-columns: 180px 1fr; gap: 12px; align-items: center; margin: 12px 0; }
.discover-hero img { width: 100%; height: 110px; object-fit: cover; border-radius: 12px; }
.discover-sport { background: #fff; border-radius: 14px; padding: 12px; margin-bottom: 10px; }
.discover-sport h3 { display: flex; align-items: center; gap: 8px; }
.discover-sport img { width: 28px; height: 28px; }
.discover-sport p { display: flex; justify-content: space-between; gap: 8px; border-top: 1px solid #E2E8F0; padding: 8px 0; margin: 0; }
.player-avatar {
  width: 36px; height: 36px; border-radius: 50%; display: inline-grid; place-items: center; overflow: hidden;
  background: #e2e8f0;
}
.player-avatar img, .sched-face img { width: 100%; height: 100%; object-fit: cover; border-radius: 50%; display: block; }
.sched-toolbar { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 12px; }
.sched-scope { display: inline-flex; background: #fff; border-radius: 999px; padding: 4px; margin-bottom: 0; }
.sched-scope button { border: 0; background: transparent; border-radius: 999px; padding: 8px 14px; font-weight: 600; color: #64748b; }
.sched-scope button.is-on { background: #0f172a; color: #fff; }
.sched-filters { display: grid; grid-template-columns: 1.2fr 1fr 1fr 1.4fr; gap: 10px; margin-bottom: 14px; }
.sched-filters select, .sched-filters input { height: 42px; border: 1px solid #E2E8F0; border-radius: 12px; padding: 0 12px; font: inherit; background: #fff; }
.sched-days { display: none; }
.sched-body { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 14px; align-items: start; }
.sched, .sched-card, .sched-main, .sched-main strong, .sched-players b, .sched-versus b, .sched-detail, .sched-list header strong { color: #111; }
.sched-list header { display: flex; justify-content: space-between; align-items: center; margin: 8px 2px; color: #111; font-size: 14px; }
.sched-list header strong { display: inline-flex; align-items: center; gap: 6px; }
.sched-day-cal { display: inline-flex; color: #111; }
.sched-ico { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; flex: none; }
.sched-meta li { display: flex; align-items: center; gap: 8px; }
.sched-score { display: block; margin-top: 6px; font-weight: 700; color: #111; }
.sched-body.is-detail-closed { grid-template-columns: 1fr; }
.sched-body.is-detail-closed .sched-detail { display: none; }
.bracket { display: flex; gap: 16px; overflow-x: auto; padding-bottom: 8px; }
.bracket section { min-width: 220px; }
.bracket h3 { margin: 0 0 8px; color: #111; font-size: 14px; }
.bracket-match { background: #fff; border: 1px solid #E2E8F0; border-radius: 12px; padding: 8px; margin-bottom: 10px; cursor: pointer; }
.bracket-match p { display: flex; align-items: center; gap: 8px; margin: 4px 0; color: #111; }
.bracket-match .is-winner { font-weight: 700; background: #E7F6EE; border-radius: 8px; }
.bracket-match small { color: #111; font-weight: 700; }
.sched-card { width: 100%; display: grid; grid-template-columns: 88px 1fr auto; gap: 12px; align-items: center; text-align: left; background: #fff; border: 1px solid #E2E8F0; border-radius: 16px; padding: 14px; margin-bottom: 10px; }
.sched-card.is-on { background: #F3FBF4; border-color: #86EFAC; }
.sched-card time { display: grid; }
.sched-card time strong { color: #0f172a; }
.sched-card time span, .sched-main span { color: #64748b; font-size: 13px; }
.sched-players, .sched-versus { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
.sched-players small, .sched-versus small { display: block; color: #64748b; font-weight: 400; }
.sched-face { width: 36px; height: 36px; border-radius: 50%; display: inline-grid; place-items: center; background: #E2E8F0; color: #0f172a; font-size: 12px; font-weight: 700; }
.sched-versus .sched-face { width: 64px; height: 64px; font-size: 18px; }
.sched-pill { background: #E8F1FF; color: #2563EB; border-radius: 999px; padding: 4px 10px; font-size: 12px; font-weight: 700; }
.sched-pill.is-played, .sched-pill.is-live { background: #DCFCE7; color: #166534; }
.sched-pill.is-paused, .ms-status.is-paused { background: #FEF3C7; color: #B45309; }
.pause-note { margin: 8px 0 0; color: #B45309; font-size: 13px; font-weight: 700; }
.sched-detail { background: #fff; border-radius: 16px; padding: 16px; position: sticky; top: 16px; }
.sched-detail header { display: flex; justify-content: space-between; align-items: center; background: #E7F6EE; border-radius: 12px; padding: 12px; }
.sched-detail header button { font-size: 22px; }
.sched-versus { justify-content: space-between; margin: 16px 0; }
.sched-meta { list-style: none; padding: 0; margin: 0 0 12px; display: grid; gap: 6px; color: #334155; }
.sched-cal { display: block; text-align: center; border: 1px solid #CBD5E1; border-radius: 12px; padding: 10px; text-decoration: none; color: #0f172a; font-weight: 600; }
.sched-detail h3 { margin: 16px 0 8px; }
.sched-detail dl { margin: 0; }
.sched-detail dl div { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-top: 1px solid #E2E8F0; }
.sched-detail dt { color: #64748b; }
.sched-detail dd { margin: 0; font-weight: 600; text-align: right; }
.ev-mobile { display: none; }
.ev-crumb { color: #64748b; font-size: 13px; margin: 0 0 12px; }
.ev-crumb button { border: 0; background: transparent; color: #64748b; font: inherit; padding: 0; }
.ev-hero { display: grid; grid-template-columns: minmax(280px, 42%) 1fr; gap: 20px; background: #fff; border-radius: 18px; padding: 16px; align-items: center; }
.ev-hero img, .ev-hero > div:first-child { width: 100%; height: 168px; object-fit: cover; border-radius: 14px; background: #0f172a; }
.ev-title-row { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.ev-hero h1 { margin: 0; font-size: 28px; color: #0f172a; flex: 1; }
.ev-hero p { display: flex; align-items: center; gap: 8px; margin: 4px 0; color: #334155; font-size: 14px; }
.ev-follow, .ev-share, .ev-follow-all { height: 34px; border-radius: 999px; padding: 0 14px; font-weight: 700; font-size: 13px; }
.ev-follow, .ev-share, .ev-follow-all { border: 1px solid #CBD5E1; background: #fff; color: #0f172a; }
.ev-follow.is-on { border: 0; background: #C6F34D; color: #14532d; }
.ev-tabs { display: flex; gap: 28px; overflow: auto; scrollbar-width: none; border-bottom: 1px solid #E2E8F0; margin: 18px 0 16px; }
.ev-tabs::-webkit-scrollbar { display: none; }
.ev-tabs button { border: 0; background: transparent; color: #64748b; font-weight: 600; font-size: 16px; padding: 12px 2px; white-space: nowrap; }
.ev-tabs button.is-on { color: #0f172a; box-shadow: inset 0 -3px 0 #C6F34D; }
.ev-head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.ev-title { margin: 0; font-size: 20px; color: #0f172a; }
.ev-sub { margin: 4px 0 12px; color: #64748b; font-size: 14px; }
.ev-chips { display: flex; gap: 8px; overflow: auto; scrollbar-width: none; margin-bottom: 14px; }
.ev-chips::-webkit-scrollbar { display: none; }
.ev-chips button { height: 32px; border-radius: 999px; border: 1px solid #E2E8F0; background: #fff; padding: 0 12px; font-weight: 600; color: #334155; white-space: nowrap; flex: none; }
.ev-chips .is-on { background: #0f172a; color: #fff; border-color: #0f172a; }
.ev-sport { background: #fff; border-radius: 16px; padding: 4px 14px 10px; margin-bottom: 12px; }
.ev-sport summary { display: flex; justify-content: space-between; align-items: center; padding: 10px 0; cursor: pointer; list-style: none; }
.ev-sport summary::-webkit-details-marker { display: none; }
.ev-sport summary span { display: flex; align-items: center; gap: 10px; color: #0f172a; }
.ev-sport summary em { color: #64748b; font-style: normal; font-size: 13px; }
.ev-sport summary img { width: 44px; height: 44px; object-fit: contain; }
.ev-sport summary::after { content: ""; width: 8px; height: 8px; margin-left: 8px; border-right: 2px solid #94a3b8; border-bottom: 2px solid #94a3b8; transform: rotate(45deg); }
.ev-sport[open] summary::after { transform: rotate(225deg); margin-top: 4px; }
.cat-list { display: grid; gap: 8px; padding-bottom: 6px; }
.cat-card { background: #fff; border: 1px solid #E8EEF5; border-radius: 12px; padding: 10px 12px; display: grid; gap: 4px; }
.cat-card.is-on { border-color: #84CC16; background: #F7FEE7; }
.cat-top, .cat-meta { display: flex; justify-content: space-between; gap: 8px; align-items: center; }
.cat-card h3 { margin: 0; font-size: 14px; font-weight: 650; color: #0f172a; }
.cat-flag { height: 22px; padding: 0 8px; border-radius: 999px; border: 1px solid #E2E8F0; background: #fff; font-size: 11px; font-weight: 600; flex: none; color: #475569; }
.cat-flag.is-follow, .cat-flag:disabled { background: #E7F6EE; color: #166534; border-color: transparent; }
.cat-meta span { color: #94a3b8; font-size: 12px; }
.cat-meta b { margin-left: auto; color: #16a34a; font-size: 14px; font-weight: 700; }
.cat-go { justify-self: end; margin-top: 6px; height: 32px; padding: 0 16px; border: 0; border-radius: 999px; background: #0B4050; color: #fff; font-size: 13px; font-weight: 700; }
body.is-player .primary-nav { display: none; }
.ev-row { display: grid; grid-template-columns: 36px minmax(160px, 1fr) 150px 150px auto auto; column-gap: 16px; align-items: center; padding: 14px 8px; border-top: 1px solid #EEF2F6; }
.ev-row strong { color: #0f172a; font-size: 15px; }
.ev-col { color: #64748b; font-size: 14px; }
.ev-row .ev-follow { height: 32px; }
.ms-title { margin: 0 0 12px; font-size: 20px; color: #0f172a; }
.ms-filters { display: grid; grid-template-columns: 1fr 1fr 1fr 1.4fr; gap: 10px; margin-bottom: 12px; }
.ms-filters select, .ms-filters input { height: 42px; border: 1px solid #E2E8F0; border-radius: 12px; background: #fff; padding: 0 12px; font: inherit; font-size: 14px; color: #0f172a; }
.ms-days { display: flex; gap: 8px; overflow: auto; scrollbar-width: none; margin-bottom: 8px; }
.ms-days::-webkit-scrollbar { display: none; }
.ms-days button { border: 0; background: #fff; border-radius: 12px; padding: 8px 12px; color: #334155; font-weight: 600; font-size: 13px; white-space: nowrap; }
.ms-days button strong, .ms-days button em { display: none; }
.ms-days .is-on { background: #0f172a; color: #fff; }
.ms-pills { display: flex; gap: 16px; margin: 8px 0 14px; }
.ms-pills button { border: 0; background: transparent; color: #64748b; font-weight: 700; font-size: 15px; padding: 6px 0; }
.ms-pills .is-on { color: #0f172a; box-shadow: inset 0 -2px 0 #0f172a; }
.ms-dayhead { margin: 16px 0 8px; font-size: 13px; letter-spacing: 0.04em; color: #64748b; }
.sk, .rk { display: block; width: 100%; text-align: left; background: #fff; border: 0; border-radius: 16px; padding: 14px; margin-bottom: 10px; }
.sk-when, .sk-meta, .sk-players { margin: 4px 0; color: #0f172a; }
.sk-when { font-weight: 700; }
.sk-meta { display: flex; align-items: center; gap: 8px; color: #334155; }
.sk-meta img { width: 22px; height: 22px; object-fit: contain; }
.sk-players { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.sk-players em { color: #94a3b8; font-style: normal; }
.rk-line { display: flex; justify-content: space-between; gap: 12px; margin: 6px 0; }
.rk-line span { font-weight: 700; letter-spacing: 0.04em; }
.rk-winner { margin: 8px 0; font-weight: 700; color: #166534; }
.rs-bar { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; }
.rs-switch { display: flex; gap: 8px; background: #F1F5F9; border-radius: 12px; padding: 4px; }
.rs-switch button { border: 0; background: transparent; border-radius: 10px; padding: 8px 14px; font-weight: 700; color: #64748b; }
.rs-switch .is-on { background: #0f172a; color: #fff; }
.rs-filters { display: flex; gap: 8px; flex-wrap: wrap; }
.rs-filters select, .rs-filters input { height: 40px; border: 1px solid #E2E8F0; border-radius: 12px; background: #fff; padding: 0 10px; font: inherit; }
.rs-days { display: none; }
.rs-split { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr); gap: 16px; align-items: start; }
.rs-phone { display: none; }
.dash-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 12px; }
.dash-stats div { background: #fff; border-radius: 14px; padding: 14px 10px; text-align: center; }
.dash-stats i { width: 36px; height: 36px; margin: 0 auto 8px; border-radius: 12px; display: grid; place-items: center; font-style: normal; }
.dash-stats svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.dash-stats .is-played i { background: #E7F4F8; color: #0B4050; }
.dash-stats .is-won i { background: #E7F6EE; color: #16A34A; }
.dash-stats .is-next i { background: #F3EEFF; color: #7C5CFC; }
.dash-stats strong { display: block; font-size: 22px; line-height: 1.1; color: #0f172a; }
.dash-stats span { color: #64748b; font-size: 12px; }
.dash { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: start; }
.player-block { background: #fff; border-radius: 16px; padding: 12px 14px 8px; }
.dash-row { width: 100%; display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 10px; align-items: center; border: 0; border-top: 1px solid #EEF2F6; background: transparent; padding: 10px 0; text-align: left; font: inherit; color: #0f172a; }
.dash-row time { display: grid; }
.dash-row time strong { font-size: 13px; }
.dash-row time span, .dash-row small { color: #94a3b8; font-size: 11px; }
.dash-row b { display: block; font-size: 13px; }
.dash-row em { display: block; font-style: normal; font-size: 13px; color: #334155; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dash-row .ms-status { padding: 3px 8px; font-size: 11px; }
.player-block header button { border: 0; background: #fff; border-radius: 999px; padding: 6px 12px; font-size: 13px; font-weight: 700; box-shadow: inset 0 0 0 1px #E2E8F0; }
.fixture-cards { display: grid; gap: 8px; max-width: 520px; }
.fixture-cards .ms-row { gap: 8px; padding: 10px 12px; }
.fixture-cards .ms-body { grid-template-columns: 88px minmax(0, 1fr) 12px; }
.fixture-cards .ms-sport img { width: 18px; height: 18px; padding: 6px; }
.fixture-cards .ms-sport strong { font-size: 15px; }
.fixture-cards .ms-sport em { white-space: nowrap; font-size: 12px; }
.fixture-cards .ms-status { padding: 4px 8px; font-size: 12px; }
.fixture-cards .ms-player { flex: 0 1 72px; width: 72px; gap: 4px; }
.fixture-cards .ms-player b { word-break: normal; overflow-wrap: normal; font-size: 12px; }
.fixture-cards .ms-player .sched-face { width: 36px; height: 36px; }
.fixture-cards .ms-vs > i { width: 26px; height: 26px; margin-top: 4px; font-size: 10px; }
.fixture-cards .ms-score { display: grid; gap: 0; margin: 4px 0 0; padding: 0; border: 0; font-size: 12px; font-variant-numeric: tabular-nums; letter-spacing: 0; line-height: 1.25; white-space: nowrap; }
.fixture-cards .ms-row time { gap: 0; }
.fixture-cards .ms-row time strong { font-size: 15px; }
.fixture-cards .ms-row time span { font-size: 11px; }
.fixture-cards .ms-won { padding: 4px 8px; font-size: 13px; border-radius: 8px; }
.rs-day { display: flex; justify-content: space-between; margin: 14px 0 8px; color: #0f172a; font-size: 14px; }
.rs-day em { color: #94a3b8; font-style: normal; font-weight: 500; }
.rs-row, .rs-card { width: 100%; display: grid; align-items: center; gap: 10px; text-align: left; background: #fff; border: 0; border-bottom: 1px solid #EEF2F6; padding: 12px 4px; font: inherit; color: #0f172a; }
.rs-desk { display: grid; gap: 8px; }
.rs-row { grid-template-columns: 52px minmax(0, 1.4fr) 36px minmax(0, 1.4fr) minmax(80px, 1fr) minmax(90px, 1fr) minmax(90px, 1fr) auto; background: #fff; border: 1px solid #E2E8F0; border-radius: 14px; padding: 12px 14px; margin-bottom: 8px; }
.rs-row .ms-status, .rs-card .ms-status { justify-self: end; padding: 3px 8px; font-size: 12px; font-style: normal; }
.rs-row .rs-id { font-weight: 700; color: #334155; }
.rs-row .rs-id.is-done { color: #16a34a; }
.rs-row > i { text-align: center; color: #94a3b8; font-style: normal; }
.rs-side.is-won b { color: #16a34a; }
.rs-score { grid-column: 2; color: #64748b; font-size: 13px; font-weight: 700; padding-left: 36px; }
.rs-score.is-won { color: #16a34a; }
.rs-row .rs-score:nth-of-type(2) { grid-column: 4; }
.bracket-scroll { overflow: auto; max-width: 100%; }
.bracket-board { position: relative; min-height: 160px; }
.bracket-board svg { position: absolute; left: 0; top: 0; max-width: none; width: auto; height: auto; }
.bracket-board path { fill: none; stroke: #94a3b8; stroke-width: 1.5; }
.bracket-board h3 { position: absolute; top: 0; margin: 0; color: #64748b; font-size: 13px; }
.bracket-board .bracket-match { position: absolute; margin: 0; height: 100px; box-sizing: border-box; }
.bracket-board .sk-meta { display: flex; justify-content: space-between; align-items: center; }
.bracket-board .ms-status { padding: 2px 8px; font-size: 11px; }
.bracket-board .is-winner { color: #16a34a; font-weight: 700; background: transparent; }
.bracket-board .is-winner span { color: #16a34a; }
.rs-row time, .rs-id { display: grid; }
.rs-row time span, .rs-id em { color: #94a3b8; font-size: 12px; font-style: normal; }
.rs-id b { color: #7c3aed; font-size: 12px; }
.rs-side, .rs-card p { display: flex; align-items: center; gap: 6px; min-width: 0; }
.rs-side b, .rs-card b { font-size: 14px; }
.rs-side .sched-face, .rs-card .sched-face { width: 28px; height: 28px; }
.rs-side s, .rs-card s, .rs-faces s { display: inline-block; width: 14px; height: 14px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2316a34a'%3E%3Cpath d='M7 4h10v2a5 5 0 0 1-3.2 4.7A5 5 0 0 1 12 16a5 5 0 0 1-1.8-5.3A5 5 0 0 1 7 6V4zm-2 1h2v1a7 7 0 0 0 2.2 5.1A3 3 0 0 1 5 8V5zm14 0h2v3a3 3 0 0 1-4.2 2.1A7 7 0 0 0 17 6V5zM9 18h6v2H9v-2zm-1 3h8v2H8v-2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.rs-sets { display: grid; justify-items: center; font-weight: 700; font-size: 13px; letter-spacing: 0.04em; }
.rs-row .ms-status { padding: 4px 8px; font-size: 12px; }
.rs-row .ms-status.is-done, .rs-card .ms-status.is-done { background: #E7F8EE; color: #16a34a; }
.rs-board { background: #fff; border-radius: 16px; padding: 12px; }
.rs-board h3 { margin: 0 0 8px; font-size: 15px; }
.rs-card { grid-template-columns: 1fr auto; border-radius: 16px; border: 0; margin-bottom: 10px; padding: 12px; }
.rs-card header { display: flex; justify-content: space-between; grid-column: 1 / -1; color: #64748b; font-size: 12px; }
.rs-card header b { color: #7c3aed; }
.rs-card p { grid-column: 1; margin: 4px 0; }
.rs-card p span { margin-left: auto; font-weight: 700; letter-spacing: 0.04em; }
.rs-card .ms-status { grid-column: 2; grid-row: 2 / span 2; }
.rs-faces { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.rs-faces .sched-face { width: 56px; height: 56px; }
.rs-games { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: 14px; }
.rs-games th, .rs-games td { padding: 8px; text-align: center; }
.rs-games td:first-child, .rs-games th:first-child { text-align: left; }
.sk-detail { position: fixed; left: 16px; right: 16px; bottom: 80px; background: #fff; border-radius: 16px; padding: 16px; box-shadow: 0 16px 40px rgba(15,23,42,.18); z-index: 30; }
.sk-detail button { border: 0; background: transparent; font-size: 22px; float: right; }
.ms-list { display: grid; gap: 12px; background: transparent; min-width: 0; }
.ms-cards { display: grid; gap: 12px; min-width: 0; }
.ms-table { display: none; }
.ms-row { width: 100%; max-width: 100%; box-sizing: border-box; display: grid; gap: 12px; text-align: left; background: #fff; border: 0; border-radius: 22px; padding: 16px; box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05); font: inherit; }
.ms-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ms-body { display: grid; grid-template-columns: 84px minmax(0, 1fr); align-items: start; gap: 8px; width: 100%; min-width: 0; }
.ms-sport { display: flex; align-items: center; gap: 10px; min-width: 0; }
.ms-sport img { width: 28px; height: 28px; object-fit: contain; padding: 8px; border-radius: 50%; background: #E8F7F1; box-sizing: content-box; }
.ms-sport strong { display: block; color: #0f172a; font-size: 18px; font-weight: 700; }
.ms-sport em { display: block; color: #94a3b8; font-style: normal; font-size: 13px; font-weight: 500; }
.ms-mid { display: grid; justify-items: center; gap: 4px; text-align: center; }
.ms-mid span { display: flex; align-items: center; gap: 10px; color: #64748b; font-size: 13px; }
.ms-mid i { font-style: normal; background: #F1F5F9; border-radius: 999px; padding: 4px 10px; font-weight: 600; }
.ms-mid b { font-weight: 600; }
.ms-mid b::before { content: ""; width: 1px; height: 14px; background: #CBD5E1; margin-right: 10px; display: inline-block; vertical-align: -2px; }
.ms-mid em { color: #94a3b8; font-style: normal; font-size: 13px; }
.ms-row time { display: grid; gap: 1px; align-self: start; min-width: 0; padding-right: 10px; border-right: 1px solid #E2E8F0; }
.ms-row time span { color: #94a3b8; font-size: 12px; }
.ms-row time strong { color: #0f172a; font-size: 16px; font-weight: 800; letter-spacing: -0.02em; }
.ms-court { display: flex; align-items: center; gap: 4px; }
.ms-court::before { content: ""; width: 12px; height: 12px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath d='M12 21s7-6.2 7-11a7 7 0 1 0-14 0c0 4.8 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.ms-vs { display: flex; align-items: flex-start; justify-content: center; gap: 8px; min-width: 0; margin: 0; }
.ms-player { display: grid; justify-items: center; gap: 6px; min-width: 0; flex: 1; }
.ms-player .sched-face { width: 48px; height: 48px; flex: none; }
.ms-player b { color: #0f172a; font-size: 13px; font-weight: 700; text-align: center; line-height: 1.2; max-width: 100%; overflow: visible; white-space: normal; word-break: break-word; }
.ms-vs > i { width: 32px; height: 32px; margin-top: 8px; border-radius: 50%; border: 1px solid #E2E8F0; display: grid; place-items: center; color: #94a3b8; font-style: normal; font-size: 11px; font-weight: 700; flex: none; }
.ms-score { display: grid; gap: 2px; margin-top: 10px; padding: 4px 0; border-top: 1px solid #E2E8F0; color: #334155; font-size: 13px; font-weight: 700; text-align: center; line-height: 1.35; }
.ms-won { display: flex; align-items: center; justify-content: center; gap: 6px; background: #E7F8EE; color: #16a34a; border-radius: 12px; padding: 8px 12px; font-weight: 700; }
.ms-won::before { content: ""; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2316a34a'%3E%3Cpath d='M7 4h10v2a5 5 0 0 1-3.2 4.7A5 5 0 0 1 12 16a5 5 0 0 1-1.8-5.3A5 5 0 0 1 7 6V4zm-2 1h2v1a7 7 0 0 0 2.2 5.1A3 3 0 0 1 5 8V5zm14 0h2v3a3 3 0 0 1-4.2 2.1A7 7 0 0 0 17 6V5zM9 18h6v2H9v-2zm-1 3h8v2H8v-2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ms-go { color: #0f172a; font-size: 22px; line-height: 1; font-weight: 500; justify-self: end; }
.ms-pills { display: none; }
.ms-status { border-radius: 999px; padding: 8px 14px; font-size: 14px; font-weight: 700; }
.ms-status.is-live { background: #DCFCE7; color: #166534; }
.ms-status.is-soon { background: #E8F1FF; color: #2563eb; }
.ms-row .ms-status.is-done { background: #E7F8EE; color: #16a34a; }
.ms-row .ms-status.is-done::before { content: "✓ "; }
.ms-group { display: flex; align-items: center; gap: 8px; margin: 18px 4px 8px; color: #0f172a; font-size: 16px; }
.ms-group img { width: 44px; height: 44px; object-fit: contain; }
.ms-group em { color: #64748b; font-style: normal; font-weight: 500; font-size: 14px; }
.ms-thead, .ms-line { display: grid; grid-template-columns: 120px 72px 140px minmax(360px, 1fr) 120px 130px; column-gap: 20px; align-items: center; width: 100%; }
.ms-thead > span, .ms-line > span { min-width: 0; }
.ms-c-play { overflow: hidden; justify-content: flex-start; }
.ms-c-play > i, .ms-c-play > .ms-score { flex: none; }
.ms-who { flex: 0 1 auto; min-width: 0; max-width: 100%; overflow: hidden; }
.ms-c-stage { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.ms-c-stage b { color: #64748b; font-size: 12px; font-weight: 600; }
.ms-who b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ms-thead { color: #94a3b8; font-size: 12px; font-weight: 600; padding: 4px 12px 8px; }
.ms-line { width: 100%; border: 0; border-bottom: 1px solid #EEF2F6; background: #fff; padding: 12px; text-align: left; font: inherit; color: #0f172a; }
.ms-table { background: #fff; border-radius: 16px; overflow: auto; }
.ms-c-when strong { display: block; font-size: 14px; }
.ms-c-when em, .ms-c-cat em { display: block; color: #94a3b8; font-style: normal; font-size: 12px; }
.ms-c-sport, .ms-who, .ms-c-play { display: flex; align-items: center; gap: 8px; min-width: 0; }
.ms-c-sport img { width: 22px; height: 22px; object-fit: contain; }
.ms-c-cat b { font-weight: 600; font-size: 14px; }
.ms-stage { display: inline-block; border-radius: 999px; padding: 4px 8px; font-style: normal; font-size: 12px; font-weight: 600; }
.ms-stage.is-final { background: #F3E8FF; color: #7c3aed; }
.ms-stage.is-semi { background: #E0E7FF; color: #4338ca; }
.ms-stage.is-group { background: #DCFCE7; color: #166534; }
.ms-who .sched-face { width: 28px; height: 28px; }
.ms-who b { font-size: 13px; font-weight: 600; }
.ms-who s { display: inline-block; width: 14px; height: 14px; margin-left: 4px; vertical-align: -2px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2316a34a'%3E%3Cpath d='M7 4h10v2a5 5 0 0 1-3.2 4.7A5 5 0 0 1 12 16a5 5 0 0 1-1.8-5.3A5 5 0 0 1 7 6V4zm-2 1h2v1a7 7 0 0 0 2.2 5.1A3 3 0 0 1 5 8V5zm14 0h2v3a3 3 0 0 1-4.2 2.1A7 7 0 0 0 17 6V5zM9 18h6v2H9v-2zm-1 3h8v2H8v-2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.ms-line .ms-score { margin: 0; padding: 0; border: 0; font-size: 12px; }
.ms-thead > span:last-child, .ms-c-status { display: flex; justify-content: center; }
.ms-line .ms-status { display: inline-flex; align-items: center; justify-content: center; gap: 4px; width: auto; flex: none; padding: 3px 8px; font-size: 12px; line-height: 1.2; text-align: center; }
.ms-line .ms-status i { font-style: normal; }
.ms-line .ms-status.is-done { background: transparent; color: #16a34a; }
.ms-line .ms-status.is-done::before { content: "✓"; }
.ms-line .ms-status.is-live { background: #fff; color: #dc2626; box-shadow: inset 0 0 0 1px #fecaca; }
.ms-line .ms-status.is-live::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #dc2626; }
.ms-line .ms-status.is-soon { background: #E8F1FF; color: #2563eb; }
.discover-title { margin: 0 0 12px; font-size: 18px; font-weight: 650; color: #0B4050; }
.book-card { width: 100%; border: 0; text-align: left; font: inherit; cursor: pointer; }
.stat-line { display: grid; gap: 2px; margin: 0; padding: 8px 0; border-top: 1px solid #EEF2F6; font-size: 13px; }
.stat-line em { font-style: normal; color: #b91c1c; }
.stat-line em.is-won { color: #16a34a; }
@media (min-width: 801px) {
  .ms-title, .ms-pills, .ms-cards, .ms-list .fixture-cards { display: none; }
  .ms-table { display: block; }
  .ms-topbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
  .ms-days { margin: 0; flex: 1; }
  .ms-days button span { display: inline; }
  .ms-day-select, .ms-status-select { display: block; }
  .ms-filters { display: flex; justify-content: flex-end; flex-wrap: wrap; }
  .ms-filters select, .ms-filters input { width: 160px; }
}
.player-dock { display: none; }
.player-empty { color: #64748b; }
@media (max-width: 800px) {
  .player-login { display: flex; flex-direction: column; min-height: calc(100vh - 76px); background: #fff; }
  .login-panel { order: 1; max-width: none; margin: 0; padding: 16px 20px 8px; background: #fff; border-radius: 0; }
  .login-art { display: block; order: 2; flex: 1; min-height: 240px; background: #e7f3ef url("../assets/player/login-bg-mobile.jpg") center bottom / cover no-repeat; }
  body.is-player .nav-toggle { display: none; }
  .login-panel h1 { font-size: 20px; }
  body.is-player .site-header__actions { display: flex; align-items: center; }
  body.is-player .tn-login, body.is-player #player-login-link { display: none !important; }
  .player-home { grid-template-columns: minmax(0, 1fr); padding-left: 16px; padding-right: 16px; }
  .discover-grid { grid-template-columns: minmax(0, 1fr); }
  .discover-search input, .discover-filters, .mock-card__media { min-width: 0; max-width: 100%; }
  .discover-filters { overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; margin-bottom: 12px; }
  .discover-filters::-webkit-scrollbar { display: none; }
  .discover-filters button { height: 28px; line-height: 28px; padding: 0 10px; font-size: 12px; }
  .ev-row .ev-follow { height: 26px; padding: 0 8px; font-size: 11px; font-weight: 600; }
  .pick-bar { position: sticky; bottom: 76px; }
  .pay-card label, .reg-note { font-size: 12px; font-weight: 500; }
  .pay-card input { height: 36px; font-size: 14px; }
  .ev-crumb, .ev-hero { display: none; }
  .ev-mobile { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
  .ev-mobile button[data-back] { border: 0; background: transparent; font-size: 28px; line-height: 1; padding: 0 4px; color: #0f172a; }
  .ev-mobile strong { flex: 1; font-size: 18px; color: #0f172a; }
  .ev-head { display: block; }
  .ev-follow-all { display: none; }
  .ev-tabs { gap: 18px; }
  .ev-tabs button { font-size: 15px; padding: 12px 2px; }
  .ms-title, .ms-day-select, .ms-status-select, .ms-days button span, .ms-table { display: none; }
  .ms-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
  .ms-filters { display: contents; margin: 0; }
  .ms-filters select, .ms-filters input { height: 36px; font-size: 13px; }
  .ms-filters input { grid-column: 1 / -1; width: 100%; min-width: 0; }
  .ms-pills { grid-column: 2; margin: 0; align-items: center; justify-content: flex-end; gap: 10px; }
  .ms-pills button { font-size: 13px; padding: 0; }
  .ms-days button { display: grid; justify-items: center; min-width: 52px; padding: 8px 6px; }
  .ms-days button strong, .ms-days button em { display: block; font-style: normal; }
  .ms-days button strong { font-size: 16px; }
  .ms-days button em { font-size: 11px; }
  .ms-pills { display: flex; }
  .ms-cards { display: grid; }
  .rs-bar { display: grid; gap: 8px; }
  .rs-filters select[data-ms="resultStatus"], .rs-filters input { display: none; }
  .rs-days { display: flex; gap: 8px; overflow: auto; margin-bottom: 10px; }
  .rs-days button { border: 0; background: #fff; border-radius: 12px; padding: 8px; min-width: 64px; }
  .rs-days .is-on { background: #0f172a; color: #fff; }
  .rs-days button span { display: none; }
  .rs-days strong, .rs-days em { display: block; font-style: normal; text-align: center; }
  .player-home .rs-phone { display: block; }
  .rs-desk { display: none; }
  .rs-phone { display: block; }
  .rs-card { display: grid; justify-items: start; gap: 4px; }
  .rs-card > b { color: #0f3d4c; }
  .rs-card i { color: #94a3b8; font-style: normal; padding-left: 36px; }
  .rs-card em { color: #16a34a; font-style: normal; font-weight: 700; padding-left: 36px; }
  .rs-card > span { color: #64748b; font-size: 13px; }
  .rs-fold h3 { margin: 12px 0 8px; font-size: 16px; }
  .ms-row { padding: 14px; }
  .ms-sport strong { font-size: 16px; }
  .ms-row time strong { font-size: 18px; }
  .ms-body { grid-template-columns: 78px minmax(0, 1fr); align-items: start; }
  .ms-row time { align-self: start; margin-top: 0; }
  .ms-row time strong { font-size: 15px; }
  .ms-go { display: none; }
  .ev-row { grid-template-columns: 28px minmax(0, 1fr) auto auto; column-gap: 10px; padding: 12px 0; }
  .ev-col { display: none; }
  .player-side, .player-links { display: none; }
  .player-hero, .player-cards, .player-split, .dash { grid-template-columns: 1fr; }
  .player-dock {
    display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 20;
    background: #fff; justify-content: space-around; padding: 10px 8px;
    box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.12);
  }
  .player-home { font-size: 16px; }
  .player-hero h1 { font-size: 26px; line-height: 1.2; }
  .player-hero p, .player-card p, .player-match p { font-size: 16px; }
  .player-card h2, .player-block h2 { font-size: 20px; }
  .player-tabs button { font-size: 15px; padding: 10px 14px; }
  .player-status { font-size: 13px; }
  .player-dock {
    height: 64px; padding: 6px 4px calc(6px + env(safe-area-inset-bottom));
    align-items: stretch;
  }
  .player-dock a, .player-dock button {
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
    flex: 1; color: #64748b; text-decoration: none; font-size: 11px; font-weight: 600; text-align: center;
  }
  .player-dock svg { width: 24px; height: 24px; }
  .player-dock .is-on { color: #16a34a; font-weight: 700; }
  .sched-filters { grid-template-columns: 1fr; }
  .sched-filters select[data-filter="stage"], .sched-filters select[data-filter="day"] { display: none; }
  .sched-days { display: flex; gap: 8px; overflow: auto; margin-bottom: 12px; }
  .sched-days button { border: 0; background: #fff; border-radius: 12px; padding: 8px 10px; min-width: 64px; }
  .sched-days button.is-on { background: #0f172a; color: #fff; }
  .sched-days span { display: block; font-size: 12px; }
  .sched-body { grid-template-columns: 1fr; }
  .sched-detail { display: none; }
  .sched.is-open .sched-list, .sched.is-open .sched-filters, .sched.is-open .sched-days { display: none; }
  .sched.is-open .sched-detail { display: block; position: static; }
}
