@font-face {
    font-family: Montserrat;
    font-style: normal;
    font-display: block;
    font-weight: 400;
    src: url('/fonts/vera/montserrat-latin-400-normal-BLhwKU8k.woff2') format('woff2');
}

@keyframes cassPromoGiftBgSpin {
    from {
        transform: rotate(0deg) scale(1.04);
    }

    to {
        transform: rotate(360deg) scale(1.04);
    }
}
@keyframes cass-entry-task-fast-pulse {
    0%,
    100% {
        transform: translateZ(0) scale(1);
        filter: drop-shadow(0 6px 10px rgba(255, 169, 3, .12));
    }

    48% {
        transform: translateZ(0) scale(1.085);
        filter: drop-shadow(0 10px 18px rgba(255, 169, 3, .42));
    }
}

@keyframes cass-live-dot-pulse {
    0%,
    100% {
        opacity: .55;
        box-shadow: 0 0 0 0 rgba(6, 224, 91, .28);
    }

    50% {
        opacity: 1;
        box-shadow: 0 0 0 5px rgba(6, 224, 91, 0);
    }
}
.sports-floating-ball:not(.has-ticket) {
    right: 28px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
}

.sports-floating-ticket-trigger {
    right: 116px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
    touch-action: none !important;
    cursor: grab !important;
}

.sports-floating-ticket-trigger.is-dragging {
    cursor: grabbing !important;
}

@media (max-width: 640px) {
    .sports-floating-ball:not(.has-ticket) {
        right: 16px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }

    .sports-floating-ticket-trigger {
        right: 96px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }
}

@media (min-width: 641px) {
    .sports-floating-ball:not(.has-ticket) {
        right: 28px !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
    }

    .sports-floating-ticket-trigger {
        right: 116px !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
    }
}

@media (max-width: 640px) {

    .sports-floating-ball:not(.has-ticket) {
        right: 16px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }

    .sports-floating-ticket-trigger {
        right: 96px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }

    .sports-floating-ticket-trigger .sports-floating-ball-label {
        min-width: 112px !important;
        max-width: 120px !important;
    }
}
@keyframes cass-toast-center-in {
    0% {
        opacity: 0;
        transform: translateY(12px) scale(.92);
        filter: blur(3px);
    }

    64% {
        opacity: 1;
        transform: translateY(-2px) scale(1.02);
        filter: blur(0);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes cass-toast-loader-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes cass-toast-check-pop {
    0%, 42% {
        opacity: 0;
        transform: scale(.4);
    }

    64% {
        opacity: 1;
        transform: scale(1.14);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}
@font-face {
    font-family: Montserrat;
    font-style: normal;
    font-display: block;
    font-weight: 600;
    src: url('/fonts/vera/montserrat-latin-600-normal-UVxSCcoG.woff2') format('woff2');
}
@font-face {
    font-family: Montserrat;
    font-style: normal;
    font-display: block;
    font-weight: 700;
    src: url('/fonts/vera/montserrat-latin-700-normal-BdjcYUrC.woff2') format('woff2');
}
@font-face {
    font-family: "Montserrat Fallback";
    src: local("Arial");
    size-adjust: 113.8%;
    ascent-override: 84%;
    descent-override: 22%;
    line-gap-override: 0%;
}

@theme {
    --font-sans: Montserrat, "Montserrat Fallback", ui-sans-serif, system-ui, sans-serif;
    --breakpoint-xs: 376px;
    --color-primary: #06e05b;
    --color-bg-primary: #001510;
    --color-bg-secondary: #003628;
    --color-texts: #ffffff;
    --color-titles: #ffffff;
    --color-sidebar-bg: #001510;
    --color-sidebar-button-bg: #003628;
    --color-sidebar-links: #ffffff;
    --color-sidebar-icon: #b5e2c8;
    --color-button-bg: #06e05b;
    --color-button-text: #001510;
    --color-header-main-bg: #003628;
    --color-header-texts: #ffffff;
    --color-header-balance-bg: #06e05b;
    --color-header-deposit-bg: #06e05b;
    --color-header-deposit-text: #001510;
    --color-game-card-bg: #003628;
    --color-game-balloon-bg: #003628;
    --color-game-balloon-icon: #06e05b;
    --color-game-balloon-text: #b5e2c8;
    --color-game-balloon-value: #06e05b;
    --color-game-online-bg: #14302a;
    --color-game-online-text: #ffffff;
    --color-game-online-dot: #06e05b;
    --color-game-overlay: #000000;
    --color-game-icon: #001510;
    --color-game-title: #ffffff;
    --color-warning: #ffc300;
    --color-info: #0096ff;
    --color-success: #22c55e;
    --color-error: #ef4444;
    --color-primary-foreground: #001510;
    --color-auth-bg-primary: #14302a;
    --color-auth-bg-inputs: #2b3f3a;
    --color-auth-bg-close: #1d3a34;
    --color-auth-icon-close: #ffffff;
    --color-auth-texts: #ffffff;
    --color-auth-text-inputs: #ffffff;
    --color-auth-links: #06e05b;
    --color-auth-button-bg: #06e05b;
    --color-auth-button-text: #001510;
    --color-auth-backdrop: #000000;
    --color-header-login-bg: #00000000;
    --color-header-login-text: #06e05b;
    --color-bottom-notification-bg: #0e1d21;
    --color-payments-button-bg: #06e05b;
    --color-payments-button-text: #001510;
    --color-payments-bg-inputs: #0a1f1a;
    --color-payments-text-inputs: #ffffff;
}

@keyframes cass-fade-in {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes cass-coin-spin {
    from { transform: rotateY(0deg); }
    to { transform: rotateY(360deg); }
}

@keyframes cass-notification-alert-pulse {
    0%, 100% {
        filter: drop-shadow(0 0 0 rgba(255, 48, 79, 0));
        transform: scale(1);
    }
    50% {
        filter: drop-shadow(0 0 8px rgba(255, 48, 79, .58));
        transform: scale(1.08);
    }
}
.main.main-sports {
    padding: 0;
}

@keyframes mobileSportsLiveDot {
    0%, 100% {
        transform: scale(.9);
        box-shadow: 0 0 0 0 rgba(255, 35, 63, .62), 0 0 10px rgba(255, 35, 63, .92);
    }
    50% {
        transform: scale(1.18);
        box-shadow: 0 0 0 5px rgba(255, 35, 63, 0), 0 0 17px rgba(255, 35, 63, 1);
    }
}

@keyframes cass-game-card-mirror {
    from { transform: rotate(18deg) translateX(-135%); }
    to { transform: rotate(18deg) translateX(520%); }
}

@keyframes cass-game-card-mirror-idle {
    0%, 54% { opacity: 0; transform: rotate(18deg) translateX(-135%); }
    62% { opacity: 1; }
    84% { opacity: 0; transform: rotate(18deg) translateX(520%); }
    100% { opacity: 0; transform: rotate(18deg) translateX(520%); }
}

@keyframes cass-mobile-nav-select {
    0% { transform: translateY(0) scale(1); filter: brightness(1); }
    50% { transform: translateY(-3px) scale(1.04); filter: brightness(1.18); }
    100% { transform: translateY(0) scale(1); filter: brightness(1); }
}

@keyframes cass-mobile-nav-mirror {
    0%, 52% {
        opacity: 0;
        transform: rotate(18deg) translateX(-130%);
    }
    60% {
        opacity: .95;
    }
    80% {
        opacity: 0;
        transform: rotate(18deg) translateX(420%);
    }
    100% {
        opacity: 0;
        transform: rotate(18deg) translateX(420%);
    }
}

@keyframes cass-mobile-deposit-halo {
    0%, 100% {
        opacity: .5;
        box-shadow: 0 0 0 0 rgba(255, 169, 3, .38), inset 0 0 10px rgba(6, 224, 91, .12);
    }
    50% {
        opacity: 1;
        box-shadow: 0 0 0 4px rgba(255, 169, 3, 0), 0 0 18px rgba(255, 169, 3, .36), inset 0 0 14px rgba(6, 224, 91, .18);
    }
}

@keyframes cass-mobile-deposit-wallet {
    0%, 100% {
        transform: translateY(0) scale(1);
        filter: drop-shadow(0 0 9px rgba(255, 169, 3, .48)) drop-shadow(0 4px 8px rgba(0, 0, 0, .38));
    }
    50% {
        transform: translateY(-2px) scale(1.05);
        filter: drop-shadow(0 0 14px rgba(255, 169, 3, .72)) drop-shadow(0 5px 10px rgba(0, 0, 0, .42));
    }
}

@keyframes cass-toast-in {
    from { opacity: 0; transform: translate3d(0, -10px, 0) scale(.98); }
    to { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}

@keyframes cass-toast-progress {
    from { transform: scaleX(1); }
    to { transform: scaleX(0); }
}

@keyframes cass-login-spin {
    to { transform: rotate(360deg); }
}

@keyframes cass-deposit-ring-pulse {
    0% {
        opacity: .95;
        transform: var(--cass-deposit-ring-transform, none) scale(1);
        box-shadow: 0 0 0 0 rgba(255, 169, 3, .62), 0 0 10px rgba(255, 169, 3, .34);
    }
    70% {
        opacity: .42;
        transform: var(--cass-deposit-ring-transform, none) scale(1.035);
        box-shadow: 0 0 0 4px rgba(255, 169, 3, 0), 0 0 16px rgba(255, 169, 3, .18);
    }
    100% {
        opacity: 0;
        transform: var(--cass-deposit-ring-transform, none) scale(1.055);
        box-shadow: 0 0 0 0 rgba(255, 169, 3, 0), 0 0 0 rgba(255, 169, 3, 0);
    }
}

@keyframes cass-mobile-deposit-text-pulse {
    0%, 100% {
        color: #ffa903;
        text-shadow: 0 0 4px rgba(255, 169, 3, .35);
        filter: brightness(1);
    }
    50% {
        color: #ffe27a;
        text-shadow: 0 0 10px rgba(255, 169, 3, .78), 0 0 18px rgba(255, 169, 3, .36);
        filter: brightness(1.16);
    }
}

@keyframes cass-mobile-deposit-gold-aura {
    0%, 100% { opacity: .78; filter: drop-shadow(0 0 6px rgba(255, 193, 7, .5)); }
    50% { opacity: 1; filter: drop-shadow(0 0 12px rgba(255, 225, 91, .82)) drop-shadow(0 0 20px rgba(255, 147, 0, .26)); }
}

@keyframes cass-deposit-lightning-orbit {
    0%, 100% {
        opacity: .82;
        transform: var(--cass-deposit-ring-transform, none) scale(1);
        filter: drop-shadow(0 0 7px rgba(255, 169, 3, .52));
    }
    50% {
        opacity: 1;
        transform: var(--cass-deposit-ring-transform, none) scale(1.018);
        filter: drop-shadow(0 0 13px rgba(255, 226, 90, .78)) drop-shadow(0 0 20px rgba(255, 169, 3, .24));
    }
}

@keyframes cass-deposit-lightning-sweep {
    0%, 100% { opacity: 0; transform: var(--cass-deposit-ring-transform, none) translateX(-18%) skewX(-16deg); }
    42% { opacity: .86; }
    72% { opacity: 0; transform: var(--cass-deposit-ring-transform, none) translateX(18%) skewX(-16deg); }
}
@keyframes vipCardBorderPulse {
    0%, 100% {
        border-color: rgba(0,185,135,.58);
        box-shadow:
            inset 0 0 0 1px rgba(0,185,135,.22),
            0 0 0 rgba(0,255,195,0);
    }
    50% {
        border-color: rgba(0,255,195,.82);
        box-shadow:
            inset 0 0 0 1px rgba(0,255,195,.36),
            0 0 8px rgba(0,255,195,.16);
    }
}
@keyframes biggestWinsInfinite {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(0, -50%, 0); }
}
@keyframes ZrlCh {
    0% { transform: scale(1); }
    60% { transform: scale(.9); }
    65% { transform: scale(1.1) skew(1.44deg, 0deg); }
    70% { transform: scale(1) skew(2.88deg, 0deg); }
    75% { transform: scale(1) skew(0deg, 0deg); }
    77% { transform: rotate(-15deg); }
    79% { transform: rotate(10deg); }
    81% { transform: rotate(-10deg); }
    83% { transform: rotate(6deg); }
    85% { transform: rotate(-4deg); }
    100% { transform: none; }
}
@keyframes giftPulse {
    0%, 100% {
        scale: 1;
        box-shadow: 0 0 0 0 rgba(6, 224, 91, .34);
    }
    50% {
        scale: 1.1;
        box-shadow: 0 0 0 6px rgba(6, 224, 91, 0);
    }
}
._3BsQx.is-sports-active::before { transform: translateX(calc(100% + 2px)); }

.sports-layout-page .sports-mobile-hidden {
    display: none !important;
}
@media (max-width: 560px) {
    body.authenticated-player .mobile-quick-menu-wrap.sports-mobile-hidden {
        display: none !important;
    }
}

@media (max-width: 400px) {
}
.sportsbook-page {
    min-height: calc(100svh - var(--header-height, 72px));
    background: #001510;
    color: #eef7f2;
}

.sportsbook-shell {
    display: grid;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
    min-height: calc(100svh - var(--header-height, 72px));
}

.sportsbook-rail {
    border-right: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(180deg, #00231a, #001510);
    padding: 16px 12px 92px;
    overflow-y: auto;
}

.sportsbook-rail-title {
    padding: 0 8px 8px;
    font-size: 11px;
    font-weight: 800;
    color: rgba(238, 247, 242, 0.45);
    text-transform: uppercase;
}

.sportsbook-rail-title.is-secondary {
    margin-top: 20px;
}

.sportsbook-sport-button,
.sportsbook-league-button {
    width: 100%;
    min-height: 40px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: rgba(238, 247, 242, 0.72);
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 700;
    text-align: left;
    cursor: pointer;
    transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease;
}

.sportsbook-sport-button:hover,
.sportsbook-league-button:hover,
.sportsbook-sport-button.is-active,
.sportsbook-league-button.is-active {
    border-color: rgba(6, 224, 91, 0.32);
    background: rgba(6, 224, 91, 0.12);
    color: #ffffff;
}

.sportsbook-sport-icon {
    width: 23px;
    height: 23px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    color: #06e05b;
    overflow: hidden;
    flex: 0 0 auto;
}

.sportsbook-sport-icon img {
    width: 23px;
    height: 23px;
    display: block;
    object-fit: contain;
}

.sportsbook-sport-name {
    min-width: 0;
    flex: 1;
}

.sportsbook-sport-count {
    min-width: 24px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(238, 247, 242, 0.7);
    font-size: 10px;
}

.sportsbook-league-button {
    min-height: 34px;
    font-weight: 650;
    color: rgba(238, 247, 242, 0.62);
}

.sportsbook-sport-chevron {
    flex: 0 0 auto;
    color: rgba(238, 247, 242, 0.72);
}

.sportsbook-nav-tree {
    display: grid;
    gap: 5px;
}

.sportsbook-mobile-league-panel {
    display: none;
}

.sportsbook-region-group {
    display: grid;
    gap: 4px;
}

.sportsbook-region-button {
    width: 100%;
    min-height: 38px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.055);
    color: #ffffff;
    display: grid;
    grid-template-columns: 25px minmax(0, 1fr) auto 15px;
    align-items: center;
    gap: 8px;
    padding: 7px 8px;
    text-align: left;
    cursor: pointer;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.sportsbook-region-button:hover,
.sportsbook-region-button.is-active,
.sportsbook-region-group.is-active > .sportsbook-region-button,
.sportsbook-region-group.is-open > .sportsbook-region-button {
    border-color: rgba(6, 224, 91, 0.34);
    background: rgba(6, 224, 91, 0.12);
}

.sportsbook-region-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(6, 224, 91, 0.12);
    overflow: hidden;
}

.sportsbook-region-icon img {
    width: 24px;
    height: 24px;
    object-fit: cover;
    display: block;
}

.sportsbook-region-icon.is-star {
    color: #06e05b;
}

.sportsbook-region-button strong,
.sportsbook-region-league span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-region-button strong {
    font-size: 12px;
    font-weight: 850;
}

.sportsbook-region-button em {
    min-width: 25px;
    height: 18px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(161, 211, 197, 0.12);
    color: rgba(238, 247, 242, 0.76);
    padding: 0 6px;
    font-size: 9px;
    font-style: normal;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.sportsbook-region-chevron {
    transition: transform 160ms ease;
}

.sportsbook-region-group.is-open .sportsbook-region-chevron {
    transform: rotate(180deg);
}

.sportsbook-region-leagues {
    display: grid;
    gap: 4px;
    padding: 0 0 4px 34px;
}

.sportsbook-region-league-row {
    min-height: 34px;
    border: 1px solid transparent;
    border-radius: 7px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 30px;
    align-items: center;
    background: rgba(255, 255, 255, 0.045);
    overflow: hidden;
}

.sportsbook-region-league-row.is-active {
    border-color: rgba(6, 224, 91, 0.42);
    background: rgba(6, 224, 91, 0.14);
}

.sportsbook-region-league,
.sportsbook-league-favorite {
    border: 0;
    background: transparent;
    color: #ffffff;
    cursor: pointer;
}

.sportsbook-region-league {
    min-width: 0;
    min-height: 34px;
    display: flex;
    align-items: center;
    padding: 0 8px;
    text-align: left;
    font-size: 11px;
    font-weight: 750;
}

.sportsbook-league-favorite {
    width: 30px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: rgba(238, 247, 242, 0.72);
}

.sportsbook-league-favorite.is-active {
    color: #06e05b;
}

.sportsbook-main {
    min-width: 0;
    padding: 18px 18px 96px;
    overflow-x: clip;
}

.sportsbook-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

.sportsbook-kicker {
    margin: 0 0 3px;
    color: #06e05b;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sportsbook-topbar h1 {
    margin: 0;
    color: #ffffff;
    font-size: 22px;
    font-weight: 900;
}

.sportsbook-status {
    min-height: 34px;
    border: 1px solid rgba(6, 224, 91, 0.22);
    border-radius: 999px;
    background: rgba(0, 54, 40, 0.78);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
    color: #eef7f2;
    font-size: 12px;
    font-weight: 800;
}

.sportsbook-live-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ef4444;
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.5);
    animation: sportsbook-live-pulse 1.15s ease-in-out infinite;
}

@keyframes sportsbook-live-pulse {
    0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.45); }
    50% { box-shadow: 0 0 0 6px rgba(239, 68, 68, 0); }
}

.sportsbook-muted {
    color: rgba(238, 247, 242, 0.48);
    font-weight: 650;
}

.sportsbook-filters {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.sportsbook-filters > button {
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(238, 247, 242, 0.66);
    padding: 0 12px;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.sportsbook-filters > button.is-active {
    background: #06e05b;
    border-color: #06e05b;
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .28);
}

.sportsbook-search {
    min-width: min(100%, 290px);
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.05);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 11px;
    color: rgba(238, 247, 242, 0.45);
}

.sportsbook-search input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #eef7f2;
    font-size: 12px;
}

