/*
 * Stadium Ledger - custom odds-table presentation for Keobongvip.
 * Version 1.1.0. Design is original CSS/PHP; upstream React odds logic untouched.
 * All rules scoped to .kbv-stadium-ledger to avoid impacting other WP widgets.
 */
.kbv-stadium-ledger {
  --kbv-ink:#122232; --kbv-deep:#0c1928; --kbv-paper:#f5f4f0;
  --kbv-card:#fffefb; --kbv-coral:#ed654b; --kbv-melon:#ffdbba;
  --kbv-mist:#e5e8e4; --kbv-muted:#65717a; --kbv-olive:#dff0b3;
  --kbv-border:#dce1db; --kbv-white:#fff; --kbv-score:#233c4b;
  isolation:isolate;
  max-width:1600px; width:100%; margin:20px auto 30px;
  border:1px solid #d5dfd8; border-radius:24px;
  box-shadow:0 24px 60px rgba(13,30,35,.08),0 3px 10px rgba(13,30,35,.04);
  background:var(--kbv-paper); overflow:hidden; color:var(--kbv-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  line-height:1.5; box-sizing:border-box;
}
.kbv-stadium-ledger *, .kbv-stadium-ledger *::before,.kbv-stadium-ledger *::after {box-sizing:border-box}
.kbv-sl-hero {background:linear-gradient(119deg,#0e1e2f 0%,#183247 57%,#173e48 100%);color:#f9faf7;padding:22px 30px 32px;position:relative;overflow:hidden}
.kbv-sl-hero::before {content:'';position:absolute;right:28%;top:-170px;width:400px;height:400px;border-radius:50%;border:1px solid rgba(255,255,255,.10);box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.018);pointer-events:none}
.kbv-sl-hero::after {content:'';position:absolute;inset:auto -55px -180px auto;width:370px;height:370px;border-radius:50%;background:radial-gradient(circle,rgba(255,164,121,.24),transparent 67%);pointer-events:none}
.kbv-sl-hero__top,.kbv-sl-hero__bottom,.kbv-sl-workspace__heading {display:flex;justify-content:space-between;align-items:center;gap:16px;position:relative;z-index:1}
.kbv-sl-hero__top {padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.14)}
.kbv-sl-brand {display:flex;align-items:center;gap:11px;color:#ecf7f1;font-size:11px;letter-spacing:.16em;font-weight:800;white-space:normal}
.kbv-sl-brand b {color:var(--kbv-coral);font-weight:900;padding:0 4px}
.kbv-sl-monogram {display:grid;place-items:center;background:#f8f5eb;color:#193442;border-radius:13px;font-size:19px;letter-spacing:-.07em;min-width:41px;height:41px;font-weight:900}
.kbv-sl-monogram span{color:var(--kbv-coral)}
.kbv-sl-clock {display:flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:8px 13px;font-size:10px;letter-spacing:.1em;font-weight:700;color:#dcebe6;white-space:nowrap}
.kbv-sl-clock__dot {width:6px;height:6px;border-radius:50%;background:#b8ea9e;box-shadow:0 0 0 4px rgba(184,234,158,.14)}
.kbv-sl-hero__bottom {align-items:end;padding-top:28px;gap:24px}
.kbv-sl-overline {margin:0 0 10px!important;color:#bde1cd;letter-spacing:.19em;font-size:10px!important;font-weight:800}
.kbv-sl-overline span {color:#ff9578;margin:0 7px}
.kbv-sl-hero h2 {margin:0!important;color:white!important;letter-spacing:-.045em!important;line-height:1.12!important;font-size:clamp(28px,3.5vw,43px)!important;font-weight:850!important}
.kbv-sl-title-mark{color:var(--kbv-coral)}
.kbv-sl-lead {margin:12px 0 0!important;color:#b9c9cd;font-weight:450;font-size:13px!important;max-width:680px}
.kbv-sl-hero__deco {display:grid;grid-template-columns:auto auto;gap:6px;align-items:center;flex:none;opacity:.78}
.kbv-sl-hero__deco span:first-child {grid-row:span 2;font-size:69px;font-weight:850;line-height:1;letter-spacing:-.11em;color:#f9ead5;margin-right:10px}
.kbv-sl-hero__deco span:not(:first-child){font-size:12px;letter-spacing:.13em;font-weight:800;color:#afcbc3;white-space:nowrap}
.kbv-sl-hero__deco b{color:var(--kbv-coral)}
.kbv-sl-workspace {padding:22px 24px 28px;background:var(--kbv-paper)}
.kbv-sl-workspace__heading {margin:0 0 13px;border-bottom:1px solid #dae0d9;padding:0 0 13px}
.kbv-sl-workspace__heading > div {display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.08em;color:#263b42}
.kbv-sl-section-index{color:var(--kbv-coral);font-weight:900;font-size:13px}
.kbv-sl-notation {color:#86938f;font-size:11px}
.kbv-sl-foot {background:#e8eae4;min-height:48px;padding:13px 26px;display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid #d5dfd8;color:#697b7c;font-size:11px}
.kbv-sl-foot span:first-child{font-size:10px;color:#445b56;font-weight:800;letter-spacing:.08em;white-space:nowrap}
.kbv-sl-foot i {display:inline-block;width:7px;height:7px;border-radius:50%;background:#82ac6e;margin-right:8px}
/* React app and controls — intentionally scoped */
.kbv-stadium-ledger .keobongvip-root {font-size:13px!important;color:var(--kbv-ink)!important;background:transparent!important;line-height:1.45;min-height:150px}
.kbv-stadium-ledger .keobongvip-root p {margin-block-end:0!important}
.kbv-stadium-ledger .header-fixture {border-radius:15px;background:#fffdf9!important;border:1px solid var(--kbv-border);padding:12px 14px!important;box-shadow:0 4px 14px rgba(23,44,49,.035);margin-bottom:18px}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) {gap:12px;flex-wrap:wrap}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child {display:flex;gap:4px;align-items:center;border:1px solid #e2e3dc;background:#f3f4ef!important;padding:4px;border-radius:13px;min-height:40px}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > div {border-radius:10px!important;padding:7px 12px!important;font-weight:750!important;font-size:12px!important;color:#39535a!important;transition:background .2s,color .2s,box-shadow .2s}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > div:hover {background:#e5e9e2!important}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > div.bg-button-blue-bet {background:var(--kbv-coral)!important;color:#fff!important;box-shadow:0 3px 9px rgba(237,101,75,.22)}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > div.bg-button-blue-bet span {color:#fff!important}
.kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > p {display:none!important}
.kbv-stadium-ledger .header-fixture button,.kbv-stadium-ledger .header-fixture input,.kbv-stadium-ledger .header-fixture select {font-family:inherit!important;border-radius:9px!important}
.kbv-stadium-ledger .header-fixture button:focus-visible,.kbv-stadium-ledger .header-fixture div[role='button']:focus-visible {outline:3px solid #fdba94!important;outline-offset:2px}
.kbv-stadium-ledger .header-fixture .bg-header-blue {background:#e9efeb!important}
.kbv-stadium-ledger .header-fixture .bg-button-blue-bet {background:var(--kbv-coral)!important}
.kbv-stadium-ledger .header-fixture .text-blue-match {color:var(--kbv-coral)!important}
.kbv-stadium-ledger .header-fixture .rounded-md {border-radius:10px!important}
.kbv-stadium-ledger .bangkeo {background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.kbv-stadium-ledger .bangkeo > .bg-header-odds-blue {background:var(--kbv-ink)!important;color:#d6e2e4!important;border-radius:10px!important;padding:11px 18px!important;min-height:42px;margin-bottom:8px;box-shadow:none!important}
.kbv-stadium-ledger .bangkeo > .bg-header-odds-blue .text-dark-gray,
.kbv-stadium-ledger .bangkeo > .bg-header-odds-blue .text-button-blue-bet {color:#e1e8e4!important;letter-spacing:.06em;font-weight:750!important}
.kbv-stadium-ledger .bangkeo-all-league {background:transparent!important;border-radius:0!important;margin-bottom:8px!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture {margin:9px 0 13px!important;height:auto!important;min-height:61px!important;background:var(--kbv-card)!important;border:1px solid #dee5de!important;border-radius:11px!important;box-shadow:0 2px 9px rgba(14,40,48,.055)!important;transition:border-color .2s,box-shadow .2s,transform .2s;position:relative}
.kbv-stadium-ledger .bangkeo-all-league-fixture:hover {border-color:#c9a89b!important;box-shadow:0 9px 22px rgba(14,40,48,.105)!important;transform:translateY(-1px)}
.kbv-stadium-ledger .bangkeo-all-league-fixture > div:first-child {height:auto!important;min-height:60px!important;width:4px!important;border-radius:11px 0 0 11px!important;background:var(--kbv-coral)!important;flex-shrink:0}
.kbv-stadium-ledger .bangkeo-all-league-fixture > div:nth-child(2) {min-height:60px!important;background:transparent!important;box-shadow:none!important;border-radius:10px!important;padding:7px 12px!important;gap:4px}
.kbv-stadium-ledger .bangkeo-all-league-fixture .bg-header-blue {background:#ebf0e9!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .bg-button-blue-bet {background:var(--kbv-score)!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .text-button-blue-bet {color:#243d49!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .text-blue-match {color:#d76347!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .text-medium-green {color:#267b61!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .text-vibrant-red {color:#df573f!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .font-bold {font-weight:750!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .text-xs {font-size:12px!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture a {text-decoration:none!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture a:hover {color:var(--kbv-coral)!important}
.kbv-stadium-ledger .bangkeo-all-league-fixture .rounded-full {border-radius:7px!important}
/* Mobile odds cards from lazy-loaded alternate component. */
.kbv-stadium-ledger .bangkeo-all-league .bg-vr-light-gray {background:#f0f1ec!important}
.kbv-stadium-ledger .bangkeo-all-league .bg-header-blue {background:#e9eee8!important}
.kbv-stadium-ledger .bangkeo-all-league .bg-white {background:#fffefa!important}
.kbv-stadium-ledger .bangkeo-all-league .border-sm-dark-gray {border-color:#d9dfd9!important}
.kbv-stadium-ledger .bangkeo-all-league .text-blue-match {color:#cb604e!important}
.kbv-stadium-ledger .bangkeo-all-league .bg-blue-match {background:#294a54!important}
.kbv-stadium-ledger .bangkeo-all-league .bg-button-blue-bet {background:#244654!important}
.kbv-stadium-ledger .bangkeo-all-league .rounded-lg {border-radius:11px!important}
.kbv-stadium-ledger .bangkeo-all-league .rounded-full {border-radius:8px!important}
.kbv-stadium-ledger .bangkeo-all-league .border-b-\[0\.063rem\] {border-color:#d9dfd9!important}
.kbv-stadium-ledger .bangkeo-all-league .bg-\[\#FFFFFF\] {background:#fff!important}
.kbv-stadium-ledger .keobongvip-root .bg-blue-match:not(.bangkeo-all-league *){background:var(--kbv-coral)!important}
/* Fair contrast even if original shortcode theme was dark. Do not override popup visibility classes. */
.kbv-stadium-ledger .keobongvip-root .text-dark-gray{color:#263f46!important}
.kbv-stadium-ledger .keobongvip-root .text-blur-gray{color:#73838a!important}
.kbv-stadium-ledger .keobongvip-root .bg-header-blue{background:#ebf0ea!important}
.kbv-stadium-ledger .keobongvip-root input[type='text'] {border:1px solid #d9e2dc!important;background:#fffefa!important;color:#243740!important;border-radius:9px!important;min-height:35px}
.kbv-stadium-ledger .keobongvip-root select {border-radius:9px!important}
.kbv-stadium-ledger .keobongvip-root button,.kbv-stadium-ledger .keobongvip-root [role='button'] {cursor:pointer}
.kbv-stadium-ledger .keobongvip-root :focus-visible {outline:2px solid #ed654b;outline-offset:2px}
@media(max-width:980px){
 .kbv-sl-hero {padding:20px 21px 27px}
 .kbv-sl-hero__deco {display:none}
 .kbv-sl-workspace{padding:17px 14px 24px}
 .kbv-stadium-ledger .header-fixture {padding:10px 12px!important}
 .kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child {max-width:100%;overflow-x:auto;white-space:nowrap}
 .kbv-sl-foot {flex-wrap:wrap}
}
@media(max-width:600px){
 .kbv-stadium-ledger {margin:12px auto 22px;border-radius:17px}
 .kbv-sl-hero {padding:16px 17px 23px}
 .kbv-sl-hero__top {gap:10px;padding-bottom:16px;align-items:flex-start}
 .kbv-sl-brand {font-size:9px;letter-spacing:.075em;gap:7px}
 .kbv-sl-monogram {min-width:34px;width:34px;height:34px;font-size:15px;border-radius:10px}
 .kbv-sl-clock {padding:7px 9px;font-size:9px;letter-spacing:0}
 .kbv-sl-hero__bottom {padding-top:22px}
 .kbv-sl-hero h2 {font-size:29px!important;letter-spacing:-.03em!important}
 .kbv-sl-lead {font-size:12px!important;line-height:1.65}
 .kbv-sl-workspace {padding:14px 9px 18px}
 .kbv-sl-workspace__heading {padding:0 5px 9px}
 .kbv-sl-workspace__heading>div {font-size:10px;gap:6px}
 .kbv-sl-notation {display:none}
 .kbv-stadium-ledger .header-fixture {margin:0 2px 13px!important}
 .kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child {min-width:0;width:100%;justify-content:flex-start;gap:1px}
 .kbv-stadium-ledger .header-fixture > div:nth-child(2) > div:first-child > div {font-size:11px!important;padding:8px 9px!important}
 .kbv-stadium-ledger .bangkeo-all-league {margin:8px 0!important;border:1px solid #dfe6dd;border-radius:13px!important;overflow:hidden}
 .kbv-sl-foot {padding:15px 17px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .kbv-stadium-ledger *, .kbv-stadium-ledger *::before,.kbv-stadium-ledger *::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}