.sportsbook-summary {
    min-height: 30px;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    color: rgba(238, 247, 242, 0.52);
    font-size: 12px;
    margin-bottom: 12px;
}

.sportsbook-summary strong {
    color: #eef7f2;
}

.sportsbook-warning {
    color: #ffc300;
}

.sportsbook-content {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.sportsbook-list {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.sportsbook-match-card {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-left: 3px solid rgba(6, 224, 91, 0.55);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(0, 54, 40, 0.92), rgba(0, 31, 24, 0.96));
    padding: 11px 12px 10px;
    cursor: pointer;
    transition: border-color 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.sportsbook-match-card:hover,
.sportsbook-match-card.is-selected {
    border-color: rgba(6, 224, 91, 0.52);
    transform: translateY(-1px);
}

.sportsbook-match-card.is-live {
    border-left-color: #ef4444;
}

.sportsbook-match-head,
.sportsbook-score-row,
.sportsbook-odds,
.sportsbook-tracker-head,
.sportsbook-tracker-score,
.sportsbook-pressure,
.sportsbook-stats div {
    display: flex;
    align-items: center;
}

.sportsbook-match-head {
    gap: 8px;
    margin-bottom: 10px;
}

.sportsbook-match-meta {
    min-height: 24px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: -2px 0 9px;
    color: rgba(238, 247, 242, 0.58);
    font-size: 11px;
    font-weight: 750;
}

.sportsbook-match-meta span {
    min-height: 20px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    padding: 0 8px;
    background: rgba(255, 255, 255, 0.055);
}

.sportsbook-match-meta.is-tracker {
    margin: 10px 0 0;
}

.sportsbook-league {
    min-width: 0;
    flex: 1;
    color: rgba(238, 247, 242, 0.55);
    font-size: 11px;
    font-weight: 800;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-live-chip,
.sportsbook-source {
    border-radius: 999px;
    padding: 3px 7px;
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
}

.sportsbook-live-chip {
    background: rgba(239, 68, 68, 0.16);
    color: #ff9b9b;
}

.sportsbook-source {
    background: rgba(255, 255, 255, 0.06);
    color: rgba(238, 247, 242, 0.54);
}

.sportsbook-score-row {
    gap: 12px;
}

.sportsbook-card-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 9px;
    color: rgba(238, 247, 242, 0.72);
    font-size: 11px;
    font-weight: 850;
}

.sportsbook-card-row span {
    min-height: 21px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 7px;
    background: rgba(255, 255, 255, 0.055);
}

.sportsbook-card-row em {
    max-width: 58px;
    overflow: hidden;
    color: rgba(238, 247, 242, 0.5);
    font-style: normal;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-card-row.is-tracker {
    flex-wrap: wrap;
}

.sportsbook-card-dot {
    width: 8px;
    height: 12px;
    border-radius: 2px;
    display: inline-block;
}

.sportsbook-card-dot.is-yellow {
    background: #ffc300;
}

.sportsbook-card-dot.is-red {
    background: #ef4444;
}

.sportsbook-team {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sportsbook-team.is-away {
    justify-content: flex-end;
    text-align: right;
}

.sportsbook-team strong {
    min-width: 0;
    color: #ffffff;
    font-size: 13px;
    font-weight: 850;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-team-mark {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    flex: 0 0 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.08);
    color: #06e05b;
    font-size: 11px;
    font-weight: 900;
    overflow: hidden;
}

.sportsbook-team-mark img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sportsbook-team-mark b {
    font: inherit;
}

.sportsbook-team-mark.is-small {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    font-size: 9px;
}

.sportsbook-score {
    width: 92px;
    flex: 0 0 92px;
    text-align: center;
}

.sportsbook-score strong {
    color: #06e05b;
    font-size: 24px;
    font-weight: 950;
}

.sportsbook-score span {
    color: rgba(238, 247, 242, 0.35);
    font-size: 12px;
    margin: 0 4px;
}

.sportsbook-score small {
    display: block;
    margin-top: 2px;
    color: rgba(238, 247, 242, 0.46);
    font-size: 10px;
    font-weight: 800;
}

.sportsbook-odds {
    gap: 6px;
    margin-top: 11px;
}

.sportsbook-odds button {
    min-width: 0;
    flex: 1;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(0, 21, 16, 0.85);
    padding: 7px 5px;
    color: #eef7f2;
    cursor: pointer;
}

.sportsbook-odds button:hover {
    border-color: rgba(6, 224, 91, 0.44);
    background: rgba(6, 224, 91, 0.1);
}

.sportsbook-odds button.is-picked {
    border-color: rgba(6, 224, 91, 0.9);
    background: #06e05b;
    color: #001b12;
}

.sportsbook-odds button.is-picked span,
.sportsbook-odds button.is-picked strong {
    color: #001b12;
}

.sportsbook-odds span {
    display: block;
    color: rgba(238, 247, 242, 0.46);
    font-size: 9px;
    font-weight: 750;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-odds strong {
    display: block;
    color: #06e05b;
    font-size: 13px;
    margin-top: 2px;
}

.sportsbook-no-odds {
    width: 100%;
    border: 1px dashed rgba(238, 247, 242, 0.12);
    border-radius: 8px;
    color: rgba(238, 247, 242, 0.48);
    padding: 8px;
    text-align: center;
    font-size: 11px;
    font-weight: 800;
}

.sportsbook-load-more {
    min-height: 44px;
    border: 1px solid rgba(6, 224, 91, 0.28);
    border-radius: 8px;
    background: rgba(6, 224, 91, 0.1);
    color: #eef7f2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 16px;
    font-size: 12px;
    font-weight: 900;
    cursor: pointer;
}

.sportsbook-load-more strong {
    min-height: 22px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #06e05b;
    display: inline-flex;
    align-items: center;
    padding: 0 8px;
    font-size: 11px;
}

.sportsbook-load-more:disabled {
    cursor: wait;
    opacity: 0.65;
}

.sportsbook-tracker {
    position: sticky;
    top: 88px;
    border: 1px solid rgba(6, 224, 91, 0.18);
    border-radius: 8px;
    background: linear-gradient(180deg, rgba(0, 54, 40, 0.95), rgba(0, 21, 16, 0.98));
    padding: 14px;
}

.sportsbook-tracker-head,
.sportsbook-tracker-score {
    justify-content: space-between;
    gap: 10px;
}

.sportsbook-tracker-head span {
    color: rgba(238, 247, 242, 0.55);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sportsbook-tracker-head strong {
    color: #06e05b;
    font-size: 12px;
}

.sportsbook-tracker-score {
    margin-top: 12px;
    color: #ffffff;
}

.sportsbook-tracker-score strong {
    min-width: 0;
    flex: 1;
    font-size: 12px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-tracker-score strong:last-child {
    text-align: right;
}

.sportsbook-tracker-score span {
    color: #06e05b;
    font-size: 18px;
    font-weight: 950;
}

.sportsbook-timeline {
    margin-top: 12px;
    padding: 10px;
    border-radius: 8px;
    background: rgba(0, 0, 0, 0.18);
}

.sportsbook-timeline-teams,
.sportsbook-timeline-bar {
    display: flex;
    align-items: center;
}

.sportsbook-timeline-teams {
    justify-content: space-between;
    gap: 10px;
    color: rgba(238, 247, 242, 0.82);
    font-size: 11px;
    font-weight: 900;
}

.sportsbook-timeline-teams strong {
    color: #ffffff;
    font-size: 14px;
}

.sportsbook-timeline-bar {
    position: relative;
    height: 28px;
    margin-top: 8px;
    border-top: 2px solid rgba(238, 247, 242, 0.28);
}

.sportsbook-timeline-bar span {
    position: absolute;
    top: 6px;
    transform: translateX(-50%);
    color: rgba(238, 247, 242, 0.58);
    font-size: 10px;
    font-weight: 800;
}

.sportsbook-timeline-bar i {
    position: absolute;
    top: -5px;
    width: 10px;
    height: 10px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: #06e05b;
    box-shadow: 0 0 0 4px rgba(6, 224, 91, 0.18);
}

.sportsbook-pitch {
    position: relative;
    height: 220px;
    margin-top: 14px;
    border: 2px solid rgba(238, 247, 242, 0.18);
    border-radius: 8px;
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px) 0 0 / 20% 100%,
        linear-gradient(180deg, rgba(6, 224, 91, 0.16), rgba(0, 74, 56, 0.48));
}

.sportsbook-pitch.is-basketball {
    background:
        linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px) 0 0 / 10% 100%,
        linear-gradient(180deg, #9a5629 0%, #7f4320 48%, #71371a 100%);
}

.sportsbook-pitch.is-tennis,
.sportsbook-pitch.is-volleyball {
    background:
        linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px) 0 0 / 12.5% 100%,
        linear-gradient(180deg, #237fb1 0%, #17699a 50%, #125077 100%);
}

.sportsbook-pitch.is-hockey {
    background:
        radial-gradient(circle at 50% 50%, transparent 0 34px, rgba(238,247,242,.18) 35px 37px, transparent 38px),
        linear-gradient(180deg, #d8e6ed, #93afbd);
}

.sportsbook-pitch-line.is-mid {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 2px;
    background: rgba(238, 247, 242, 0.2);
}

.sportsbook-pitch-line.is-mid::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 76px;
    height: 76px;
    border: 2px solid rgba(238, 247, 242, 0.18);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.sportsbook-pitch-box {
    position: absolute;
    top: 29%;
    width: 44px;
    height: 42%;
    border: 2px solid rgba(238, 247, 242, 0.16);
}

.sportsbook-pitch-box.is-left {
    left: -2px;
}

.sportsbook-pitch-box.is-right {
    right: -2px;
}

.sportsbook-court-line {
    display: none;
    position: absolute;
    pointer-events: none;
}

.sportsbook-pitch.is-tennis {
    border-color: rgba(238, 247, 242, 0.56);
    box-shadow: inset 0 0 0 13px rgba(30, 133, 70, 0.92), inset 0 0 0 17px rgba(238, 247, 242, 0.68);
}

.sportsbook-pitch.is-tennis .sportsbook-pitch-line,
.sportsbook-pitch.is-tennis .sportsbook-pitch-box,
.sportsbook-pitch.is-basketball .sportsbook-pitch-line,
.sportsbook-pitch.is-basketball .sportsbook-pitch-box {
    display: none;
}

.sportsbook-pitch.is-tennis .sportsbook-court-line {
    display: block;
    background: rgba(238, 247, 242, 0.82);
    box-shadow: 0 0 8px rgba(238, 247, 242, 0.08);
}

.sportsbook-pitch.is-tennis .is-tennis-doubles-top {
    left: 17px;
    right: 17px;
    top: 23%;
    height: 2px;
}

.sportsbook-pitch.is-tennis .is-tennis-doubles-bottom {
    left: 17px;
    right: 17px;
    bottom: 23%;
    height: 2px;
}

.sportsbook-pitch.is-tennis .is-tennis-net {
    top: 17px;
    bottom: 17px;
    left: 50%;
    width: 3px;
    transform: translateX(-50%);
    background: repeating-linear-gradient(180deg, rgba(238, 247, 242, 0.82) 0 5px, rgba(238, 247, 242, 0.24) 5px 9px);
}

.sportsbook-pitch.is-tennis .is-tennis-service-left,
.sportsbook-pitch.is-tennis .is-tennis-service-right {
    top: 23%;
    bottom: 23%;
    width: 2px;
}

.sportsbook-pitch.is-tennis .is-tennis-service-left {
    left: 33.33%;
}

.sportsbook-pitch.is-tennis .is-tennis-service-right {
    right: 33.33%;
}

.sportsbook-pitch.is-tennis .is-tennis-center-service {
    left: 33.33%;
    right: 33.33%;
    top: 50%;
    height: 2px;
    transform: translateY(-50%);
}

.sportsbook-pitch.is-basketball {
    border-color: rgba(255, 232, 184, 0.42);
    box-shadow: inset 0 0 0 12px rgba(69, 32, 16, 0.32);
}

.sportsbook-pitch.is-basketball .sportsbook-court-line {
    display: block;
    border-color: rgba(255, 245, 224, 0.72);
}

.sportsbook-pitch.is-basketball .is-basket-center {
    top: 50%;
    left: 50%;
    width: 84px;
    height: 84px;
    border: 2px solid rgba(255, 245, 224, 0.72);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.sportsbook-pitch.is-basketball .is-basket-center::before {
    content: "";
    position: absolute;
    top: -68px;
    bottom: -68px;
    left: 50%;
    width: 2px;
    background: rgba(255, 245, 224, 0.62);
    transform: translateX(-50%);
}

.sportsbook-pitch.is-basketball .is-basket-key-left,
.sportsbook-pitch.is-basketball .is-basket-key-right {
    top: 29%;
    width: 58px;
    height: 42%;
    border: 2px solid rgba(255, 245, 224, 0.72);
    background: rgba(85, 36, 17, 0.18);
}

.sportsbook-pitch.is-basketball .is-basket-key-left {
    left: -2px;
}

.sportsbook-pitch.is-basketball .is-basket-key-right {
    right: -2px;
}

.sportsbook-pitch.is-basketball .is-basket-arc-left,
.sportsbook-pitch.is-basketball .is-basket-arc-right {
    top: 18%;
    width: 116px;
    height: 64%;
    border: 2px solid rgba(255, 245, 224, 0.58);
    border-radius: 50%;
}

.sportsbook-pitch.is-basketball .is-basket-arc-left {
    left: -64px;
}

.sportsbook-pitch.is-basketball .is-basket-arc-right {
    right: -64px;
}

.sportsbook-pitch.is-basketball .is-basket-hoop-left,
.sportsbook-pitch.is-basketball .is-basket-hoop-right {
    top: 50%;
    width: 12px;
    height: 12px;
    border: 2px solid rgba(255, 245, 224, 0.84);
    border-radius: 50%;
    transform: translateY(-50%);
}

.sportsbook-pitch.is-basketball .is-basket-hoop-left {
    left: 12px;
}

.sportsbook-pitch.is-basketball .is-basket-hoop-right {
    right: 12px;
}

.sportsbook-ball {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 0 0 5px rgba(6, 224, 91, 0.2), 0 0 20px rgba(6, 224, 91, 0.65);
    transform: translate(-50%, -50%);
    transition: left 800ms ease, top 800ms ease;
}

.sportsbook-pitch.is-live-play .sportsbook-ball {
    animation: none;
    transition:
        left var(--ball-speed, 980ms) var(--ball-ease, cubic-bezier(.32,.02,.21,1)),
        top var(--ball-speed, 980ms) var(--ball-ease, cubic-bezier(.32,.02,.21,1));
}

.sportsbook-pitch.is-live-play.is-tennis .sportsbook-ball {
    animation: none;
}

.sportsbook-pitch.is-live-play.is-basketball .sportsbook-ball {
    animation: none;
}

@keyframes sportsbook-live-ball-field {
    0% { left: 8%; top: 52%; }
    14% { left: 22%; top: 34%; }
    28% { left: 47%; top: 64%; }
    42% { left: 74%; top: 27%; }
    56% { left: 91%; top: 48%; }
    70% { left: 63%; top: 76%; }
    84% { left: 31%; top: 44%; }
    100% { left: 8%; top: 52%; }
}

@keyframes sportsbook-live-ball-tennis {
    0% { left: 14%; top: 28%; }
    18% { left: 46%; top: 72%; }
    36% { left: 84%; top: 35%; }
    54% { left: 56%; top: 24%; }
    72% { left: 20%; top: 68%; }
    100% { left: 14%; top: 28%; }
}

@keyframes sportsbook-live-ball-basketball {
    0% { left: 12%; top: 50%; }
    16% { left: 30%; top: 24%; }
    32% { left: 52%; top: 58%; }
    48% { left: 76%; top: 31%; }
    64% { left: 90%; top: 50%; }
    82% { left: 55%; top: 78%; }
    100% { left: 12%; top: 50%; }
}

.sportsbook-pitch.is-tennis .sportsbook-ball {
    width: 10px;
    height: 10px;
    background: #d8ff3d;
    box-shadow: 0 0 0 4px rgba(216, 255, 61, 0.18), 0 0 18px rgba(216, 255, 61, 0.62);
}

.sportsbook-pitch.is-basketball .sportsbook-ball {
    width: 13px;
    height: 13px;
    background: #e97a22;
    box-shadow: 0 0 0 4px rgba(233, 122, 34, 0.18), 0 0 18px rgba(233, 122, 34, 0.52);
}

.sportsbook-pressure {
    gap: 8px;
    margin-top: 12px;
    color: rgba(238, 247, 242, 0.62);
    font-size: 10px;
    font-weight: 800;
}

.sportsbook-pressure span {
    min-width: 0;
    flex: 0 1 92px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-pressure span:last-child {
    text-align: right;
}

.sportsbook-pressure div {
    height: 8px;
    flex: 1;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.09);
}

.sportsbook-pressure i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #06e05b, #ffc300);
    transition: width 500ms ease;
}

.sportsbook-stats {
    display: grid;
    gap: 7px;
    margin-top: 14px;
}

.sportsbook-stats div {
    min-height: 32px;
    justify-content: space-between;
    gap: 12px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.045);
    padding: 0 10px;
}

.sportsbook-stats strong {
    color: #ffffff;
    font-size: 13px;
}

.sportsbook-stats span {
    color: rgba(238, 247, 242, 0.55);
    font-size: 11px;
    font-weight: 750;
}

.sportsbook-stats-state {
    margin: 0;
    min-height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px dashed rgba(238, 247, 242, 0.16);
    border-radius: 8px;
    color: rgba(238, 247, 242, 0.62);
    font-size: 11px;
    font-weight: 900;
}

.sportsbook-card-incidents {
    display: grid;
    gap: 7px;
    margin-top: 10px;
}

.sportsbook-card-incidents header,
.sportsbook-card-incident {
    display: grid;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.045);
}

.sportsbook-card-incidents header {
    min-height: 30px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 0 10px;
}

.sportsbook-card-incidents header span,
.sportsbook-card-incidents header strong {
    color: rgba(238, 247, 242, 0.62);
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.sportsbook-card-incident {
    min-height: 34px;
    grid-template-columns: 10px 34px minmax(0, 1fr) minmax(0, .8fr);
    padding: 0 10px;
}

.sportsbook-card-incident i {
    width: 8px;
    height: 12px;
    border-radius: 2px;
    display: block;
}

.sportsbook-card-incident i.is-yellow {
    background: #ffd84a;
}

.sportsbook-card-incident i.is-red {
    background: #ff3358;
}

.sportsbook-card-incident span,
.sportsbook-card-incident strong,
.sportsbook-card-incident em {
    min-width: 0;
    overflow: hidden;
    color: rgba(238, 247, 242, 0.72);
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-card-incident strong {
    color: #fff;
}

.sportsbook-loading,
.sportsbook-empty {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(0, 54, 40, 0.55);
    min-height: 150px;
    display: grid;
    place-items: center;
    color: rgba(238, 247, 242, 0.56);
    text-align: center;
}

.sportsbook-loading {
    gap: 12px;
}

.sportsbook-loading-overlay {
    position: fixed;
    inset: 0;
    z-index: 260;
    display: grid;
    place-items: center;
    padding: 20px;
    background: #001f17;
    color: #f7fff9;
}

.sportsbook-loading-screen {
    width: min(430px, calc(100vw - 32px));
    min-height: min(420px, calc(100vh - 64px));
    display: grid;
    justify-items: center;
    align-content: center;
    gap: 22px;
    text-align: center;
}

.sportsbook-loading-screen strong,
.sportsbook-loading strong {
    color: #f7fff9;
    font-size: 12px;
    font-weight: 900;
}

.sportsbook-loading-brand,
.sportsbook-loading-logo {
    position: relative;
    width: 246px;
    min-height: 78px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    animation: sportsbook-logo-pulse 1.18s ease-in-out infinite;
}

.sportsbook-loading-brand::before,
.sportsbook-loading-logo::before {
    display: none;
    content: none;
}

.sportsbook-loading-brand img,
.sportsbook-loading-logo img {
    position: relative;
    z-index: 1;
    max-width: 224px;
    width: 92%;
    height: auto;
    object-fit: contain;
    filter: none;
}

.sportsbook-loading-track {
    position: relative;
    width: min(340px, 72vw);
    height: 58px;
    overflow: hidden;
    border-bottom: 1px solid rgba(6, 224, 91, 0.28);
}

.sportsbook-loading-ball {
    position: absolute;
    bottom: 5px;
    left: -52px;
    width: 48px;
    height: 48px;
    object-fit: contain;
    filter: drop-shadow(0 10px 16px rgba(0, 0, 0, 0.38));
    will-change: left, transform;
    animation: sportsbook-ball-roll 1.55s linear infinite;
}

@keyframes sportsbook-logo-pulse {
    0%, 100% {
        transform: scale(0.96);
        opacity: 0.76;
        filter: drop-shadow(0 0 0 rgba(6, 224, 91, 0));
    }

    50% {
        transform: scale(1.04);
        opacity: 1;
        filter: drop-shadow(0 0 18px rgba(6, 224, 91, 0.3));
    }
}

@keyframes sportsbook-ball-roll {
    0% {
        left: -52px;
        transform: rotate(0deg);
    }

    100% {
        left: calc(100% + 52px);
        transform: rotate(720deg);
    }
}

.sports-betslip {
    position: fixed;
    right: 16px;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 136px);
    z-index: 190;
    width: min(396px, calc(100vw - 24px));
    color: #f2fff8;
}

.sports-betslip-card {
    overflow: hidden;
    border: 1px solid rgba(6, 224, 91, 0.16);
    border-radius: 16px 16px 8px 8px;
    background: #003121;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.5);
}

.sports-betslip-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    background: #0ccc61;
    color: #001b12;
}

.sports-betslip-head div,
.sports-betslip-actions,
.sports-betslip-tabs,
.sports-betslip-selection-head,
.sports-betslip-stake {
    display: flex;
    align-items: center;
}

.sports-betslip-head div {
    min-width: 0;
    gap: 8px;
    font-weight: 900;
}

.sports-betslip-head span,
.sports-betslip-tabs span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(0, 27, 18, 0.14);
    font-size: 11px;
    font-weight: 950;
}

.sports-betslip-head button,
.sports-betslip-actions button,
.sports-betslip-selection-head button {
    border: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.sports-betslip-head button,
.sports-mobile-betslip-card header button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sports-betslip-head svg,
.sports-betslip-actions svg,
.sports-betslip-selection-head svg,
.sports-mobile-betslip-card header svg,
.sports-mobile-betslip-selection svg {
    display: block;
    flex: 0 0 auto;
}

.sports-betslip-head button {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: rgba(0, 27, 18, 0.08);
}

.sports-betslip-body {
    padding: 12px;
}

.sports-betslip-actions {
    gap: 8px;
    justify-content: center;
}

.sports-betslip-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    border: 1px solid rgba(238, 247, 242, 0.1);
    border-radius: 8px;
    color: rgba(242, 255, 248, 0.82);
    background: rgba(0, 21, 16, 0.25);
    font-size: 13px;
    font-weight: 850;
}

.sports-betslip-actions button:not(:first-child) {
    flex: 1;
    justify-content: center;
    gap: 8px;
}

.sports-betslip-actions button:first-child {
    width: 40px;
}

.sports-betslip-actions button.is-active {
    border-color: rgba(0, 255, 126, 0.34);
    background: rgba(0, 255, 126, 0.12);
    color: #f4fff8;
}

.sports-betslip-tabs {
    gap: 8px;
    margin-top: 12px;
}

.sports-betslip-tabs button {
    flex: 1;
    height: 40px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: rgba(242, 255, 248, 0.35);
    font-weight: 900;
}

.sports-betslip-tabs button.is-active {
    background: #0ccc61;
    color: #001b12;
}

.sports-betslip-tabs button:disabled {
    cursor: not-allowed;
    opacity: 0.36;
}

.sports-betslip-selections,
.sports-mobile-betslip-selections {
    max-height: 268px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: none;
}

.sports-betslip-selections::-webkit-scrollbar,
.sports-mobile-betslip-selections::-webkit-scrollbar {
    display: none;
}

.sports-betslip-selection {
    margin-top: 12px;
    padding: 12px;
    border-radius: 8px;
    border: 1px solid rgba(6, 224, 91, 0.1);
    background: rgba(6, 224, 91, 0.055);
}

.sports-betslip-selection-head {
    gap: 8px;
}

.sports-betslip-selection-head button {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: rgba(0, 21, 16, 0.34);
    color: rgba(242, 255, 248, 0.78);
    flex: 0 0 auto;
}

.sports-betslip-selection-head strong {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 14px;
}

.sports-betslip-selection-head em {
    color: #25d970;
    font-style: normal;
    font-weight: 950;
}

.sports-betslip-selection p {
    margin: 8px 0 0;
    color: rgba(242, 255, 248, 0.58);
    font-size: 12px;
    font-weight: 700;
}

.sports-betslip-match {
    display: grid;
    gap: 5px;
    width: 100%;
    margin-top: 8px;
    border: 0;
    background: transparent;
    color: rgba(242, 255, 248, 0.62);
    text-align: left;
}

.sports-betslip-match span {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 6px;
    font-size: 12px;
}

.sports-betslip-match img {
    width: 16px;
    height: 16px;
    border-radius: 999px;
    object-fit: cover;
}

.sports-betslip-stake {
    gap: 10px;
    margin-top: 14px;
}

.sports-betslip-stake label {
    display: flex;
    align-items: center;
    flex: 1;
    gap: 8px;
    min-width: 0;
    padding: 10px 12px;
    border-radius: 6px;
    background: rgba(0, 21, 16, 0.68);
}

.sports-betslip-stake span {
    color: rgba(242, 255, 248, 0.56);
    font-weight: 800;
}

.sports-betslip-stake input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
    font-size: 16px;
    font-weight: 900;
}

.sports-betslip-stake div {
    display: flex;
    gap: 6px;
}

.sports-betslip-stake button {
    border: 1px solid rgba(238, 247, 242, 0.08);
    border-radius: 6px;
    background: rgba(0, 21, 16, 0.24);
    color: #f2fff8;
    padding: 7px 8px;
    font-size: 10px;
    font-weight: 900;
}

.sports-betslip-return {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 14px;
    color: rgba(242, 255, 248, 0.58);
    font-size: 12px;
    font-weight: 800;
}

.sports-betslip-return strong {
    color: #25d970;
    font-size: 16px;
    font-weight: 950;
}

.sports-betslip-message {
    margin: 10px 0 0;
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
}

.sports-betslip-footer {
    padding: 12px;
    border-top: 1px solid rgba(238, 247, 242, 0.08);
}

.sports-betslip-footer button {
    width: 100%;
    min-height: 48px;
    border: 0;
    border-radius: 8px;
    background: #0ba84f;
    color: #001b12;
    font-size: 17px;
    font-weight: 950;
    cursor: pointer;
}

.sports-betslip-footer button:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.sports-mobile-betslip,
.sports-floating-ball {
    display: none;
}

.sports-floating-ball {
    position: fixed;
    right: 20px;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 34px);
    z-index: 170;
    width: 68px;
    height: 68px;
    border: 1px solid rgba(6, 224, 91, 0.45);
    border-radius: 999px;
    background: rgba(0, 38, 28, 0.88);
    color: #f2fff8;
    align-items: center;
    justify-content: center;
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.54), 0 0 0 1px rgba(6, 224, 91, 0.12);
    cursor: pointer;
    touch-action: none;
    user-select: none;
}

.sports-floating-ball img {
    width: 54px;
    height: 54px;
    object-fit: contain;
    animation: sports-floating-ball-spin 2.8s linear infinite;
    filter: drop-shadow(0 5px 12px rgba(0, 0, 0, 0.42));
    pointer-events: none;
}

.sports-floating-ball.is-dragging {
    cursor: grabbing;
}

.sports-floating-ball.has-slip {
    border-color: rgba(255, 68, 68, 0.58);
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.54), 0 0 0 3px rgba(255, 68, 68, 0.16);
}

.sports-floating-ball.has-ticket {
    border-color: rgba(6, 224, 91, 0.5);
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.54), 0 0 0 3px rgba(6, 224, 91, 0.14);
}

.sports-floating-ball.has-ticket img {
    width: 48px;
    height: 48px;
    animation: none;
    filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.35));
}

.sports-floating-ball-label {
    position: absolute;
    right: 50%;
    bottom: -18px;
    transform: translateX(50%);
    min-width: 116px;
    max-width: 132px;
    height: 24px;
    padding: 0 10px;
    border: 1px solid rgba(6, 224, 91, 0.28);
    border-radius: 999px;
    background: rgba(0, 54, 40, 0.96);
    color: rgba(242, 255, 248, 0.92);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 10px;
    font-weight: 950;
}

.sports-floating-ball-badge {
    position: absolute;
    top: -6px;
    right: -5px;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border: 2px solid rgba(0, 20, 15, 0.96);
    border-radius: 999px;
    background: #ff344c;
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 950;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(255, 52, 76, 0.42);
}

@keyframes sports-floating-ball-spin {
    to {
        transform: rotate(360deg);
    }
}

.sports-floating-ball {
    display: flex;
}

.sports-floating-ticket-panel {
    position: fixed;
    right: 94px;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 28px);
    z-index: 188;
    width: min(320px, calc(100vw - 20px));
    overflow: hidden;
    border: 1px solid rgba(6, 224, 91, 0.18);
    border-radius: 12px;
    background: #003121;
    color: #f2fff8;
    box-shadow: 0 22px 70px rgba(0, 0, 0, 0.6);
}

.sports-floating-ticket-panel.is-dragging {
    cursor: grabbing;
}

.sports-floating-ticket-panel header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 14px;
    background: #0aa955;
    color: #001b12;
    cursor: grab;
    touch-action: none;
    user-select: none;
}

.sports-floating-ticket-panel.is-dragging header {
    cursor: grabbing;
}

.sports-floating-ticket-panel header strong {
    font-size: 14px;
    font-weight: 950;
}

.sports-floating-ticket-panel header button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(0, 27, 18, 0.16);
    border-radius: 8px;
    background: rgba(0, 27, 18, 0.08);
    color: inherit;
}

.sports-floating-ticket-list {
    display: grid;
    gap: 8px;
    max-height: 240px;
    overflow-y: auto;
    padding: 10px;
    scrollbar-width: none;
}

.sports-floating-ticket-list::-webkit-scrollbar {
    display: none;
}

.sports-floating-ticket-list article {
    display: grid;
    gap: 6px;
    border: 1px solid rgba(6, 224, 91, 0.1);
    border-radius: 8px;
    background: rgba(6, 224, 91, 0.055);
    padding: 10px;
}

.sports-floating-ticket-list article > div,
.sports-floating-ticket-list small {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.sports-floating-ticket-list strong,
.sports-floating-ticket-list b,
.sports-floating-ticket-list em {
    font-style: normal;
    font-weight: 950;
}

.sports-floating-ticket-list span,
.sports-floating-ticket-list p,
.sports-floating-ticket-list small {
    color: rgba(242, 255, 248, 0.72);
    font-size: 11px;
}

.sports-floating-ticket-list p {
    margin: 0;
    color: #ffffff;
    font-size: 12px;
    font-weight: 850;
}

.sports-floating-ticket-panel > button {
    width: calc(100% - 20px);
    min-height: 38px;
    margin: 0 10px 10px;
    border: 0;
    border-radius: 8px;
    background: #0ba84f;
    color: #001b12;
    font-size: 12px;
    font-weight: 950;
}

.sports-mobile-betslip {
    position: fixed;
    left: 10px;
    right: 10px;
    bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 56px);
    z-index: 190;
    color: #f2fff8;
}

.sports-mobile-betslip-card {
    overflow: hidden;
    border: 1px solid rgba(6, 224, 91, 0.18);
    border-radius: 12px;
    background: #003121;
    box-shadow: 0 18px 54px rgba(0, 0, 0, 0.58);
}

.sports-mobile-betslip-card header,
.sports-mobile-betslip-selection div,
.sports-mobile-betslip-stake,
.sports-mobile-betslip-quick,
.sports-mobile-betslip-return {
    display: flex;
    align-items: center;
}

.sports-mobile-betslip-card header {
    justify-content: space-between;
    gap: 10px;
    padding: 12px 14px;
    background: #0ccc61;
    color: #001b12;
}

.sports-mobile-betslip-card header strong {
    font-size: 15px;
    font-weight: 950;
}

.sports-mobile-betslip-card header button {
    width: 34px;
    height: 34px;
    border: 1px solid rgba(0, 27, 18, 0.16);
    border-radius: 8px;
    background: rgba(0, 27, 18, 0.08);
    color: inherit;
}

.sports-mobile-betslip-selections {
    max-height: min(272px, 38svh);
    margin: 0 0 10px;
}

.sports-mobile-betslip-tabs {
    margin: 0 10px 10px;
}

.sports-mobile-betslip-tabs button {
    height: 34px;
    font-size: 11px;
}

.sports-mobile-betslip-selection {
    margin: 10px;
    padding: 10px;
    border-radius: 8px;
    border: 1px solid rgba(6, 224, 91, 0.1);
    background: rgba(6, 224, 91, 0.055);
}

.sports-mobile-betslip-selection div {
    gap: 8px;
}

.sports-mobile-betslip-selection strong {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
}

.sports-mobile-betslip-selection em {
    color: #25d970;
    font-style: normal;
    font-weight: 950;
}

.sports-mobile-betslip-selection button {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 7px;
    background: rgba(0, 21, 16, 0.34);
    color: rgba(242, 255, 248, 0.78);
}

.sports-mobile-betslip-selection p,
.sports-mobile-betslip-selection small {
    display: block;
    margin: 7px 0 0;
    color: rgba(242, 255, 248, 0.64);
    font-size: 11px;
    font-weight: 800;
}

.sports-mobile-betslip-stake {
    gap: 8px;
    margin: 0 10px;
    padding: 10px 12px;
    border-radius: 8px;
    background: rgba(0, 21, 16, 0.72);
}

.sports-mobile-betslip-stake span {
    color: rgba(242, 255, 248, 0.56);
    font-weight: 900;
}

.sports-mobile-betslip-stake input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #ffffff;
    font-size: 16px;
    font-weight: 950;
}

.sports-mobile-betslip-quick {
    gap: 7px;
    padding: 10px 10px 0;
}

.sports-mobile-betslip-quick button {
    height: 30px;
    border: 1px solid rgba(238, 247, 242, 0.09);
    border-radius: 7px;
    background: rgba(0, 21, 16, 0.28);
    color: #f2fff8;
    padding: 0 10px;
    font-size: 11px;
    font-weight: 950;
}

.sports-mobile-betslip-return {
    justify-content: space-between;
    padding: 12px 10px 0;
    color: rgba(242, 255, 248, 0.62);
    font-size: 12px;
    font-weight: 850;
}

.sports-mobile-betslip-return strong {
    color: #25d970;
    font-size: 15px;
    font-weight: 950;
}

.sports-mobile-betslip-submit {
    width: calc(100% - 20px);
    min-height: 44px;
    margin: 12px 10px 10px;
    border: 0;
    border-radius: 8px;
    background: #0ba84f;
    color: #001b12;
    font-size: 15px;
    font-weight: 950;
}

.sports-mobile-betslip-submit:disabled {
    opacity: 0.55;
}

.sportsbook-page {
    background: #00140f;
}

.sportsbook-shell {
    grid-template-columns: 248px minmax(0, 1fr);
}

.sportsbook-rail {
    background: #002016;
    padding: 18px 10px 96px;
}

.sportsbook-sport-button {
    min-height: 41px;
    margin-bottom: 4px;
    padding: 8px 10px;
}

.sportsbook-sport-button.is-active {
    background: rgba(0, 255, 112, 0.1);
    border-color: rgba(0, 255, 112, 0.42);
    box-shadow: inset 0 0 0 1px rgba(0, 255, 112, 0.12), 0 0 0 0 rgba(255, 52, 76, 0.42);
    animation: sportsbook-active-sport-pulse 1.15s ease-in-out infinite;
}

.sportsbook-sport-button.is-active .sportsbook-sport-icon {
    box-shadow: 0 0 0 0 rgba(255, 52, 76, 0.5), 0 0 12px rgba(255, 52, 76, 0.62);
    animation: sportsbook-live-pulse 1.05s ease-in-out infinite;
}

@keyframes sportsbook-active-sport-pulse {
    0%, 100% { box-shadow: inset 0 0 0 1px rgba(0, 255, 112, 0.12), 0 0 0 0 rgba(255, 52, 76, 0.36); }
    50% { box-shadow: inset 0 0 0 1px rgba(0, 255, 112, 0.22), 0 0 0 6px rgba(255, 52, 76, 0); }
}

.sportsbook-sport-count {
    min-width: 28px;
    height: 20px;
    background: rgba(161, 211, 197, 0.12);
    color: #c4d6d0;
    font-weight: 900;
}

.sportsbook-main {
    padding: 18px 20px 110px;
}

.sportsbook-featured-row {
    display: flex;
    gap: 8px;
    margin: 0 0 18px;
    padding: 0 0 2px;
    overflow-x: auto;
    scrollbar-width: none;
}

.sportsbook-featured-row::-webkit-scrollbar {
    display: none;
}

.sportsbook-featured-row button {
    min-width: max-content;
    height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 1px solid rgba(0, 255, 112, 0.22);
    border-radius: 8px;
    background: #064f39;
    color: #eef7f2;
    padding: 0 14px;
    font-size: 12px;
    font-weight: 900;
}

.sportsbook-featured-row button.is-active {
    border-color: #06e05b;
    background: #087447;
}

.sportsbook-featured-row span {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: rgba(255, 255, 255, 0.07);
    flex: 0 0 auto;
}

.sportsbook-featured-row img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

.sportsbook-featured-row[hidden] {
    display: none !important;
}

.sportsbook-heading {
    min-width: 0;
}

.sportsbook-heading-row {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.sportsbook-topbar {
    margin-bottom: 10px;
}

.sportsbook-kicker {
    color: #00ff70;
    font-size: 12px;
}

.sportsbook-topbar h1 {
    font-size: 26px;
    line-height: 1.15;
}

.sportsbook-status {
    height: 36px;
    background: #003423;
    border-color: #007c55;
    box-shadow: inset 0 0 0 1px rgba(0, 255, 112, 0.08);
}

.sportsbook-status .sportsbook-live-dot {
    width: 8px;
    height: 8px;
    background: #ff344c;
    box-shadow: 0 0 0 0 rgba(255, 52, 76, .55), 0 0 10px rgba(255, 52, 76, .85);
    animation: sportsbook-live-pulse 1.05s ease-in-out infinite;
}

.sportsbook-mode-tabs,
.sportsbook-filters {
    width: fit-content;
    border-radius: 8px;
    background: #064f39;
    padding: 6px;
}

.sportsbook-mode-tabs {
    display: flex;
    gap: 6px;
    margin-bottom: 18px;
}

.sportsbook-mode-tabs button,
.sportsbook-filters > button {
    height: 36px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: rgba(238, 247, 242, 0.62);
    padding: 0 15px;
    font-size: 14px;
    font-weight: 850;
}

.sportsbook-mode-tabs button.is-active,
.sportsbook-filters > button.is-active {
    background: #06e05b;
    color: #fff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .28);
}

.sportsbook-filters {
    margin-bottom: 18px;
}

.sportsbook-filters > button:nth-child(2) {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.sportsbook-filters > button:nth-child(2)::before {
    content: "";
    width: 7px;
    height: 7px;
    flex: 0 0 auto;
    border-radius: 999px;
    background: #ff344c;
    box-shadow: 0 0 0 0 rgba(255, 52, 76, .55), 0 0 10px rgba(255, 52, 76, .85);
    animation: sportsbook-live-pulse 1.05s ease-in-out infinite;
}

.sportsbook-search {
    width: 290px;
    height: 36px;
    background: #09271f;
    border-color: rgba(255, 255, 255, 0.08);
}

.sportsbook-title-search {
    width: min(360px, 42vw);
    min-width: 260px;
    flex: 0 1 360px;
}

.sportsbook-market-tabs {
    display: flex;
    gap: 28px;
    min-height: 44px;
    margin-bottom: 12px;
    border-bottom: 1px solid #00754d;
}

.sportsbook-market-tabs button {
    position: relative;
    border: 0;
    background: transparent;
    color: rgba(238, 247, 242, 0.6);
    font-size: 14px;
    font-weight: 800;
}

.sportsbook-market-tabs button.is-active {
    color: #eef7f2;
}

.sportsbook-market-tabs button.is-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: #06e05b;
}

.sportsbook-summary {
    margin-top: -6px;
    margin-bottom: 10px;
}

.sportsbook-content {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 14px;
}

.sportsbook-list {
    gap: 18px;
}

.sportsbook-category-section {
    display: grid;
    gap: 10px;
    min-width: 0;
}

.sportsbook-category-title {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #eef7f2;
    font-size: 18px;
    font-weight: 900;
}

.sportsbook-category-title img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

.sportsbook-category-title span {
    color: rgba(238, 247, 242, 0.62);
    font-size: 12px;
    font-weight: 800;
}

.sportsbook-league-group {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(0, 255, 112, 0.14);
    border-radius: 8px;
    background: #002419;
}

.sportsbook-league-head {
    min-width: 0;
    min-height: 48px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0 12px;
    background: rgba(0, 62, 43, 0.88);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.sportsbook-league-head > button:first-child {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 0;
    background: transparent;
    color: #eef7f2;
    text-align: left;
    font-size: 14px;
    font-weight: 850;
}

.sportsbook-league-head > button:first-child span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-league-head img,
.sportsbook-league-link img {
    width: 20px;
    height: 20px;
    border-radius: 5px;
    object-fit: contain;
    flex: 0 0 auto;
}

.sportsbook-league-head > span {
    color: rgba(238, 247, 242, 0.55);
    font-size: 12px;
    font-weight: 850;
}

.sportsbook-league-head > button:last-child {
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: rgba(238, 247, 242, 0.62);
}

.sportsbook-league-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 8px;
    min-width: 0;
}

.sportsbook-match-card {
    min-width: 0;
    max-width: 100%;
    border-left-width: 1px;
    background: #002f22;
    padding: 10px 12px 12px;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.025);
}

.sportsbook-match-card:hover,
.sportsbook-match-card.is-selected {
    transform: none;
    border-color: rgba(238, 247, 242, 0.28);
}

.sportsbook-match-card.is-no-early-payout {
    border-color: rgba(255, 195, 0, 0.24);
    border-left-color: rgba(255, 195, 0, 0.72);
    background: linear-gradient(180deg, rgba(0, 48, 35, 0.94), rgba(0, 28, 22, 0.98));
}

.sportsbook-match-head {
    min-width: 0;
    justify-content: space-between;
    margin: 0 0 9px;
    padding-bottom: 9px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.sportsbook-league-link {
    min-width: 0;
    flex: 1;
    display: flex;
    align-items: center;
    gap: 6px;
    border: 0;
    background: transparent;
    color: rgba(238, 247, 242, 0.58);
    text-align: left;
}

.sportsbook-league-link img {
    width: 16px;
    height: 16px;
}

.sportsbook-league-link img.sportsbook-region-flag {
    width: 18px;
    height: 12px;
    border-radius: 2px;
    object-fit: cover;
}

.sportsbook-league-link span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 11px;
    font-weight: 800;
}

.sportsbook-match-tools {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    flex: 0 0 auto;
    max-width: 58%;
}

.sportsbook-match-time {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: rgba(238, 247, 242, 0.8);
    font-size: 11px;
    font-weight: 850;
}

.sportsbook-match-time b {
    color: rgba(238, 247, 242, 0.52);
}

.sportsbook-live-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: transparent;
    color: #ff4f62;
    padding: 0;
    font-size: 11px;
}

.sportsbook-live-chip em {
    font-style: normal;
}

.sportsbook-early-chip {
    max-width: 118px;
    min-height: 18px;
    display: inline-flex;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    align-items: center;
    border-radius: 999px;
    padding: 0 6px;
    font-size: 9px;
    font-weight: 900;
    text-transform: uppercase;
    white-space: nowrap;
}

.sportsbook-early-chip.is-unavailable {
    border: 1px solid rgba(255, 195, 0, 0.28);
    background: rgba(255, 195, 0, 0.08);
    color: #ffc300;
}

.sportsbook-match-date-row {
    min-height: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: -2px 0 8px;
    color: rgba(238, 247, 242, 0.62);
    font-size: 11px;
    font-weight: 850;
}

.sportsbook-match-date-row strong {
    color: #06e05b;
    font-size: 11px;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.sportsbook-tracker-button {
    display: none;
    width: 18px;
    height: 18px;
    border: 0;
    background: transparent;
    color: rgba(238, 247, 242, 0.52);
    padding: 0;
}

.sportsbook-teams-button {
    width: 100%;
    display: grid;
    gap: 6px;
    border: 0;
    background: transparent;
    color: #eef7f2;
    text-align: left;
    padding: 0;
}

.sportsbook-teams-button span {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 750;
}

.sportsbook-teams-button img,
.sportsbook-teams-button b {
    width: 20px;
    height: 20px;
    border-radius: 999px;
    flex: 0 0 auto;
}

.sportsbook-teams-button img {
    object-fit: cover;
}

.sportsbook-teams-button b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0a5a3d;
    color: #fff;
    font-size: 8px;
    font-weight: 900;
}

.sportsbook-teams-button strong {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 13px;
    font-weight: 750;
}

.sportsbook-teams-button em {
    color: #ffffff;
    font-size: 13px;
    font-style: normal;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
}

.sportsbook-card-row {
    margin-top: 8px;
    gap: 6px;
}

.sportsbook-card-row span {
    min-height: 18px;
    padding: 0 6px;
    font-size: 10px;
}

.sportsbook-market-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sportsbook-market-head span {
    min-width: 0;
    overflow: hidden;
    color: rgba(238, 247, 242, 0.58);
    font-size: 10px;
    font-weight: 900;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.sportsbook-market-head button {
    border: 0;
    background: transparent;
    color: #06e05b;
    font-size: 11px;
    font-weight: 900;
}

.sportsbook-market-actions {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.sportsbook-mobile-stats-ball {
    display: none;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(6, 224, 91, 0.28) !important;
    border-radius: 999px;
    background: rgba(0, 54, 40, 0.92) !important;
    padding: 0 !important;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 0 3px rgba(6, 224, 91, 0.08);
}

.sportsbook-mobile-stats-ball img {
    width: 24px;
    height: 24px;
    object-fit: contain;
    animation: sports-floating-ball-spin 2.8s linear infinite;
    pointer-events: none;
}

.sportsbook-odds {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5px;
    margin-top: 7px;
}

.sportsbook-odds button {
    min-height: 44px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    background: #07392a;
    border-color: rgba(255, 255, 255, 0.08);
    padding: 5px 4px;
}

.sportsbook-odds button strong {
    color: #eef7f2;
    font-size: 14px;
    line-height: 1;
    margin: 0;
    font-variant-numeric: tabular-nums;
}

.sportsbook-odds button span {
    max-width: 100%;
    color: rgba(238, 247, 242, 0.58);
    font-size: 10px;
    font-weight: 850;
    line-height: 1.15;
    text-align: center;
    text-transform: uppercase;
}

.sportsbook-odds button.is-picked {
    background: #06e05b;
}

.sportsbook-tracker {
    background: #002f22;
}

.sportsbook-stats-panel {
    position: sticky;
    top: 88px;
    min-width: 0;
}

.sportsbook-stats-card {
    overflow: hidden;
    border: 1px solid rgba(6, 224, 91, 0.2);
    border-radius: 8px;
    background: #002f22;
    padding: 12px;
}

.sportsbook-stats-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.sportsbook-stats-head div {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.sportsbook-stats-head span {
    color: rgba(238, 247, 242, 0.58);
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sportsbook-stats-head strong {
    color: #06e05b;
    font-size: 12px;
    font-weight: 950;
}

.sportsbook-stats-head button {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(238, 247, 242, 0.72);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sportsbook-stats-versus {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 74px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    margin-top: 12px;
}

.sportsbook-stats-versus > span {
    min-width: 0;
    display: grid;
    justify-items: center;
    gap: 6px;
    color: #ffffff;
    text-align: center;
}

.sportsbook-stats-versus > span:last-child {
    justify-items: center;
}

.sportsbook-stats-versus img,
.sportsbook-stats-versus > span > b {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    object-fit: contain;
}

.sportsbook-stats-versus > span > b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0a5a3d;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
}

.sportsbook-stats-versus strong {
    max-width: 100%;
    overflow: hidden;
    font-size: 11px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sportsbook-stats-versus > div {
    display: grid;
    justify-items: center;
    gap: 3px;
}

.sportsbook-stats-versus > div strong {
    color: #06e05b;
    font-size: 18px;
    font-variant-numeric: tabular-nums;
}

.sportsbook-stats-versus > div b {
    font: inherit;
}

.sportsbook-stats-versus > div em {
    color: rgba(238, 247, 242, 0.6);
    font-size: 10px;
    font-style: normal;
    font-weight: 850;
    text-align: center;
}

.sportsbook-coverage-row {
    min-height: 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.sportsbook-coverage-row span {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: rgba(6, 224, 91, 0.1);
    color: #06e05b;
    padding: 0 8px;
    font-size: 10px;
    font-weight: 900;
}

.sportsbook-coverage-row span.is-muted {
    background: rgba(255, 195, 0, 0.08);
    color: #ffc300;
}

.sports-match-detail {
    position: fixed;
    top: 78px;
    right: 16px;
    bottom: 16px;
    width: min(560px, calc(100vw - 32px));
    z-index: 65;
    pointer-events: none;
}

.sports-match-detail.is-open {
    pointer-events: auto;
}

.sports-match-detail-card {
    height: 100%;
    border: 1px solid rgba(6, 224, 91, 0.22);
    border-radius: 8px;
    background: #00251b;
    box-shadow: 0 22px 80px rgba(0, 0, 0, 0.42);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.sports-match-detail-head,
.sports-match-scoreline,
.sports-match-market-tabs {
    flex: 0 0 auto;
}

.sports-match-detail-head {
    min-height: 64px;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.sports-match-detail-head button {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: #eef7f2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sports-match-detail-head div {
    min-width: 0;
    display: grid;
    gap: 2px;
    text-align: center;
}

.sports-match-detail-head span,
.sports-match-detail-head em {
    min-width: 0;
    overflow: hidden;
    color: rgba(238, 247, 242, 0.58);
    font-size: 11px;
    font-style: normal;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-detail-head strong {
    min-width: 0;
    overflow: hidden;
    color: #fff;
    font-size: 14px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-scoreline {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 100px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 14px 12px;
    background: rgba(0, 54, 40, 0.74);
}

.sports-match-scoreline > span {
    min-width: 0;
    display: grid;
    justify-items: center;
    gap: 6px;
    text-align: center;
}

.sports-match-scoreline img,
.sports-match-scoreline > span > b {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    object-fit: cover;
}

.sports-match-scoreline > span > b {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #0a5a3d;
    color: #fff;
    font-size: 10px;
    font-weight: 950;
}

.sports-match-scoreline > span strong {
    max-width: 100%;
    overflow: hidden;
    color: #fff;
    font-size: 12px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-scoreline > div {
    display: grid;
    justify-items: center;
    gap: 4px;
}

.sports-match-scoreline > div strong {
    color: #06e05b;
    font-size: 22px;
    font-weight: 950;
    font-variant-numeric: tabular-nums;
}

.sports-match-scoreline > div strong b {
    font: inherit;
}

.sports-match-scoreline > div em {
    color: rgba(238, 247, 242, 0.6);
    font-size: 10px;
    font-style: normal;
    font-weight: 850;
}

.sports-match-stats-toggle,
.sports-match-stats-drawer {
    display: none;
}

.sports-match-stats-toggle {
    width: calc(100% - 24px);
    min-height: 62px;
    align-items: center;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 10px;
    margin: 10px 12px 0;
    border: 1px solid rgba(6, 224, 91, 0.24);
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(6, 224, 91, 0.14), rgba(0, 54, 40, 0.72));
    color: #eef7f2;
    padding: 8px 10px;
    text-align: left;
}

.sports-match-stats-toggle span {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(6, 224, 91, 0.16);
    color: #06e05b;
}

.sports-match-stats-toggle strong {
    min-width: 0;
    overflow: hidden;
    color: #fff;
    font-size: 13px;
    font-weight: 950;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-stats-toggle em {
    color: #06e05b;
    font-size: 10px;
    font-style: normal;
    font-weight: 950;
    white-space: nowrap;
}

.sports-match-stats-toggle.is-open {
    border-color: #06e05b;
    background: #004532;
}

.sports-match-stats-drawer {
    margin: 10px 12px 0;
    border: 1px solid rgba(6, 224, 91, 0.2);
    border-radius: 10px;
    background: #002f22;
    padding: 10px;
}

.sports-match-stats-drawer > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.sports-match-stats-drawer > header div {
    min-width: 0;
    display: grid;
    gap: 2px;
}

.sports-match-stats-drawer > header span {
    color: rgba(238, 247, 242, 0.58);
    font-size: 10px;
    font-weight: 950;
    text-transform: uppercase;
}

.sports-match-stats-drawer > header strong {
    color: #06e05b;
    font-size: 12px;
    font-weight: 950;
}

.sports-match-stats-drawer > header button {
    width: 32px;
    height: 32px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(238, 247, 242, 0.72);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.sportsbook-timeline.is-mobile-detail {
    margin-top: 10px;
}

.sportsbook-pitch.is-mobile-detail {
    height: 210px;
    margin-top: 12px;
}

.sportsbook-coverage-row.is-mobile-detail,
.sportsbook-stats.is-mobile-detail,
.sportsbook-card-incidents.is-mobile-detail {
    margin-top: 10px;
}

.sports-match-market-tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 10px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    scrollbar-width: none;
}

.sports-match-market-tabs::-webkit-scrollbar {
    display: none;
}

.sports-match-market-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 10px 12px 0;
}

.sports-match-market-tools label {
    min-width: 0;
    height: 34px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(0, 18, 13, 0.72);
    color: rgba(238, 247, 242, 0.58);
    padding: 0 10px;
}

.sports-match-market-tools input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #eef7f2;
    font: inherit;
    font-size: 11px;
    font-weight: 850;
}

.sports-match-market-tools input::placeholder {
    color: rgba(238, 247, 242, 0.44);
}

.sports-match-market-tools span {
    min-width: 44px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.06);
    color: rgba(238, 247, 242, 0.64);
    font-size: 10px;
    font-weight: 950;
}

.sports-match-market-tabs button {
    height: 34px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(238, 247, 242, 0.68);
    flex: 0 0 auto;
    padding: 0 12px;
    font-size: 11px;
    font-weight: 900;
}

.sports-match-market-tabs button.is-active {
    border-color: #06e05b;
    background: #06e05b;
    color: #001510;
}

.sports-match-market-more {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    max-height: 212px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0 12px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    scrollbar-width: none;
}

.sports-match-market-more::-webkit-scrollbar {
    display: none;
}

.sports-match-market-more button {
    width: 100%;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.045);
    color: rgba(238, 247, 242, 0.74);
    padding: 0 9px;
    font-size: 11px;
    font-weight: 950;
    text-align: left;
}

.sports-match-market-more button.is-active {
    border-color: #06e05b;
    background: #06e05b;
    color: #001510;
}

.sports-match-market-more button span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-market-more strong {
    min-width: 24px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(6, 224, 91, 0.16);
    color: #eef7f2;
    font-size: 10px;
}

.sports-match-market-more-trigger strong {
    min-width: 20px;
    height: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.18);
    color: currentColor;
    font-size: 10px;
}

.sports-match-detail-body {
    min-height: 0;
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 10px 12px 14px;
}

.sportsbook-loading.is-compact {
    min-height: 90px;
    margin: 0;
}

.sports-match-market-group {
    border-radius: 8px;
    background: rgba(0, 54, 40, 0.74);
    overflow: hidden;
}

.sports-match-market-group + .sports-match-market-group {
    margin-top: 8px;
}

.sports-match-market-group header {
    min-height: 36px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 0 10px;
    background: rgba(0, 18, 14, 0.38);
}

.sports-match-market-group header strong {
    min-width: 0;
    overflow: hidden;
    color: #eef7f2;
    font-size: 12px;
    font-weight: 900;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-market-group header span {
    color: rgba(238, 247, 242, 0.52);
    font-size: 10px;
    font-weight: 850;
    white-space: nowrap;
}

.sports-match-market-group > div {
    display: grid;
    gap: 4px;
    padding: 6px;
}

.sports-match-market-group button {
    min-height: 36px;
    border: 0;
    border-radius: 6px;
    background: #07392a;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 0 10px;
    cursor: pointer;
}

.sports-match-market-group button:hover,
.sports-match-market-group button.is-picked {
    background: #06e05b;
    color: #001510;
}

.sports-match-market-group button span {
    min-width: 0;
    overflow: hidden;
    font-size: 11px;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-match-market-group button strong {
    font-size: 12px;
    font-weight: 950;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 1279px) {
    .sportsbook-content {
        grid-template-columns: 1fr;
    }

    .sportsbook-stats-panel {
        display: none;
    }
}

@media (max-width: 1023px) {
    .sportsbook-shell {
        grid-template-columns: 1fr;
    }

    .sportsbook-rail {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        border-right: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        padding: 10px 12px;
        scrollbar-width: none;
    }

    .sportsbook-rail::-webkit-scrollbar {
        display: none;
    }

    .sportsbook-mobile-league-panel {
        display: block;
        min-width: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        background: #001510;
        padding: 8px 12px 10px;
    }

    .sportsbook-mobile-league-title {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 8px;
        color: rgba(238, 247, 242, 0.58);
        font-size: 10px;
        font-weight: 950;
        text-transform: uppercase;
    }

    .sportsbook-mobile-league-title span {
        color: #06e05b;
    }

    .sportsbook-mobile-league-title strong {
        color: rgba(238, 247, 242, 0.68);
        font: inherit;
    }

    .sportsbook-mobile-league-panel .sportsbook-nav-tree {
        max-height: 276px;
        overflow-y: auto;
        padding-right: 2px;
        scrollbar-width: none;
    }

    .sportsbook-mobile-league-panel .sportsbook-nav-tree::-webkit-scrollbar {
        display: none;
    }

    .sportsbook-mobile-league-panel .sportsbook-region-button {
        min-height: 36px;
        border-radius: 9px;
        background: rgba(255, 255, 255, 0.05);
    }

    .sportsbook-mobile-league-panel .sportsbook-region-leagues {
        padding-left: 30px;
    }

    .sportsbook-rail-title,
    .sportsbook-league-button,
    .sportsbook-rail > .sportsbook-nav-tree,
    .sportsbook-rail-title.is-secondary {
        display: none;
    }

    .sportsbook-sport-button {
        width: auto;
        flex: 0 0 auto;
        min-height: 38px;
        height: 38px;
        max-height: 38px;
        border-radius: 999px;
        padding: 6px 12px;
        transform: none;
        box-shadow: none;
    }

    .sportsbook-sport-button:hover,
    .sportsbook-sport-button.is-active {
        transform: none;
        box-shadow: none;
    }

    .sportsbook-sport-icon,
    .sportsbook-sport-icon img {
        width: 24px;
        height: 24px;
    }

    .sportsbook-sport-name {
        white-space: nowrap;
    }

    .sportsbook-sport-chevron {
        display: none;
    }

    .sportsbook-sport-count {
        display: none;
    }

    .sportsbook-content {
        grid-template-columns: 1fr;
    }

    .sportsbook-mobile-stats-ball {
        display: inline-flex;
    }

    .sportsbook-league-grid {
        grid-template-columns: 1fr;
    }

    .sportsbook-tracker {
        position: static;
        order: -1;
    }

    .sports-betslip {
        display: none !important;
    }

    .sports-floating-ball {
        right: 14px;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 88px);
        width: 58px;
        height: 58px;
    }

    .sports-floating-ball img {
        width: 47px;
        height: 47px;
    }

    .sports-floating-ticket-panel {
        left: 10px !important;
        right: 10px !important;
        top: auto !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 154px) !important;
        width: auto;
    }

    .sports-mobile-betslip {
        display: block;
    }
}

@media (max-width: 640px) {
    .sportsbook-page,
    .sportsbook-main,
    .sports-match-detail-body {
        scrollbar-width: none;
    }

    .sportsbook-page::-webkit-scrollbar,
    .sportsbook-main::-webkit-scrollbar,
    .sports-match-detail-body::-webkit-scrollbar {
        display: none;
    }

    .sportsbook-main {
        display: flex;
        flex-direction: column;
        padding: 14px 10px 90px;
    }

    .sportsbook-topbar {
        order: 1;
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
        margin-bottom: 8px;
    }

    .sportsbook-heading {
        order: 2;
        width: 100%;
    }

    .sportsbook-heading-row {
        width: 100%;
        gap: 8px;
    }

    .sportsbook-heading h1 {
        font-size: 24px;
        flex: 0 0 auto;
    }

    .sportsbook-status {
        order: 1;
        width: 100%;
        height: 30px;
        justify-content: center;
        gap: 7px;
        border-radius: 999px;
        font-size: 11px;
    }

    .sportsbook-status .sportsbook-live-dot {
        width: 8px;
        height: 8px;
        background: #ff344c;
        box-shadow: 0 0 0 0 rgba(255, 52, 76, .55), 0 0 10px rgba(255, 52, 76, .85);
        animation: sportsbook-live-pulse 1.05s ease-in-out infinite;
    }

    .sportsbook-featured-row {
        order: 4;
        margin: 0 0 8px;
        padding: 0 0 2px;
        gap: 7px;
    }

    .sportsbook-featured-row button {
        height: 38px;
        padding: 0 11px;
        font-size: 11px;
    }

    .sportsbook-featured-row span {
        width: 23px;
        height: 23px;
    }

    .sportsbook-mode-tabs {
        display: none;
    }

    .sportsbook-mode-tabs,
    .sportsbook-filters,
    .sportsbook-market-tabs {
        width: 100%;
        overflow-x: auto;
        flex-wrap: nowrap;
        scrollbar-width: none;
    }

    .sportsbook-mode-tabs::-webkit-scrollbar,
    .sportsbook-filters::-webkit-scrollbar,
    .sportsbook-market-tabs::-webkit-scrollbar {
        display: none;
    }

    .sportsbook-filters {
        order: 3;
        gap: 4px;
        margin-bottom: 8px;
        padding: 4px;
        border-radius: 8px;
    }

    .sportsbook-filters > button,
    .sportsbook-market-tabs button {
        flex: 0 0 auto;
    }

    .sportsbook-filters > button {
        height: 29px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        padding: 0 10px;
        border-radius: 6px;
        font-size: 12px;
        line-height: 1;
    }

    .sportsbook-filters > button:nth-child(2)::before {
        content: "";
        width: 7px;
        height: 7px;
        flex: 0 0 auto;
        border-radius: 999px;
        background: #ff344c;
        box-shadow: 0 0 0 0 rgba(255, 52, 76, .55), 0 0 10px rgba(255, 52, 76, .85);
        animation: sportsbook-live-pulse 1.05s ease-in-out infinite;
    }

    .sportsbook-search {
        width: auto;
        height: 29px;
        flex: 1 1 150px;
        min-width: 150px;
        border-radius: 6px;
    }

    .sportsbook-title-search {
        min-width: 0;
        width: auto;
        flex: 1 1 auto;
    }

    .sportsbook-search input {
        font-size: 11px;
    }

    .sportsbook-market-tabs {
        order: 5;
        min-height: 34px;
        margin-bottom: 8px;
    }

    .sportsbook-market-tabs button {
        font-size: 12px;
    }

    .sportsbook-summary {
        order: 6;
    }

    .sportsbook-content {
        order: 7;
        min-width: 0;
        overflow-x: hidden;
    }

    .sportsbook-category-section,
    .sportsbook-league-group,
    .sportsbook-league-grid,
    .sportsbook-match-card {
        min-width: 0;
        max-width: 100%;
    }

    .sportsbook-league-grid {
        padding: 6px;
        gap: 8px;
    }

    .sportsbook-match-card {
        padding: 9px 10px 11px;
        overflow: hidden;
    }

    .sportsbook-match-head {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 6px;
        align-items: start;
    }

    .sportsbook-league-link {
        width: 100%;
        max-width: 100%;
    }

    .sportsbook-match-tools {
        width: 100%;
        max-width: 100%;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 5px;
    }

    .sportsbook-match-time,
    .sportsbook-live-chip,
    .sportsbook-early-chip {
        flex: 0 1 auto;
    }

    .sportsbook-early-chip {
        max-width: min(130px, 100%);
    }

    .sportsbook-score-row {
        display: grid;
        grid-template-columns: 1fr 78px 1fr;
        gap: 8px;
    }

    .sportsbook-team {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .sportsbook-team.is-away {
        align-items: flex-end;
    }

    .sportsbook-team strong {
        max-width: 100%;
        font-size: 11px;
    }

    .sportsbook-team-mark {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .sportsbook-score {
        width: 78px;
        flex-basis: 78px;
    }

    .sportsbook-score strong {
        font-size: 20px;
    }

    .sportsbook-odds {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        display: grid;
    }

    .sportsbook-pitch {
        height: 180px;
    }

    .sports-betslip {
        right: 10px;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 56px);
        width: calc(100vw - 20px);
    }

    .sports-betslip-card {
        max-height: 82svh;
        overflow-y: auto;
    }

    .sports-betslip-stake {
        align-items: stretch;
        flex-direction: column;
    }

    .sports-match-detail {
        inset: 0;
        width: 100vw;
        height: 100dvh;
        z-index: 880;
    }

    .sports-match-detail-card {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
    }

    .sports-match-scoreline {
        grid-template-columns: minmax(0, 1fr) 82px minmax(0, 1fr);
    }

    .sports-match-scoreline > div strong {
        font-size: 18px;
    }

    .sports-match-stats-toggle {
        display: grid;
    }

    .sports-match-stats-drawer {
        display: block;
    }
}

@keyframes sportsbook-live-pulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 52, 76, .52), 0 0 8px rgba(255, 52, 76, .8);
    }
    50% {
        transform: scale(.86);
        box-shadow: 0 0 0 6px rgba(255, 52, 76, 0), 0 0 14px rgba(255, 52, 76, 1);
    }
}
.sports-featured-section {
    width: 100%;
    overflow: hidden;
}

.sports-featured-section .OHoF8 {
    min-height: 32px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.sports-featured-section .OHoF8 .title {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: 0;
}

.sports-featured-section .sports-featured-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sports-featured-section .sports-featured-controls button {
    width: 26px;
    height: 26px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: rgba(255, 255, 255, .72);
    cursor: pointer;
}

.sports-featured-section .sports-featured-controls button:hover {
    color: #ffffff;
}

.sports-featured-section .\-JVa3 {
    width: 100%;
    min-width: 0;
}

.sports-featured-section .rpneC.uyA-x.H3vO2 {
    display: flex;
    gap: 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.sports-featured-section .rpneC.uyA-x.H3vO2::-webkit-scrollbar {
    display: none;
}

.sports-featured-section .peBY3 {
    flex: 0 0 400px;
    width: 400px;
    max-width: calc(100vw - 32px);
    scroll-snap-align: start;
}

.sports-featured-section .KDpIV {
    position: relative;
    isolation: isolate;
    height: 198px;
    display: grid;
    grid-template-columns: minmax(0, 62%) minmax(0, 38%);
    overflow: hidden;
    border-radius: 11px;
    background: rgb(var(--sport-bg, 10, 40, 22));
    color: #ffffff;
    cursor: pointer;
    text-decoration: none;
}

.sports-featured-section .KDpIV::before,
.sports-featured-section .KDpIV::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 5;
    border-radius: inherit;
    pointer-events: none;
}

.sports-featured-section .KDpIV::before {
    background:
        linear-gradient(116deg, transparent 0 16%, rgba(255, 255, 255, .18) 24%, rgba(255, 255, 255, .045) 36%, transparent 52%),
        radial-gradient(ellipse at 78% 8%, rgba(255, 255, 255, .22), transparent 34%),
        linear-gradient(180deg, rgba(255, 255, 255, .14), transparent 22%, transparent 72%, rgba(255, 255, 255, .08));
    mix-blend-mode: screen;
    opacity: .72;
}

.sports-featured-section .KDpIV::after {
    top: auto;
    height: 45%;
    background:
        linear-gradient(0deg, rgba(255, 255, 255, .10), transparent 66%),
        linear-gradient(180deg, rgba(255, 255, 255, .12), transparent);
    mask-image: linear-gradient(to top, rgba(0, 0, 0, .68), transparent);
    opacity: .45;
    transform: scaleY(-1);
}

.sports-featured-section .KDpIV:focus-visible {
    outline: 2px solid rgb(var(--sport-color, 34, 197, 94));
    outline-offset: 3px;
}

.sports-featured-section ._0JfuD {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-position: center;
    background-size: cover;
    opacity: .78;
}

.sports-featured-section ._0JfuD::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10%;
    height: 58%;
    background: inherit;
    background-position: center bottom;
    background-size: cover;
    opacity: .34;
    filter: blur(.7px) saturate(1.12) contrast(1.04);
    transform: scaleY(-1) translateY(-6%);
    transform-origin: bottom;
    mix-blend-mode: screen;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .76), rgba(0, 0, 0, .28) 48%, transparent 92%);
    pointer-events: none;
}

.sports-featured-section .Fwn77 {
    position: relative;
    z-index: 2;
    min-width: 0;
    padding: 18px 16px 14px;
    isolation: isolate;
}

.sports-featured-section .Fwn77::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 11px 0 0 11px;
    background:
        linear-gradient(90deg,
            rgba(0, 29, 21, .92) 0%,
            rgba(0, 44, 31, .86) 52%,
            rgba(0, 54, 40, .42) 82%,
            rgba(0, 54, 40, 0) 100%
        );
    pointer-events: none;
}

.sports-featured-section ._6pobR {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.sports-featured-section .vA1r6 {
    min-height: 18px;
    padding: 2px 7px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 4px;
    background: rgba(255, 255, 255, .24);
    color: rgba(255, 255, 255, .86);
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}

.sports-featured-section .vA1r6 svg {
    width: 10px;
    height: 10px;
}

.sports-featured-section .nCKk5 {
    margin-top: 8px;
    display: grid;
    gap: 3px;
}

.sports-featured-section .sports-featured-league-row {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 5px;
}

.sports-featured-section .sports-featured-league-icon,
.sports-featured-section .sports-featured-region-flag {
    width: 15px;
    height: 15px;
    flex: 0 0 15px;
    object-fit: contain;
}

.sports-featured-section .sports-featured-region-flag {
    width: 17px;
    border-radius: 2px;
}

.sports-featured-section .sports-featured-status-dot {
    width: 6px;
    height: 6px;
    display: inline-block;
    border-radius: 999px;
    background: rgba(255,255,255,.68);
}

.sports-featured-section .vA1r6.is-live .sports-featured-status-dot {
    background: #ff344c;
    box-shadow: 0 0 0 0 rgba(255, 52, 76, .58), 0 0 10px rgba(255, 52, 76, .9);
    animation: sportsLivePulse 1.15s ease-in-out infinite;
}

@keyframes sportsLivePulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 52, 76, .58), 0 0 10px rgba(255, 52, 76, .9);
    }
    50% {
        transform: scale(.84);
        box-shadow: 0 0 0 5px rgba(255, 52, 76, 0), 0 0 14px rgba(255, 52, 76, 1);
    }
}

.sports-featured-section .wCYqa {
    min-width: 0;
    overflow: hidden;
    color: rgb(var(--sport-color, 34, 197, 94));
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.sports-featured-section ._5R7p6 {
    color: rgba(255, 255, 255, .74);
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
}

.sports-featured-section .F7eXS {
    margin-top: 13px;
    display: grid;
    gap: 8px;
    min-width: 0;
}

.sports-featured-section .Xoc8W.krjkX {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.sports-featured-section .gf732 {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    object-fit: contain;
}

.sports-featured-section .wsb0q {
    min-width: 0;
    overflow: hidden;
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sports-featured-section .pTaxy {
    width: 100%;
    margin-top: auto;
}

.sports-featured-section ._2qfya {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 7px;
}

.sports-featured-section .OEuMK {
    min-width: 0;
    height: 48px;
    padding: 6px 7px;
    display: grid;
    align-content: center;
    gap: 4px;
    border: 0;
    border-radius: 5px;
    background: rgba(0, 0, 0, .42);
    color: #ffffff;
    cursor: pointer;
    text-align: left;
}

.sports-featured-section .CfYua {
    overflow: hidden;
    color: rgba(255, 255, 255, .72);
    font-size: 9px;
    font-weight: 800;
    line-height: 1;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.sports-featured-section .GzWMJ {
    color: #ffffff;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;
}

.sports-featured-section .wnQPu {
    position: relative;
    min-width: 0;
    overflow: hidden;
}

.sports-featured-section .oXQcr {
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(90deg, rgba(10, 40, 22, .88), rgba(10, 40, 22, .05) 38%, rgba(10, 40, 22, 0));
}

.sports-featured-section .dTVoD {
    position: absolute;
    inset: 0;
    z-index: 1;
    background-position: center;
    background-size: cover;
}

.sports-featured-section .dTVoD::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 48%;
    background: inherit;
    background-position: center bottom;
    background-size: cover;
    filter: blur(.45px) saturate(1.08);
    opacity: .28;
    transform: scaleY(-1) translateY(-4%);
    transform-origin: bottom;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .78), transparent 86%);
    mix-blend-mode: screen;
    pointer-events: none;
}

.sports-featured-section .sports-featured-cover-reflection {
    position: absolute;
    left: -4%;
    right: -4%;
    bottom: -7%;
    height: 62%;
    z-index: 2;
    background-position: center bottom;
    background-size: cover;
    opacity: .56;
    filter: blur(.75px) saturate(1.22) contrast(1.08);
    transform: scaleY(-1) translateY(-2%);
    transform-origin: bottom;
    mix-blend-mode: screen;
    mask-image: linear-gradient(to bottom, rgba(0, 0, 0, .9), rgba(0, 0, 0, .48) 42%, rgba(0, 0, 0, .16) 68%, transparent 94%);
    pointer-events: none;
}

.sports-featured-section .wnQPu::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 58%;
    z-index: 4;
    background:
        linear-gradient(0deg, rgba(255, 255, 255, .16), rgba(255, 255, 255, .04) 34%, transparent 72%),
        linear-gradient(90deg, rgba(0, 24, 16, .5), rgba(0, 54, 36, .12) 54%, rgba(255, 255, 255, .06));
    opacity: .7;
    mix-blend-mode: screen;
    mask-image: linear-gradient(to top, rgba(0, 0, 0, .72), transparent 90%);
    pointer-events: none;
}

.sports-featured-section .wnQPu::before {
    content: "";
    position: absolute;
    left: 5%;
    right: 5%;
    bottom: 8%;
    height: 34%;
    z-index: 5;
    border-radius: 50%;
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, .22), rgba(255, 255, 255, .05) 46%, transparent 72%);
    filter: blur(7px);
    opacity: .42;
    mix-blend-mode: screen;
    pointer-events: none;
}

.sports-featured-section .QypUs {
    position: absolute;
    inset: 0;
    z-index: 3;
    background:
        radial-gradient(circle at 62% 46%, rgba(255, 207, 47, .34), transparent 0 2px, transparent 3px),
        radial-gradient(circle at 72% 40%, rgba(255, 207, 47, .42), transparent 0 2px, transparent 3px),
        linear-gradient(90deg, transparent, rgba(0, 0, 0, .12));
    pointer-events: none;
}

@media (max-width: 767px) {
    .sports-featured-section .OHoF8 .title {
        font-size: 18px;
    }

    .sports-featured-section .peBY3 {
        flex-basis: min(400px, calc(100vw - 24px));
        width: min(400px, calc(100vw - 24px));
    }

    .sports-featured-section .KDpIV {
        height: 198px;
    }
}

@keyframes sidebarBonusGlow {
    0%, 100% {
        opacity: .42;
        transform: translateY(-50%) scale(.96);
    }
    50% {
        opacity: .82;
        transform: translateY(-50%) scale(1.05);
    }
}

@keyframes sidebarBonusGiftPulse {
    0%, 100% {
        transform: translateY(-50%) rotate(336deg) scale(1);
    }
    50% {
        transform: translateY(-52%) rotate(336deg) scale(1.06);
    }
}

@keyframes cassSurpriseFloat {
    0%, 100% {
        transform: translateY(0) rotate(-9deg);
    }
    50% {
        transform: translateY(-10px) rotate(8deg);
    }
}

@keyframes cassSurpriseOpen {
    0%, 100% {
        transform: translateY(0) rotate(-18deg) scale(1);
    }
    50% {
        transform: translateY(-16px) rotate(18deg) scale(1.08);
    }
}

@keyframes cassSurpriseReveal {
    from {
        opacity: 0;
        transform: translateY(10px) scale(.9);
    }
    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes cassSurpriseMarquee {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}

@keyframes cassOriginalBlindFloat {
    0%, 100% {
        transform: translateY(0) rotate(-4deg);
    }
    50% {
        transform: translateY(calc(var(--bb) * -.08)) rotate(4deg);
    }
}

@keyframes cassOriginalBlindOpen {
    0%, 100% {
        transform: rotate(-12deg) scale(1);
    }
    50% {
        transform: rotate(12deg) scale(1.06);
    }
}

@keyframes cassSurpriseOriginalBoxOpening {
    0% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(0, 0, 0) rotateZ(-7deg) rotateY(-18deg) scale(1);
    }
    20% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(calc(var(--bb) * .04), calc(var(--bb) * -.03), 0) rotateZ(7deg) rotateY(18deg) scale(1.025);
    }
    42% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(calc(var(--bb) * -.03), calc(var(--bb) * .015), 0) rotateZ(-5deg) rotateY(-13deg) scale(1.012);
    }
    64% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(calc(var(--bb) * .025), calc(var(--bb) * -.02), 0) rotateZ(5deg) rotateY(13deg) scale(1.03);
    }
    82% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(calc(var(--bb) * -.015), 0, 0) rotateZ(-3deg) rotateY(-8deg) scale(1.01);
    }
    100% {
        transform: perspective(calc(var(--bb) * 7)) translate3d(0, 0, 0) rotateZ(-7deg) rotateY(-18deg) scale(1);
    }
}

@keyframes cassOriginalBlindMarquee {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(-100%);
    }
}

body.sports-layout-page .cass-floating-shortcuts {
    display: none;
}

@keyframes cass-floating-surprise-vibrate {
    0%, 100% {
        transform: translate3d(0, 0, 0) rotate(0deg) scale(1);
    }
    14% {
        transform: translate3d(-1px, 0, 0) rotate(-3deg) scale(1.02);
    }
    28% {
        transform: translate3d(1px, -1px, 0) rotate(3deg) scale(1.03);
    }
    42% {
        transform: translate3d(-1px, 1px, 0) rotate(-2deg) scale(1.02);
    }
    56% {
        transform: translate3d(1px, 0, 0) rotate(2deg) scale(1.03);
    }
    70% {
        transform: translate3d(0, -1px, 0) rotate(-1deg) scale(1.01);
    }
}

@media (max-width: 640px) {
}

@keyframes vipLevelSpinGlow {
    to {
        transform: rotate(360deg);
    }
}
.sports-featured-section .KDpIV {
    animation: sportsFeaturedCardPulse 3.8s ease-in-out infinite !important;
}

.sports-featured-section .KDpIV::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 8 !important;
    pointer-events: none !important;
    background: linear-gradient(108deg, transparent 0%, rgba(255, 255, 255, .08) 36%, rgba(255, 255, 255, .42) 49%, rgba(255, 255, 255, .1) 62%, transparent 100%) !important;
    transform: translateX(-145%) skewX(-14deg) !important;
    mix-blend-mode: screen !important;
    animation: sportsFeaturedMirrorSweep 4.6s ease-in-out infinite !important;
}

.sports-featured-section .sports-featured-cover-reflection {
    opacity: .52 !important;
    filter: blur(9px) saturate(1.32) brightness(1.05) !important;
    transform: scaleX(-1) scaleY(.82) translateY(15%) !important;
}

@keyframes sportsFeaturedCardPulse {
    0%, 100% {
        transform: translateZ(0) scale(1);
        box-shadow: 0 10px 24px rgba(0, 0, 0, .26), 0 0 0 rgba(0, 255, 115, 0);
    }
    50% {
        transform: translateZ(0) scale(1.012);
        box-shadow: 0 16px 34px rgba(0, 0, 0, .34), 0 0 24px rgba(0, 255, 115, .14);
    }
}

@keyframes sportsFeaturedMirrorSweep {
    0%, 58% {
        transform: translateX(-145%) skewX(-14deg);
        opacity: 0;
    }
    68% {
        opacity: 1;
    }
    100% {
        transform: translateX(145%) skewX(-14deg);
        opacity: 0;
    }
}
@keyframes cassCoinSpin {
    from { transform: rotateY(0deg) rotate(0deg); }
    to { transform: rotateY(360deg) rotate(360deg); }
}
@keyframes cassSportsTextPulse {
    0%, 100% {
        opacity: 1;
        text-shadow: 0 0 0 rgba(0, 255, 115, 0);
    }
    50% {
        opacity: .82;
        text-shadow: 0 0 10px rgba(0, 255, 115, .28);
    }
}

@keyframes cassSportsSoonBlink {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(255, 157, 0, .7), 0 0 9px rgba(255, 157, 0, .95);
    }
    50% {
        opacity: .62;
        transform: scale(.82);
        box-shadow: 0 0 0 5px rgba(255, 157, 0, 0), 0 0 15px rgba(255, 157, 0, 1);
    }
}

.sports-featured-section .KDpIV {
    animation: none !important;
}

.sports-featured-section .KDpIV :is(.vA1r6, .wCYqa, ._5R7p6, .wsb0q, .CfYua, .GzWMJ) {
    animation: cassSportsTextPulse 2.6s ease-in-out infinite !important;
}

.sports-featured-section .KDpIV :is(img, svg) {
    animation: none !important;
}

.sports-featured-section .vA1r6:not(.is-live) .sports-featured-status-dot {
    background: #ff9d00 !important;
    box-shadow: 0 0 9px rgba(255, 157, 0, .95) !important;
    animation: cassSportsSoonBlink 1.12s ease-in-out infinite !important;
}

.sports-provider-slider {
    margin: -6px 0 16px;
    overflow: hidden;
}

.sports-provider-slider-track {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 4px 4px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.sports-provider-slider-track::-webkit-scrollbar {
    display: none;
}

.sports-provider-pill {
    flex: 0 0 132px;
    height: 56px;
    display: grid;
    place-items: center;
    scroll-snap-align: start;
    border: 1px solid rgba(0, 255, 115, .24);
    border-radius: 12px;
    background:
        radial-gradient(circle at 20% 14%, rgba(0, 255, 115, .18), transparent 38%),
        linear-gradient(145deg, rgba(0, 70, 47, .94), rgba(0, 28, 20, .96));
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 10px 22px rgba(0,0,0,.18);
}

.sports-provider-pill img {
    width: 82%;
    max-height: 34px;
    object-fit: contain;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,.35));
}

@media (max-width: 640px) {

    .sports-provider-slider {
        display: block !important;
    }
}

.sportsbook-teams-button span {
    gap: 10px !important;
}

.sportsbook-teams-button img,
.sportsbook-teams-button b {
    width: 24px !important;
    height: 24px !important;
}

.sportsbook-league-link img {
    width: 20px !important;
    height: 20px !important;
}

.sportsbook-league-link img.sportsbook-region-flag {
    width: 22px !important;
    height: 15px !important;
}

@media (max-width: 640px) {

    .sportsbook-teams-button img,
    .sportsbook-teams-button b {
        width: 26px !important;
        height: 26px !important;
    }

    .sportsbook-league-link img {
        width: 22px !important;
        height: 22px !important;
    }

    .sportsbook-league-link img.sportsbook-region-flag {
        width: 24px !important;
        height: 16px !important;
    }
}

@keyframes cassPlayPulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28), 0 6px 14px rgba(0, 0, 0, .18), 0 0 0 rgba(255, 255, 255, 0);
    }
    50% {
        transform: scale(1.09);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), 0 10px 20px rgba(0, 0, 0, .24), 0 0 22px rgba(255, 255, 255, .26);
    }
}
.sports-floating-ball:not(.has-ticket) img {
    width: 56px !important;
    height: 56px !important;
    animation: sports-floating-ball-spin 1.7s linear infinite !important;
}

.sports-floating-ball:not(.has-ticket) .sports-floating-ball-label {
    min-width: 136px !important;
}
.sports-floating-ball:not(.has-ticket) {
    cursor: grab !important;
}

.sports-floating-ball:not(.has-ticket) img {
    width: 62px !important;
    height: 62px !important;
    object-fit: contain !important;
    animation: sports-floating-ball-spin 1.25s linear infinite !important;
}

.sports-floating-ball.has-ticket img {
    animation: none !important;
}
.sports-floating-ticket-trigger {
    right: 20px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 124px) !important;
    z-index: 171 !important;
    width: 58px !important;
    height: 58px !important;
}

.sports-floating-ticket-trigger .sports-floating-ball-label {
    min-width: 126px !important;
}

.sports-empty-cart-modal {
    position: fixed;
    inset: 0;
    z-index: 210;
    display: grid;
    place-items: center;
    padding: 18px;
    background: rgba(0, 12, 8, .58);
    backdrop-filter: blur(10px);
}

.sports-empty-cart-modal section {
    position: relative;
    width: min(360px, 100%);
    padding: 26px 22px 20px;
    border: 1px solid rgba(6, 224, 91, .32);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(0, 72, 49, .97), rgba(0, 42, 30, .98));
    color: #f2fff8;
    box-shadow: 0 22px 70px rgba(0, 0, 0, .56);
    text-align: center;
}

.sports-empty-cart-modal strong {
    display: block;
    font-size: 20px;
    font-weight: 950;
}

.sports-empty-cart-modal p {
    margin: 9px 0 18px;
    color: rgba(242, 255, 248, .72);
    font-size: 14px;
    line-height: 1.35;
}

.sports-empty-cart-action {
    width: 100%;
    min-height: 42px;
    border: 0;
    border-radius: 999px;
    background: #06e05b;
    color: #00190f;
    font-weight: 950;
}

@media (max-width: 640px) {
    .sports-floating-ticket-trigger {
        right: 14px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 164px) !important;
        width: 52px !important;
        height: 52px !important;
    }

    .sports-floating-ticket-trigger img {
        width: 42px !important;
        height: 42px !important;
    }
}

@keyframes cassPromoGiftBgSpin {
    from {
        transform: rotate(0deg) scale(1.04);
    }

    to {
        transform: rotate(360deg) scale(1.04);
    }
}
@keyframes cass-entry-task-fast-pulse {
    0%,
    100% {
        transform: translateZ(0) scale(1);
        filter: drop-shadow(0 6px 10px rgba(255, 169, 3, .12));
    }

    48% {
        transform: translateZ(0) scale(1.085);
        filter: drop-shadow(0 10px 18px rgba(255, 169, 3, .42));
    }
}

@keyframes cass-live-dot-pulse-final {
    0%,
    100% {
        opacity: .55;
        box-shadow: 0 0 0 0 rgba(6, 224, 91, .28);
    }

    50% {
        opacity: 1;
        box-shadow: 0 0 0 5px rgba(6, 224, 91, 0);
    }
}

.sports-floating-ball:not(.has-ticket) {
    right: 28px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
}

.sports-floating-ticket-trigger {
    right: 116px !important;
    bottom: calc(env(safe-area-inset-bottom, 0px) + 62px) !important;
    touch-action: none !important;
    cursor: grab !important;
}

.sports-floating-ticket-trigger.is-dragging {
    cursor: grabbing !important;
}

@media (max-width: 640px) {
    .sports-floating-ball:not(.has-ticket) {
        right: 16px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }

    .sports-floating-ticket-trigger {
        right: 96px !important;
        bottom: calc(var(--mobile-nav-h, 68px) + env(safe-area-inset-bottom, 0px) + 70px) !important;
    }
}
.sports-empty-cart-modal section {
    padding-top: 24px !important;
}

@media (max-width: 640px) {
    .sports-floating-ball-label {
        right: -2px !important;
        left: auto !important;
        transform: none !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: min(112px, calc(100vw - 24px)) !important;
        padding-inline: 8px !important;
        font-size: 9px !important;
        line-height: 1 !important;
    }

    .sports-floating-ticket-trigger .sports-floating-ball-label {
        min-width: 0 !important;
        max-width: min(116px, calc(100vw - 24px)) !important;
    }
}
.sports-floating-ball .sports-floating-ball-label {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateX(50%) translateY(4px) !important;
    pointer-events: none !important;
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease !important;
}

.sports-floating-ball:hover .sports-floating-ball-label,
.sports-floating-ball:focus-visible .sports-floating-ball-label,
.sports-floating-ticket-trigger:hover .sports-floating-ball-label,
.sports-floating-ticket-trigger:focus-visible .sports-floating-ball-label {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateX(50%) translateY(0) !important;
}

@media (max-width: 640px) {
    .sports-floating-ball .sports-floating-ball-label {
        transform: translateY(4px) !important;
    }

    .sports-floating-ball:hover .sports-floating-ball-label,
    .sports-floating-ball:focus-visible .sports-floating-ball-label,
    .sports-floating-ticket-trigger:hover .sports-floating-ball-label,
    .sports-floating-ticket-trigger:focus-visible .sports-floating-ball-label {
        transform: translateY(0) !important;
    }
}

.sports-team-shirt { width: 28px; height: 28px; flex-shrink: 0; display: inline-block; vertical-align: middle; }
.sports-match-scoreline .sports-team-shirt { width: 52px; height: 52px; }
.sportsbook-scoreboard .sports-team-shirt { width: 42px; height: 42px; }

.sports-team-badge { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; flex-shrink:0; }
.sports-team-badge img { width:100% !important; height:100% !important; object-fit:contain !important; border-radius:0 !important; background:transparent !important; }
.sports-team-badge > span { font-size:10px; padding:4px; border-radius:50%; background:#0b5640; }
.sports-match-scoreline .sports-team-badge, .sportsbook-stats-versus .sports-team-badge { width:48px; height:48px; }
